{"mappings":"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GAAYO,EAAI,IAAI,SAASjP,EAAK,CACzD,QAASkO,GAAOC,IAAQnO,EAAM,MAAQqO,KAAS,EAAID,IAAQpO,EAAM,MAAQqO,MAAUC,EACpF,CAAC,CAAC,CACH,CACA,SAASU,GAAWD,EAAO,CAC1B,OAAOzS,GAAiBqS,GAAYI,CAAK,EAAE,IAAI,SAAS/O,EAAK,CAC5D,MAAO,MAAO,KAAK,IAAIA,GAAOwO,GAAMN,GAAM,CAAC,GAAKC,GAAOC,GAAOpO,GAAOwO,MAASD,EAC/E,CAAC,CACF,CACA,SAASW,GAAU7L,EAAOkE,EAAQ,CACjC,CAAClE,EAAOkE,CAAM,EAAIjE,GAAS,CAACD,EAAOkE,CAAM,CAAC,EAC1C,GAAI,CAAC4H,EAAIC,EAAIC,CAAE,EAAIR,GAAM,KAAKxL,CAAK,EAC/B,CAACiM,EAAIC,EAAIC,CAAE,EAAIX,GAAM,KAAKtH,CAAM,EACpC,MAAO,KAAM,KAAK,MAAM4H,EAAKG,IAAO,EAAI,KAAOF,EAAKG,IAAO,GAAKF,EAAKG,IAAO,CAAC,CAC9E,CACA,IAAIC,GAAUnO,GAAO,IACjBoO,GAAc,IACdC,GAAiB,EAAID,GACrBE,GAAM,EAAI,KAAK,GACfC,GAAQ,CACX,CACC,QACA,QACA,QACD,EACA,CACC,SACA,SACA,OACD,EACA,CACC,SACA,QACA,OACD,CACD,EACIC,GAAW,CACd,CACC,mBACA,oBACA,kBACD,EACA,CACC,mBACA,kBACA,oBACD,EACA,CACC,qBACA,oBACA,kBACD,CACD,EACIC,GAAK,CACR,CACC,IACA,IACA,GACD,EACA,CACC,IACA,KACA,IACD,EACA,CACC,IACA,KACA,KACD,CACD,EACIC,GAAc,CACjB,KAAM,CACL,GACA,KACA,EACD,EACA,IAAK,CACJ,GACA,IACA,EACD,EACA,QAAS,CACR,EACA,IACA,CACD,CACD,EACIC,GAAa,CAChB,EAAG,CACF,MACA,GACA,OACA,OACA,MACD,EACA,EAAG,CACF,GACA,GACA,EACA,IACA,EACD,EACA,EAAG,CACF,EACA,IACA,IACA,IACA,GACD,CACD,EACIC,GAAU,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CN,MAAO,MACP,QAAS,CACR,CACC,kBACA,mBACA,iBACD,EACA,CACC,kBACA,kBACA,gBACD,EACA,CACC,EACA,mBACA,iBACD,CACD,EACA,UAAW,CACV,CACC,kBACA,mBACA,mBACD,EACA,CACC,mBACA,mBACA,mBACD,EACA,CACC,mBACA,oBACA,iBACD,CACD,CACD,CAAC,EACGiT,GAAY,CACf,CACC,mBACA,iBACA,iBACD,EACA,CACC,mBACA,iBACA,kBACD,EACA,CACC,mBACA,mBACA,iBACD,CACD,EACIC,GAAc,CACjB,CACC,mBACA,mBACA,kBACD,EACA,CACC,mBACA,mBACA,kBACD,EACA,CACC,mBACA,oBACA,kBACD,CACD,EACIC,GAAa,IAAInT,GAAc,CAClC,GAAI,cACJ,KAAM,cACN,MAAO,MACP,QAASiT,GACT,UAAWC,EACZ,CAAC,EACGE,GAAW,CACd,UAAa,CACZ,IAAM,IACN,IAAM,IACN,CACD,EACA,aAAgB,CACf,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,KAAQ,CACP,EACA,EACA,CACD,EACA,WAAc,CACb,IAAM,IACN,EACA,IAAM,GACP,EACA,MAAS,CACR,IAAM,IACN,EACA,CACD,EACA,MAAS,CACR,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,OAAU,CACT,EACA,IAAM,IACN,IAAM,GACP,EACA,MAAS,CACR,EACA,EACA,CACD,EACA,eAAkB,CACjB,EACA,IAAM,IACN,IAAM,GACP,EACA,KAAQ,CACP,EACA,EACA,CACD,EACA,WAAc,CACb,IAAM,IACN,GAAK,IACL,IAAM,GACP,EACA,MAAS,CACR,IAAM,IACN,GAAK,IACL,GAAK,GACN,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,GAAK,IACL,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,IAAM,IACN,EACA,CACD,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,GAAK,GACN,EACA,MAAS,CACR,EACA,IAAM,IACN,GAAK,GACN,EACA,eAAkB,CACjB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,SAAY,CACX,EACA,IAAM,IACN,IAAM,GACP,EACA,QAAW,CACV,IAAM,IACN,GAAK,IACL,GAAK,GACN,EACA,KAAQ,CACP,EACA,EACA,CACD,EACA,SAAY,CACX,EACA,EACA,IAAM,GACP,EACA,SAAY,CACX,EACA,IAAM,IACN,IAAM,GACP,EACA,cAAiB,CAChB,IAAM,IACN,IAAM,IACN,GAAK,GACN,EACA,SAAY,CACX,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,EACA,IAAM,IACN,CACD,EACA,SAAY,CACX,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,YAAe,CACd,IAAM,IACN,EACA,IAAM,GACP,EACA,eAAkB,CACjB,GAAK,IACL,IAAM,IACN,GAAK,GACN,EACA,WAAc,CACb,EACA,IAAM,IACN,CACD,EACA,WAAc,CACb,IAAM,IACN,GAAK,IACL,IAAM,GACP,EACA,QAAW,CACV,IAAM,IACN,EACA,CACD,EACA,WAAc,CACb,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,aAAgB,CACf,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,cAAiB,CAChB,GAAK,IACL,GAAK,IACL,IAAM,GACP,EACA,cAAiB,CAChB,GAAK,IACL,GAAK,IACL,GAAK,GACN,EACA,cAAiB,CAChB,GAAK,IACL,GAAK,IACL,GAAK,GACN,EACA,cAAiB,CAChB,EACA,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,IAAM,IACN,EACA,IAAM,GACP,EACA,SAAY,CACX,EACA,GAAK,IACL,IAAM,GACP,EACA,YAAe,CACd,EACA,IAAM,IACN,CACD,EACA,QAAW,CACV,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,QAAW,CACV,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,GAAK,IACL,IAAM,IACN,CACD,EACA,UAAa,CACZ,IAAM,IACN,GAAK,IACL,GAAK,GACN,EACA,YAAe,CACd,EACA,IAAM,IACN,IAAM,GACP,EACA,YAAe,CACd,GAAK,IACL,IAAM,IACN,GAAK,GACN,EACA,QAAW,CACV,EACA,EACA,CACD,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,IAAM,IACN,IAAM,IACN,CACD,EACA,KAAQ,CACP,EACA,IAAM,IACN,CACD,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,GAAK,GACN,EACA,KAAQ,CACP,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,MAAS,CACR,EACA,IAAM,IACN,CACD,EACA,YAAe,CACd,IAAM,IACN,EACA,GAAK,GACN,EACA,KAAQ,CACP,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,SAAY,CACX,IAAM,IACN,EACA,IAAM,GACP,EACA,QAAW,CACV,EACA,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,GAAK,IACL,GAAK,GACN,EACA,OAAU,CACT,GAAK,IACL,EACA,IAAM,GACP,EACA,MAAS,CACR,EACA,EACA,IAAM,GACP,EACA,MAAS,CACR,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,SAAY,CACX,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,cAAiB,CAChB,EACA,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,CACD,EACA,aAAgB,CACf,EACA,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,EACA,CACD,EACA,qBAAwB,CACvB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,EACA,IAAM,IACN,IAAM,GACP,EACA,YAAe,CACd,EACA,IAAM,IACN,IAAM,GACP,EACA,cAAiB,CAChB,GAAK,IACL,IAAM,IACN,IAAM,GACP,EACA,aAAgB,CACf,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,eAAkB,CACjB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,eAAkB,CACjB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,eAAkB,CACjB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,YAAe,CACd,EACA,EACA,IAAM,GACP,EACA,KAAQ,CACP,EACA,EACA,CACD,EACA,UAAa,CACZ,GAAK,IACL,IAAM,IACN,GAAK,GACN,EACA,MAAS,CACR,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,QAAW,CACV,EACA,EACA,CACD,EACA,OAAU,CACT,IAAM,IACN,EACA,CACD,EACA,iBAAoB,CACnB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,EACA,EACA,IAAM,GACP,EACA,aAAgB,CACf,IAAM,IACN,GAAK,IACL,IAAM,GACP,EACA,aAAgB,CACf,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,eAAkB,CACjB,GAAK,IACL,IAAM,IACN,IAAM,GACP,EACA,gBAAmB,CAClB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,kBAAqB,CACpB,EACA,IAAM,IACN,IAAM,GACP,EACA,gBAAmB,CAClB,GAAK,IACL,IAAM,IACN,IAAM,GACP,EACA,gBAAmB,CAClB,IAAM,IACN,GAAK,IACL,IAAM,GACP,EACA,aAAgB,CACf,GAAK,IACL,GAAK,IACL,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,EACA,IAAM,GACP,EACA,UAAa,CACZ,EACA,IAAM,IACN,IAAM,GACP,EACA,SAAY,CACX,EACA,IAAM,IACN,IAAM,GACP,EACA,YAAe,CACd,EACA,IAAM,IACN,IAAM,GACP,EACA,KAAQ,CACP,EACA,EACA,IAAM,GACP,EACA,QAAW,CACV,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,MAAS,CACR,IAAM,IACN,IAAM,IACN,CACD,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,GAAK,GACN,EACA,OAAU,CACT,EACA,IAAM,IACN,CACD,EACA,UAAa,CACZ,EACA,GAAK,IACL,CACD,EACA,OAAU,CACT,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,cAAiB,CAChB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,cAAiB,CAChB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,cAAiB,CAChB,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,EACA,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,EACA,IAAM,IACN,IAAM,GACP,EACA,KAAQ,CACP,IAAM,IACN,IAAM,IACN,GAAK,GACN,EACA,KAAQ,CACP,EACA,IAAM,IACN,IAAM,GACP,EACA,KAAQ,CACP,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,OAAU,CACT,IAAM,IACN,EACA,IAAM,GACP,EACA,cAAiB,CAChB,IAAM,IACN,GAAK,IACL,IAAM,GACP,EACA,IAAO,CACN,EACA,EACA,CACD,EACA,UAAa,CACZ,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,UAAa,CACZ,GAAK,IACL,IAAM,IACN,IAAM,GACP,EACA,YAAe,CACd,IAAM,IACN,GAAK,IACL,GAAK,GACN,EACA,OAAU,CACT,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,WAAc,CACb,IAAM,IACN,IAAM,IACN,GAAK,GACN,EACA,SAAY,CACX,GAAK,IACL,IAAM,IACN,GAAK,GACN,EACA,SAAY,CACX,EACA,IAAM,IACN,IAAM,GACP,EACA,OAAU,CACT,IAAM,IACN,GAAK,IACL,GAAK,GACN,EACA,OAAU,CACT,IAAM,IACN,IAAM,IACN,IAAM,GACP,EACA,QAAW,CACV,IAAM,IACN,IAAM,IACN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AAU,WAAAC,CAAW,EAAG,CAChDJ,GAAK1hB,CAAE,EAAI,UAAU,CAAC,CACvB,CACA,SAAS2hB,GAAMpiB,EAAIC,EAAIQ,EAAK,WAAY,CACvC,IAAIgT,EAAS0O,GAAK1hB,CAAE,EAChB,CAAC+hB,EAAIC,EAAIC,CAAE,EAAI7nB,GAAiB4Y,EAAO,SAAUzT,CAAE,EACnD,CAAC2iB,EAAIC,EAAIC,CAAE,EAAIhoB,GAAiB4Y,EAAO,SAAUxT,CAAE,EACnD6iB,EAAgBjoB,GAAiB,CACpC,CACC8nB,EAAKH,EACL,EACA,CACD,EACA,CACC,EACAI,EAAKH,EACL,CACD,EACA,CACC,EACA,EACAI,EAAKH,CACN,CACD,EAAGjP,EAAO,QAAQ,EAClB,OAAO5Y,GAAiB4Y,EAAO,WAAYqP,CAAa,CACzD,CACAT,GAAU,CACT,GAAI,YACJ,SAAU,CACT,CACC,OACA,MACA,OACD,EACA,CACC,OACA,QACA,KACD,EACA,CACC,EACA,EACA,MACD,CACD,EACA,WAAY,CACX,CACC,mBACA,oBACA,kBACD,EACA,CACC,kBACA,kBACA,qBACD,EACA,CACC,EACA,EACA,kBACD,CACD,CACD,CAAC,EACDA,GAAU,CACT,GAAI,WACJ,SAAU,CACT,CACC,MACA,MACA,MACD,EACA,CACC,OACA,OACA,KACD,EACA,CACC,MACA,OACA,MACD,CACD,EACA,WAAY,CACX,CACC,kBACA,oBACA,kBACD,EACA,CACC,kBACA,kBACA,mBACD,EACA,CACC,oBACA,mBACA,eACD,CACD,CACD,CAAC,EACDA,GAAU,CACT,GAAI,QACJ,SAAU,CACT,CACC,MACA,MACA,MACD,EACA,CACC,OACA,OACA,KACD,EACA,CACC,KACA,MACA,KACD,CACD,EACA,WAAY,CACX,CACC,mBACA,oBACA,kBACD,EACA,CACC,kBACA,kBACA,kBACD,EACA,CACC,qBACA,oBACA,kBACD,CACD,CACD,CAAC,EACDA,GAAU,CACT,GAAI,QACJ,SAAU,CACT,CACC,QACA,QACA,QACD,EACA,CACC,SACA,SACA,OACD,EACA,CACC,SACA,QACA,OACD,CACD,EACA,WAAY,CACX,CACC,kBACA,oBACA,kBACD,EACA,CACC,kBACA,kBACA,oBACD,EACA,CACC,oBACA,oBACA,kBACD,CACD,CACD,CAAC,EACD,OAAO,OAAOxiB,GAAQ,CACrB,EAAG,CACF,OACA,EACA,MACD,EACA,EAAG,CACF,OACA,EACA,OACD,EACA,IAAK,CACJ,OACA,EACA,MACD,EACA,IAAK,CACJ,OACA,EACA,OACD,EACA,EAAG,CACF,EACA,EACA,CACD,EACA,GAAI,CACH,OACA,EACA,MACD,EACA,GAAI,CACH,OACA,EACA,OACD,EACA,IAAK,CACJ,QACA,EACA,KACD,CACD,CAAC,EACDA,GAAO,KAAO,CACb,OAAS,OACT,EACA,OAAS,MACV,EACA,IAAIkjB,GAAS,IAAI5f,GAAc,CAC9B,GAAI,SACJ,MAAO,WACP,KAAM,SACN,OAAQ,CACP,EAAG,CACF,MAAO,CAAC,EAAG,KAAK,EAChB,KAAM,KACP,EACA,EAAG,CACF,MAAO,CAAC,EAAG,KAAK,EAChB,KAAM,OACP,EACA,EAAG,CACF,MAAO,CAAC,EAAG,KAAK,EAChB,KAAM,MACP,CACD,EACA,SAAU,QACV,MAAOtD,GAAO,KACd,QAAS,CACR,CACC,kBACA,mBACA,iBACD,EACA,CACC,mBACA,kBACA,kBACD,EACA,CACC,qBACA,oBACA,kBACD,CACD,EACA,UAAW,CACV,CACC,mBACA,iBACA,mBACD,EACA,CACC,mBACA,mBACA,mBACD,EACA,CACC,oBACA,qBACA,iBACD,CACD,CACD,CAAC,EACGmjB,GAAI,GAAK,IACTC,GAAmB,WACnBC,IAAe,KAAK,KAAK,KAAK,EAAI,MAAQ,MAC1CC,GAAS,IAAIhgB,GAAc,CAC9B,GAAI,SACJ,MAAO,WACP,KAAM,SACN,OAAQ,CACP,EAAG,CACF,MAAO,CAAC8f,GAAkBC,EAAW,EACrC,KAAM,KACP,EACA,EAAG,CACF,MAAO,CAACD,GAAkBC,EAAW,EACrC,KAAM,OACP,EACA,EAAG,CACF,MAAO,CAACD,GAAkBC,EAAW,EACrC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AAGD,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAGD,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAGD,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAGD,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAGD,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAGD,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAGD,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAID,EAAG,CAAC,EAAE,EAAIC,EAAG,CAAC,EAAE,EAAGD,EAAG,CAAC,EAAE,EAAI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AAI,EACjDghB,GAAoB5K,GAAS,MAAOpW,GAAS,KAAK,EAClDghB,GAAoBtH,GAAS,MAAO1Z,GAAS,KAAK,EAClDghB,GAAoB5K,GAAS,MAAOpW,GAAS,IAAI,EACjDghB,GAAoBtH,GAAS,MAAO1Z,GAAS,IAAI,EACjDghB,GAAoB5K,GAAS,MAAOpW,GAAS,KAAK,EAClDghB,GAAoB5K,GAAS,MAAOpW,GAAS,OAAO,EACpDghB,GAAoB5K,GAAS,eAAgB,OAAO,CAAC,EACrD4K,GAAoB5K,GAAS,gBAAiB,OAAO,CAAC,EACvD,CACA,IAAMmL,GAAe,IAAI,IAAI,CAC5B,QACA,QACA,OACA,QACA,eACA,WACA,aACA,UACA,aACA,UACA,OACA,SACA,QACA,KACA,MACA,KACA,MACA,OACA,WACA,WACA,SACA,SACA,SACA,OACA,MACA,QACA,OACA,OACA,WACA,SACA,UACA,UACA,KACA,MACA,eACA,QACA,YACA,OACA,QACA,SACA,OACA,QACA,QACA,WACA,YACA,WACA,WACA,eACA,SACA,UACA,mBACA,UACA,aACA,YACA,YACA,YACA,QACA,WACA,WACA,SACA,SACA,mBACA,KACA,eACA,OACA,WACA,SACA,UACA,SACA,WACA,cACA,SACA,QACA,UACA,SACA,OACA,UACA,MACA,OACA,cACA,QACA,OACA,aACA,SACA,SACA,aACA,YACA,SACA,OACA,QACA,cACA,QACA,UACA,OACA,MACA,SACA,OACA,MACA,UACA,YACA,MACA,MACA,WACA,WACA,kBACA,eACA,cACA,gBACA,OACA,UACA,KACA,WACA,UACA,aACA,YACA,OACA,QACA,gBACA,UACA,YACA,WACA,OACA,YACA,MACA,SACA,WACA,MACA,aACA,WACA,mBACA,UACA,WACA,WACA,OACA,MACA,SACA,SACA,SACA,QACA,SACA,gBACA,cACA,MACA,aACA,QACA,SACA,WACA,OACA,eACA,QACA,QACA,MACA,OACA,UACA,SACA,WACA,SACA,QACA,SACA,QACA,SACA,UACA,MACA,QACA,UACA,UACA,WACA,OACA,QACA,OACA,YACA,QACA,UACA,UACA,SACD,CAAC,EACKC,GAAW,IAAI,IAAI,CACxB,QACA,OACA,MACA,MACA,MACA,MACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,OACA,OACA,UACA,MACA,MACA,SACA,cACA,MACA,OACA,QACA,OACA,QACA,OACA,QACA,QACA,OACA,QACA,MACA,OACA,oBACA,eACA,qBACA,QACA,UACA,cACA,WACA,MACA,eACA,eACA,MACA,OACA,cACA,cACA,kBACA,mBACA,QACA,MACA,QACA,QACA,aACA,cACA,QACA,SACA,MACA,OACA,MACA,MACA,MACA,OACA,YACA,MACA,gBACA,UACA,UACA,UACA,cACA,QACA,WACA,OACA,MACA,OACA,aACA,OACA,OACA,MACA,OACA,YACA,QACA,OACA,aACA,WACA,OACA,aACA,WACA,SACA,eACA,aACA,oBACA,gBACA,uBACA,cACA,mBACA,mBACA,oBACA,gBACA,oBACA,uBACA,4BACA,oBACA,qBACA,+BACA,eACA,aACA,cACA,YACA,YACA,YACA,YACA,YACA,WACA,YACA,iBACA,4BACA,eACA,eACA,WACA,WACA,gBACA,gBACA,gBACA,gBACA,gBACA,iBACA,iBACA,aACA,aACA,kBACA,kBACA,kBACA,iBACA,iBACA,mBACA,uBACA,cACA,uBACA,uBACA,cACA,cACA,cACA,iBACA,oBACA,yBACA,gBACA,cACA,cACA,cACA,uBACA,uBACA,aACA,kBACA,sBACA,oBACA,qBACA,cACA,gBACA,mBACA,YACA,WACD,CAAC,EAED,SAASC,GAAeC,EAAQ,CAC/B,GAAIA,EAAQ,CACX,IAAMT,EAAOS,EAAO,WAAW,MAAO,GAAG,EAAE,WAAW,SAAU,EAAE,EAClE,OAAsBC,GAAmBV,CAAI,EAAG,QACzCA,EADyD,MAEjE,CACA,MAAO,MACR,CAEA,SAASU,GAAmBC,EAAO,CAClC,OAAIA,IAAU,KAAOA,IAAU,GAAW,CACzC,QAAS,GACT,MAAO,0CACR,EACI,KAAK,KAAKA,C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ASozD,IAA6BlC,EAAUC,EAAUC,EAAS8B,EAAuBC,EAAmB7B,EAAc,CAC1H,MAAM,IAAI/uD,GAAoB,8GAA8G,CAC7I,CACAC,GAAS,CACR,KAAM,4BACN,WAAY4wD,IACZ,YAAa,CAACr6D,EAAK3H,IAASiI,+BAAmCjI,CAAI,IACnE,UAAW,IAAIA,KAAU,CACxB,SAAUA,EACV,WAAY4O,CACb,GACA,YAAa,EACd,CAAC,EACD,SAASqzD,IAAgCnC,EAAUC,EAAUC,EAAS,CACrE,MAAM,IAAI7uD,GAAoB,gFAAgF,CAC/G,CACA,SAAS+wD,IAAcpC,EAAUC,EAAUC,EAASmC,EAAkBC,EAAWC,EAAcnC,EAAc,CAC5G,MAAM,IAAI/uD,GAAoB,uGAAuG,CACtI,CACAC,GAAS,CACR,KAAM,oBACN,WAAY8wD,IACZ,YAAa,CAACzrD,EAAMzW,IAASiI,uBAA2BjI,CAAI,IAC5D,UAAW,IAAIA,KAAU,CACxB,SAAUA,EACV,WAAYmU,EACb,GACA,YAAa,EACd,CAAC,EACD/C,GAAS,CACR,KAAM,+BACN,WAAY6wD,IACZ,YAAa,CAACxrD,EAAMzW,IAASiI,kCAAsCjI,CAAI,IACvE,UAAW,IAAIA,KAAU,CACxB,SAAUA,EACV,WAAYmU,EACb,GACA,YAAa,EACd,CAAC,EACD,IAAImuD,EAAkB/C,IAChBgD,GAAoB,WAC1B,SAASC,GAAW5vC,EAAI,CACvB,OAAOA,EAAG,QAAQ,iBAAkB,GAAG,CACxC,CACA,IAAI6vC,IAAgB,IAAI,IAAI,CAC3B,QACA,QACA,OACA,QACA,eACA,WACA,aACA,UACA,aACA,UACA,OACA,SACA,QACA,KACA,MACA,KACA,MACA,OACA,WACA,WACA,SACA,SACA,SACA,OACA,MACA,QACA,OACA,OACA,WACA,SACA,UACA,UACA,KACA,MACA,eACA,QACA,YACA,OACA,QACA,SACA,OACA,QACA,QACA,WACA,YACA,WACA,WACA,eACA,SACA,UACA,mBACA,UACA,aACA,YACA,YACA,YACA,QACA,WACA,WACA,SACA,SACA,mBACA,KACA,eACA,OACA,WACA,SACA,UACA,SACA,WACA,cACA,SACA,QACA,UACA,SACA,OACA,UACA,MACA,OACA,cACA,QACA,OACA,aACA,SACA,SACA,aACA,YACA,SACA,OACA,QACA,cACA,QACA,UACA,OACA,MACA,SACA,OACA,MACA,UACA,YACA,MACA,MACA,WACA,WACA,kBACA,eACA,cACA,gBACA,OACA,UACA,KACA,WACA,UACA,aACA,YACA,OACA,QACA,gBACA,UACA,YACA,WACA,OACA,YACA,MACA,SACA,WACA,MACA,aACA,WACA,mBACA,UACA,WACA,WACA,OACA,MACA,SACA,SACA,SACA,QACA,SACA,gBACA,cACA,MACA,aACA,QACA,SACA,WACA,OACA,eACA,QACA,QACA,MACA,OACA,UACA,SACA,WACA,SACA,QACA,SACA,QACA,SACA,UACA,MACA,QACA,UACA,UACA,WACA,OACA,QACA,OACA,YACA,QACA,UACA,UACA,SACD,CAAC,EACD,SAASC,IAAgB9vC,EAAI,CAC5B,IAAMrqB,EAAIi6D,GAAW5vC,CAAE,EACvB,OAAO6vC,IAAc,IAAIl6D,CAAC,EAAI,GAAGA,CAAC,IAAMA,CACzC,CACA,SAASo6D,GAAQl2B,EAAO,CACvB,MAAO,KAAK+1B,GAAW/1B,CAAK,CAAC,EAC9B,CACA,SAASm2B,GAAa5pD,EAAM,CAC3B,OAAOA,IAAS,OAAS,EAAIA,IAAS,OAAS,EAAI,CACpD,CACA,SAAS6pD,GAAarkE,EAAQ,CAC7B,IAAM,EAAIA,EAAO,KACjB,OAAI,IAAM,SAAW,IAAM,SAAW,IAAM,QAAgB,OACxD,IAAM,SAAW,IAAM,SAAW,IAAM,QAAgB,OACxD,IAAM,SAAW,IAAM,SAAW,IAAM,QAAgB,OACrD,QACR,CACA,SAASskE,IAActkE,EAAQ,CAC9B,OAAOA,EAAO,OAAS,OACxB,CACA,SAASukE,IAAiBjoE,EAAO,CAChC,GAAI,OAAOA,GAAU,UAAY,OAAOA,GAAU,UAAW,OAAO8T,EACpE,GAAI9T,GAAS,OAAOA,GAAU,SAAU,CACvC,IAAMke,EAAOle,EAAM,KACnB,GAAI,OAAOke,GAAS,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ACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,CACD,EACA,CAAC,GAAI,GAAG,CACT,CAAC,CACF,EACA,UAAW,CACV,SAAY,IAAMiyD,GAClB,QAAS,IAAMr4D,CAChB,CACD,CAAC,GAAKs4D,EAAE,GAAG,CAAC,CAAC,CAAC,EACVK,GAAW,WACTC,GAAajF,EAAgB,GAAG,CAAC3zD,EAAKA,CAAG,EAAGD,CAAG,GAAoBu4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC18D,EAAG6H,IAAM,CACnK,UACA,IAAM+X,EAAMzb,EAAI,CAAC,EACX84D,EAAO,aAAa,aAAa94D,EAAI44D,EAAQ,EAAGn9C,GAAOzb,EAAI,CAAC,CAAC,EAAGA,EAAI,EAAE,CAAC,EAC7E,OAAOw4D,GAAU,aAAaM,EAAM94D,EAAInE,CAAC,CAAC,EAAG,aAAai9D,EAAM94D,EAAI0D,CAAC,CAAC,EAAGo1D,CAAI,CAC9E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,EACA,IACA,CACC,EACA,MACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,IACA,IACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAM94D,EACf,SAAY,IAAM44D,GAClB,UAAa,IAAMJ,EACpB,CACD,CAAC,GAAKD,EAAE,GAAG,CAAC,CAAC,CAAC,EACRQ,GAAanF,EAAgB,GAAG,CACrC3zD,EACAA,EACAA,CACD,EAAGD,CAAG,GAAoBu4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC18D,EAAG6H,EAAGE,IAAM,CACvH,UACA,IAAM6X,EAAMzb,EAAI,CAAC,EACX84D,EAAO,aAAa,aAAa94D,EAAI44D,EAAQ,EAAGn9C,GAAOzb,EAAI,CAAC,CAAC,EAAGA,EAAI,EAAE,CAAC,EAC7E,OAAOw4D,GAAU,aAAaM,EAAM94D,EAAInE,CAAC,CAAC,EAAG,aAAai9D,EAAM94D,EAAI0D,CAAC,CAAC,EAAG,aAAao1D,EAAM94D,EAAI4D,CAAC,CAAC,CAAC,CACpG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,EACA,IACA,CACC,EACA,MACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAM5D,EACf,SAAY,IAAM44D,GAClB,UAAa,IAAMJ,EACpB,CACD,CAAC,GAAKD,EAAE,GAAG,CAAC,CAAC,CAAC,EACRS,GAAapF,EAAgB,GAAG,CACrC3zD,EACAA,EACAA,EACAA,CACD,EAAGD,CAAG,GAAoBu4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC18D,EAAG6H,EAAGE,EAAGq1D,IAAO,CAC3H,UACA,IAAMx9C,EAAMzb,EAAI,CAAC,EACX84D,EAAO,aAAa,aAAa94D,EAAI44D,EAAQ,EAAGn9C,GAAOzb,EAAI,CAAC,CAAC,EAAGA,EAAI,EAAE,CAAC,EACzEzT,EAAI,aAAausE,EAAM94D,EAAInE,CAAC,CAAC,EAC7BrP,EAAI,aAAassE,EAAM94D,EAAI0D,CAAC,CAAC,EAC7B2C,EAAI,aAAayyD,EAAM94D,EAAI4D,CAAC,CAAC,EACjC,OAAArX,EAAI,aAAaA,EAAG8Z,CAAC,EACrB9Z,EAAIA,EAAI+rE,GAASjyD,EAAGpG,EAAI,CAAC,CAAC,EAC1BoG,EAAI,aAAaA,EAAG7Z,CAAC,EACrBA,EAAI,aAAaA,EAAGD,CAAC,EACrBC,EAAIA,EAAI8rE,GAAS/rE,EAAG0T,EAAI,CAAC,CAAC,EAC1B1T,EAAI,aAAaA,EAAG8Z,CAAC,EACrBA,EAAI,aAAaA,EAAG7Z,CAAC,EACrB6Z,EAAIA,EAAIiyD,GAAS9rE,EAAGyT,EAAI,CAAC,CAAC,EAC1BzT,EAAI,aAAaA,EAAGD,CAAC,EACrBA,EAAI,aAAaA,EAAG8Z,CAAC,EACrB9Z,EAAIA,EAAI+rE,GAASjyD,EAAGpG,EAAI,EAAE,CAAC,EAC3BoG,EAAI,aAAaA,EAAG7Z,CAAC,EACrBA,EAAI,aAAaA,EAAGD,CAAC,EACrBC,EAAIA,EAAI8rE,GAAS/rE,EAAG0T,EAAI,EAAE,CAAC,EAC3B1T,EAAI,aAAaA,EAAG8Z,CAAC,EACrBA,EAAI,aAAaA,EAAG7Z,CAAC,EACrB6Z,EAAIA,EAAIiyD,GAAS9rE,EAAGyT,EAAI,CAAC,CAAC,EAC1BzT,EAAI,aAAaA,EAAGD,CAAC,EACrBA,EAAI,aAAaA,EAAGyT,EAAIi5D,CAAE,CAAC,EACpBT,GAAUjsE,EAAGC,EAAG6Z,CAAC,CACzB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,EACA,IACA,CACC,EACA,MACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMrG,EACf,SAAY,IAAM44D,GAClB,SAAY,IAAMN,GAClB,QAAS,IAAMr4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CA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,IACA,IACA,CACC,EACA,CACC,EACA,IACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,EACA,KACA,CACC,EACA,IACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,QACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,IACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,IACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,KACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMx5D,EACf,aAAc,IAAM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E,CAAC,CAAC,CAAC,CAAC,CAAC,EAAG,aAAa0xB,EAAG,aAAa,aAAagvC,EAAI,aAAa,aAAaJ,EAAIF,CAAE,EAAG,aAAaG,EAAIvgE,CAAC,CAAC,CAAC,EAAG,aAAauF,EAAG,aAAa,aAAai7D,EAAIJ,CAAE,EAAG,aAAaK,EAAIzgE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5X,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAC,CACb,CAAC,GAAK0+D,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkC,GAAsB7G,EAAgB,GAAG,CAACpzC,CAAO,EAAGtgB,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CAC1K,UACA,IAAMC,EAAI16D,EAAIsuB,GAAMmsC,EAAI,CAAC,CAAC,EACpBE,EAAI36D,EAAIsuB,GAAMmsC,EAAI,CAAC,CAAC,EACpBG,EAAK,aAAaH,EAAI,EAAGx6D,EAAIy6D,CAAC,CAAC,EAC/BG,EAAK,aAAaJ,EAAI,EAAGx6D,EAAI06D,CAAC,CAAC,EAC/BtB,EAAIH,GAAO0B,CAAE,EACbnsE,EAAIyqE,GAAO2B,CAAE,EACnB,OAAOpB,GAAkBE,GAASR,GAAiBP,GAAW8B,EAAGC,CAAC,EAAGC,EAAIC,CAAE,EAAG1B,GAAiBP,GAAW,aAAa8B,EAAG16D,EAAI,CAAC,CAAC,EAAG26D,CAAC,EAAG,aAAaC,EAAI,CAAC,EAAGC,CAAE,EAAG1B,GAAiBP,GAAW8B,EAAG,aAAaC,EAAG36D,EAAI,CAAC,CAAC,CAAC,EAAG46D,EAAI,aAAaC,EAAI,CAAC,CAAC,EAAG1B,GAAiBP,GAAW,aAAa8B,EAAG16D,EAAI,CAAC,CAAC,EAAG,aAAa26D,EAAG36D,EAAI,CAAC,CAAC,CAAC,EAAG,aAAa46D,EAAI,CAAC,EAAG,aAAaC,EAAI,CAAC,CAAC,EAAGxB,EAAG5qE,CAAC,CAAC,CACpX,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,CACC,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CAAC,IAAK,GAAG,CACV,EACA,KACA,IACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,GAAG,CACP,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CAAC,IAAK,CACL,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CAAC,CACF,EACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CACF,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CAAC,CACF,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KA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GAAG,CACL,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,IACA,IACA,GACD,CACD,EACA,KACA,KACA,IACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,IACA,GACD,CACD,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,IACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,GACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,GACD,CACD,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,KACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,aACA,CACC,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EA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,EAAGm4D,CAAG,EAAGnB,CAAG,EACvD,OAAIiB,IAAW17D,EAAI,CAAC,EAAU,aAAagsB,EAAI6vC,EAAK,CAAC,EAAG7vC,EAAI6vC,EAAK,CAAC,CAAC,EAC/DH,IAAW17D,EAAI,CAAC,EAAUqvB,EAAIrD,EAAI6vC,EAAK,CAAC,EAAG7vC,EAAI6vC,EAAK,CAAC,CAAC,EACnDjuC,GAAIiuC,EAAMA,CAAI,CACtB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,qBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,MACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,MACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CAAC,EAAG,KAAK,CAAC,CACnB,EAAG,QAAQ,CACZ,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,QACA,CAAC,GAAG,CACL,CAAC,CACF,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAW,GAAG,CAChB,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CAAC,CACnB,EAAG,QAAQ,CACZ,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAW,GAAG,CAChB,CACD,EACA,CACC,GACA,CACC,EACA,SACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CAAC,EAAG,CAAC,CAAC,GAAI,CACT,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,CAAC,CAAC,CAAC,CACJ,EACA,CACC,GACA,CACC,EACA,SACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CAAC,EAAG,CAAC,CAAC,GAAI,CACT,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,OAAQ,MAAM,CAChB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,mBAAsB,IAAMT,GAC5B,UAAW,IAAM16C,EACjB,QAAS,IAAMzgB,EACf,UAAW,IAAM+L,GACjB,UAAW,IAAMI,GACjB,UAAW,IAAMD,GACjB,QAAS,IAAMnM,EACf,UAAW,IAAMgsB,EACjB,UAAW,IAAMqD,EACjB,UAAW,IAAMzB,EAClB,CACD,CAAC,GAAK0qC,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0D,GAAsBrI,EAAgB,GAAG,CAC9CpzC,EACAtgB,EACAD,CACD,EAAGC,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAKgB,EAAQC,IAAW,CACnI,UACA,IAAMhB,EAAI16D,EAAIsuB,GAAMmsC,EAAI,CAAC,CAAC,EACpBE,EAAI36D,EAAIsuB,GAAMmsC,EAAI,CAAC,CAAC,EACpBwB,EAAW17C,EAAQ,aAAak6C,EAAI,EAAGx6D,EAAIy6D,CAAC,CAAC,EAAG,aAAaD,EAAI,EAAGx6D,EAAI06D,CAAC,CAAC,CAAC,EAC7EuB,EAASj8D,EAAI,GAAG,EACpB,QAASrE,EAAI,GAAIA,GAAK,EAAGA,IAAK,QAAS6H,EAAI,GAAIA,GAAK,EAAGA,IAAK,CAC3D,IAAM04D,EAAOb,GAAmBW,EAAUrgE,EAAG6H,EAAGi3D,EAAGC,EAAGc,EAAQC,CAAM,EACpEQ,EAAS3sC,GAAI2sC,EAAQC,CAAI,CAC1B,CACA,OAAIT,IAAW17D,EAAI,CAAC,IAAGk8D,EAAShrC,GAAKgrC,CAAM,GACpCA,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,SAAS,CAAC,CAChB,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,OACA,CACC,EACA,qBACA,CACC,WACA,IACA,IACA,IACA,IACA,SACA,QACD,CACD,CACD,EAAG,CACF,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,MAAM,CAClB,CACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CACC,GACA,CACC,EACA,SACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,SACA,IACA,CACC,EACA,WACA,CAAC,QAAQ,CACV,CACD,CAAC,CAAC,CACH,EACA,CAAC,GAAI,QAAQ,CACd,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMl8D,EACf,YAAa,IAAMsuB,GACnB,UAAW,IAAM/N,EACjB,QAAS,IAAMtgB,EACf,mBAAsB,IAAMq7D,GAC5B,UAAW,IAAM/rC,GACjB,WAAY,IAAM2B,EACnB,CACD,CAAC,GAAKonC,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8D,GAAsBzI,EAAgB,GAAG,CAC9CjzC,EACAzgB,EACAD,CACD,EAAGC,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAKgB,EAAQC,IAAW,CACnI,UACA,IAAMhB,EAAI16D,EAAIsuB,GAAMmsC,EAAI,CAAC,CAAC,EACpBE,EAAI36D,EAAIsuB,GAAMmsC,EAAI,CAAC,CAAC,EACpBM,EAAI/6D,EAAIsuB,GAAMmsC,EAAI,CAAC,CAAC,EACpBwB,EAAWv7C,EAAQ,aAAa+5C,EAAI,EAAGx6D,EAAIy6D,CAAC,CAAC,EAAG,aAAaD,EAAI,EAAGx6D,EAAI06D,CAAC,CAAC,EAAG,aAAaF,EAAI,EAAGx6D,EAAI86D,CAAC,CAAC,CAAC,EAC1GmB,EAASj8D,EAAI,GAAG,EACpB,QAASrE,EAAI,GAAIA,GAAK,EAAGA,IAAK,QAAS6H,EAAI,GAAIA,GAAK,EAAGA,IAAK,QAASE,EAAI,GAAIA,GAAK,EAAGA,IAAK,CACzF,IAAMw4D,EAAOL,GAAmBG,EAAUrgE,EAAG6H,EAAGE,EAAG+2D,EAAGC,EAAGI,EAAGU,EAAQC,CAAM,EAC1EQ,EAAS3sC,GAAI2sC,EAAQC,CAAI,CAC1B,CACA,OAAIT,IAAW17D,EAAI,CAAC,IAAGk8D,EAAShrC,GAAKgrC,CAAM,GACpCA,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,SAAS,CAAC,CAChB,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,OACA,CACC,EACA,qBACA,CACC,WACA,IACA,IACA,IACA,IACA,IACA,IACA,SACA,QACD,CACD,CACD,EAAG,CACF,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,MAAM,CAClB,CACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CACC,GACA,CACC,EACA,SACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,SACA,IACA,CACC,EACA,WACA,CAAC,QAAQ,CACV,CACD,CAAC,CAAC,CACH,EACA,CAAC,GAAI,QAAQ,CACd,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMl8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CAAC,EAAGA,EAAE,CAAC,CACxI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,SACA,CAAC,GAAG,CACL,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,EACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,EACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,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X,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,IACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,IACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM/qC,GACnB,YAAe,IAAM6uC,GACrB,UAAW,IAAMvtC,CAClB,CACD,CAAC,GAAK0oC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkF,GAAY7J,EAAgB,GAAG,CAACpzC,CAAO,EAAGG,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CACpK,UACA,IAAM9gE,EAAI20B,GAAMmsC,CAAG,EACblnC,EAAI9E,GAAMgsC,CAAG,EACbpB,EAAI9lC,EAAE,IAAIA,CAAC,EAAE,IAAIA,CAAC,EAAE,IAAIA,EAAE,IAAIA,EAAE,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EACvDkqC,EAAKlqC,EAAE,IAAIA,CAAC,EAAE,IAAIA,EAAE,IAAIA,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAChDmqC,EAAKZ,GAAOnjE,EAAE,IAAI4mB,EAAQ,EAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,EAC9Co9C,EAAKb,GAAOnjE,EAAE,IAAI4mB,EAAQ,EAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,EAC9Cq9C,EAAKd,GAAOnjE,EAAE,IAAI4mB,EAAQ,EAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,EAC9Cs9C,EAAKf,GAAOnjE,EAAE,IAAI4mB,EAAQ,EAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,EAC9Cu9C,EAAKlwC,GAAI8vC,EAAInqC,EAAE,IAAIhT,EAAQ,EAAG,CAAC,CAAC,CAAC,EACjCw9C,EAAKnwC,GAAI+vC,EAAIpqC,EAAE,IAAIhT,EAAQ,EAAG,CAAC,CAAC,CAAC,EACjCy9C,EAAKpwC,GAAIgwC,EAAIrqC,EAAE,IAAIhT,EAAQ,EAAG,CAAC,CAAC,CAAC,EACjC09C,EAAKrwC,GAAIiwC,EAAItqC,EAAE,IAAIhT,EAAQ,EAAG,CAAC,CAAC,CAAC,EACjCmvC,EAAI,aAAa,aAAa,aAAaoO,EAAIC,CAAE,EAAGC,CAAE,EAAGC,CAAE,EAC3D9xE,EAAQ,aAAa,aAAa,aAAa2xE,EAAI,aAAazE,EAAE,EAAG,aAAa0E,EAAID,CAAE,CAAC,CAAC,EAAG,aAAazE,EAAE,EAAG,aAAa2E,EAAIF,CAAE,CAAC,CAAC,EAAG,aAAa,aAAazE,EAAE,EAAGA,EAAE,CAAC,EAAG3J,CAAC,CAAC,EAC9KwO,EAAQR,EAAG,IAAIC,EAAG,IAAID,CAAE,EAAE,IAAIrE,EAAE,CAAC,CAAC,EAAE,IAAIuE,EAAG,IAAIF,CAAE,EAAE,IAAIrE,EAAE,CAAC,CAAC,EAAE,IAAIqE,EAAG,IAAIC,CAAE,EAAE,IAAIC,CAAE,EAAE,IAAIC,CAAE,EAAE,IAAI,aAAaxE,EAAE,EAAGA,EAAE,CAAC,CAAC,CAAC,EAAE,IAAIoE,EAAG,IAAIl9C,EAAQ84C,EAAE,EAAGA,EAAE,CAAC,EAAE,IAAI3J,CAAC,EAAE,IAAInvC,EAAQw9C,EAAIC,CAAE,CAAC,EAAE,IAAIF,CAAE,CAAC,CAAC,EAChM,OAAOp9C,EAAQv0B,EAAO+xE,EAAM,EAAGA,EAAM,CAAC,CACvC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,EACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,QACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM5vC,GACnB,YAAa,IAAMG,GACnB,OAAU,IAAMquC,GAChB,UAAW,IAAMv8C,EACjB,UAAW,IAAMqN,GACjB,UAAW,IAAMlN,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,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CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,YAAY,CAAC,CACnB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,YAAY,CAAC,CACnB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMhwC,GACnB,UAAW,IAAMniB,GACjB,UAAW,IAAMyU,EACjB,MAAS,IAAMu9C,GACf,YAAa,IAAM1vC,GACnB,UAAW,IAAMmB,EACjB,UAAW,IAAMrP,CAClB,CACD,CAAC,GAAK+3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACVuG,GAAclL,EAAgB,GAAG,CACpCjzC,EACAA,EACAzgB,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC3+D,EAAG45B,EAAG6pC,EAAIC,EAAIyB,IAAO,CAChI,UACA,IAAMpxD,EAAIgT,EAAQ08C,EAAIC,EAAIyB,CAAE,EAC5B,OAAOlxC,GAAI2F,EAAE,IAAI7lB,CAAC,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CA,KACD,EACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,IACA,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM/qC,GACnB,YAAe,IAAMuwC,GACrB,UAAW,IAAMjvC,CAClB,CACD,CAAC,GAAK0oC,EAAE,GAAG,CAAC,CAAC,CAAC,EACVgH,GAAa3L,EAAgB,GAAG,CACnCpzC,EACAA,EACAtgB,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAK9gE,EAAG4lE,EAAMC,EAAOpC,EAAIC,IAAO,CAC3I,UACA,OAAOzsC,GAAI,aAAa,aAAa2uC,EAAM3xC,GAAI6sC,EAAKqC,GAAOnjE,EAAE,IAAI4mB,EAAQ68C,EAAIC,CAAE,CAAC,CAAC,CAAC,CAAC,EAAGmC,CAAK,CAAC,CAC7F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,IACA,OACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAM5uC,GACjB,UAAW,IAAMhD,GACjB,OAAU,IAAMkvC,GAChB,UAAW,IAAMv8C,CAClB,CACD,CAAC,GAAK+3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRmH,GAAU9L,EAAgB,GAAG,CAClCpzC,EACAtgB,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAK8E,EAAMC,IAAU,CAChI,UACA,IAAM7lE,EAAI20B,GAAMmsC,CAAG,EACbyC,EAAKzC,EAAI,IAAI9gE,CAAC,EACd45B,EAAI2pC,EAAG,IAAIA,CAAE,EAAE,IAAI/wD,GAAI,EAAG+wD,EAAG,IAAI,CAAC,CAAC,CAAC,EAC1C,OAAOttC,EAAIA,EAAI0vC,GAAW7E,EAAK9gE,EAAG4lE,EAAMC,EAAO,EAAG,CAAC,EAAGF,GAAW7E,EAAK9gE,EAAG4lE,EAAMC,EAAO,EAAG,CAAC,EAAGjsC,EAAE,CAAC,EAAG3D,EAAI0vC,GAAW7E,EAAK9gE,EAAG4lE,EAAMC,EAAO,EAAG,CAAC,EAAGF,GAAW7E,EAAK9gE,EAAG4lE,EAAMC,EAAO,EAAG,CAAC,EAAGjsC,EAAE,CAAC,EAAGA,EAAE,CAAC,CAC/L,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,aACA,CACC,IACA,IACA,OACA,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,aACA,CACC,IACA,IACA,OACA,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,aACA,CACC,IACA,IACA,OACA,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,aACA,CACC,IACA,IACA,OACA,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMjF,GACnB,UAAW,IAAMniB,GACjB,UAAW,IAAMyjB,EACjB,WAAc,IAAM0vC,EACrB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoH,GAAS/L,EAAgB,GAAG,CAACpzC,CAAO,EAAGA,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CACjK,UACA,IAAMnuE,EAAIi0B,EAAQ+8C,GAAS7C,EAAI,IAAIl6C,EAAQ,GAAI,CAAC,CAAC,CAAC,EAAG+8C,GAAS7C,EAAI,IAAIl6C,EAAQ,EAAG,EAAE,CAAC,CAAC,CAAC,EAChFh0B,EAAIg0B,EAAQ+8C,GAAS7C,EAAI,IAAIl6C,EAAQ,GAAI,CAAC,CAAC,CAAC,EAAG+8C,GAAS7C,EAAI,IAAIl6C,EAAQ,EAAG,EAAE,CAAC,CAAC,CAAC,EACtF,OAAOj0B,EAAE,IAAIC,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAC/B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,GAAG,CAAC,CACtB,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,KAAK,CAAC,CACtB,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,GAAG,CAAC,CACtB,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,KAAK,CAAC,CACtB,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMg0B,EACjB,SAAY,IAAM+8C,EACnB,CACD,CAAC,GAAKhF,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqH,GAAUhM,EAAgB,GAAG,CAACpzC,EAAStgB,CAAG,EAAGsgB,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAK92D,IAAM,CAC1K,UACA,IAAMi8D,EAAMnF,EAAI,IAAIl6C,EAAQ,GAAI,CAAC,CAAC,EAC5Bs/C,EAAMpF,EAAI,IAAIl6C,EAAQ,EAAG,EAAE,CAAC,EAC5Bu/C,EAAMrF,EAAI,IAAIl6C,EAAQ,GAAI,CAAC,CAAC,EAC5Bw/C,EAAMtF,EAAI,IAAIl6C,EAAQ,EAAG,EAAE,CAAC,EAC5Bj0B,EAAIi0B,EAAQw+C,GAASr+C,EAAQk/C,EAAI,EAAGA,EAAI,EAAGj8D,CAAC,CAAC,EAAGo7D,GAASr+C,EAAQm/C,EAAI,EAAGA,EAAI,EAAGl8D,CAAC,CAAC,CAAC,EAClFpX,EAAIg0B,EAAQw+C,GAASr+C,EAAQo/C,EAAI,EAAGA,EAAI,EAAGn8D,CAAC,CAAC,EAAGo7D,GAASr+C,EAAQq/C,EAAI,EAAGA,EAAI,EAAGp8D,CAAC,CAAC,CAAC,EACxF,OAAOrX,EAAE,IAAIC,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAC/B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,GAAG,CAAC,CACtB,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,KAAK,CAAC,CACtB,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,GAAG,CAAC,CACtB,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,KAAK,CAAC,CACtB,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,GACD,CACD,CAAC,CACF,EAAG,CACF,EACA,WACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,GACD,CACD,CAAC,CACF,EAAG,CACF,EACA,WACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMg0B,EACjB,SAAY,IAAMw+C,GAClB,UAAW,IAAMr+C,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0H,GAAYrM,EAAgB,GAAG,CACpCpzC,EACAtgB,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAK+E,EAAOlvB,IAAU,CACjI,UACA,IAAI2vB,EAAOhgE,EAAI,CAAC,EACZrG,EAAIqG,EAAI,CAAC,EACT8J,EAAI9J,EAAI,CAAC,EACTigE,EAAK3/C,EAAQk6C,EAAI,EAAGA,EAAI,CAAC,EAC7B,QAAS/6D,EAAM,EAAGA,EAAM,EAAGA,IAAO,CACjC,IAAMygE,EAAKD,EAAG,IAAItmE,CAAC,EACfiqC,EAAIpV,GAAMH,GAAM6xC,CAAE,EAAE,IAAI5/C,EAAQ,OAAQ,MAAM,CAAC,CAAC,EACpDsjB,EAAIA,EAAE,IAAIjW,GAAIiW,EAAGA,EAAE,IAAI,MAAM,CAAC,CAAC,EAC/B,IAAMv3C,EAAI,aAAamiC,GAAM,aAAaoV,EAAE,EAAGA,EAAE,CAAC,CAAC,EAAG,GAAG,EACnDu8B,EAAK3xC,GAAM0xC,CAAE,EAAE,IAAI,EAAE,EACrBE,EAAKjzC,GAAI9gC,CAAC,EACVg0E,EAAK1vC,GAAItkC,CAAC,EACVi0E,EAAIhgD,EAAQ,aAAa,aAAa6/C,EAAG,EAAGC,CAAE,EAAG,aAAaD,EAAG,EAAGE,CAAE,CAAC,EAAG,aAAa,aAAaF,EAAG,EAAGE,CAAE,EAAG,aAAaF,EAAG,EAAGC,CAAE,CAAC,CAAC,EAC5IJ,EAAO,aAAaA,EAAM,aAAa,aAAarvC,GAAI,aAAa,aAAa2vC,EAAE,EAAG,EAAE,EAAGf,CAAK,CAAC,EAAGxuC,GAAW,IAAK,EAAGpD,GAAI2yC,EAAGA,CAAC,CAAC,CAAC,EAAG3mE,CAAC,CAAC,EACvIsmE,EAAK3/C,EAAQ,aAAa,aAAa2/C,EAAG,EAAG,GAAG,EAAG,aAAaA,EAAG,EAAG,GAAG,CAAC,EAAG,aAAa,aAAaA,EAAG,EAAG,GAAG,EAAG,aAAaA,EAAG,EAAG,GAAG,CAAC,CAAC,EAAE,IAAIjgE,EAAIP,CAAG,CAAC,EACzJqK,EAAI,aAAaA,EAAG,aAAa,EAAGnQ,CAAC,CAAC,EACtCA,EAAI,aAAaA,EAAG02C,CAAK,CAC1B,CACA,OAAO,aAAa2vB,EAAMl2D,CAAC,CAC5B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,KACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,QAAQ,EAAG,CAAC,EAAG,QAAQ,CAAC,CAC9B,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,CACL,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,OACD,CAAC,CACF,EACA,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,GAAG,EACP,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,CACD,CACD,CACD,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,QACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,OACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,OACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAM9J,EACf,UAAW,IAAMsgB,EACjB,YAAa,IAAMkO,GACnB,YAAa,IAAMH,GACnB,UAAW,IAAMV,GACjB,UAAW,IAAMR,GACjB,UAAW,IAAMwD,GACjB,iBAAkB,IAAMI,EACzB,CACD,CAAC,GAAKsnC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkI,GAAS7M,EAAgB,GAAG,CAACpzC,CAAO,EAAGtgB,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CAC7J,UACA,IAAIhsE,EAAIwR,EAAI,CAAC,EACb,QAASyvD,EAAI,EAAGA,EAAI,EAAGA,IAAK,CAC3B,IAAM+Q,EAAKxgE,EAAIyvD,CAAC,EACVjtB,EAAMnU,GAAM,aAAamyC,EAAI,CAAC,CAAC,EAC/Bj+B,EAAM,aAAai+B,EAAI,aAAah+B,EAAK,CAAC,CAAC,EACjDh0C,EAAI,aAAaA,EAAGouE,GAAOpC,EAAI,IAAIl6C,EAAQ,aAAaiiB,EAAK,CAAC,EAAG,aAAaC,EAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACzF,CACA,OAAO,aAAa,aAAa,GAAI,aAAa,aAAa,MAAOo6B,GAAOpC,CAAG,CAAC,EAAG,aAAahsE,EAAG,CAAC,CAAC,CAAC,EAAG,EAAE,CAC7G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,OAAO,EACX,IACA,CACC,EACA,SACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMwR,EACf,YAAa,IAAMquB,GACnB,OAAU,IAAMuuC,GAChB,UAAW,IAAMt8C,CAClB,CACD,CAAC,GAAK+3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACVoI,GAAmB/M,EAAgB,GAAG,CAACnzC,EAAO,EAAGxgB,CAAG,GAAoBs4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CACrK,UACA,IAAI9gE,EAAIqG,EAAI,CAAC,EACT2gE,EAAKlG,EAAI,EACTmG,EAAKnG,EAAI,EACb,QAAS7gE,EAAI,IAAKA,EAAI,EAAGA,EAAIA,GAAK,EAAG,CACpC,IAAMinE,EAAI7gE,EAAIpG,CAAC,EACTknE,EAAKltC,EAAO5zB,EAAI,CAAC,EAAGA,EAAI,CAAC,GAAI2gE,EAAKE,GAAK,CAAC,EACxCE,EAAKntC,EAAO5zB,EAAI,CAAC,EAAGA,EAAI,CAAC,GAAI4gE,EAAKC,GAAK,CAAC,EACxCG,EAAKF,GAAM,EAAIA,EAAKC,EAC1BpnE,EAAI,aAAaA,EAAG,aAAa,aAAaknE,EAAGA,CAAC,EAAGG,CAAE,CAAC,EACxD,IAAMC,EAAa,aAAajhE,EAAI,CAAC,EAAG+gE,CAAE,EACpC73D,EAAM,aAAay3D,EAAKC,EAAIK,CAAU,EAAI,aAAajhE,EAAI,aAAapG,EAAG,CAAC,CAAC,EAAGknE,EAAKG,CAAU,EACrGN,EAAKA,EAAKz3D,EACV03D,EAAKA,EAAK13D,CACX,CACA,OAAOvP,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,YACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,IACA,CACC,EACA,KACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,GAAG,CACT,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMqG,EACf,aAAc,IAAM4zB,CACrB,CACD,CAAC,GAAK0kC,EAAE,GAAG,CAAC,CAAC,CAAC,EACd3E,EAAgB,GAAG,CAACpzC,CAAO,EAAGtgB,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CAC9I,UACA,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ACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,IAAI,CACN,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,IACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,WACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,CAAC,CACF,CACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,MACD,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,iBACA,CACC,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,CAAC,GAAG,CACL,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,GACD,CACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,CACC,EACA,CACC,EACA,SACA,CAAC,OAAO,CACT,EACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,IACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,OACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMvzC,GACnB,UAAW,IAAMsC,GACjB,UAAW,IAAMxD,GACjB,UAAW,IAAM7M,EACjB,UAAW,IAAM,KAAK,GACtB,UAAW,IAAMyL,EACjB,iBAAkB,IAAMgF,GACxB,aAAc,IAAMggC,GACpB,OAAU,IAAM6L,EACjB,CACD,CAAC,GAAKvE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwJ,GAAcnO,EAAgB,GAAG,CACtCpzC,EACAtgB,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAIC,EAAMC,IAAc,CACnI,UACA,IAAIU,EAAY9hE,EAAI,CAAC,EACjBw6D,EAAMl6C,EAAQ4gD,EAAG,EAAGA,EAAG,CAAC,EACtB5tC,EAAI,aAAa,EAAG5F,GAAOqjC,GAAOmQ,CAAE,CAAC,CAAC,EAC5C,QAASxnE,EAAI,EAAGA,EAAI,EAAGA,IACtBooE,EAAY1yC,EAAI0yC,EAAWb,GAAWzG,EAAKlnC,EAAG6tC,EAAMC,CAAS,CAAC,EAC9D5G,EAAMl6C,EAAQ,aAAak6C,EAAI,EAAG,aAAaA,EAAI,EAAG,EAAE,CAAC,EAAG,aAAa,aAAaA,EAAI,EAAG,GAAG,EAAGA,EAAI,CAAC,CAAC,EAAE,IAAI,KAAK,EAErH,OAAOsH,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,aACA,CAAC,CACA,EACA,aACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,YACA,IACA,CACC,EACA,UACA,CAAC,YAAa,CACb,EACA,aACA,CACC,IACA,IACA,OACA,WACD,CACD,CAAC,CACF,CACD,EAAG,CACF,EACA,IACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CACD,CAAC,CAAC,CACH,EACA,CAAC,GAAI,WAAW,CACjB,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAM9hE,EACf,UAAW,IAAMsgB,EACjB,aAAc,IAAMoN,GACpB,aAAc,IAAMqjC,GACpB,UAAW,IAAM3hC,EACjB,WAAc,IAAM6xC,EACrB,CACD,CAAC,GAAK5I,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0J,GAAYrO,EAAgB,GAAG,CAACpzC,EAASvgB,CAAG,EAAGC,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAKwH,IAAY,CAC9K,UACA,IAAIroE,EAAIqG,EAAI,CAAC,EACT8J,EAAI9J,EAAI,CAAC,EACT,EAAIA,EAAI,CAAC,EACTigE,EAAK3/C,EAAQk6C,EAAI,EAAGA,EAAI,CAAC,EAC7B,QAAS9gE,EAAI,EAAGA,EAAIsoE,EAAStoE,IAC5BC,EAAI,aAAaA,EAAG,aAAa,EAAG0jE,GAAS4C,CAAE,CAAC,CAAC,EACjDn2D,EAAI,aAAaA,EAAG,CAAC,EACrB,EAAI,aAAa,EAAG,EAAE,EACtBm2D,EAAKA,EAAG,IAAI,CAAC,EAEd,OAAO,aAAatmE,EAAGmQ,CAAC,CACzB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,SACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,SACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,IAAI,CACN,CACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,IACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAM9J,EACf,UAAW,IAAMsgB,EACjB,SAAY,IAAM+8C,EACnB,CACD,CAAC,GAAKhF,EAAE,GAAG,CAAC,CAAC,CAAC,EACV4J,GAAWvO,EAAgB,GAAG,CAACpzC,CAAO,EAAGG,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CACjK,UACA,IAAI,EAAI/5C,EAAQ,EAAG,EAAG,CAAC,EACnBp0B,EAAI2T,EAAI,CAAC,EACTigE,EAAK3/C,EAAQk6C,EAAI,EAAGA,EAAI,CAAC,EAC7B,QAAS9gE,EAAI,EAAGA,EAAI,EAAGA,IACtB,EAAI,EAAE,IAAI6jE,GAAU0C,CAAE,EAAE,IAAI5zE,CAAC,CAAC,EAC9BA,EAAI,aAAaA,EAAG,EAAE,EACtB4zE,EAAKA,EAAG,IAAI,CAAC,EAEd,OAAO,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,GAAG,CACT,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMx/C,EACjB,QAAS,IAAMzgB,EACf,UAAW,IAAMsgB,EACjB,UAAa,IAAMi9C,EACpB,CACD,CAAC,GAAKlF,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6J,GAAUxO,EAAgB,GAAG,CAACpzC,CAAO,EAAGtgB,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CAC9J,UACA,IAAM2H,EAAKF,GAASzH,CAAG,EACvB,OAAOuH,GAAUvH,EAAI,IAAIl6C,EAAQ6hD,EAAG,EAAGA,EAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAGpiE,EAAI,CAAC,CAAC,CAC9D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,KACA,CACC,EACA,WACA,CAAC,GAAG,CACL,CACD,EAAG,CAAC,GAAI,CACP,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,SAAY,IAAMkiE,GAClB,UAAa,IAAMF,GACnB,UAAW,IAAMzhD,EACjB,QAAS,IAAMvgB,CAChB,CACD,CAAC,GAAKs4D,EAAE,GAAG,CAAC,CAAC,CAAC,EACV+J,GAAU1O,EAAgB,GAAG,CAACpzC,CAAO,EAAGA,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CAChK,UACA,IAAI,EAAIl6C,EAAQ,EAAG,CAAC,EAChBxW,EAAI9J,EAAI,CAAC,EACT3T,EAAI2T,EAAI,CAAC,EACTigE,EAAK3/C,EAAQk6C,EAAI,EAAGA,EAAI,CAAC,EAC7B,QAAS,EAAI,EAAG,EAAI,EAAG,IACtB,EAAI,EAAE,IAAIiF,GAAOQ,CAAE,EAAE,IAAI5zE,CAAC,CAAC,EAC3Byd,EAAI,aAAaA,EAAGzd,CAAC,EACrBA,EAAI,aAAaA,EAAG,EAAE,EACtB4zE,EAAKA,EAAG,IAAI,CAAC,EAEd,OAAO,EAAE,IAAIn2D,CAAC,CACf,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD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CC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,QACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,KAAK,CACP,EACA,KACD,EACA,CAAC,CACA,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,KAAK,CACP,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,SAAS,CACd,CAAC,CACF,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,IAAK,SAAS,CAChB,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,CACC,EACA,cACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,CAAC,CACF,EACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,cACA,GACD,EACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,CACD,EACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMpiD,EACjB,UAAW,IAAM,KAAK,GACtB,YAAa,IAAM+N,GACnB,QAAS,IAAMruB,EACf,OAAU,IAAM68D,GAChB,UAAW,IAAMlvC,GACjB,UAAW,IAAMyB,EACjB,UAAW,IAAMvB,GACjB,UAAW,IAAMV,GACjB,UAAW,IAAMwD,GACjB,UAAW,IAAMlQ,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuK,GAAYlP,EAAgB,GAAG,CAACpzC,CAAO,EAAGG,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAQ,CACpK,UACA,IAAIqI,EAAKtF,GAAU/C,CAAG,EAClBsI,EAAW9iE,EAAI,GAAG,EAClBs/D,EAAOt/D,EAAI,CAAC,EACZ+iE,EAAQ/iE,EAAI,CAAC,EACjB,QAAS,EAAI,EAAG,EAAI,EAAG,IAAK,CAC3B,IAAMgjE,EAAO1iD,EAAQuiD,EAAG,EAAGA,EAAG,CAAC,EACzBI,EAAO7zC,EAAIzB,GAAIq1C,EAAMA,CAAI,EAAGhjE,EAAI,IAAI,CAAC,EACrCuiE,EAAQS,EAAK,IAAIhzC,GAAIizC,EAAMjjE,EAAI,aAAa,GAAI,aAAa,GAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAC5E6iE,EAAKA,EAAG,IAAIP,GAAQ9H,EAAI,IAAI8E,CAAI,EAAGiD,CAAK,EAAE,IAAIO,CAAQ,EAAE,IAAIriD,EAAQ,EAAG6+C,EAAMA,CAAI,CAAC,CAAC,EACnFyD,EAAQ,aAAaA,EAAOD,CAAQ,EACpCA,EAAW,aAAaA,EAAU,EAAE,EACpCxD,EAAO,aAAaA,EAAM,CAAC,CAC5B,CACA,OAAOuD,EAAG,IAAIE,CAAK,CACpB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,MAAM,CAAC,CACb,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,MAAM,CAChB,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CACR,EACA,QACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,MAAM,CACR,EAAG,OAAO,CACX,EACA,KACD,EACA,CAAC,UAAU,CACZ,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,OACA,MACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,UACD,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,OAAO,CACT,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMxF,GACnB,QAAS,IAAMv9D,EACf,UAAW,IAAMsgB,EACjB,UAAW,IAAM8O,EACjB,UAAW,IAAMzB,GACjB,UAAW,IAAMqC,GACjB,QAAW,IAAMsyC,GACjB,UAAW,IAAM7hD,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACV6K,GAAWxP,EAAgB,GAAG,CAACpzC,EAASvgB,CAAG,EAAGugB,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAKwH,IAAY,CAC/K,UACA,IAAIroE,EAAI2mB,EAAQ,EAAG,CAAC,EAChBxW,EAAI9J,EAAI,CAAC,EACT,EAAIA,EAAI,CAAC,EACTigE,EAAK3/C,EAAQk6C,EAAI,EAAGA,EAAI,CAAC,EAC7B,QAAS9gE,EAAI,EAAGA,EAAIsoE,EAAStoE,IAC5BC,EAAIA,EAAE,IAAIszB,EAAMwyC,GAAOQ,CAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,EAAG3/C,EAAQ,EAAG,CAAC,EAAGA,EAAQ,EAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAChFxW,EAAI,aAAaA,EAAG,CAAC,EACrB,EAAI,aAAa,EAAG,EAAE,EACtBm2D,EAAKA,EAAG,IAAI,CAAC,EAEd,OAAOtmE,EAAE,IAAImQ,CAAC,CACf,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,SACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,SACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,CACC,EACA,UACA,CAAC,CAA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,EAAK,aAAahK,EAAI,EAAG8J,CAAO,EAChCG,EAAK,aAAajK,EAAI,EAAG+J,CAAO,EACtC,OAAOjkD,EAAQ,aAAa,aAAa,aAAakkD,EAAIb,CAAI,EAAG,aAAac,EAAIb,CAAI,CAAC,EAAGU,CAAO,EAAG,aAAa,aAAa,aAAaE,EAAIZ,CAAI,EAAG,aAAaa,EAAId,CAAI,CAAC,EAAGY,CAAO,CAAC,CACxL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,SACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,EACA,IACA,SACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,EACA,IACA,SACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,UAAW,IAAMjkD,CAAQ,CACvC,CAAC,GAAK+3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqM,GAAwBhR,EAAgB,GAAG,CAChDpzC,EACAtgB,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmC,EAAKmJ,EAAMC,IAAS,CAC/H,UACA,OAAO,aAAa,aAAapJ,EAAI,EAAGmJ,CAA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AG,CAAC,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,GACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,WACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,aACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,WACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,aACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,IACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,cACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,cACA,CAAC,OAAO,CACT,EACA,IACA,QACD,EACA,IACA,QACD,CACD,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,cACA,IACA,CACC,EACA,SACA,IACA,QACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,YACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,SACA,IACA,aACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,cAAe,aAAa,CAC9B,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMzmE,EACf,QAAS,IAAMC,EACf,EAAK,IAAM4lE,EACX,UAAW,IAAMz4C,GACjB,OAAU,IAAM,mBAChB,UAAW,IAAMwD,GACjB,UAAW,IAAMrQ,EACjB,aAAc,IAAMqT,EACpB,YAAe,IAAMoyC,CACtB,CACD,CAAC,GAAK1N,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGtsE,CAAI,GAAG25B,CAAM,EAAE,CACzC,KAAO,CACN,IAAMqgD,EAAcX,EACpBtO,EAAQpD,EAAgB,GAAG,CAC1BpzC,EACAtgB,EACAA,EACAA,EACAA,EACAA,EACAygB,EACAzgB,CACD,EAAGsgB,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAMq4D,EAAUC,EAAYC,EAAaC,EAAUvN,EAAMkO,EAAOT,IAAgB,CAC/L,UACA,IAAI/G,EAAO0G,EACPe,EAAM/mE,EAAI,CAAC,EACXumE,EAAcvmE,EAAI,CAAC,EACnBwmE,EAAcxmE,EAAI,CAAC,EACvB,QAASyN,EAAI,EAAGA,EAAIm4D,EAAKn4D,IAAK,CAC7B,IAAMu5D,EAAKhnE,EAAIyN,CAAC,EACVo5D,EAASlzC,EAAO3zB,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGgnE,EAAKX,CAAW,EAChDt9B,EAAMg9B,EAAYzlD,EAAQ,aAAa3S,EAAK,EAAG2xD,CAAI,EAAG,aAAa3xD,EAAK,EAAG2xD,CAAI,CAAC,EAAG,aAAa6G,EAAU,aAAaa,EAAInB,CAAW,CAAC,EAAG,aAAajN,EAAM,aAAaoO,EAAIlB,CAAW,CAAC,EAAGgB,EAAM,EAAGA,EAAM,EAAGA,EAAM,CAAC,EAC5NP,EAAc,aAAaA,EAAa,aAAa,aAAax9B,EAAKg+B,CAAG,EAAGF,CAAM,CAAC,EACpFL,EAAc,aAAaA,EAAa,aAAaO,EAAKF,CAAM,CAAC,EACjEE,EAAM,aAAaA,EAAKb,CAAW,EACnC5G,EAAO,aAAaA,EAAM2G,CAAU,CACrC,CACA,OAAO3lD,EAAQimD,EAAaC,CAAW,CACxC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,UACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,GACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,IACA,aACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,GACD,EACA,IACA,MACD,EAAG,CACF,EACA,CACC,EACA,OACA,GACD,EACA,IACA,MACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,IACA,CACC,EACA,KACA,IACA,aACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,OACA,IACA,CACC,EACA,KACA,IACA,aACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,cACA,CACC,MACA,QACA,UACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,cACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,QACD,CACD,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,cACA,IACA,CACC,EACA,MACA,IACA,QACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,aACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,YACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,cAAe,aAAa,CAC9B,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMxmE,EACf,EAAK,IAAM4lE,EACX,aAAc,IAAMjyC,EACpB,UAAW,IAAMrT,EACjB,YAAe,IAAMulD,EACrB,YAAe,IAAMC,EACrB,YAAe,IAAMC,CACtB,CACD,CAAC,GAAK1N,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGtsE,CAAI,GAAG25B,CAAM,EAAE,CACzC,CACA,OAAAigD,GAAS,IAAIt0E,EAAKylE,CAAK,EAChBA,CACR,CACA,IAAI6O,GAA2B,IAAI,IAC/BsB,GAAkB,CACrB,EAAG,CAAC,CACH,GACA,IACA,CACD,EAAG,CACF,IACA,IACA,GACD,CAAC,EACD,EAAG,CAAC,CACH,IACA,IACA,GACD,EAAG,CACF,IACA,IACA,GACD,CAAC,CACF,EACA,SAASC,GAAY9B,EAAS7lE,EAAU,CAAC,EAAG,CAC3C,GAAM,CAAE,QAAAwe,EAAUkpD,GAAiB,KAAAl7E,EAAO,aAAc,EAAIwT,EACtDlO,EAAM,GAAG8zE,GAAUC,CAAO,CAAC,IAAIr5E,CAAI,IAAI,KAAK,UAAUgyB,CAAO,CAAC,GAC9DxK,EAAS4zD,GAAU,IAAI91E,CAAG,EAChC,GAAIkiB,EAAQ,OAAOA,EACnB,IAAM6zD,EAAYhC,EACZ,CAACiC,EAAIC,EAAIC,CAAE,EAAIxpD,EAAQ,EAAE,CAAC,EAC1B,CAACypD,EAAKC,EAAKC,CAAG,EAAI3pD,EAAQ,EAAE,CAAC,EAC7B,CAAC4pD,EAAIC,EAAIC,CAAE,EAAI9pD,EAAQ,EAAE,CAAC,EAC1B,CAAC+pD,EAAKC,EAAKC,CAAG,EAAIjqD,EAAQ,EAAE,CAAC,EAC7B+4C,EAAQpD,EAAgB,GAAG,CAChCjzC,EACAzgB,EACAA,CACD,EAAGygB,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC4L,EAAK/kE,EAAG+oE,IAAe,CACtI,UACA,IAAMC,EAAKd,EAAUnD,EAAI,IAAIxjD,EAAQ,aAAavhB,EAAGmoE,CAAE,EAAG,aAAanoE,EAAGooE,CAAE,EAAGC,CAAE,CAAC,CAAC,EAC7EY,EAAKf,EAAUnD,EAAI,IAAIxjD,EAAQ+mD,EAAKC,EAAK,aAAavoE,EAAGwoE,CAAG,CAAC,CAAC,CAAC,EAC/DU,EAAUnE,EAAI,IAAIxjD,EAAQynD,EAAIC,EAAI,CAAC,EAAE,IAAIF,CAAU,CAAC,EACpDpH,EAAKuG,EAAUgB,EAAQ,IAAI3nD,EAAQknD,EAAIC,EAAI,aAAa1oE,EAAG2oE,CAAE,CAAC,CAAC,CAAC,EAChE/G,EAAKsG,EAAUgB,EAAQ,IAAI3nD,EAAQqnD,EAAKC,EAAK,aAAa7oE,EAAG8oE,CAAG,CAAC,CAAC,CAAC,EACzE,OAAO/D,EAAI,IAAIxjD,EAAQogD,EAAIC,EAAI,CAAC,EAAE,IAAImH,CAAU,CAAC,CAClD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,IACA,IACA,IACD,EACA,CACC,EACA,IACA,IACA,IACD,EACA,IACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,MACA,MACA,CACC,EACA,IACA,IACA,KACD,CACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACD,EACA,CAAC,YAAY,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,IACA,IACD,CACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,MACA,MACA,CACC,EACA,IACA,IACA,KACD,CACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACD,EACA,CAAC,YAAY,CACd,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMb,EACnB,UAAW,IAAM3mD,EACjB,GAAM,IAAM4mD,EACZ,GAAM,IAAMC,EACZ,GAAM,IAAMC,EACZ,IAAO,IAAMC,EACb,IAAO,IAAMC,EACb,IAAO,IAAMC,EACb,GAAM,IAAMC,EACZ,GAAM,IAAMC,EACZ,GAAM,IAAMC,EACZ,IAAO,IAAMC,EACb,IAAO,IAAMC,EACb,IAAO,IAAMC,CACd,CACD,CAAC,GAAK3P,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMtsE,CAAI,EAC1B,OAAAo7E,GAAU,IAAI91E,EAAKylE,CAAK,EACjBA,CACR,CACA,SAASuR,GAAYjD,EAAS7lE,EAAU,CAAC,EAAG,CAC3C,GAAM,CAAE,QAAAwe,EAAUkpD,GAAiB,KAAAl7E,EAAO,aAAc,EAAIwT,EACtDlO,EAAM,KAAK8zE,GAAUC,CAAO,CAAC,IAAIr5E,CAAI,IAAI,KAAK,UAAUgyB,CAAO,CAAC,GAChExK,EAAS4zD,GAAU,IAAI91E,CAAG,EAChC,GAAIkiB,EAAQ,OAAOA,EACnB,IAAM6zD,EAAYhC,EACZ,CAACiC,EAAIC,EAAIC,CAAE,EAAIxpD,EAAQ,EAAE,CAAC,EAC1B,CAACypD,EAAKC,EAAKC,CAAG,EAAI3pD,EAAQ,EAAE,CAAC,EAC7B+4C,EAAQpD,EAAgB,GAAG,CAChCjzC,EACAzgB,EACAA,CACD,EAAGygB,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC4L,EAAK/kE,EAAG+oE,IAAe,CACtI,UACA,IAAMC,EAAKd,EAAUnD,EAAI,IAAIxjD,EAAQ,aAAavhB,EAAGmoE,CAAE,EAAG,aAAanoE,EAAGooE,CAAE,EAAGC,CAAE,CAAC,CAAC,EAC7EY,EAAKf,EAAUnD,EAAI,IAAIxjD,EAAQ+mD,EAAKC,EAAK,aAAavoE,EAAGwoE,CAAG,CAAC,CAAC,CAAC,EACrE,OAAOzD,EAAI,IAAIxjD,EAAQynD,EAAIC,EAAI,CAAC,EAAE,IAAIF,CAAU,CAAC,CAClD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,IACA,IACA,IACD,EACA,CACC,EACA,IACA,IACA,IACD,EACA,IACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,MACA,MACA,CACC,EACA,IACA,IACA,KACD,CACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACD,EACA,CAAC,YAAY,CACd,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMb,EACnB,UAAW,IAAM3mD,EACjB,GAAM,IAAM4mD,EACZ,GAAM,IAAMC,EACZ,GAAM,IAAMC,EACZ,IAAO,IAAMC,EACb,IAAO,IAAMC,EACb,IAAO,IAAMC,CACd,CACD,CAAC,GAAKrP,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMtsE,CAAI,EAC1B,OAAAo7E,GAAU,IAAI91E,EAAKylE,CAAK,EACjBA,CACR,CACA,IAAIqQ,GAA4B,IAAI,IAC9BmB,IAAoB5U,EAAgB,GAAG,CAC5CpzC,EACAtgB,EACAsgB,EACAtgB,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAI1e,EAAQ2hB,EAAQoE,EAAQC,IAAY,CACnJ,UACA,IAAMC,EAAWnoD,EAAQ,aAAa4gD,EAAG,EAAG1e,CAAM,EAAG0e,EAAG,CAAC,EACnDwH,EAAYpoD,EAAQ,aAAa6jD,EAAO,EAAG3hB,CAAM,EAAG,aAAa,EAAG2hB,EAAO,CAAC,CAAC,EAC7EjI,EAAOxuC,GAAO+6C,EAAS,IAAIC,CAAS,CAAC,EAC3C,OAAO33C,GAAWw3C,EAAQ,aAAaA,EAAQC,CAAO,EAAGtM,CAAI,CAC9D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,WAAW,CACb,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,iBACA,CACC,SACA,CACC,EACA,SACA,IACA,SACD,EACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM57C,EACjB,aAAc,IAAMoN,GACpB,iBAAkB,IAAMqD,EACzB,CACD,CAAC,GAAKsnC,EAAE,GAAG,CAAC,CAAC,CAAC,EACVsQ,GAAqB,IACrBC,GAAc,YACdC,GAAc,EACZC,GAAgBpV,EAAgB,GAAG,CACxC1zD,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGsgB,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoO,EAAI10D,EAAO6mD,EAAM8M,EAAOljB,EAAQ2jB,IAAa,CAC5J,UACA,IAAMxB,EAAQ,aAAa,aAAa8B,EAAI,kBAAkB,EAAG,aAAa9J,GAAO,aAAa,aAAa/D,EAAM,KAAK,EAAG,KAAK,CAAC,EAAGb,EAAG,CAAC,EACpI1sC,EAAI4F,GAAK,aAAa,aAAaw1C,EAAI,EAAE,EAAG10D,CAAK,CAAC,EAClD7L,EAAI22D,GAAOv8C,EAAQ,aAAa,aAAammD,EAAI,IAAI,EAAG,IAAI,EAAG,aAAa,aAAa7N,EAAM,KAAK,EAAG,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,GAAG,EAC/HmQ,EAAKlM,GAAOv8C,EAAQ,aAAa,aAAammD,EAAI,IAAI,EAAG,KAAK,EAAG,aAAa,aAAa7N,EAAM,IAAI,EAAG,IAAI,CAAC,CAAC,EAAE,IAAIb,EAAG,EACvHiR,EAAK,aAAa,GAAI,aAAarM,GAAO,aAAa,aAAa,aAAa8J,EAAI,KAAK,EAAG,aAAa7N,EAAM,IAAI,CAAC,EAAG,IAAI,CAAC,EAAG,EAAE,CAAC,EACnIqQ,EAAKt4C,GAAI,aAAa,aAAa,aAAaw1C,EAAUwC,EAAkB,EAAGK,CAAE,EAAGD,EAAG,CAAC,CAAC,EACzFG,EAAK/7C,GAAI,aAAa,aAAa,aAAa,aAAag5C,EAAUwC,EAAkB,EAAGK,CAAE,EAAG,IAAI,EAAGD,EAAG,CAAC,CAAC,EAC7GI,EAAK,aAAa,aAAa,aAAa,aAAah8C,GAAIw3C,CAAK,EAAGt5C,CAAC,EAAG,GAAG,EAAGnlB,EAAE,CAAC,EAAG,aAAa,aAAa+iE,EAAIvD,CAAK,EAAG,GAAG,CAAC,EAC/H0D,EAAK,aAAa,aAAa,aAAa,aAAaz4C,GAAIg0C,CAAK,EAAGt5C,CAAC,EAAG,GAAG,EAAGnlB,EAAE,CAAC,EAAG,aAAa,aAAagjE,EAAIxD,CAAK,EAAG,GAAG,CAAC,EACrI,OAAOplD,EAAQ,aAAa,aAAa,GAAI6oD,CAAE,EAAG3mB,CAAM,EAAG,aAAa,GAAI4mB,CAAE,CAAC,CAChF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,QACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EACA,KACD,EACA,CAAC,CAAC,EAAG,MAAM,CAAC,CACb,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,WACA,IACA,oBACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,IACA,oBACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,OAAO,CACT,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,OACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,OAAO,CACT,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,OACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,IACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,KAAK,EACT,IACA,IACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM,mBAChB,OAAU,IAAMzM,GAChB,IAAO,IAAM5E,GACb,WAAY,IAAM9mC,GAClB,OAAU,IAAM4rC,GAChB,UAAW,IAAMv8C,EACjB,UAAW,IAAMqQ,GACjB,mBAAsB,IAAMg4C,GAC5B,UAAW,IAAMx7C,EAClB,CACD,CAAC,GAAKkrC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgR,GAAuB3V,EAAgB,GAAG,CAC/CpzC,EACAtgB,EACAA,EACA6R,GAAQ8O,EAASkoD,GAAc,CAAC,EAChC7oE,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiI,EAAGvuD,EAAO6mD,EAAM0Q,EAASC,IAAU,CAC9I,UACA,IAAIC,EAAMxpE,EAAI,CAAC,EACXwjE,EAAMxjE,EAAI,CAAC,EACTypE,EAAc9M,GAAO,aAAa,aAAa/D,EAAM,IAAI,EAAG,GAAG,CAAC,EACtE,QAASl/D,EAAI,EAAGA,EAAImvE,GAAanvE,IAAK,CACrC,IAAM+sE,EAAKzmE,EAAItG,CAAC,EACVmtE,EAASlzC,EAAO3zB,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGymE,EAAK,aAAa10D,EAAO,EAAE,CAAC,EAC5D23D,EAAOJ,EAAQ,aAAa5vE,EAAG,CAAC,CAAC,EACjCiwE,EAASh2C,EAAO+1C,EAAK,GAAIA,EAAK,IAAKhwE,EAAI,KAAO,CAAC,EAC/CwiE,EAAO9sC,EAAI1B,GAAO4yC,EAAE,IAAIqJ,CAAM,CAAC,EAAG,GAAG,EACrC/lE,EAAI,aAAaijE,EAAQ72C,GAAIksC,EAAMqN,CAAK,CAAC,EACzCK,EAAKp7C,GAAM,aAAa,aAAai4C,EAAImC,EAAW,EAAGa,CAAW,CAAC,EACzED,EAAM,aAAaA,EAAK,aAAa5lE,EAAGgmE,CAAE,CAAC,EAC3CpG,EAAM,aAAaA,EAAK5/D,CAAC,CAC1B,CACA,OAAO,aAAa4lE,EAAKp6C,EAAIo0C,EAAK,IAAI,CAAC,CACxC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,OACA,IACD,EACA,CACC,EACA,OACA,IACD,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,OAAO,CACjB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,aACD,EACA,IACA,aACD,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,MAAO,CAAC,EAAG,UAAU,CAAC,CACxB,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMxjE,EACf,OAAU,IAAM28D,GAChB,YAAe,IAAMkM,GACrB,aAAc,IAAMl1C,EACpB,UAAW,IAAMvE,EACjB,aAAc,IAAM1B,GACpB,UAAW,IAAMsC,GACjB,YAAa,IAAMxB,GACnB,YAAe,IAAMo6C,EACtB,CACD,CAAC,GAAKvQ,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwR,GAAenW,EAAgB,GAAG,CACvCpzC,EACAtgB,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiI,EAAGvuD,EAAO6mD,EAAM8M,EAAOljB,EAAQ2jB,EAAUoD,IAAU,CAC9J,UACA,IAAIC,EAAMxpE,EAAI,CAAC,EACXwjE,EAAMxjE,EAAI,CAAC,EACf,QAAStG,EAAI,EAAGA,EAAImvE,GAAanvE,IAAK,CACrC,IAAM+sE,EAAKzmE,EAAItG,CAAC,EACVmtE,EAASlzC,EAAO3zB,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGymE,EAAK,aAAa10D,EAAO,EAAE,CAAC,EAC5D43D,EAASb,GAAcrC,EAAI10D,EAAO6mD,EAAM8M,EAAOljB,EAAQ2jB,CAAQ,EAC/DjK,EAAO9sC,EAAI1B,GAAO4yC,EAAE,IAAIqJ,CAAM,CAAC,EAAG,GAAG,EACrC/lE,EAAI,aAAaijE,EAAQ72C,GAAIksC,EAAMqN,CAAK,CAAC,EACzCK,EAAKp7C,GAAM,aAAa,aAAai4C,EAAImC,EAAW,EAAGjM,GAAO,aAAa,aAAa/D,EAAM,IAAI,EAAG,GAAG,CAAC,CAAC,CAAC,EACjH4Q,EAAM,aAAaA,EAAK,aAAa5lE,EAAGgmE,CAAE,CAAC,EAC3CpG,EAAM,aAAaA,EAAK5/D,CAAC,CAC1B,CACA,OAAO,aAAa4lE,EAAKp6C,EAAIo0C,EAAK,IAAI,CAAC,CACxC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,gBACA,CACC,KACA,QACA,OACA,QACA,SACA,UACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,OAAO,CACjB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,aACD,EACA,IACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,MAAO,CAAC,EAAG,UAAU,CAAC,CACxB,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMxjE,EACf,YAAe,IAAM6oE,GACrB,aAAc,IAAMl1C,EACpB,cAAiB,IAAMm1C,GACvB,UAAW,IAAM15C,EACjB,aAAc,IAAM1B,GACpB,UAAW,IAAMsC,GACjB,YAAa,IAAMxB,GACnB,YAAe,IAAMo6C,GACrB,OAAU,IAAMjM,EACjB,CACD,CAAC,GAAKtE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRyR,GAAkBpW,EAAgB,GAAG,CAC1CpzC,EACAtgB,EACAA,EACAsgB,EACAA,EACAtgB,EACAA,CACD,EAAG2gB,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AAG,UAAU,CACf,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,UAAW,IAAMzsD,CAAQ,CACvC,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgU,GAAa3Y,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8U,GAAQ,CACrK,UACA,IAAM9hD,EAAI8hD,EAAI,EACRvpC,EAAIupC,EAAI,EACR7gF,EAAI6gF,EAAI,EACRxjB,EAAI,aAAa,aAAa,aAAat+B,EAAG,WAAW,EAAG,aAAauY,EAAG,WAAW,CAAC,EAAG,aAAat3C,EAAG,WAAW,CAAC,EACvHwd,EAAI,aAAa,aAAauhB,EAAG,WAAW,EAAG,aAAa,aAAauY,EAAG,WAAW,EAAG,aAAat3C,EAAG,WAAW,CAAC,CAAC,EACvHqN,EAAI,aAAa,aAAa,aAAa0xB,EAAG,WAAW,EAAG,aAAauY,EAAG,WAAW,CAAC,EAAG,aAAat3C,EAAG,WAAW,CAAC,EACvH8gF,EAAK,aAAa38C,GAAKk5B,CAAC,EAAG35B,GAAIjE,EAAI49B,CAAC,EAAG,aAAa,EAAG,CAAC,CAAC,CAAC,EAC1D5/C,EAAK,aAAa0mB,GAAK3mB,CAAC,EAAGkmB,GAAIjE,EAAIjiB,CAAC,EAAG,aAAa,EAAG,CAAC,CAAC,CAAC,EAC1DujE,EAAK,aAAa58C,GAAK92B,CAAC,EAAGq2B,GAAIjE,EAAIpyB,CAAC,EAAG,aAAa,EAAG,CAAC,CAAC,CAAC,EAChE,OAAO8mB,EAAQ,aAAa,aAAa,aAAa2sD,EAAI,WAAW,EAAG,aAAarjE,EAAI,UAAU,CAAC,EAAG,aAAasjE,EAAI,WAAW,CAAC,EAAG,aAAa,aAAa,aAAaD,EAAI,YAAY,EAAG,aAAarjE,EAAI,WAAW,CAAC,EAAG,aAAasjE,EAAI,WAAW,CAAC,EAAG,aAAa,aAAa,aAAaD,EAAI,WAAW,EAAG,aAAarjE,EAAI,WAAW,CAAC,EAAG,aAAasjE,EAAI,UAAU,CAAC,CAAC,CACxX,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,WACA,CAAC,GAAG,CACL,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,WACA,CAAC,GAAG,CACL,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,WACA,CAAC,GAAG,CACL,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,aAAa,CAClB,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,aAAa,CAClB,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,aAAa,CAClB,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAM58C,GAClB,UAAW,IAAMT,GACjB,UAAW,IAAMjE,EACjB,UAAW,IAAMtL,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0T,GAAarY,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMiV,GAAQ,CACrK,UACA,IAAMC,EAAID,EAAI,EACRjhF,EAAIihF,EAAI,EACRhhF,EAAIghF,EAAI,EACRF,EAAK,aAAa,aAAaG,EAAG,aAAalhF,EAAG,WAAW,CAAC,EAAG,aAAaC,EAAG,WAAW,CAAC,EAC7Fyd,EAAK,aAAa,aAAawjE,EAAG,aAAalhF,EAAG,WAAW,CAAC,EAAG,aAAaC,EAAG,WAAW,CAAC,EAC7F+gF,EAAK,aAAa,aAAaE,EAAG,aAAalhF,EAAG,WAAW,CAAC,EAAG,aAAaC,EAAG,WAAW,CAAC,EAC7Fq9D,EAAI35B,GAAIo9C,EAAI,CAAC,EACbtjE,EAAIkmB,GAAIjmB,EAAI,CAAC,EACbpQ,EAAIq2B,GAAIq9C,EAAI,CAAC,EACnB,OAAO5sD,EAAQ,aAAa,aAAa,aAAakpC,EAAG,YAAY,EAAG,aAAa7/C,EAAG,YAAY,CAAC,EAAG,aAAanQ,EAAG,WAAW,CAAC,EAAG,aAAa,aAAa,aAAagwD,EAAG,aAAa,EAAG,aAAa7/C,EAAG,YAAY,CAAC,EAAG,aAAanQ,EAAG,WAAW,CAAC,EAAG,aAAa,aAAa,aAAagwD,EAAG,YAAY,EAAG,aAAa7/C,EAAG,WAAW,CAAC,EAAG,aAAanQ,EAAG,WAAW,CAAC,CAAC,CACtX,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,aAAa,CAClB,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,aAAa,CAClB,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMq2B,GACjB,UAAW,IAAMvP,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRyT,GAAepY,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMiV,GAAQ,CACvK,UACA,IAAMC,EAAID,EAAI,EACRjhF,EAAIihF,EAAI,EACRhhF,EAAIghF,EAAI,EACd,OAAO7sD,EAAQ8sD,EAAGt8C,GAAK,aAAa,aAAa5kC,EAAGA,CAAC,EAAG,aAAaC,EAAGA,CAAC,CAAC,CAAC,EAAGugC,GAAMvgC,EAAGD,CAAC,CAAC,CAC1F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,IAAK,GAAG,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAM4kC,GAClB,YAAa,IAAMpE,GACnB,UAAW,IAAMpM,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2T,GAAetY,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmV,GAAQ,CACvK,UACA,IAAMD,EAAIC,EAAI,EACRC,EAAID,EAAI,EACRlsE,EAAIksE,EAAI,EACd,OAAO/sD,EAAQ8sD,EAAG,aAAaE,EAAGtgD,GAAI7rB,CAAC,CAAC,EAAG,aAAamsE,EAAG98C,GAAIrvB,CAAC,CAAC,CAAC,CACnE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMmf,EACjB,UAAW,IAAM0M,GACjB,UAAW,IAAMwD,EAClB,CACD,CAAC,GAAK0nC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkU,GAAoB7Y,EAAgB,GAAG,CAC5C1zD,EACAA,EACAA,CACD,EAAGygB,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAClyD,EAAGxK,EAAG+xE,IAAW,CAChI,UACA,IAAIriD,EAAIrrB,EAAI,CAAC,EACT4jC,EAAI5jC,EAAI,CAAC,EACT1T,EAAI0T,EAAI,CAAC,EACb,OAAI0tE,EAAS,GACZriD,EAAIllB,EACJy9B,EAAIjoC,GACM+xE,EAAS,GACnBriD,EAAI1vB,EACJioC,EAAIz9B,GACMunE,EAAS,GACnB9pC,EAAIz9B,EACJ7Z,EAAIqP,GACM+xE,EAAS,GACnB9pC,EAAIjoC,EACJrP,EAAI6Z,GACMunE,EAAS,GACnBriD,EAAI1vB,EACJrP,EAAI6Z,IAEJklB,EAAIllB,EACJ7Z,EAAIqP,GAEE8kB,EAAQ4K,EAAGuY,EAAGt3C,CAAC,CACvB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,IACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,GACD,CAAC,CAAC,EACF,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,IACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,GACD,CAAC,CAAC,EACF,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,IACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,GACD,CAAC,CAAC,EACF,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,IACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,GACD,CAAC,CAAC,EACF,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,IACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,GACD,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,EACA,IACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,GACD,CAAC,CAAC,CACH,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAM0T,EACf,UAAW,IAAMygB,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6T,GAAWxY,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8U,GAAQ,CACnK,UACA,IAAM9hD,EAAI8hD,EAAI,EACRvpC,EAAIupC,EAAI,EACR7gF,EAAI6gF,EAAI,EACRQ,EAASv+C,EAAIA,EAAI/D,EAAGuY,CAAC,EAAGt3C,CAAC,EACzBshF,EAASt+C,GAAIA,GAAIjE,EAAGuY,CAAC,EAAGt3C,CAAC,EACzBuhF,EAAQ,aAAaF,EAAQC,CAAM,EACnCjkB,EAAI,aAAa,aAAagkB,EAAQC,CAAM,EAAG,EAAE,EACjDE,EAAW1+C,EAAI,aAAa,EAAGrD,EAAI,aAAa,aAAa49B,EAAG,CAAC,EAAG,CAAC,CAAC,CAAC,EAAG6iB,EAAO,EACjF7yE,EAAI,aAAak0E,EAAOC,CAAQ,EAChCC,EAASJ,IAAWtiD,EACpB2iD,EAASL,IAAW/pC,EACpBqqC,EAAO,aAAa,aAAarqC,EAAGt3C,CAAC,EAAG8iC,EAAIy+C,EAAOrB,EAAO,CAAC,EAC3D0B,EAAO,aAAa,EAAG,aAAa,aAAa5hF,EAAG++B,CAAC,EAAG+D,EAAIy+C,EAAOrB,EAAO,CAAC,CAAC,EAC5E2B,EAAQx6C,EAAOA,EAAO,aAAa,EAAG,aAAa,aAAatI,EAAGuY,CAAC,EAAGxU,EAAIy+C,EAAOrB,EAAO,CAAC,CAAC,EAAG0B,EAAMF,CAAM,EAAGC,EAAMF,CAAM,EAC/H,OAAOttD,EAAQ,aAAa0tD,EAAO1B,EAAS,EAAG9yE,EAAGgwD,CAAC,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,GAAG,CACV,EAAG,GAAG,CACP,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,GAAG,CACV,EAAG,GAAG,CACP,CACD,EACA,CACC,GACA,QACA,CACC,EACA,SACA,IACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EAAG,SAAS,CACb,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,IACA,UACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,MACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,MACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,QAAS,SAAS,CACpB,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,QAAS,SAAS,CACpB,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,QAAS,SAAS,CACpB,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CACC,OACA,OACA,QACD,CACD,EACA,OACA,QACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,IACA,WACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMv6B,EACjB,UAAW,IAAME,GACjB,UAAW,IAAMvD,EACjB,QAAW,IAAMygD,GACjB,aAAc,IAAM74C,EACpB,UAAa,IAAM84C,GACnB,UAAW,IAAMhsD,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkS,GAAW7W,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM+V,GAAQ,CACnK,UACA,IAAM9sE,EAAI8sE,EAAI,EACRz0E,EAAIy0E,EAAI,EACRzkB,EAAIykB,EAAI,EACRjoE,EAAI,aAAaxM,EAAG,aAAa,EAAGoyB,EAAI,aAAa,aAAa49B,EAAG,CAAC,EAAG,CAAC,CAAC,CAAC,CAAC,EAC7E0kB,EAAS,aAAa/sE,EAAGmrE,EAAS,EAClC9wE,EAAI,aAAawK,EAAG,aAAa,EAAG4lB,EAAI,aAAazf,GAAI+hE,EAAQ,CAAC,EAAG,CAAC,CAAC,CAAC,CAAC,EACzEvkE,EAAI,aAAa6/C,EAAG,aAAaxjD,EAAG,EAAE,CAAC,EAC7C,OAAOomE,GAAkBpmE,EAAGxK,EAAG0yB,GAAMggD,CAAM,CAAC,EAAE,IAAIvkE,CAAC,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,IACA,WACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,QAAQ,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,oBACA,CACC,IACA,IACA,QACD,CACD,EACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMiiB,EACjB,UAAa,IAAM0gD,GACnB,UAAW,IAAMngE,GACjB,YAAa,IAAM+hB,GACnB,kBAAqB,IAAMk+C,EAC5B,CACD,CAAC,GAAKlU,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8T,GAAWzY,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8U,GAAQ,CACnK,UACA,IAAM9hD,EAAI8hD,EAAI,EACRvpC,EAAIupC,EAAI,EACR7gF,EAAI6gF,EAAI,EACRQ,EAASv+C,EAAIA,EAAI/D,EAAGuY,CAAC,EAAGt3C,CAAC,EACzBshF,EAASt+C,GAAIA,GAAIjE,EAAGuY,CAAC,EAAGt3C,CAAC,EACzBuhF,EAAQ,aAAaF,EAAQC,CAAM,EACnCp/E,EAAIm/E,EACJh0E,EAAI,aAAak0E,EAAOz+C,EAAIu+C,EAAQnB,EAAO,CAAC,EAC5CuB,EAASJ,IAAWtiD,EACpB2iD,EAASL,IAAW/pC,EACpBqqC,EAAO,aAAa,aAAarqC,EAAGt3C,CAAC,EAAG8iC,EAAIy+C,EAAOrB,EAAO,CAAC,EAC3D0B,EAAO,aAAa,EAAG,aAAa,aAAa5hF,EAAG++B,CAAC,EAAG+D,EAAIy+C,EAAOrB,EAAO,CAAC,CAAC,EAC5E2B,EAAQx6C,EAAOA,EAAO,aAAa,EAAG,aAAa,aAAatI,EAAGuY,CAAC,EAAGxU,EAAIy+C,EAAOrB,EAAO,CAAC,CAAC,EAAG0B,EAAMF,CAAM,EAAGC,EAAMF,CAAM,EAC/H,OAAOttD,EAAQ,aAAa0tD,EAAO1B,EAAS,EAAG9yE,EAAGnL,CAAC,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,GAAG,CACV,EAAG,GAAG,CACP,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,GAAG,CACV,EAAG,GAAG,CACP,CACD,EACA,CACC,GACA,QACA,CACC,EACA,SACA,IACA,QACD,CACD,EACA,CACC,GACA,IACA,QACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,SAAU,SAAS,CACrB,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,MACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,MACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,QAAS,SAAS,CACpB,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,QAAS,SAAS,CACpB,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,QAAS,SAAS,CACpB,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CACC,OACA,OACA,QACD,CACD,EACA,OACA,QACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,IACA,WACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM4gC,EACjB,UAAW,IAAME,GACjB,QAAW,IAAMk9C,GACjB,aAAc,IAAM74C,EACpB,UAAa,IAAM84C,GACnB,UAAW,IAAMhsD,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRmS,GAAW9W,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMiW,GAAQ,CACnK,UACA,IAAMhtE,EAAIgtE,EAAI,EACR30E,EAAI20E,EAAI,EACR9/E,EAAI8/E,EAAI,EACRnoE,EAAI,aAAa3X,EAAGmL,CAAC,EACrB00E,EAAS,aAAa/sE,EAAGmrE,EAAS,EAClC9wE,EAAI,aAAawK,EAAG,aAAa,EAAG4lB,EAAI,aAAazf,GAAI+hE,EAAQ,CAAC,EAAG,CAAC,CAAC,CAAC,CAAC,EACzEvkE,EAAI,aAAatb,EAAG2X,CAAC,EAC3B,OAAOomE,GAAkBpmE,EAAGxK,EAAG0yB,GAAMggD,CAAM,CAAC,EAAE,IAAIvkE,CAAC,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,IACA,WACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,QAAQ,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,oBACA,CACC,IACA,IACA,QACD,CACD,EACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAM2iE,GACnB,UAAW,IAAM1gD,EACjB,UAAW,IAAMzf,GACjB,YAAa,IAAM+hB,GACnB,kBAAqB,IAAMk+C,EAC5B,CACD,CAAC,GAAKlU,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+T,GAAW1Y,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8U,GAAQ,CACnK,UACA,IAAM9hD,EAAI8hD,EAAI,EACRvpC,EAAIupC,EAAI,EACR7gF,EAAI6gF,EAAI,EACRxxE,EAAI,aAAa,aAAa,aAAa0vB,EAAG,QAAQ,EAAG,aAAauY,EAAG,QAAQ,CAAC,EAAG,aAAat3C,EAAG,QAAQ,CAAC,EAC9GkX,EAAI,aAAa,aAAa,aAAa6nB,EAAG,QAAQ,EAAG,aAAauY,EAAG,QAAQ,CAAC,EAAG,aAAat3C,EAAG,OAAO,CAAC,EAC7GoX,EAAI,aAAa,aAAa,aAAa2nB,EAAG,QAAQ,EAAG,aAAauY,EAAG,OAAO,CAAC,EAAG,aAAat3C,EAAG,QAAQ,CAAC,EAC7GiiF,EAAK,aAAa5yE,EAAG,MAAM,EAC3B6yE,EAAK,aAAahrE,EAAG,CAAC,EACtBirE,EAAK,aAAa/qE,EAAG,OAAO,EAC5Bi3D,EAAKhnC,EAAO,aAAa,aAAa46C,EAAIxB,EAAa,EAAGD,EAAU,EAAG98C,GAAIu+C,EAAI,aAAa,EAAG,CAAC,CAAC,EAAGA,EAAK1B,EAAU,EACnHjS,EAAKjnC,EAAO,aAAa,aAAa66C,EAAIzB,EAAa,EAAGD,EAAU,EAAG98C,GAAIw+C,EAAI,aAAa,EAAG,CAAC,CAAC,EAAGA,EAAK3B,EAAU,EACnH9R,EAAKpnC,EAAO,aAAa,aAAa86C,EAAI1B,EAAa,EAAGD,EAAU,EAAG98C,GAAIy+C,EAAI,aAAa,EAAG,CAAC,CAAC,EAAGA,EAAK5B,EAAU,EACzH,OAAOpsD,EAAQ,aAAa,aAAam6C,EAAI,GAAG,EAAG,EAAE,EAAG,aAAa,aAAaD,EAAIC,CAAE,EAAG+R,EAAS,EAAG,aAAa,aAAa/R,EAAIG,CAAE,EAAG6R,EAAU,CAAC,CACtJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CAAC,EAAG,SAAS,CACd,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CAAC,EAAG,SAAS,CACd,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,eACD,EACA,IACA,YACD,EACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CAAC,EAAG,GAAG,EACP,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,KACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,eACD,EACA,IACA,YACD,EACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CAAC,EAAG,GAAG,EACP,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,KACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,eACD,EACA,IACA,YACD,EACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CAAC,EAAG,GAAG,EACP,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,KACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,WACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,YACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMj5C,EACpB,cAAiB,IAAMo5C,GACvB,WAAc,IAAMD,GACpB,UAAW,IAAM98C,GACjB,WAAc,IAAM68C,GACpB,UAAa,IAAMF,GACnB,WAAc,IAAMC,GACpB,UAAW,IAAMnsD,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqS,GAAWhX,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMiV,GAAQ,CACnK,UACA,IAAMC,EAAID,EAAI,EACRjhF,EAAIihF,EAAI,EACRhhF,EAAIghF,EAAI,EACR1S,EAAK,aAAa,aAAa2S,EAAG,EAAE,EAAG,GAAG,EAC1C5S,EAAK,aAAa,aAAatuE,EAAGsgF,EAAS,EAAG/R,CAAE,EAChDG,EAAK,aAAaH,EAAI,aAAatuE,EAAGsgF,EAAU,CAAC,EACjD2B,EAAK56C,EAAO,aAAa,aAAagnC,EAAImS,EAAU,EAAGE,EAAa,EAAGh9C,GAAI2qC,EAAI,CAAC,EAAGA,EAAK+R,EAAS,EACjG8B,EAAK76C,EAAO,aAAa,aAAainC,EAAIkS,EAAU,EAAGE,EAAa,EAAGh9C,GAAI4qC,EAAI,CAAC,EAAGA,EAAK8R,EAAS,EACjG+B,EAAK96C,EAAO,aAAa,aAAaonC,EAAI+R,EAAU,EAAGE,EAAa,EAAGh9C,GAAI+qC,EAAI,CAAC,EAAGA,EAAK2R,EAAS,EACjG/wE,EAAI,aAAa4yE,EAAI,MAAM,EAC3B/qE,EAAI,aAAagrE,EAAI,CAAC,EACtB9qE,EAAI,aAAa+qE,EAAI,OAAO,EAClC,OAAOhuD,EAAQ,aAAa,aAAa,aAAa9kB,EAAG,SAAS,EAAG,aAAa6H,EAAG,SAAS,CAAC,EAAG,aAAaE,EAAG,QAAQ,CAAC,EAAG,aAAa,aAAa,aAAa/H,EAAG,QAAQ,EAAG,aAAa6H,EAAG,SAAS,CAAC,EAAG,aAAaE,EAAG,OAAO,CAAC,EAAG,aAAa,aAAa,aAAa/H,EAAG,QAAQ,EAAG,aAAa6H,EAAG,QAAQ,CAAC,EAAG,aAAaE,EAAG,SAAS,CAAC,CAAC,CACxV,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,WACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,YACD,EACA,IACA,eACD,EACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EACA,CACC,EACA,KACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,YACD,EACA,IACA,eACD,EACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EACA,CACC,EACA,KACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,YACD,EACA,IACA,eACD,EACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EACA,CACC,EACA,KACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,SAAS,CACd,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,SAAS,CACd,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMipE,GACnB,WAAc,IAAMC,GACpB,aAAc,IAAMj5C,EACpB,WAAc,IAAMm5C,GACpB,cAAiB,IAAME,GACvB,UAAW,IAAMh9C,GACjB,UAAa,IAAM08C,GACnB,UAAW,IAAMjsD,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoS,GAAW/W,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMiV,GAAQ,CACnK,UACA,IAAMC,EAAID,EAAI,EACRjhF,EAAIihF,EAAI,EACRhhF,EAAIghF,EAAI,EACd,OAAO7sD,EAAQ8sD,EAAGt8C,GAAK,aAAa,aAAa5kC,EAAGA,CAAC,EAAG,aAAaC,EAAGA,CAAC,CAAC,CAAC,EAAGugC,GAAMvgC,EAAGD,CAAC,CAAC,CAC1F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,IAAK,GAAG,CA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AAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,IACA,SACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,OAAO,CAAC,CAC7B,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CACC,SACA,SACA,UACA,UACA,YACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,eACA,CAAC,OAAO,CACT,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,MAAO,aAAa,CACtB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMp3C,EACjB,aAAgB,IAAM08C,GACtB,WAAc,IAAMO,GACpB,SAAY,IAAMJ,GAClB,MAAS,IAAMyC,GACf,SAAY,IAAMpC,GAClB,WAAc,IAAMP,GACpB,aAAgB,IAAMC,GACtB,UAAW,IAAMrrD,CAClB,CACD,CAAC,GAAK03C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4S,GAAiBvX,EAAgB,GAAG,CACzC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyW,EAAQC,EAAQ7vE,IAAM,CACrI,UACA,IAAM8vE,EAAU,aAAaF,EAAO,EAAG,aAAa,EAAG5vE,CAAC,CAAC,EACnD+vE,EAAU,aAAaF,EAAO,EAAG7vE,CAAC,EAClCsnE,EAAc,aAAawI,EAASC,CAAO,EAC3CC,EAAa9/C,EAAIo3C,EAAa,IAAI,EACxC,OAAO7lD,EAAQ2rD,GAASP,GAAW2C,GAAMrC,GAAWJ,GAAS6C,EAAO,GAAG,CAAC,EAAGzC,GAAWJ,GAAS8C,EAAO,GAAG,CAAC,EAAGC,EAASC,EAASC,CAAU,CAAC,CAAC,EAAG1I,CAAW,CAC1J,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,IACA,SACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,OAAO,CAAC,CAC7B,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CACC,SACA,SACA,UACA,UACA,YACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,aACA,CAAC,OAAO,CACT,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,C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CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,IACA,SACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,OAAO,CAAC,CAC7B,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CACC,OACA,OACA,UACA,UACA,YACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,OAAO,CACT,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,MAAO,aAAa,CACtB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMp3C,EACjB,SAAY,IAAM+8C,GAClB,SAAY,IAAMF,GAClB,MAAS,IAAMyC,GACf,SAAY,IAAMpC,GAClB,SAAY,IAAM9B,GAClB,UAAW,IAAM7pD,CAClB,CACD,CAAC,GAAK03C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0S,GAAerX,EAAgB,GAAG,CACvC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyW,EAAQC,EAAQ7vE,IAAM,CACrI,UACA,IAAM8vE,EAAU,aAAaF,EAAO,EAAG,aAAa,EAAG5vE,CAAC,CAAC,EACnD+vE,EAAU,aAAaF,EAAO,EAAG7vE,CAAC,EAClCsnE,EAAc,aAAawI,EAASC,CAAO,EAC3CC,EAAa9/C,EAAIo3C,EAAa,IAAI,EACxC,OAAO7lD,EAAQ2rD,GAAS5B,GAASC,GAAS+D,GAAMjE,GAAS2B,GAASH,GAAS6C,EAAO,GAAG,CAAC,CAAC,EAAGrE,GAAS2B,GAASH,GAAS8C,EAAO,GAAG,CAAC,CAAC,EAAGC,EAASC,EAASC,CAAU,CAAC,CAAC,CAAC,EAAG1I,CAAW,CAClL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,IACA,SACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,OAAO,CAAC,CAC7B,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,SACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CACC,OACA,OACA,UACA,UACA,YACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,WACA,CAAC,OAAO,CACT,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,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,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,MACA,YACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMrjC,EACjB,UAAW,IAAMkP,EACjB,UAAW,IAAMhP,CAClB,CACD,CAAC,GAAK03C,EAAE,GAAG,CAAC,CAAC,CAAC,EACVkY,GAAgC3kF,GAAW,CAC9C,eAAgB,IAAM4kF,IACtB,WAAY,IAAMC,GAClB,MAAO,IAAMC,GACb,UAAW,IAAMC,GACjB,WAAY,IAAMC,GAClB,OAAQ,IAAMC,GACd,WAAY,IAAMC,GAClB,UAAW,IAAMC,GACjB,UAAW,IAAMC,GACjB,IAAK,IAAMC,GACX,QAAS,IAAMC,GACf,WAAY,IAAMC,GAClB,YAAa,IAAMC,GACnB,UAAW,IAAMC,GACjB,WAAY,IAAMC,GAClB,SAAU,IAAMC,GAChB,OAAQ,IAAMC,GACd,YAAa,IAAMC,GACnB,YAAa,IAAMC,GACnB,QAAS,IAAMC,GACf,WAAY,IAAMC,GAClB,OAAQ,IAAMC,GACd,UAAW,IAAMC,GACjB,mBAAoB,IAAMC,EAC3B,CAAC,EACKV,GAAc3d,EAAgB,GAAG,CAACjzC,CAAO,EAAGzgB,CAAG,GAAoBq4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8U,GAAQ,CAClK,UACA,OAAO,aAAa,aAAa,aAAaA,EAAI,EAAG,KAAK,EAAG,aAAaA,EAAI,EAAG,KAAK,CAAC,E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,EACRqZ,GAAche,EAAgB,GAAG,CACtC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EAChDJ,EAAa,aAAazkE,EAAK,EAAG,aAAa,EAAGwkE,CAAY,CAAC,EAC/DE,EAAa,aAAaF,EAAcC,CAAU,EAClDK,EAAY3G,GAAaO,GAAWJ,GAASt+D,EAAK,GAAG,CAAC,CAAC,EAC7D,OAAOgT,EAAQ2rD,GAASP,GAAWC,GAAaF,GAAaO,GAAWJ,GAASsG,EAAU,GAAG,CAAC,CAAC,EAAE,IAAIJ,CAAY,EAAE,IAAIM,EAAU,IAAIL,CAAU,CAAC,CAAC,CAAC,CAAC,EAAGC,CAAU,CAClK,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,cACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,eACA,IACA,YACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,eACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,eACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,eACA,KACD,EACA,CAAC,cAAc,CAChB,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,YAAY,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,eACA,CAAC,cAAc,CAChB,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,MAAO,YAAY,CACrB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAgB,IAAMvG,GACtB,WAAc,IAAMO,GACpB,SAAY,IAAMJ,GAClB,SAAY,IAAMK,GAClB,WAAc,IAAMP,GACpB,aAAgB,IAAMC,GACtB,UAAW,IAAMrrD,CAClB,CACD,CAAC,GAAK03C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoZ,GAAc/d,EAAgB,GAAG,CACtC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EAChDJ,EAAa,aAAazkE,EAAK,EAAG,aAAa,EAAGwkE,CAAY,CAAC,EAC/DE,EAAa,aAAaF,EAAcC,CAAU,EAClDM,EAAYrG,GAAWJ,GAASt+D,EAAK,GAAG,CAAC,EAC/C,OAAOgT,EAAQ2rD,GAASP,GAAWM,GAAWJ,GAASsG,EAAU,GAAG,CAAC,EAAE,IAAIJ,CAAY,EAAE,IAAIO,EAAU,IAAIN,CAAU,CAAC,CAAC,CAAC,EAAGC,CAAU,CACtI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,cACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,eACA,IACA,YACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,aACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,eACA,KACD,EACA,CAAC,cAAc,CAChB,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,YAAY,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,aACA,CAAC,cAAc,CAChB,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,MAAO,YAAY,CACrB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMhG,GACpB,SAAY,IAAMJ,GAClB,SAAY,IAAMK,GAClB,WAAc,IAAMP,GACpB,UAAW,IAAMprD,CAClB,CACD,CAAC,GAAK03C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkZ,GAAW7d,EAAgB,GAAG,CACnC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAMA,EAAK,IAAI,IAAI4kE,EAAU,GAAG,EAAGJ,CAAY,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,cAAiB,IAAMF,EAAc,CACnD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwZ,GAASne,EAAgB,GAAG,CACjC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAMzB,GAAI,EAAGA,GAAI,EAAGyB,EAAK,GAAG,EAAE,IAAIzB,GAAI,EAAGqmE,EAAU,GAAG,CAAC,CAAC,EAAGJ,CAAY,CAC7F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,OACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,UACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMjmE,GACjB,cAAiB,IAAM+lE,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+Y,GAAc1d,EAAgB,GAAG,CACtC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAMA,EAAK,IAAI,IAAI4kE,EAAU,GAAG,EAAGJ,CAAY,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,cAAiB,IAAMF,EAAc,CACnD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsZ,GAAUje,EAAgB,GAAG,CAClC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAMgiB,EAAIhiB,EAAK,IAAI,IAAI4kE,EAAU,GAAG,EAAE,IAAI,CAAC,EAAGrmE,GAAI,EAAGA,GAAI,EAAGyB,EAAK,GAAG,EAAE,IAAIzB,GAAI,EAAGqmE,EAAU,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,EAAGP,GAAMvxD,EAAQ,EAAE,EAAG9S,EAAK,GAAG,CAAC,EAAGwkE,CAAY,CAC3K,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,OACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,UACA,KACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,OACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EAAG,CACF,EACA,OACA,KACD,CAAC,CACF,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMjmE,GACjB,UAAW,IAAMyjB,EACjB,MAAS,IAAMqiD,GACf,UAAW,I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C,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,IACA,YACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMd,GACnB,cAAiB,IAAMY,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiZ,GAAa5d,EAAgB,GAAG,CACrC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EAChDI,EAAUvB,GAAY1jE,EAAK,GAAG,EAC9BklE,EAAaxB,GAAYkB,EAAU,GAAG,EACtCQ,EAAW,aAAaF,EAAY,aAAaD,EAAS,IAAI,CAAC,EACrE,OAAOX,GAActkE,EAAMA,EAAK,IAAI,IAAIolE,CAAQ,EAAGZ,CAAY,CAChE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,IACA,CACC,EACA,UACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMd,GACnB,cAAiB,IAAMY,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwY,GAASnd,EAAgB,GAAG,CACjC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAM2hB,GAAI3hB,EAAK,IAAK4kE,EAAU,GAAG,EAAGJ,CAAY,CACtE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,KACD,EAAG,CACF,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM7iD,GACjB,cAAiB,IAAM2iD,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6Y,GAAUxd,EAAgB,GAAG,CAClC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAMyhB,EAAIzhB,EAAK,IAAK4kE,EAAU,GAAG,EAAGJ,CAAY,CACtE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,KACD,EAAG,CACF,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM/iD,EACjB,cAAiB,IAAM6iD,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsY,GAAYjd,EAAgB,GAAG,CACpC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EAChDQ,EAAS5jD,EAAIljB,GAAI,EAAGA,GAAI,EAAGyB,EAAK,GAAG,EAAE,IAAI4kE,EAAU,IAAI,IAAI,IAAI,CAAC,CAAC,EAAG9xD,EAAQ,CAAC,CAAC,EACpF,OAAOwxD,GAActkE,EAAMgiB,EAAIlP,EAAQ,CAAC,EAAGuyD,EAAQhB,GAAMvxD,EAAQ,IAAI,EAAG8xD,EAAU,GAAG,CAAC,EAAGJ,CAAY,CACtG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,OACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,KACD,EACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,SACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,EAAG,CACF,EACA,UACA,KACD,CAAC,CACF,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM/iD,EACjB,UAAW,IAAMljB,GACjB,UAAW,IAAMuU,EACjB,UAAW,IAAMkP,EACjB,MAAS,IAAMqiD,GACf,cAAiB,IAAMC,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8Y,GAAazd,EAAgB,GAAG,CACrC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAMyhB,EAAIzhB,EAAK,IAAI,IAAI4kE,EAAU,GAAG,EAAE,IAAI,EAAE,EAAG9xD,EAAQ,CAAC,CAAC,EAAG0xD,CAAY,CAC9F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM/iD,EACjB,UAAW,IAAM3O,EACjB,cAAiB,IAAMwxD,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACRyZ,GAAYpe,EAAgB,GAAG,CACpC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EAChDS,EAAOtlE,EAAK,IAAI,IAAI4kE,EAAU,GAAG,EAAE,IAAI,CAAC,EACxCW,EAAcvlE,EAAK,IAAI,IAAIA,EAAK,GAAG,EACnCwlE,EAAWF,EAAK,IAAIC,EAAY,IAAIhnE,GAAI,EAAGqmE,EAAU,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,EACjEa,EAAWniD,GAAKtjB,EAAK,GAAG,EAC9B,OAAOskE,GAActkE,EAAMgiB,EAAIwjD,EAAUxlE,EAAK,IAAI,IAAIzB,GAAI,EAAGqmE,EAAU,GAAG,CAAC,EAAE,IAAI,CAAC,EAAE,IAAIa,EAAS,IAAIb,EAAU,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAGP,GAAMvxD,EAAQ,EAAE,EAAG8xD,EAAU,GAAG,CAAC,EAAGJ,CAAY,CACrL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,cACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,UACA,KACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,WACA,eACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EAAG,CACF,EACA,UACA,KACD,CAAC,CACF,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMjmE,GACjB,WAAY,IAAM+kB,GAClB,UAAW,IAAMtB,EACjB,MAAS,IAAMqiD,GACf,UAAW,IAAMvxD,EACjB,cAAiB,IAAMwxD,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2Y,GAAYtd,EAAgB,GAAG,CACpC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EACtD,OAAOP,GAActkE,EAAMgiB,EAAIhiB,EAAK,IAAI,IAAI4kE,EAAU,GAAG,EAAE,IAAI,CAAC,EAAGrmE,GAAI,EAAGA,GAAI,EAAGyB,EAAK,GAAG,EAAE,IAAIzB,GAAI,EAAGqmE,EAAU,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,EAAGP,GAAMvxD,EAAQ,EAAE,EAAG8xD,EAAU,GAAG,CAAC,EAAGJ,CAAY,CAChL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,OACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,UACA,KACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,OACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EAAG,CACF,EACA,UACA,KACD,CAAC,CACF,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMjmE,GACjB,UAAW,IAAMyjB,EACjB,MAAS,IAAMqiD,GACf,UAAW,IAAMvxD,EACjB,cAAiB,IAAMwxD,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4Y,GAAMvd,EAAgB,GAAG,CAC9B/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EAChDI,EAAUvB,GAAY1jE,EAAK,GAAG,EAC9BklE,EAAaxB,GAAYkB,EAAU,GAAG,EACtCc,EAAmB1lE,EAAK,IAAI,IAAIilE,CAAO,EACvCU,EAAsBf,EAAU,IAAI,IAAIM,CAAU,EAClDU,EAAmB7lD,GAAO2lD,CAAgB,EAC1CG,EAAsB9lD,GAAO4lD,CAAmB,EACtD,OAAOrB,GAActkE,EAAMgmB,EAAOlT,EAAQ,CAAC,EAAG6yD,EAAoB,IAAIE,CAAmB,EAAGA,EAAsB,IAAI,EAAE,IAAID,CAAgB,EAAE,IAAIX,CAAO,EAAGT,CAAY,CACzK,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,sBACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,aACA,CAAC,kBAAkB,CACpB,CACD,EACA,CACC,GACA,sBACA,CACC,EACA,aACA,CAAC,qBAAqB,CACvB,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,aACA,CACC,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,sBACA,KACD,EACA,CAAC,qBAAqB,CACvB,EACA,CACC,EACA,sBACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,mBACA,KACD,EACA,CAAC,kBAAkB,CACpB,EACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMd,GACnB,aAAc,IAAM3jD,GACpB,aAAc,IAAMiG,EACpB,UAAW,IAAMlT,EACjB,cAAiB,IAAMwxD,EACxB,CACD,CAAC,GAAK5Z,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuZ,GAAale,EAAgB,GAAG,CACrC/yC,EACAA,EACA3gB,CACD,EAAG2gB,CAAO,GAAoB03C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC1qD,EAAM4kE,EAAWC,IAAY,CAC5I,UACA,IAAML,EAAe,aAAaI,EAAU,EAAGC,CAAO,EAChDI,EAAUvB,GAAY1jE,EAAK,GAAG,EAC9BklE,EAAaxB,GAAYkB,EAAU,GAAG,EACtCc,EAAmB1lE,EAAK,IAAI,IAAIilE,CAAO,EACvCU,EAAsBf,EAAU,IAAI,IAAIM,CAAU,EAClDU,EAAmB7lD,GAAO2lD,CAAgB,EAC1CI,EAAgB9/C,EAAOlT,EAAQ,CAAC,EAAG4yD,EAAiB,IAAIE,CAAgB,EAAGA,EAAmB,IAAI,EAClGC,EAAsB9lD,GAAO4lD,CAAmB,EACtD,OAAOrB,GAActkE,EAAM8lE,EAAc,IAAID,CAAmB,EAAE,IAAIZ,CAAO,EAAGT,CAAY,CAC7F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,sBACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,aACA,CAAC,kBAAkB,CACpB,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,aACA,CACC,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,mBACA,KACD,EACA,CAAC,kBAAkB,CACpB,EACA,CACC,EACA,mBACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CACD,CACD,EACA,CACC,GACA,sBACA,CACC,EACA,aACA,CAAC,qBAAqB,CACvB,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,KACD,EACA,CAAC,qBAAqB,CACvB,EACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CACC,OACA,UACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMd,GACnB,aAAc,IAAM3jD,GACpB,aAAc,IAAMiG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AAG,IAAIA,CAAE,EACpB,OAAOC,EAAG,IAAID,CAAE,EAAE,IAAI,IAAI,EAAE,IAAIC,EAAG,IAAIn5E,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAIm5E,EAAG,IAAI,KAAK,EAAE,IAAID,EAAG,IAAIl5E,CAAC,EAAE,IAAI,KAAK,CAAC,EAAE,IAAIk5E,EAAG,IAAI,KAAK,EAAE,IAAIl5E,EAAE,IAAI,KAAK,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,CACnJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CAAC,EAAG,MAAM,CAAC,CACb,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,EACA,KACD,EACA,CAAC,CAAC,EAAG,SAAS,CAAC,CAChB,CAAC,CACF,CAAC,CACF,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAC,CACb,CAAC,GAAK08D,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0c,IAAMrhB,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMvU,GAAY,CAClK,UACA,IAAI39C,EAAImuE,GAA8B,IAAIxwB,CAAO,EACjD,OAAA39C,EAAIquE,GAAU,IAAIruE,CAAC,EACnBA,EAAIipB,EAAIjpB,EAAGsa,EAAQ,KAAK,CAAC,EACzBta,EAAI+oB,GAAK/oB,CAAC,EACVA,EAAIA,EAAE,IAAIuuE,EAAU,EAAE,IAAI,aAAaC,GAAYD,EAAU,CAAC,EAC9DvuE,EAAI8mB,EAAM9mB,EAAGsa,EAAQ,CAAC,EAAGA,EAAQ,CAAC,CAAC,EACnCta,EAAIyuE,GAAkBzuE,CAAC,EACvBA,EAAIsuE,GAAW,IAAItuE,CAAC,EACpBA,EAAI6pB,GAAIZ,EAAIjpB,EAAGsa,EAAQ,CAAC,CAAC,EAAGA,EAAQ,GAAG,CAAC,EACxCta,EAAIouE,GAA8B,IAAIpuE,CAAC,EAChC8mB,EAAM9mB,EAAGsa,EAAQ,CAAC,EAAGA,EAAQ,CAAC,CAAC,CACvC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,oCACA,CAAC,OAAO,CACT,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,gBACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,UACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,YAAY,CACd,EACA,KACD,EACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,YACA,CACC,IACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,oBACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,iBACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,CACL,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,oCACA,CAAC,GAAG,CACL,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,IACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,oCAAqC,IAAM6zD,GAA8B,IACzE,gBAAiB,IAAME,GAAU,IACjC,UAAW,IAAMplD,EACjB,UAAW,IAAM3O,EACjB,WAAY,IAAMyO,GAClB,WAAc,IAAMwlD,GACpB,WAAc,IAAMC,GACpB,YAAa,IAAM1nD,EACnB,kBAAqB,IAAM2nD,GAC3B,iBAAkB,IAAMH,GAAW,IACnC,UAAW,IAAMzkD,GACjB,oCAAqC,IAAMukD,GAA8B,GAC1E,CACD,CAAC,GAAKlc,EAAE,GAAG,CAAC,CAAC,CAAC,EACV2c,GAA4B,IAC5BC,GAAuB,IACrBC,GAAUxhB,EAAgB,GAAG,CAACjzC,CAAO,EAAGA,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMvU,GAAY,CACtK,UACA,IAAMnoD,EAAI2zB,GAAIw0B,EAAQ,EAAGx0B,GAAIw0B,EAAQ,EAAGA,EAAQ,CAAC,CAAC,EAC5C7mC,EAAS0W,EAAO,IAAK,aAAah4B,EAAG,aAAa,aAAa,KAAMA,CAAC,EAAGA,CAAC,CAAC,EAAGA,EAAI,GAAG,EACvFwK,EAAI29C,EAAQ,IAAI7mC,CAAM,EACpBk4D,EAAO/lD,EAAIjpB,EAAE,EAAGipB,EAAIjpB,EAAE,EAAGA,EAAE,CAAC,CAAC,EACnC,GAAIgvE,EAAOH,GAA2B,OAAO7uE,EAC7C,IAAMm3D,EAAK,aAAa,EAAG0X,EAAyB,EAC9CI,EAAU,aAAa,EAAG,aAAa,aAAa9X,EAAIA,CAAE,EAAG,aAAa,aAAa6X,EAAM7X,CAAE,EAAG0X,EAAyB,CAAC,CAAC,EACnI7uE,EAAIA,EAAE,IAAI,aAAaivE,EAASD,CAAI,CAAC,EACrC,IAAMvxC,EAAI,aAAa,EAAG,aAAa,EAAG,aAAa,aAAaqxC,GAAsB,aAAaE,EAAMC,CAAO,CAAC,EAAG,CAAC,CAAC,CAAC,EAC3H,OAAOzlD,EAAIxpB,EAAGsa,EAAQ20D,CAAO,EAAGxxC,CAAC,CAClC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,QACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CAAC,EAAG,MAAM,EACV,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,OACA,IACA,2BACD,EACA,CAAC,EAAG,CAAC,CAAC,GAAI,GAAG,CAAC,CAAC,CAChB,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,2BACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,IACA,IACD,EACA,IACA,2BACD,CACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,IACA,MACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,uBACA,IACA,CACC,EACA,OACA,IACA,SACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,CACC,EACA,UACA,CAAC,SAAS,CACX,EACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtU,GACjB,aAAc,IAAMqE,EACpB,UAAW,IAAMvE,EACjB,0BAA6B,IAAM4lD,GACnC,qBAAwB,IAAMC,GAC9B,UAAW,IAAMtlD,EACjB,UAAW,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,EAASJ,CAAQ,EAAG,aAAaK,EAASJ,CAAQ,CAAC,EAC9FM,EAAiB,aAAa,aAAaH,EAASH,CAAQ,EAAG,aAAaI,EAASL,CAAQ,CAAC,EACpG,OAAO31D,EAAQ,aAAa,aAAa,aAAai2D,EAAgBR,CAAW,EAAGL,CAAO,EAAGG,CAAO,EAAG,aAAa,aAAaW,EAAgBb,CAAO,EAAGG,CAAO,CAAC,CACrK,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,cACA,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,WACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,UACA,IACA,UACD,EACA,IACA,CACC,EACA,UACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,UACA,IACA,UACD,EACA,IACA,CACC,EACA,UACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,IACA,aACD,EACA,IACA,SACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,iBACA,IACA,SACD,EACA,IACA,SACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,SAAU,QAAQ,CACpB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM,KAAK,GACtB,UAAW,IAAM3oD,GACjB,UAAW,IAAMwD,GACjB,UAAW,IAAMrQ,CAClB,CACD,CAAC,GAAK+3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACd3E,EAAgB,GAAG,CAClBpzC,EACAtgB,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGsgB,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAIwU,EAASC,EAASC,EAAUvlC,EAAOwlC,EAASC,EAASC,IAAgB,CACxL,UACA,IAAMI,EAAY,aAAa,aAAajV,EAAG,EAAG2U,CAAO,EAAGH,CAAO,EAC7DU,EAAY,aAAa,aAAalV,EAAG,EAAG4U,CAAO,EAAGH,CAAO,EAC7DU,EAAU,aAAaF,EAAWJ,CAAW,EAC7CO,EAAUF,EACVJ,EAAc,CAAC,aAAa,aAAaJ,EAAU,KAAK,EAAE,EAAG,GAAG,EAChEK,EAAW9oD,GAAI6oD,CAAW,EAC1BE,EAAWvlD,GAAIqlD,CAAW,EAC1BO,EAAiB,aAAa,aAAaF,EAASJ,CAAQ,EAAG,aAAaK,EAASJ,CAAQ,CAAC,EAC9FM,EAAiB,aAAa,aAAaH,EAASH,CAAQ,EAAG,aAAaI,EAASL,CAAQ,CAAC,EAC9FQ,EAAU,aAAa,aAAaF,EAAgBR,CAAW,EAAG1lC,CAAK,EACvEqmC,EAAU,aAAaF,EAAgBnmC,CAAK,EAClD,OAAO/vB,EAAQ,aAAam2D,EAASZ,CAAO,EAAG,aAAaa,EAASZ,CAAO,CAAC,CAC9E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,WACD,EACA,CACC,GACA,cACA,CACC,EACA,IACA,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,UACA,IACA,UACD,EACA,IACA,CACC,EACA,UACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,UACA,IACA,UACD,EACA,IACA,CACC,EACA,UACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,iBACA,IACA,aACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,iBACA,IACA,OACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,UACA,IACA,SACD,EAAG,CACF,EACA,UACA,IACA,SACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM,KAAK,GAC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A,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,IACA,aACD,CACD,EACA,CACC,GACA,MACA,WACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,YACA,IACA,aACD,CACD,EACA,CACC,GACA,eACA,YACD,EACA,CACC,GACA,aACA,CACC,EACA,cACA,IACA,cACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,eACA,IACA,cACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,EACA,IACA,YACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,EACA,IACA,YACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EAAG,CACF,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,CAAC,UAAU,CACZ,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,IACA,cACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,MAAM,CAAC,CAC1B,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,IACA,SACD,EACA,UACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,MACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,OACA,SACA,CACC,EACA,YACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM,KAAK,GACtB,UAAW,IAAM9qD,GACjB,UAAW,IAAMwD,GACjB,UAAW,IAAM5E,EACjB,UAAW,IAAMzL,EACjB,UAAW,IAAM8O,EACjB,aAAc,IAAM1B,GACpB,UAAW,IAAM4B,GACjB,iBAAkB,IAAMyB,GACxB,aAAc,IAAM4C,EACpB,QAAS,IAAM3zB,CAChB,CACD,CAAC,GAAKq4D,EAAE,GAAG,CAAC,CAAC,CAAC,EACRygB,GAAkCplB,EAAgB,GAAG,CAC1DpzC,EACAtgB,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGsgB,CAAO,GAAoB+3C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAIoD,EAASC,EAASuT,EAAWC,EAAYnC,EAAUG,IAAgB,CACtL,UACA,IAAMI,EAAY,aAAajV,EAAG,EAAGoD,CAAO,EACtC8R,EAAY,aAAalV,EAAG,EAAGqD,CAAO,EACtC2T,EAAS,CAAC,aAAa,aAAatC,EAAU,KAAK,EAAE,EAAG,GAAG,EAC3DjS,EAAOx2C,GAAI+qD,CAAM,EACjBtU,EAAOjzC,GAAIunD,CAAM,EACjBC,EAAM,aAAahC,EAAWJ,CAAW,EACzCqC,EAAMhC,EACNiC,EAAW,aAAa,aAAaF,EAAKxU,CAAI,EAAG,aAAayU,EAAKxU,CAAI,CAAC,EACxE0U,EAAW,aAAa,aAAaH,EAAKvU,CAAI,EAAG,aAAawU,EAAKzU,CAAI,CAAC,EACxE4U,EAAcnpD,EAAI,aAAa0oD,EAAW/B,CAAW,EAAG,IAAI,EAC5DyC,EAAeppD,EAAI2oD,EAAY,IAAI,EACzC,OAAOz3D,EAAQ,aAAa,aAAa+3D,EAAU,aAAaE,EAAa,CAAC,CAAC,EAAG,EAAE,EAAG,aAAa,aAAaD,EAAU,aAAaE,EAAc,CAAC,CAAC,EAAG,EAAE,CAAC,CAC/J,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,IACA,aACD,CACD,EACA,CACC,GACA,MACA,WACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,aACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,UAAU,CAAC,CAC/B,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,cACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,SAAU,QAAQ,CACpB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM,KAAK,GACtB,UAAW,IAAMrrD,GACjB,UAAW,IAAMwD,GACjB,UAAW,IAAMvB,EACjB,UAAW,IAAM9O,CAClB,CACD,CAAC,GAAK+3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0gB,GAAqB,CAACxX,EAAIC,EAAI59B,IAAM,CACzC,IAAMo1C,EAAKp1C,EAAE,YAAc,KAAK,GAAK,IAC/Bz9B,EAAI,KAAK,IAAI6yE,CAAE,EACfr/E,EAAI,KAAK,IAAIq/E,CAAE,EACfC,GAAO1X,EAAK39B,EAAE,SAAWA,EAAE,YAC3Bs1C,EAAM1X,EAAK59B,EAAE,QACbi9B,EAAKoY,EAAM9yE,EAAI+yE,EAAMv/E,EACrBmnE,EAAKmY,EAAM,CAACt/E,EAAIu/E,EAAM/yE,EACtBgzE,EAAO,KAAK,IAAIv1C,EAAE,YAAcA,EAAE,YAAa,IAAI,EACnDw1C,EAAO,KAAK,IAAIx1C,EAAE,aAAc,IAAI,EAC1C,MAAO,CACN,EAAGi9B,GAAM,EAAIsY,GAAQ,GACrB,EAAGrY,GAAM,EAAIsY,GAAQ,EACtB,CACD,EACMC,GAAuB,CAC5B,EAAG,CACF,MAAO,EACP,KAAM,IACP,EACA,EAAG,CACF,MAAO,EACP,KAAM,IACP,EACA,MAAO,CACN,MAAO,EACP,KAAM,IACP,EACA,OAAQ,CACP,MAAO,EACP,KAAM,IACP,EACA,OAAQ,WACR,SAAU,CACX,EACA,SAASC,GAAmB1C,EAAM,CACjC,GAAI,CAACA,GAAQ,OAAOA,GAAS,SAAU,OACvC,IAAMrkB,EAAM,CAACtW,EAAGzvD,IAAayvD,GAAK,OAAOA,GAAM,SAAW,CACzD,MAAOA,EAAE,OAASzvD,EAAS,MAC3B,KAAMyvD,EAAE,MAAQzvD,EAAS,IAC1B,EAAI,CAAE,GAAGA,CAAS,EAClB,MAAO,CACN,EAAG+lE,EAAIqkB,EAAK,EAAGyC,GAAqB,CAAC,EACrC,EAAG9mB,EAAIqkB,EAAK,EAAGyC,GAAqB,CAAC,EACrC,MAAO9mB,EAAIqkB,EAAK,MAAOyC,GAAqB,KAAK,EACjD,OAAQ9mB,EAAIqkB,EAAK,OAAQyC,GAAqB,MAAM,EACpD,OAAQzC,EAAK,QAAU,WACvB,SAAUA,EAAK,UAAY,EAC3B,GAAGA,EAAK,aAAe,CAAE,aAAcA,EAAK,YAAa,EAAI,CAAC,EAC9D,GAAGA,EAAK,aAAe,OAAS,CAAE,WAAYA,EAAK,UAAW,EAAI,CAAC,CACpE,CACD,CACA,SAAS2C,GAAsB3C,EAAM,CACpC,GAAI,CAACA,GAAQ,OAAOA,GAAS,SAAU,MAAO,GAC9C,IAAM4C,EAAO,CAACv9B,EAAG/vD,IAAU,CAAC,CAAC+vD,GAAKA,EAAE,OAAS,MAAQA,EAAE,QAAU/vD,EACjE,OAAOstF,EAAK5C,EAAK,EAAG,CAAC,GAAK4C,EAAK5C,EAAK,EAAG,CAAC,GAAK4C,EAAK5C,EAAK,MAAO,CAAC,GAAK4C,EAAK5C,EAAK,OAAQ,CAAC,IAAMA,EAAK,UAAY,KAAO,IAAMA,EAAK,cAAc,OAAS,KAAO,CAC/J,CACA,IAAI6C,GAAO,MAAMA,EAAK,CACrB,MACA,YAAY74B,EAAM,CACjB,KAAK,MAAQA,CACd,CACA,OAAO3lD,EAAM,CACZ,OAAO,IAAIw+E,GAAM1gF,GAAQ,GAAG2gF,IAAK,KAAK,MAAM3gF,CAAG,CAAC,CAAC,IAAIkC,CAAI,EAAE,CAC5D,CACA,IAAI0+E,EAAO,CACV,OAAO,IAAIF,GAAM1gF,GAAQ,IAAI,KAAK,MAAMA,CAAG,CAAC,MAAM6gF,GAAYD,EAAO5gF,CAAG,CAAC,GAAG,CAC7E,CACA,IAAI4gF,EAAO,CACV,OAAO,IAAIF,GAAM1gF,GAAQ,IAAI,KAAK,MAAMA,CAAG,CAAC,MAAM6gF,GAAYD,EAAO5gF,CAAG,CAAC,GAAG,CAC7E,CACD,EACA,SAAS2gF,IAAKG,EAAM,CACnB,MAAO,YAAY,KAAKA,CAAI,EAAIA,EAAO,IAAIA,CAAI,GAChD,CACA,SAASD,GAAYE,EAAW/gF,EAAK,CACpC,OAAI,OAAO+gF,GAAc,SAAiBC,GAAYD,CAAS,EACxDA,EAAU,MAAM/gF,CAAG,CAC3B,CACA,SAASghF,GAAYtxE,EAAG,CACvB,OAAK,OAAO,SAASA,CAAC,EACf,OAAO,UAAUA,CAAC,EAAI,GAAGA,CAAC,KAAO,GAAGA,CAAC,GADZA,EAAI,EAAI,SAAWA,EAAI,EAAI,UAAY,KAExE,CACA,IAAMuxE,IAAyC,WAAW,uBAA0B3tF,GAAMA,IAAIqnE,EAAgB,gBAAgB,CAC7H,YAAa,CAAE,QAAS,WAAY,EACpC,aAAc,CAAE,QAAS,WAAY,EACrC,aAAc,CAAE,QAAS,WAAY,EACrC,cAAe,CAAE,QAAS,WAAY,CACvC,CAAC,EAAE,KAAK,CAAC,EAAG,uBAAuB,EAC7BumB,GAAc,CACnB,SAAU,EACV,SAAU,EACV,SAAU,EACV,SAAU,CACX,EACA,SAASC,GAAK90D,EAAM,CACnB,OAAO,IAAIq0D,GAAK,IAAMr0D,CAAI,CAC3B,CACA,SAAS+0D,GAAO1xE,EAAG,CAClB,OAAO,IAAIgxE,GAAK,IAAMM,GAAYtxE,CAAC,CAAC,CACrC,CACA,SAAS2xE,EAAK5vE,EAAM6vE,EAAMjpF,EAAM,CAC/B,OAAO,IAAIqoF,GAAM1gF,GACT,GAAGA,EAAI,SAASyR,EAAM6vE,CAAI,CAAC,IAAIjpF,EAAK,IAAK/E,GAAMA,EAAE,MAAM0M,CAAG,CAAC,EAAE,KAAK,IAAI,CAAC,GAC9E,CACF,CACA,SAASuhF,MAAQnyD,EAAO,CACvB,OAAO,IAAIsxD,GAAM1gF,GAAQ,SAASovB,EAAM,IAAKqyC,GAAQ+f,GAAQ/f,EAAKzhE,CAAG,CAAC,EAAE,KAAK,IAAI,CAAC,GAAG,CACtF,CACA,SAASyhF,GAAQnuF,EAAGC,EAAG4S,EAAG,CACzB,OAAO,IAAIu6E,GAAM1gF,GAAQ,OAAO1M,EAAE,MAAM0M,CAAG,CAAC,KAAKzM,EAAE,MAAMyM,CAAG,CAAC,KAAKwhF,GAAQr7E,EAAGnG,CAAG,CAAC,GAAG,CACrF,CACA,SAAS0hF,GAAU3+C,EAAU4+C,EAAO,CACnC,OAAO,IAAIjB,GAAM1gF,GAAQ,SAAS+iC,CAAQ,KAAK4+C,EAAM,MAAM,KAAKA,EAAM,IAAKh4E,GAAMA,EAAE,MAAM3J,CAAG,CAAC,EAAE,KAAK,IAAI,CAAC,GAAG,CAC7G,CACA,IAAI4hF,IAAe,EACnB,SAASC,GAAQ,EAAGP,EAAM,CACzB,IAAMr2D,EAAK22D,MACX,OAAO,IAAIlB,GAAM1gF,GAAQA,EAAI,KAAK,SAASirB,CAAE,GAAI,IAAM,CACtD,IAAMj4B,EAAOgN,EAAI,WAAWshF,CAAI,EAChC,OAAAthF,EAAI,UAAU,OAAOhN,CAAI,MAAM,EAAE,MAAMgN,CAAG,CAAC,GAAG,EACvChN,CACR,CAAC,CAAC,CACH,CACA,IAAM8uF,GAAOX,GAAK,2BAA2B,EACvCY,GAASZ,GAAK,2BAA2B,EAC/C,SAASK,GAAQ9sE,EAAG1U,EAAK,CACxB,OAAO,OAAO0U,GAAM,SAAWssE,GAAYtsE,CAAC,EAAIA,EAAE,MAAM1U,CAAG,CAC5D,CACA,SAASgiF,GAAWptE,EAAM4kE,EAAWpoE,EAAMqoE,EAAS,CACnD,OAAO4H,EAAK3J,GAAWtmE,CAAI,GAAKsmE,GAAW,OAAQ,SAASuK,GAAa7wE,CAAI,CAAC,GAAI,CACjFwD,EACA4kE,EACAC,CACD,CAAC,CACF,CACA,SAASyI,IAAYnvF,EAAQ+nF,EAAMrjF,EAAM,CACxC,OAAO4pF,EAAKxG,GAAcpjF,CAAI,GAAKojF,GAAc,MAAO,QAAQoH,GAAaxqF,CAAI,CAAC,GAAI,CAAC1E,EAAQ+nF,CAAI,CAAC,CACrG,CACA,SAASmH,GAAarhF,EAAG,CACxB,OAAOA,EAAE,QAAQ,iBAAkB,GAAG,CACvC,CACA,SAASuhF,GAAkBvyC,EAAMwyC,EAAMC,EAAOC,EAAe,CAC5D,IAAMnpF,EAAY,CAAC,EACbopF,EAA6B,IAAI,IACjCC,EAA4B,IAAI,IAChCC,EAAa,CAAC,EACdC,EAAwB,IAAI,IAC9BC,EAAe,EACb3iF,EAAM,CACX,SAAS7M,EAAOmuF,EAAM,CACrB,IAAM/U,EAAWgW,EAAW,IAAIpvF,CAAK,EACrC,GAAIo5E,EAAU,OAAOA,EACrB,IAAIv5E,EAAOivF,GAAaX,CAAI,EAC5B,GAAIkB,EAAU,IAAIxvF,CAAI,EAAG,CACxB,IAAI2N,EAAI,EACR,KAAO6hF,EAAU,IAAI,GAAGxvF,CAAI,IAAI2N,CAAC,EAAE,GAAGA,IACtC3N,EAAO,GAAGA,CAAI,IAAI2N,CAAC,EACpB,CACA,OAAA6hF,EAAU,IAAIxvF,CAAI,EAClBuvF,EAAW,IAAIpvF,EAAOH,CAAI,EAC1BmG,EAAUnG,CAAI,EAAIG,EACXH,CACR,EACA,UAAUq5B,EAAM,CACfo2D,EAAW,KAAKp2D,CAAI,CACrB,EACA,WAAWi1D,EAAM,CAChB,MAAO,GAAGW,GAAaX,CAAI,CAAC,IAAIqB,GAAc,EAC/C,EACA,KAAKrqF,EAAKiiB,EAAS,CAClB,IAAMqoE,EAAMF,EAAM,IAAIpqF,CAAG,EACzB,GAAIsqF,IAAQ,OAAQ,OAAOA,EAC3B,IAAMntF,EAAI8kB,EAAQ,EAClB,OAAAmoE,EAAM,IAAIpqF,EAAK7C,CAAC,EACTA,CACR,CACD,EACMotF,EAASR,EAAQ,gCAAkC,QACzDI,EAAW,KAAK,YAAYI,CAAM,GAAG,EACrC,IAAMC,EAAelzC,EAAK,MAAM5vC,CAAG,EAC7B+iF,EAAaX,EAAKU,EAAc9iF,CAAG,EACnCgjF,EAAO,GAAGP,EAAW,KAAK;AAAA,CAAI,CAAC;AAAA,EAAKK,CAAY;AAAA,EAAKC,CAAU,GACrE,OAAIT,GAAiB,2BAA2B,KAAKU,CAAI,GAAK,CAAC,cAAc,KAAKA,CAAI,IACrFhjF,EAAI,SAASsiF,EAAe,KAAK,EACjCG,EAAW,QAAQ,+BAA+B,GAE5C,CACN,KAAM;AAAA,IAAQA,EAAW,KAAK;AAAA,GAAM,CAAC;AAAA,WAAcM,CAAU;AAAA,GAC7D,UAAA5pF,CACD,CACD,CACA,SAAS8pF,GAAgBC,EAAU18E,EAAU,CAAC,EAAG,CAChD,IAAM7K,EAAU,CAAE,QAASslF,EAAsB,EAC3CkC,EAAgB,CAAC,EACjBC,EAAW,CAAC,EACZC,EAAmB,CAAC,EACpBC,EAAe,CAAC,EAChBC,EAAkC,IAAI,IACtCC,EAAiB,CAAC,EAClBC,EAAgB,CAAC,EACjBC,EAAW,CAAC,EACZC,EAAY,CAAC,EACfC,EAAa,EACbC,EAAoB,EACpBC,EAAqB,EACrBC,EAAkB,EAChBC,EAAmC,IAAI,IACvC1B,EAAgBY,EAAS,MAAM,OACjCZ,GAAeA,EAAc,KAAKpB,GAAY,QAAQ,EAC1DvlF,EAAQ,QAAU2mF,EAClB,IAAM2B,EAAkBC,IAAa,IAAIxD,GAAM1gF,KAC1CsiF,GAAetiF,GAAI,SAASsiF,EAAe,KAAK,EAC7C4B,GACP,EACKC,EAAeC,IAAiBH,EAAe,kBAAkBG,EAAY,EAAE,EAC/EC,EAAgBzoB,IAAWqoB,EAAef,EAAS,MAAM,YAAYtnB,GAAQ,KAAK,CAAC,EACnF0oB,EAAS,CACd,GAAI,IAAI5D,GAAK,IAAM,IAAI,EACvB,KAAMyD,EAAY,WAAW,EAC7B,aAAcA,EAAY,mBAAmB,EAC7C,oBAAqBA,EAAY,0BAA0B,EAC3D,OAAQA,EAAY,aAAa,EACjC,QAASA,EAAY,cAAc,CACpC,EACMI,EAAkBjsF,KAAS,CAChC,IAAAA,GACA,OAAQ,CAAC6vE,GAAInO,GAAY,gBAAkB,IAAI0mB,GAAM1gF,IAAQ,uBAAuB1H,EAAG,YAAY0hE,EAAS,KAAKmO,GAAG,MAAMnoE,EAAG,CAAC,GAAG,EACjI,YAAa,CAACmoE,GAAInO,GAAY,gBAAkB,IAAI0mB,GAAM1gF,IAAQ,4BAA4B1H,EAAG,YAAY0hE,EAAS,KAAKmO,GAAG,MAAMnoE,EAAG,CAAC,QAAQ,EAChJ,SAAU,IAAM,IAAI0gF,GAAK,IAAM,SAASpoF,EAAG,EAAE,EAC7C,WAAY,IAAM,IAAIooF,GAAK,IAAM,iCAAiCpoF,EAAG,IAAI,CAC1E,GACMksF,EAA0BlsF,KAAS,CACxC,IAAAA,GACA,OAAQ,CAAC6vE,GAAInO,GAAY,gBAAkB,IAAI0mB,GAAM1gF,IAAQ,sCAAsC1H,EAAG,YAAY0hE,EAAS,KAAKmO,GAAG,MAAMnoE,EAAG,CAAC,GAAG,EAChJ,YAAa,CAACmoE,GAAInO,GAAY,gBAAkB,IAAI0mB,GAAM1gF,IAAQ,sCAAsC1H,EAAG,YAAY0hE,EAAS,KAAKmO,GAAG,MAAMnoE,EAAG,CAAC,GAAG,EACrJ,SAAU,IAAM,IAAI0gF,GAAK,IAAM,SAASpoF,EAAG,EAAE,EAC7C,WAAY,IAAM,IAAIooF,GAAK,IAAM,iCAAiCpoF,EAAG,IAAI,CAC1E,GACMmsF,EAAoB96E,IAAM,CAC/B,IAAMrR,GAAM,OAAOsrF,GAAY,GAC/B,OAAAT,EAAc,KAAK,CAClB,IAAA7qF,GACA,KAAMqR,EACP,CAAC,EACDy5E,EAAS,KAAK,CACb,IAAA9qF,GACA,KAAM,KACP,CAAC,EACMisF,EAAejsF,EAAG,CAC1B,EACMosF,EAAiC,IAAI,IACrCC,EAAmB,CAAC/mD,GAAM17B,GAAM8wC,KAAW,CAChD,IAAM4xC,GAAW,GAAGhnD,GAAK,EAAE,IAAI17B,EAAI,GAC7BsY,GAASkqE,EAAe,IAAIE,EAAQ,EAC1C,GAAIpqE,KAAW,OAAQ,OAAOA,GAC9B,IAAMqqE,GAAW7xC,GAASkwC,EAAS,gBAAgBlwC,EAAM,EAAI,KACvD8xC,GAAMD,GAAWJ,EAAiBM,GAAYF,GAAU,IAAI,IAAI,CAACjnD,GAAK,EAAE,CAAC,CAAC,CAAC,EAAI,KACrF,OAAA8mD,EAAe,IAAIE,GAAUE,EAAG,EACzBA,EACR,EACME,EAAkC,IAAI,IACtCC,EAAgBrnD,IAAS,CAC9B,IAAMpjB,GAASwqE,EAAgB,IAAIpnD,GAAK,EAAE,EAC1C,GAAIpjB,GAAQ,OAAOA,GACnB,IAAMghD,GAAM,CAAC,EACP0pB,GAAOtnD,GAAK,SAAS,KAC3B,GAAIsnD,GAAM,CACT,IAAIC,GAAkB,CAAC,EACjBC,GAAcxnD,GAAK,WAAW,aACpC,GAAIwnD,GAAa,CAChB,IAAMC,GAAe,CAAC,EACtB,OAAW,CAACnjF,GAAMqG,EAAC,IAAK,OAAO,QAAQq1B,GAAK,OAAO,EAC9Cr1B,GAAE,MACN88E,GAAanjF,EAAI,EAAImiF,EAAa97E,EAAC,GAEpC48E,GAAkBC,GAAY,CAC7B,SAAUC,GACV,IAAKf,CACN,CAAC,GAAK,CAAC,CACR,CACA,OAAW,CAACpiF,GAAMojF,EAAM,IAAK,OAAO,QAAQJ,EAAI,EAAG,CAClD,GAAI,EAAEhjF,MAAQ07B,GAAK,SAAU,SAC7B,IAAM2nD,GAAWC,EAAcF,GAAQ1nD,GAAM17B,GAAMijF,GAAgBjjF,EAAI,CAAC,EACpEqjF,KAAU/pB,GAAIt5D,EAAI,EAAIqjF,GAC3B,CACD,CACA,OAAAP,EAAgB,IAAIpnD,GAAK,GAAI49B,EAAG,EACzBA,EACR,EACMiqB,EAAiB7nD,IAAS,CAC/B,IAAMtlC,GAAM0iE,GAAQp9B,GAAK,EAAE,EACrBsnD,GAAOtnD,GAAK,SAAS,KAC3B,GAAI,CAACsnD,IAAQ,OAAO,KAAKA,EAAI,EAAE,SAAW,EAAG,OAAOf,EAAY7rF,EAAG,EACnE,IAAMotF,GAAYT,EAAarnD,EAAI,EACnC,OAAI,OAAO,KAAK8nD,EAAS,EAAE,SAAW,EAAUvB,EAAY7rF,EAAG,EACxD,IAAIooF,GAAM1gF,IAAQA,GAAI,KAAK,SAAS49B,GAAK,EAAE,GAAI,IAAM,CACvD0kD,GAAetiF,GAAI,SAASsiF,EAAe,KAAK,EACpD,IAAMqD,GAAQ3lF,GAAI,WAAW,KAAK1H,EAAG,EAAE,EACvC0H,GAAI,UAAU,OAAO2lF,EAAK,qBAAqBrtF,EAAG,GAAG,EACrD,OAAW,CAAC4J,GAAMqjF,EAAQ,IAAK,OAAO,QAAQG,EAAS,EAAG1lF,GAAI,UAAU,GAAG2lF,EAAK,IAAIzjF,EAAI,MAAMqjF,GAAS,MAAMvlF,EAAG,CAAC,GAAG,EACpH,OAAO2lF,EACR,CAAC,CAAC,CACH,EACMC,EAAiBhoD,IAAS,CAC/B,IAAM49B,GAAM,CAAC,EACb,OAAW,CAACt5D,GAAMqG,EAAC,IAAK,OAAO,QAAQq1B,GAAK,OAAO,EAAG49B,GAAIt5D,EAAI,EAAIqG,GAAE,MACpE,OAAOizD,EACR,EACMqqB,EAAgBjoD,IAAS,CAC9B,IAAM49B,GAAM,CAAC,EACbR,GAAQp9B,GAAK,EAAE,EACf,IAAMkoD,GAASL,EAAc7nD,EAAI,EACjC,OAAW,CAAC17B,GAAMqG,EAAC,IAAK,OAAO,QAAQq1B,GAAK,OAAO,EAAG,CACrD,GAAIr1B,GAAE,IAAK,SACX,IAAM28E,GAAOtnD,GAAK,SAAS,KACvBsnD,IAAQhjF,MAAQgjF,GAAM1pB,GAAIt5D,EAAI,EAAI4jF,GAAO,OAAO5jF,EAAI,EACnDs5D,GAAIt5D,EAAI,EAAImiF,EAAa97E,EAAC,CAChC,CACA,IAAMw9E,GAAcnoD,GAAK,WAAW,YACpC,GAAImoD,GAAa,QAAW/yF,MAAQ,OAAO,KAAK+yF,EAAW,EAAGvqB,GAAIxoE,EAAI,EAAI8yF,GAAO,OAAO9yF,EAAI,EAC5F,OAAOwoE,EACR,EACMgqB,EAAgB,CAACF,GAAQ1nD,GAAM17B,GAAM8jF,KAAa,CACvD,IAAMC,GAAMX,GACNhtF,GAAM0iE,GAAQp9B,GAAK,EAAE,EAC3B,GAAIqoD,GAAI,OAAS,MAAO,CACvB,IAAMC,GAASvB,EAAiB/mD,GAAM17B,GAAM+jF,GAAI,MAAM,EACtD,OAAKC,GACEC,IAAUC,IAAeF,GAAO,OAAOF,IAAY1B,EAAO,EAAE,EAAG2B,GAAI,SAAW,WAAW,EAAG9B,EAAY,GAAG7rF,EAAG,SAAS4J,EAAI,WAAW,EAAGiiF,EAAY,GAAG7rF,EAAG,SAAS4J,EAAI,WAAW,EAAGiiF,EAAY,GAAG7rF,EAAG,SAAS4J,EAAI,YAAY,EAAGiiF,EAAY,GAAG7rF,EAAG,SAAS4J,EAAI,YAAY,EAAGiiF,EAAY,GAAG7rF,EAAG,SAAS4J,EAAI,QAAQ,CAAC,EAD7S,IAErB,CACA,OAAI+jF,GAAI,OAAS,kBAAoBA,GAAI,OAAS,SAAWA,GAAI,OAAS,eAAuB9B,EAAY,GAAG7rF,EAAG,cAAc4J,EAAI,EAAE,EAChI,IACR,EACMmkF,EAAoB,CAAC3yF,GAAQkqC,GAAM0oD,GAAgBC,KAAgB,CACxE,IAAMC,GAAU5oD,GAAK,SAAS,KAC9B,GAAI,CAAC4oD,IAAS,OAAQ,OAAO9yF,GAC7B,IAAM+yF,GAAavD,EAAS,gBAAgBsD,GAAQ,MAAM,EAC1D,GAAI,CAACC,GAAY,OAAO/yF,GACxB,GAAI4yF,GAAe,IAAIG,EAAU,EAChC,eAAQ,MAAM,4CAA4C,EACnD/yF,GAER,IAAMs9C,GAAO,IAAI,IAAIs1C,EAAc,EACnCt1C,GAAK,IAAIpT,GAAK,EAAE,EAChB,IAAI8oD,GAAW3B,GAAY0B,GAAYz1C,EAAI,EAC3C,OAAIu1C,KAAaG,GAAWjC,EAAiBiC,EAAQ,EAAE,OAAOH,EAAW,GAClErE,IAAYxuF,GAAQgzF,GAAUF,GAAQ,MAAQ,OAAO,CAC7D,EACMG,GAAe/oD,IAASumD,EAAY,GAAGnpB,GAAQp9B,GAAK,EAAE,CAAC,WAAW,EAClEgpD,GAAUhpD,IAAS,CAAC,CAACA,GAAK,SAAS,aAAe,CAAC,CAACA,GAAK,WAAW,wBAA0B,CAAC4iD,GAAsB5iD,GAAK,SAAS,WAAW,EAC9IipD,GAAgBjpD,IAASA,GAAK,QAAQ,QAAQ,QAAU,EACxDkpD,GAAiBlpD,IAAS,CAAC,CAACA,GAAK,WAAW,cAC5CmpD,GAAqBnpD,IAAS,CAAC,CAACA,GAAK,WAAW,kBAChDopD,GAAqBppD,IAASgpD,GAAOhpD,EAAI,GAAK,CAACA,GAAK,WAAW,wBAAwB,qBAAuBkpD,GAAclpD,EAAI,GAAKA,GAAK,SAAS,YAAc,UAAY,CAACipD,GAAajpD,EAAI,GAAK,CAACmpD,GAAkBnpD,EAAI,EAC3NqpD,GAAc,IAAM,IAAIvG,GAAM1gF,IAAQ,cAAcskF,EAAO,aAAa,OAAO,GAAG,EAAE,MAAMtkF,EAAG,CAAC,SAAS,EACvGknF,GAAe,CAACtpD,GAAMuqC,GAAKmc,EAAO,KAAO,CAC9C,IAAMhsF,GAAM0iE,GAAQp9B,GAAK,EAAE,EACrBupD,GAAM5sD,IAAM4pD,EAAY,GAAG7rF,EAAG,UAAUiiC,EAAC,EAAE,EACjD,OAAO8mD,EAAKvC,IAA0B,eAAgB,CACrD3W,GACAgf,GAAG,SAAS,EACZA,GAAG,SAAS,EACZA,GAAG,WAAW,EACdA,GAAG,YAAY,EACfA,GAAG,cAAc,EACjBA,GAAG,UAAU,EACbA,GAAG,aAAa,EAChBF,GAAY,CACb,CAAC,CACF,EACMG,GAAoB,CAAC1zF,GAAQkqC,KAAS,CAC3C,GAAI,CAACgpD,GAAOhpD,EAAI,EAAG,OAAOlqC,GAC1B,GAAIkqC,GAAK,WAAW,wBAAwB,oBAAqB,CAChE,IAAMtlC,GAAM0iE,GAAQp9B,GAAK,EAAE,EACrBupD,GAAM5sD,IAAM4pD,EAAY,GAAG7rF,EAAG,UAAUiiC,EAAC,EAAE,EAC3CuqD,GAAML,EAAiB/wF,EAAM,EAC7B2zF,GAAYhG,EAAKtB,GAAiC,mBAAoB,CAC3EuE,EAAO,GACP6C,GAAG,SAAS,EACZA,GAAG,SAAS,EACZA,GAAG,WAAW,EACdA,GAAG,YAAY,EACfA,GAAG,UAAU,EACbA,GAAG,aAAa,CACjB,CAAC,EACKG,GAAUjG,EAAKrI,GAAoB,qBAAsB,CAAC8L,GAAI,OAAOuC,EAAS,CAAC,CAAC,EACtF,OAAO9F,GAAK+F,GAAQ,OAAO,KAAK,EAAGA,GAAQ,OAAO,GAAG,EAAE,IAAIJ,GAAatpD,EAAI,CAAC,CAAC,CAC/E,CACA,IAAMk9C,GAAOoM,GAAatpD,EAAI,EAC9B,OAAO2jD,GAAK7tF,GAAO,OAAO,KAAK,EAAGA,GAAO,OAAO,GAAG,EAAE,IAAIonF,EAAI,CAAC,CAC/D,EACMyM,GAAqB,CAAC7zF,GAAQkqC,KAAS,CAC5C,IAAM4pD,GAAK5pD,GAAK,SAAS,UACzB,GAAI,CAAC4pD,IAAM,CAAC/K,GAAoB+K,EAAE,EAAG,OAAO9zF,GAC5C,IAAM4E,GAAM0iE,GAAQp9B,GAAK,EAAE,EACrBknD,GAAML,EAAiB/wF,EAAM,EAC7B+zF,GAAMltD,IAAM4pD,EAAY,GAAG7rF,EAAG,WAAWiiC,EAAC,EAAE,EAClD,OAAOmtD,GAAsBrG,EAAK3E,IAAkB,mBAAoB,CACvE4H,EAAO,GACPmD,GAAG,SAAS,EACZA,GAAG,SAAS,EACZA,GAAG,UAAU,EACbA,GAAG,OAAO,EACVA,GAAG,SAAS,EACZA,GAAG,SAAS,EACZA,GAAG,aAAa,CACjB,CAAC,EAAItf,IAAO2c,GAAI,OAAO3c,EAAE,EAAGwf,IAAqBH,GAAG,KAAK,GAAK,CAAC,CAChE,EACMI,GAA2B,CAACl0F,GAAQm0F,GAAejqD,KACpDgpD,GAAOhpD,EAAI,EACViqD,KAAkB,QAAUb,GAAkBppD,EAAI,EAAU6jD,GAAQoG,GAAen0F,GAAQwzF,GAAatpD,EAAI,CAAC,EAC1GwpD,GAAkB1zF,GAAQkqC,EAAI,EAE/B2pD,GAAmB7zF,GAAQkqC,EAAI,EAEjCkqD,GAAwB,CAACC,GAAgBnqD,KAC1CopD,GAAkBppD,EAAI,EAAU,CACnC,oBAAqBmqD,GACrB,aAAcb,GAAatpD,EAAI,CAChC,EACO,CACN,oBAAqBgpD,GAAOhpD,EAAI,EAAIwpD,GAAkBW,GAAgBnqD,EAAI,EAAI2pD,GAAmBQ,GAAgBnqD,EAAI,EACrH,aAAc,MACf,EAEKoqD,GAAuB,CAACxa,GAAaya,GAAarqD,GAAMsqD,KAAiB,CAC9E,IAAMzO,GAAUkN,GAAY/oD,EAAI,EAC1BuqD,GAAQpB,GAAkBnpD,EAAI,EAAI4vC,KAAgB,OAASwU,GAAWxU,GAAaya,GAAa,SAAUxO,EAAO,EAAIgI,GAAQK,GAAMmG,GAAaxO,EAAO,EAAIgI,GAAQjU,IAAesU,GAAMmG,GAAaxO,EAAO,EAClN,OAAIyO,KAAiB,OAAeC,GAC7B1G,GAAQjU,IAAesU,GAAMqG,GAAOD,EAAY,CACxD,EACME,GAAkB,CAACxqD,GAAMyqD,KAAW,CACzC,GAAKzqD,GAAK,WAAW,QACrB,GAAI,CACH,IAAMlqC,GAASkqC,GAAK,WAAW,QAAQyqD,EAAM,EAC7C,GAAI30F,GACH,OAAA4vF,EAAa,KAAK,CACjB,OAAQ1lD,GAAK,GACb,gBAAiBlqC,GAAO,gBACxB,WAAYA,GAAO,UACpB,CAAC,EACMA,GAAO,OAEhB,OAASiW,GAAG,CACX2+E,GAAW,6CAA6C1qD,GAAK,EAAE,IAAKj0B,EAAC,CACtE,CACD,EACM4+E,GAAwB74E,IAAM,CACnC,IAAMgnD,GAAIsE,GAAQtrD,GAAE,EAAE,EAChBy3E,GAAM5sD,IAAM4pD,EAAY,GAAGztB,EAAC,UAAUn8B,EAAC,EAAE,EAC/C,MAAO,CACN,QAAS4sD,GAAG,SAAS,EACrB,QAASA,GAAG,SAAS,EACrB,UAAWA,GAAG,WAAW,EACzB,WAAYA,GAAG,YAAY,EAC3B,SAAUA,GAAG,UAAU,CACxB,CACD,EACMqB,GAAuB94E,IAAM,CAClC,IAAM+4E,GAAM/4E,GAAE,WAAW,uBACzB,MAAO,CAAC,CAAC+4E,KAAQ,CAAC,CAACA,GAAI,eAAiB,CAAC,CAACA,GAAI,aAC/C,EACMC,GAAoB9qD,IAAS,CAClC,GAAI,CAACA,GAAK,WAAW,kBAAmB,MAAO,CAAC,EAChD,IAAM49B,GAAM,CAAC,EACTorB,GAAOhpD,EAAI,IAAG49B,GAAI,gBAAkB+sB,GAAqB3qD,EAAI,GACjE,IAAM+qD,GAAW,CAAC,GAAGzF,EAAS,YAAYtlD,GAAK,EAAE,CAAC,EAAE,KAAK,CAACtqC,GAAGC,KAAMD,GAAE,SAAS,YAAcC,GAAE,SAAS,WAAW,EAClH,QAAWq1F,MAASD,GACnB,GAAIC,GAAM,SAAS,UAAY,GAC/B,IAAIhC,GAAOgC,EAAK,EAAG,CAClBptB,GAAI,kBAAoB+sB,GAAqBK,EAAK,EAClD,KACD,CACA,GAAIJ,GAAoBI,EAAK,EAAG,CAC/B,IAAMlyB,GAAIsE,GAAQp9B,GAAK,EAAE,EACnBirD,GAAMtuD,IAAM4pD,EAAY,GAAGztB,EAAC,iBAAiBn8B,EAAC,EAAE,EACtDihC,GAAI,kBAAoB,CACvB,QAASqtB,GAAG,SAAS,EACrB,QAASA,GAAG,SAAS,EACrB,UAAWA,GAAG,WAAW,EACzB,WAAYA,GAAG,YAAY,EAC3B,SAAUzH,GAAO,CAAC,CACnB,EACA,KACD,EAED,OAAO5lB,EACR,EACMstB,GAAa,CAAClrD,GAAMmrD,GAAWhb,GAAQ,CAAC,KACtC,CACN,MAAO0X,EAAc7nD,EAAI,EACzB,SAAUioD,EAAajoD,EAAI,EAC3B,WAAYgoD,EAAchoD,EAAI,EAC9B,UAAAmrD,GACA,IAAKzE,EACL,oBAAqBA,EAAO,oBAC5B,iBAAAG,EACA,eAAiBK,IAAQ,CACnB1B,EAAS,KAAMj9E,IAAMA,GAAE,MAAQ2+E,GAAI,GAAG,GAAG1B,EAAS,KAAK,CAC3D,IAAK0B,GAAI,IACT,KAAM,QACN,SAAUA,GAAI,SACf,CAAC,CACF,EACA,wBAA0BkE,IAAc,CACvC,IAAM1wF,GAAM,SAASwrF,GAAoB,GACzC,OAAAT,EAAiB,KAAK,CACrB,IAAA/qF,GACA,UAAA0wF,EACD,CAAC,EACMxE,EAAuBlsF,EAAG,CAClC,EACA,uBAAyB68C,IAAY,CACpC,IAAM78C,GAAM,WAAWurF,GAAmB,GAC1CT,EAAS,KAAK,CACb,IAAA9qF,GACA,KAAM,UACN,SAAU,CAAE,QAAA68C,EAAQ,CACrB,CAAC,EACD,IAAMx6B,GAASw6B,IAAS,OAAO,OAC/B,OAAIx6B,KAAW,YAAcA,KAAW,aAAeA,KAAW,gBAAeqpE,EAAiB,IAAI1rF,EAAG,EAClGisF,EAAejsF,EAAG,CAC1B,EACA,mBAAqB6Z,IAAS3L,EAAQ,qBAAqB2L,EAAI,IAAM,IAAM,CAC1E,MAAM,IAAI,MAAM,mEAAmE,CACpF,GAAG,EACH,kBAAoBA,IAAS3L,EAAQ,oBAAoB2L,EAAI,IAAM,IAAM,CACxE,MAAM,IAAI,MAAM,kEAAkE,CACnF,GAAG,EACH,qBAAuB82E,IAAe,CACrC,IAAM3wF,GAAM,SAASyrF,GAAiB,GACtC,OAAAX,EAAS,KAAK,CACb,IAAA9qF,GACA,KAAM,QACN,SAAU,CAAE,IAAI,SAAU,CACzB,OAAO2wF,GAAW,CACnB,CAAE,CACH,CAAC,EACM1E,EAAejsF,EAAG,CAC1B,EACA,YAAc4J,IAAS,CACtB,IAAK07B,GAAK,SAAS,OAAO17B,EAAI,GAAKA,GAAK,WAAW,WAAW,IAAMsE,EAAQ,sBAAuB,CAClG,IAAM8gC,GAAW9gC,EAAQ,sBAAsBo3B,GAAK,GAAI17B,EAAI,EAC5D,GAAIolC,KAAa,OAAQ,OAAOA,EACjC,CACA,OAAO1J,GAAK,QAAQ17B,EAAI,GAAG,KAC5B,EACA,WAAaA,IAAS,CACrB,IAAMojF,GAAS1nD,GAAK,SAAS,OAAO17B,EAAI,EACxC,GAAI,CAACojF,IAAUA,GAAO,OAAS,MAAO,OAAO,KAC7C,IAAM4D,GAAgBvE,EAAiB/mD,GAAM17B,GAAMojF,GAAO,MAAM,EAChE,OAAK4D,GACE,CACN,cAAAA,GACA,QAAS5D,GAAO,SAAW,YAC3B,OAAQ,IAAM9+E,EAAQ,mBAAmBo3B,GAAK,GAAI17B,EAAI,GAAK,CAC1D,SAAU,OAAOojF,GAAO,UAAa,SAAWA,GAAO,SAAW,EAClE,SAAU,OAAOA,GAAO,UAAa,SAAWA,GAAO,SAAW,EAClE,UAAW,OAAOA,GAAO,WAAc,SAAWA,GAAO,UAAY,EACrE,UAAW,OAAOA,GAAO,WAAc,SAAWA,GAAO,UAAY,EACrE,MAAO,OAAOA,GAAO,OAAU,SAAWA,GAAO,MAAQ,CAC1D,CACD,EAX2B,IAY5B,EACA,gBAAkBpjF,IAAS,CAC1B,IAAM8wC,GAASpV,GAAK,QAAQ17B,EAAI,GAAG,MACnC,OAAI,OAAO8wC,IAAW,UAAYA,KAAW,GAAW,KACjD2xC,EAAiB/mD,GAAM17B,GAAM8wC,EAAM,CAC3C,EACA,cAAe,CAAChgD,GAAMG,KAAUqT,EAAQ,kBAAkBo3B,GAAK,GAAI5qC,GAAMG,EAAK,EAC9E,UAAY01F,IAAOlF,EAAU,KAAKkF,EAAE,EACpC,eAAiBA,IAAOrF,EAAe,KAAKqF,EAAE,EAC9C,cAAgBA,IAAOpF,EAAc,KAAKoF,EAAE,EAC5C,SAAWA,IAAOnF,EAAS,KAAKmF,EAAE,EAClC,OAAQriF,EAAQ,OAChB,WAAYA,EAAQ,YAAc,CACjC,MAAO,EACP,OAAQ,CACT,EACA,IAAKA,EAAQ,IACb,UAAWo3B,GAAK,UAChB,GAAG8qD,GAAiB9qD,EAAI,EACxB,GAAGmwC,EACJ,GAED,SAASgX,GAAY95D,GAAIq7D,GAAiC,IAAI,IAAO,CACpE,IAAM1oD,GAAOslD,EAAS,QAAQj4D,EAAE,EAChC,GAAI,CAAC2S,GAAM,OAAOkkD,GAClB,IAAM6G,GAAWzF,EAAS,YAAYj4D,EAAE,EACxC,GAAI09D,GAAS,OAAS,GAAK/qD,GAAK,WAAW,4BAA6B,CACvE,IAAMurD,GAAWC,GAAuBxrD,GAAM+qD,GAAUrC,EAAc,EACtE,GAAI6C,KAAa,KAAM,OAAOA,EAC/B,CACA,GAAIR,GAAS,OAAS,GAAK/qD,GAAK,WAAW,QAAS,CACnD,IAAMyrD,GAASC,GAA8B1rD,GAAM+qD,EAAQ,EAC3D,GAAIU,KAAW,KAAM,OAAOA,GAC5B,IAAME,GAASC,GAAmC5rD,GAAM+qD,GAAUrC,EAAc,EAChF,GAAIiD,KAAW,KAAM,OAAOA,EAC7B,CACA,GAAIZ,GAAS,SAAW,EAAG,CAC1BpF,EAAgB,IAAIt4D,EAAE,EACtB,IAAMw+D,GAAWX,GAAWlrD,GAAM,OAAQ,CACzC,SAAU8rD,GAAgB9rD,EAAI,EAC9B,GAAG+rD,GAAmB/rD,EAAI,CAC3B,CAAC,EACD6rD,GAAS,eAAiBrB,GAAgBxqD,GAAM6rD,EAAQ,EACxD,IAAM/1F,GAASkqC,GAAK,WAAW,SAAS6rD,EAAQ,EAChD,OAAOpD,EAAkBO,GAAOhpD,EAAI,EAAIwpD,GAAkB1zF,GAAQkqC,EAAI,EAAI2pD,GAAmB7zF,GAAQkqC,EAAI,EAAGA,GAAM0oD,EAAc,CACjI,CACA,IAAMsD,GAAS,CAAC,GAAGjB,EAAQ,EAAE,KAAK,CAACr1F,GAAGC,KAAMD,GAAE,SAAS,YAAcC,GAAE,SAAS,WAAW,EACrFs2F,GAAWC,GAA6BF,GAAQtD,EAAc,EACpE,GAAIuD,KAAa,KAAM,CACtB,IAAMJ,GAAWX,GAAWlrD,GAAMisD,GAAU,CAAE,SAAUH,GAAgB9rD,EAAI,CAAE,CAAC,EAC/E6rD,GAAS,eAAiBrB,GAAgBxqD,GAAM6rD,EAAQ,EACxD,IAAM/1F,GAASkqC,GAAK,WAAW,SAAS6rD,EAAQ,EAChD,OAAOpD,EAAkBO,GAAOhpD,EAAI,EAAIwpD,GAAkB1zF,GAAQkqC,EAAI,EAAI2pD,GAAmB7zF,GAAQkqC,EAAI,EAAGA,GAAM0oD,EAAc,CACjI,CACA,IAAMyD,GAAWC,GAAgBpsD,GAAMgsD,GAAQtD,EAAc,EAC7D/C,EAAgB,IAAIt4D,EAAE,EACtB,IAAMo9D,GAASS,GAAWlrD,GAAMmsD,GAAU,CAAE,SAAUL,GAAgB9rD,EAAI,CAAE,CAAC,EAC7E,OAAAyqD,GAAO,eAAiBD,GAAgBxqD,GAAMyqD,EAAM,EAC7ChC,EAAkBuB,GAAyBhqD,GAAK,WAAW,SAASyqD,EAAM,EAAG0B,GAAUnsD,EAAI,EAAGA,GAAM0oD,EAAc,CAC1H,CACA,SAAS0D,GAAgBC,GAAQL,GAAQtD,GAAgB,CACxD,IAAIyD,GACJ,QAASppF,GAAI,EAAGA,GAAIipF,GAAO,OAAQjpF,KAAK,CACvC,IAAMioF,GAAQgB,GAAOjpF,EAAC,EACtB,GAAIioF,GAAM,SAAS,UAAY,GAAO,SACtC,GAAImB,KAAa,QAAUG,GAAoBtB,EAAK,EAAG,CACtD,IAAMuB,GAAYC,GAA4BR,GAAQjpF,GAAGopF,GAAUzD,EAAc,EACjF,GAAI6D,GAAW,CACdJ,GAAWI,GAAU,KACrBxpF,GAAIwpF,GAAU,SACd,QACD,CACD,CACA5G,EAAgB,IAAIqF,GAAM,EAAE,EAC5B,IAAMyB,GAAmBnH,EAAS,YAAY0F,GAAM,EAAE,EAAE,OAAS,EAC7DX,GACAC,GACJ,GAAImC,GAAkBpC,GAAclD,GAAY6D,GAAM,GAAItC,EAAc,MACnE,CACJ,IAAIgE,GAAiBP,GACjBnB,GAAM,WAAW,aAAemB,KAAa,SAAQO,GAAiBtI,GAAWF,GAAMiI,GAAU,SAAU3I,GAAO,CAAC,CAAC,GACpHwH,GAAM,WAAW,uBAAsB0B,GAAiB,QAC5D,IAAMjC,GAASS,GAAWF,GAAO0B,GAAgB,CAChD,SAAUZ,GAAgBd,EAAK,EAC/B,GAAGe,GAAmBf,EAAK,CAC5B,CAAC,EACDP,GAAO,eAAiBD,GAAgBQ,GAAOP,EAAM,EACrD,IAAMkC,GAAWzC,GAAsBc,GAAM,WAAW,SAASP,EAAM,EAAGO,EAAK,EAC/EV,GAAeqC,GAAS,aACxBtC,GAAc5B,EAAkBkE,GAAS,oBAAqB3B,GAAOtC,EAAc,CACpF,CACA,GAAIsC,GAAM,WAAW,eAAiBA,GAAM,SAAS,YAAc,UAAY,CAACyB,GAAkBN,GAAW/B,GAAqB+B,GAAU9B,GAAaW,GAAOV,EAAY,MACvK,CACJ,IAAMvN,GAAYiO,GAAM,SAAS,WAAa,SACxC4B,GAAmB5B,GAAM,SAAS,SAAW,EAC/CmB,KAAa,OAAQA,GAAWE,GAAO,WAAW,aAAeO,KAAqB,EAAIxI,GAAWD,GAAQkG,GAAatN,GAAWgM,GAAYiC,EAAK,CAAC,EAAIX,GAC1J8B,GAAW/H,GAAW+H,GAAU9B,GAAatN,GAAWgM,GAAYiC,EAAK,CAAC,CAChF,CACD,CACA,OAAOmB,EACR,CACA,SAASJ,GAAmB/rD,GAAMuqC,GAAKmc,EAAO,GAAI,CACjD,GAAI,CAACsC,GAAOhpD,EAAI,EAAG,MAAO,CAAC,EAC3B,GAAI,CAACA,GAAK,WAAW,wBAAwB,kBAAmB,MAAO,CAAC,EACxE,IAAMtlC,GAAM0iE,GAAQp9B,GAAK,EAAE,EACrBupD,GAAM5sD,IAAM4pD,EAAY,GAAG7rF,EAAG,UAAUiiC,EAAC,EAAE,EACjD,MAAO,CACN,UAAW8mD,EAAKtB,GAAiC,mBAAoB,CACpE5X,GACAgf,GAAG,SAAS,EACZA,GAAG,SAAS,EACZA,GAAG,WAAW,EACdA,GAAG,YAAY,EACfA,GAAG,UAAU,EACbA,GAAG,aAAa,CACjB,CAAC,EACD,sBAAuB5F,GAAK4F,GAAG,WAAW,EAAE,IAAI,CAAC,EAAE,IAAI7C,EAAO,aAAa,OAAO,GAAG,CAAC,EAAG6C,GAAG,YAAY,EAAE,IAAI,CAAC,EAAE,IAAI7C,EAAO,aAAa,OAAO,GAAG,CAAC,EAAG,EAAG,CAAC,EAAE,OAAO,IAAI,CACzK,CACD,CACA,SAASoF,GAAgB9rD,GAAM,CAC9B,GAAI,GAACgpD,GAAOhpD,EAAI,GAAK,CAACA,GAAK,WAAW,cAClC,CAAAA,GAAK,WAAW,wBAAwB,kBAC5C,OAAOspD,GAAatpD,EAAI,CACzB,CACA,IAAM6sD,GAA+B/6E,IAAM,CAAC,CAACA,GAAE,SAAS,MAAQA,GAAE,SAAS,UAAY,QAAUA,GAAE,SAAS,QAAU,IAAMA,GAAE,SAAS,WAAa,YAAc,UAAY+sE,GAAoB/sE,GAAE,SAAS,SAAS,GAAKk3E,GAAOl3E,EAAC,EAC7Nw6E,GAAuBx6E,IAAM,CAAC,CAACA,GAAE,WAAW,SAAWwzE,EAAS,YAAYxzE,GAAE,EAAE,EAAE,SAAW,GAAK,CAAC+6E,GAA4B/6E,EAAC,EACtI,SAASg7E,GAAQC,GAAOxiB,GAAI2S,GAAM,CACjCyI,EAAgB,IAAIoH,GAAM,EAAE,EAC5B,IAAMC,GAAiBxC,GAAgBuC,GAAO7B,GAAW6B,GAAO,MAAM,CAAC,EACvE,OAAOA,GAAM,WAAW,QAAQ,CAC/B,GAAAxiB,GACA,KAAA2S,GACA,SAAU+K,EAAa8E,EAAK,EAC5B,WAAY/E,EAAc+E,EAAK,EAC/B,MAAOlF,EAAckF,EAAK,EAC1B,OAAQrG,EAAO,OACf,eAAiBuE,IAAOrF,EAAe,KAAKqF,EAAE,EAC9C,eAAA+B,EACD,CAAC,CACF,CACA,SAASC,GAAgBl+C,GAAK,CAC7B,IAAIw7B,GAAKmc,EAAO,GACZxJ,GAAOsG,GAAO,CAAC,EACnB,QAASzgF,GAAIgsC,GAAI,OAAS,EAAGhsC,IAAK,EAAGA,KAAK,CACzC,IAAMmqF,GAAWJ,GAAQ/9C,GAAIhsC,EAAC,EAAGwnE,GAAI2S,EAAI,EACzC3S,GAAK2iB,GAAS,GACdhQ,GAAOgQ,GAAS,IACjB,CACA,MAAO,CACN,GAAA3iB,GACA,KAAA2S,EACD,CACD,CACA,IAAMiQ,GAAqB,GACrBC,GAAe5J,GAAO,CAAC,EACvB6J,GAAmB,CAACv7E,GAAGw7E,KAAW,CAGvC,GAFIA,GAAO,QAAU,GACjBx7E,GAAE,SAAS,MACX+sE,GAAoB/sE,GAAE,SAAS,SAAS,EAAG,MAAO,GACtD,IAAMi5E,GAAWzF,EAAS,YAAYxzE,GAAE,EAAE,EAAE,OAAQtC,IAAMA,GAAE,SAAS,UAAY,EAAK,EACtF,OAAIu7E,GAAS,SAAW,EACnB/B,GAAOl3E,EAAC,GAAKA,GAAE,WAAW,wBAAwB,oBAA4B,GAC3E,CAAC,CAACA,GAAE,WAAW,kBAAoB,CAACA,GAAE,WAAW,cAErD,CAACA,GAAE,WAAW,SACdk3E,GAAOl3E,EAAC,EAAU,GACfi5E,GAAS,MAAOv7E,IAAM69E,GAAiB79E,GAAG89E,EAAM,CAAC,CACzD,EACA,SAASC,GAAcR,GAAOxiB,GAAI2S,GAAM,CACvC,IAAMsQ,GAAWtQ,IAAQkQ,GACnBxvB,GAAMkvB,GAAQC,GAAOxiB,GAAIijB,EAAQ,EACvC,MAAO,CACN,GAAI5vB,GAAI,GACR,KAAMA,GAAI,OAAS4vB,GAAWtQ,GAAOtf,GAAI,IAC1C,CACD,CACA,IAAM6vB,GAAkB,CAAC/3F,GAAGC,KAAMD,KAAM,OAASC,GAAIA,KAAM,OAASD,GAAIA,GAAE,IAAIC,EAAC,EAC/E,SAAS+3F,GAAY1tD,GAAMuqC,GAAI2S,GAAM,CACpC,IAAM6N,GAAWzF,EAAS,YAAYtlD,GAAK,EAAE,EAAE,OAAQxwB,IAAMA,GAAE,SAAS,UAAY,EAAK,EACzF,GAAIu7E,GAAS,OAAS,EAAG,CACxB,GAAI,CAAC/qD,GAAK,WAAW,QAAS,OAAO,KACrC,IAAMoT,GAAOm6C,GAAcvtD,GAAMuqC,GAAI2S,EAAI,EACzC,OAAOyQ,GAAoB5C,GAAU9G,GAAQ7wC,GAAK,GAAI,QAAQ,EAAGA,GAAK,IAAI,CAC3E,CACA,GAAI,CAACpT,GAAK,WAAW,iBAAkB,OAAO,KAC9C2lD,EAAgB,IAAI3lD,GAAK,EAAE,EAC3B,IAAM4tD,GAAY7B,GAAmB/rD,GAAMuqC,EAAE,EACvCkgB,GAASS,GAAWlrD,GAAM,OAAQ,OAAO,KAAK4tD,EAAS,EAAE,OAAS,EAAIA,GAAY,CAAE,UAAWrjB,EAAG,CAAC,EACzGkgB,GAAO,eAAiBD,GAAgBxqD,GAAMyqD,EAAM,EACpD,IAAMN,GAAiBnqD,GAAK,WAAW,SAASyqD,EAAM,EAChDoD,GAAWJ,GAAgBvQ,GAAM8L,GAAOhpD,EAAI,EAAIspD,GAAatpD,GAAMuqC,EAAE,EAAI,MAAM,EACrF,GAAIsjB,KAAa,OAAQ,OAAO1D,GAChC,IAAMr0F,GAASmuF,GAAQkG,GAAgB,KAAK,EAC5C,OAAOxG,GAAK7tF,GAAO,OAAO,KAAK,EAAGA,GAAO,OAAO,GAAG,EAAE,IAAI+3F,EAAQ,CAAC,CACnE,CACA,SAASF,GAAoB5C,GAAUxgB,GAAI2S,GAAM,CAChD,IAAM8O,GAAS,CAAC,GAAGjB,EAAQ,EAAE,KAAK,CAACr1F,GAAGC,KAAMD,GAAE,SAAS,YAAcC,GAAE,SAAS,WAAW,EACvFw2F,GACJ,QAAWnB,MAASgB,GAAQ,CAC3B,IAAM3B,GAAcqD,GAAY1C,GAAOzgB,GAAI,MAAM,EACjD,GAAI8f,KAAgB,KAAM,OAAO,KACjC,IAAMtN,GAAYiO,GAAM,SAAS,WAAa,SACxC4B,GAAmB5B,GAAM,SAAS,SAAW,EAC/CmB,KAAa,OAAQA,GAAWpP,KAAc,UAAY6P,KAAqB,EAAIvC,GAAcjG,GAAWD,GAAQkG,GAAatN,GAAWgM,GAAYiC,EAAK,CAAC,EAC7JmB,GAAW/H,GAAW+H,GAAU9B,GAAatN,GAAWgM,GAAYiC,EAAK,CAAC,CAChF,CACA,GAAImB,KAAa,OAAQ,OAAO,KAChC,GAAIjP,KAAS,OAAQ,OAAOiP,GAC5B,IAAM2B,GAAO7J,GAAQkI,GAAU,MAAM,EACrC,OAAOxI,GAAKmK,GAAK,OAAO,KAAK,EAAGA,GAAK,OAAO,GAAG,EAAE,IAAI5Q,EAAI,CAAC,CAC3D,CACA,SAASwO,GAA8BW,GAAQtB,GAAU,CAExD,GADI,CAACsB,GAAO,WAAW,SACnBQ,GAA4BR,EAAM,EAAG,OAAO,KAChD,IAAM0B,GAAUhD,GAAS,OAAQv7E,IAAMA,GAAE,SAAS,UAAY,EAAK,EACnE,GAAIu+E,GAAQ,SAAW,EAAG,OAAO,KACjC,IAAMT,GAAS,CAAE,KAAMH,EAAmB,EAC1C,GAAI,CAACY,GAAQ,MAAOv+E,IAAM69E,GAAiB79E,GAAG89E,EAAM,CAAC,EAAG,OAAO,KAC/D3H,EAAgB,IAAI0G,GAAO,EAAE,EAC7B,GAAM,CAAE,GAAA9hB,GAAI,KAAA2S,EAAK,EAAIqQ,GAAclB,GAAQ3F,EAAO,GAAI,MAAM,EAC5D,OAAOiH,GAAoBI,GAAS9J,GAAQ1Z,GAAI,QAAQ,EAAG2S,EAAI,CAChE,CACA,SAASgP,GAA6BF,GAAQgC,GAAiB,CAC9D,IAAMD,GAAU/B,GAAO,OAAQx8E,IAAMA,GAAE,SAAS,UAAY,EAAK,EAEjE,GADI,CAACu+E,GAAQ,KAAMv+E,IAAM,CAAC,CAACA,GAAE,WAAW,OAAO,GAC3Cu+E,GAAQ,OAAS,EAAG,OAAO,KAC/B,IAAInlE,GAAWmlE,GAAQ,OACvB,QAAShrF,GAAIgrF,GAAQ,OAAS,EAAGhrF,IAAK,GAChCupF,GAAoByB,GAAQhrF,EAAC,CAAC,EADKA,KAExC6lB,GAAW7lB,GAEZ,IAAMgsC,GAAMg/C,GAAQ,MAAMnlE,EAAQ,EAC5BqlE,GAAeF,GAAQ,MAAM,EAAGnlE,EAAQ,EAE9C,GADImmB,GAAI,SAAW,GACfk/C,GAAa,SAAW,EAAG,OAAO,KACtC,IAAMC,GAAYD,GAAa,CAAC,EAGhC,GAFI,CAACC,GAAU,WAAW,kBACtB5I,EAAS,YAAY4I,GAAU,EAAE,EAAE,OAAS,GAC5CrB,GAA4BqB,EAAS,EAAG,OAAO,KACnDvI,EAAgB,IAAIuI,GAAU,EAAE,EAChC,QAAWnB,MAASh+C,GAAK42C,EAAgB,IAAIoH,GAAM,EAAE,EACrD,GAAM,CAAE,GAAAxiB,GAAI,KAAA2S,EAAK,EAAI+P,GAAgBl+C,EAAG,EAClC07C,GAASS,GAAWgD,GAAW,OAAQ,CAAE,UAAW3jB,EAAG,CAAC,EAC9DkgB,GAAO,eAAiBD,GAAgB0D,GAAWzD,EAAM,EACzD,IAAM0D,GAAYD,GAAU,WAAW,SAASzD,EAAM,EACtD,OAAO9G,GAAKwK,GAAU,OAAO,KAAK,EAAGA,GAAU,OAAO,GAAG,EAAE,IAAIjR,EAAI,CAAC,CACrE,CACA,SAASsP,GAA4BR,GAAQoC,GAAUH,GAAcD,GAAiB,CACrF,GAAI,CAAC1B,GAAoBN,GAAOoC,EAAQ,CAAC,EAAG,OAAO,KACnD,IAAMr/C,GAAM,CAAC,EACTs/C,GAAWD,GACf,QAAS7+E,GAAI6+E,GAAU7+E,GAAIy8E,GAAO,OAAQz8E,KAAK,CAC9C,IAAMuC,GAAIk6E,GAAOz8E,EAAC,EAClB,GAAIuC,GAAE,SAAS,UAAY,GAC3B,IAAI,CAACw6E,GAAoBx6E,EAAC,EAAG,MAC7Bi9B,GAAI,KAAKj9B,EAAC,EACVu8E,GAAW9+E,GACZ,CACA,GAAIw/B,GAAI,SAAW,EAAG,OAAO,KAC7B,QAAWg+C,MAASh+C,GAAK42C,EAAgB,IAAIoH,GAAM,EAAE,EACrD,GAAM,CAAE,GAAAxiB,GAAI,KAAA2S,EAAK,EAAI+P,GAAgBl+C,EAAG,EAClC26C,GAAU7C,EAAiBzC,GAAWF,GAAM+J,GAAc,SAAUzK,GAAO,CAAC,CAAC,CAAC,EAAE,OAAOjZ,EAAE,EAC/F,MAAO,CACN,KAAMoZ,GAAK+F,GAAQ,OAAO,KAAK,EAAGA,GAAQ,OAAO,GAAG,EAAE,IAAIxM,EAAI,CAAC,EAC/D,SAAAmR,EACD,CACD,CACA,SAASzC,GAAmCS,GAAQtB,GAAUrC,GAAgB,CAE7E,GADI,CAAC2D,GAAO,WAAW,SACnBQ,GAA4BR,EAAM,EAAG,OAAO,KAChD,IAAMiC,GAAM,EACNz/D,GAAQ,CAAC,EACX0/D,GAASlC,GACTmC,GAAczD,GACd0D,GAAoB,KACpBC,GAAoB,KACxB,QAASjkD,GAAQ,EAAGA,GAAQ6jD,GAAK7jD,KAAS,CACzC5b,GAAM,KAAK0/D,EAAM,EACjB,IAAMR,GAAUS,GAAY,OAAQh/E,IAAMA,GAAE,SAAS,UAAY,EAAK,EACtE,GAAIu+E,GAAQ,SAAW,EAAG,OAAO,KACjC,IAAM36C,GAAO26C,GAAQ,CAAC,EAChBY,GAAerJ,EAAS,YAAYlyC,GAAK,EAAE,EACjD,GAAIA,GAAK,WAAW,kBAAoBu7C,GAAa,SAAW,GAAK,CAAC9B,GAA4Bz5C,EAAI,EAAG,CACxGq7C,GAAoBr7C,GACpB,KACD,CACA,GAAIA,GAAK,WAAW,SAAW,CAACy5C,GAA4Bz5C,EAAI,GAAKu7C,GAAa,SAAW,EAAG,CAC/FJ,GAASn7C,GACTo7C,GAAcG,GACd,QACD,CACAD,GAAoBt7C,GACpB,KACD,CACA,GAAI,CAACq7C,IAAqB,CAACC,GAAmB,OAAO,KACrD,QAAWl/E,MAAKqf,GAAO82D,EAAgB,IAAIn2E,GAAE,EAAE,EAC/C,GAAM,CAAE,GAAA+6D,GAAI,KAAA2S,EAAK,EAAI+P,GAAgB,CAAC,GAAGp+D,EAAK,EAAE,QAAQ,CAAC,EACrD/4B,GACJ,GAAI24F,GAAmB,CACtB9I,EAAgB,IAAI8I,GAAkB,EAAE,EACxC,IAAMhE,GAASS,GAAWuD,GAAmB,OAAQ,CAAE,UAAWlkB,EAAG,CAAC,EACtEkgB,GAAO,eAAiBD,GAAgBiE,GAAmBhE,EAAM,EACjE,IAAMmE,GAAMH,GAAkB,WAAW,SAAShE,EAAM,EACxD30F,GAAS6tF,GAAKiL,GAAI,OAAO,KAAK,EAAGA,GAAI,OAAO,GAAG,EAAE,IAAI1R,EAAI,CAAC,CAC3D,KAAO,CACN,IAAMwM,GAAU7C,EAAiBzC,GAAWD,GAAQgD,GAAYuH,GAAkB,GAAIhG,EAAc,EAAGgG,GAAkB,SAAS,WAAa,SAAU3F,GAAY2F,EAAiB,CAAC,CAAC,EAAE,OAAOnkB,EAAE,EACnMz0E,GAAS6tF,GAAK+F,GAAQ,OAAO,KAAK,EAAGA,GAAQ,OAAO,GAAG,EAAE,IAAIxM,EAAI,CAAC,CACnE,CACA,OAAOuL,EAAkBO,GAAOqD,EAAM,EAAI7C,GAAkB1zF,GAAQu2F,EAAM,EAAI1C,GAAmB7zF,GAAQu2F,EAAM,EAAGA,GAAQ3D,EAAc,CACzI,CACA,SAAS8C,GAAuBa,GAAQtB,GAAUrC,GAAgB,CACjE,IAAMmG,GAAe/8E,IAAM,CAAC,CAACA,GAAE,SAAS,MAAQA,GAAE,SAAS,UAAY,QAAUA,GAAE,SAAS,QAAU,IAAMA,GAAE,SAAS,WAAa,YAAc,UAAY+sE,GAAoB/sE,GAAE,SAAS,SAAS,GAAKk3E,GAAOl3E,EAAC,EAEnN,GADI,CAACu6E,GAAO,WAAW,6BACnBwC,GAAYxC,EAAM,EAAG,OAAO,KAChC,IAAMx9D,GAAQ,CAAC,EACX0/D,GAASlC,GACTyC,GAAW,KACXN,GAAczD,GACZuD,GAAM,EACZ,QAAS7jD,GAAQ,EAAGA,GAAQ6jD,GAAK7jD,KAAS,CACzC5b,GAAM,KAAK0/D,EAAM,EACjB,IAAMR,GAAUS,GAAY,OAAQh/E,IAAMA,GAAE,SAAS,UAAY,EAAK,EACtE,GAAIu+E,GAAQ,SAAW,EAAG,OAAO,KACjC,IAAM36C,GAAO26C,GAAQ,CAAC,EACtB,GAAIc,GAAYz7C,EAAI,EAAG,OAAO,KAC9B,IAAM27C,GAAkBzJ,EAAS,YAAYlyC,GAAK,EAAE,EAAE,OAAS,EAC/D,GAAIA,GAAK,WAAW,kBAAoB,CAAC27C,GAAiB,CACzDD,GAAW17C,GACX,KACD,CACA,GAAIA,GAAK,WAAW,4BAA6B,CAChDm7C,GAASn7C,GACTo7C,GAAclJ,EAAS,YAAYlyC,GAAK,EAAE,EAC1C,QACD,CACA,OAAO,IACR,CACA,GAAI,CAAC07C,GAAU,OAAO,KACtBnJ,EAAgB,IAAImJ,GAAS,EAAE,EAC/B,QAAWE,MAAQngE,GAAO82D,EAAgB,IAAIqJ,GAAK,EAAE,EACrD,IAAMC,GAAa,CAAC,EAChBC,GACJ,QAASnsF,GAAI,EAAGA,GAAI8rB,GAAM,OAAQ9rB,KAAK,CACtC,IAAMisF,GAAOngE,GAAM9rB,EAAC,EACd0nF,GAASS,GAAW8D,GAAM,OAAQ,CAAE,eAAgBE,GAAW,CAAE,eAAgBA,EAAS,EAAI,MAAO,CAAC,EACtGC,GAAU3E,GAAgBwE,GAAMvE,EAAM,EAC5C,GAAI,CAAC0E,IAAW,CAACA,GAAQ,UAAW,OAAO,KAC3C1E,GAAO,eAAiB0E,GACxBF,GAAW,KAAKxE,EAAM,EACtByE,GAAWC,GAAQ,SACpB,CACA,IAAMC,GAAcF,GAAS,OAAOxI,EAAO,EAAE,EACvC2I,GAAa1L,GAAKyL,GAAY,OAAO,GAAG,EAAGA,GAAY,OAAO,GAAG,EAAG,EAAG,CAAC,EAAE,OAAO,IAAI,EACrFE,GAAapE,GAAW4D,GAAU,OAAQ,CAAE,UAAWO,EAAW,CAAC,EACzEC,GAAW,eAAiB9E,GAAgBsE,GAAUQ,EAAU,EAChE,IAAInD,GAAW2C,GAAS,WAAW,SAASQ,EAAU,EACtD,QAASvsF,GAAI8rB,GAAM,OAAS,EAAG9rB,IAAK,EAAGA,KACtCksF,GAAWlsF,EAAC,EAAE,UAAYopF,GAC1B8C,GAAWlsF,EAAC,EAAE,oBAAsB,GACpCopF,GAAWt9D,GAAM9rB,EAAC,EAAE,WAAW,SAASksF,GAAWlsF,EAAC,CAAC,EAEtD,OAAO0lF,EAAkBO,GAAOqD,EAAM,EAAI7C,GAAkB2C,GAAUE,EAAM,EAAI1C,GAAmBwC,GAAUE,EAAM,EAAGA,GAAQ3D,EAAc,CAC7I,CACA,IAAM6G,GAAWjK,EAAS,OAAS6B,GAAY7B,EAAS,MAAM,EAAIpB,GAC5DsL,GAAYjK,EAAc,IAAK5vF,IAAM,CAC1C,GAAM,CAAE,KAAA27B,GAAM,UAAA/1B,EAAU,EAAIgpF,GAAkB5uF,GAAE,KAAOw2F,IAAaA,GAAUvjF,EAAQ,OAAS,GAAM7K,EAAQ,OAAO,EACpH,MAAO,CACN,WAAYpI,GAAE,IACd,SAAU85F,GAAmBn+D,GAAM/1B,GAAW,OAAO5F,GAAE,GAAG,GAAIoI,EAAQ,QAASqoF,CAAgB,CAChG,CACD,CAAC,EACKsJ,GAAW9mF,EAAQ,aAAe,SAClC+mF,GAAWpL,GAAkBgL,GAAU,CAACpD,GAAU/pF,KAAQwtF,IAAUzD,GAAU/pF,GAAKstF,GAAU9mF,EAAQ,kBAAoB,EAAK,EAAGA,EAAQ,OAAS,GAAM7K,EAAQ,OAAO,EAC7K,MAAO,CACN,aAAA2nF,EACA,UAAA8J,GACA,UAAWC,GAAmBE,GAAS,KAAMA,GAAS,UAAW,QAAS5xF,EAAQ,QAASqoF,CAAgB,EAC3G,SAAAZ,EACA,iBAAAC,EACA,QAAS,CACR,SAAU1nF,EAAQ,QAClB,SAAUA,EAAQ,OACnB,EACA,eAAA6nF,EACA,cAAAC,EACA,SAAAC,EACA,UAAAC,EACA,gBAAAJ,CACD,CACD,CACA,SAASiK,IAAUzD,EAAU/pF,EAAKoR,EAAMq8E,EAAa,CACpD,IAAMC,EAAS1tF,EAAI,SAASs8E,GAAWlrE,CAAI,GAAKkrE,GAAW,OAAQ,QAAQlrE,CAAI,EAAE,EAC3Eu8E,EAAO3tF,EAAI,SAASu8E,GAAc,cAAc,EAChDoJ,EAAQ3lF,EAAI,WAAW,UAAU,EACvCA,EAAI,UAAU,OAAO2lF,CAAK,MAAMoE,CAAQ,GAAG,EAC3C,IAAM3V,EAAM,GAAGuZ,CAAI,IAAID,CAAM,IAAI/H,CAAK,SACtC,OAAO8H,EAAc,SAASrZ,CAAG,MAAMuR,CAAK,OAAOA,CAAK,MAAQ,SAASvR,CAAG,KAAKuR,CAAK,KACvF,CACA,SAAS0H,GAAmBn+D,EAAM/1B,EAAWnG,EAAM46F,EAAe5J,EAAmC,IAAI,IAAO,CAC/G,IAAM6J,EAAQC,GAAc5+D,EAAM,mBAAmB,EAC/C6+D,EAAgBD,GAAc5+D,EAAM,mBAAmB,EACvD8+D,EAAe,eAAe,KAAK9+D,CAAI,EACzC++D,EACJ,GAAIJ,EAAM,OAAS,EAAG,CACrB,IAAMlzF,EAAU,CAAC,EACjB,QAAWrC,KAAOu1F,EAAOlzF,EAAQrC,CAAG,EAAI0rF,EAAiB,IAAI1rF,CAAG,EAAI,CACnE,QAASkhB,GAAUvS,CAAG,EACtB,WAAY,oBACb,EAAI,CAAE,QAASuS,GAAUvS,CAAG,CAAE,EAC9BgnF,GAAiC,WAAW,uBAA0B36F,GAAMA,IAAIqnE,EAAgB,gBAAgBhgE,CAAO,EAAE,KAAKumF,GAAY,QAAQ,EAAG,eAAe,EACpK/nF,EAAU,IAAM80F,CACjB,CACA,IAAIC,EACJ,GAAIH,EAAc,OAAS,EAAG,CAC7B,IAAMpzF,EAAU,CAAC,EACjB,QAAWrC,KAAOy1F,EAAepzF,EAAQrC,CAAG,EAAI,CAAE,gBAAiBuiB,GAAgB,CAAE,EACrF,IAAMszE,EAAW,IAAI,IAAI,CAACjN,GAAY,QAAQ,CAAC,EAC3C2M,EAAM,OAAS,GAAGM,EAAS,IAAIjN,GAAY,QAAQ,EACnD8M,GAAcG,EAAS,IAAIjN,GAAY,QAAQ,EACnD,IAAIkN,EAAc,EAClB,KAAOD,EAAS,IAAIC,CAAW,GAAGA,IAClCF,GAAkC,WAAW,uBAA0B56F,GAAMA,IAAIqnE,EAAgB,gBAAgBhgE,CAAO,EAAE,KAAKyzF,CAAW,EAAG,gBAAgB,EAC7Jj1F,EAAU,IAAM+0F,CACjB,CACA,OAAIF,IAAc70F,EAAU,KAAOy0F,GAC5B,CACN,KAAA1+D,EACA,UAAA/1B,EACA,MAAOwhE,EAAgB,WAAW,CACjC,GAAI,CAAE,GAAIpzC,CAAQ,EAClB,IAAKK,CACN,CAAC,EAAEsH,CAAI,EAAE,MAAM/1B,CAAS,EAAE,MAAMnG,CAAI,EACpC,MAAA66F,EACA,cAAAE,EACA,aAAAC,EACA,cAAAC,EACA,eAAAC,CACD,CACD,CACA,SAASJ,GAAchN,EAAMuN,EAAI,CAChC,IAAM7yB,EAAsB,IAAI,IAChC,QAAWzqD,KAAK+vE,EAAK,SAASuN,CAAE,EAAG7yB,EAAI,IAAIzqD,EAAE,CAAC,CAAC,EAC/C,MAAO,CAAC,GAAGyqD,CAAG,CACf,CACA,SAAS4qB,IAAekB,EAASgH,EAAS,CACzC,OAAQA,EAAS,CAChB,IAAK,QAAS,OAAOhH,EAAQ,OAAO,GAAG,EACvC,IAAK,gBAAiB,OAAO,IAAI5G,GAAM1gF,GAAQ,UAAUsnF,EAAQ,MAAMtnF,CAAG,CAAC,KAAK,EAChF,IAAK,oBAAqB,OAAO,IAAI0gF,GAAM1gF,GAAQ,cAAcsnF,EAAQ,MAAMtnF,CAAG,CAAC,uCAAuC,EAE1H,QAAS,OAAO,IAAI0gF,GAAM1gF,GAAQ,OAAOsnF,EAAQ,MAAMtnF,CAAG,CAAC,sCAAsC,CAClG,CACD,CACA,SAASmmF,IAAUn2C,EAAKu+C,EAAMC,EAAMC,EAAMC,EAAMC,EAAO,CACtD,OAAO,IAAIjO,GAAM1gF,GAAQ,CACxB,IAAMsyB,EAAI0d,EAAI,MAAMhwC,CAAG,EACjB4uF,EAAKL,EAAK,MAAMvuF,CAAG,EACnBkiE,EAAKssB,EAAK,MAAMxuF,CAAG,EACnB6uF,EAAKJ,EAAK,MAAMzuF,CAAG,EACnBokE,EAAKsqB,EAAK,MAAM1uF,CAAG,EACnB8uF,EAAKH,EAAM,MAAM3uF,CAAG,EAC1B,MAAO,OAAO6uF,CAAE,KAAKzqB,CAAE,KAAK,OAAO,UAAU9xC,CAAC,MAAMs8D,CAAE,WAAW1sB,CAAE,MAAM0sB,CAAE,sBAAsB,eAAeE,CAAE,UAAU,GAC7H,CAAC,CACF,CACA,IAAInH,IAAuB,CAC1B,QAAS,EACT,YAAa,EACb,OAAQ,EACR,KAAM,CACP,EACA,SAASoH,GAA4B7L,EAAU18E,EAAU,CAAC,EAAG,CAC5D,IAAM4oB,EAAQ,CAAC,EACfA,EAAM,KAAK,QAAQ5oB,EAAQ,aAAe,QAAQ,EAAE,EACpD4oB,EAAM,KAAK,SAAS5oB,EAAQ,OAAS,EAAI,EAAE,EAC3C4oB,EAAM,KAAK,UAAU5oB,EAAQ,kBAAoB,EAAK,EAAE,EACxD,IAAMwoF,EAAS/jE,GAAO,CACrB,IAAM2S,EAAOslD,EAAS,QAAQj4D,CAAE,EAChC,GAAI,CAAC2S,EAAM,OACX,IAAM7sB,EAAI6sB,EAAK,SACTqxD,EAAMrxD,EAAK,WACXsxD,EAAkBzS,GAAoB1rE,EAAE,SAAS,EACjDo+E,EAAa,CAAC,CAACp+E,EAAE,aAAe,CAAC,CAACk+E,EAAI,wBAA0B,CAACzO,GAAsBzvE,EAAE,WAAW,EACpGq+E,GAAiBr+E,EAAE,SAAW,KAAO,EAAI,OAAS,UAClDy1E,EAAUz1E,EAAE,KAAO,GAAGA,EAAE,KAAK,MAAM,IAAIA,EAAE,KAAK,IAAI,GAAK,OACvDs+E,EAAmB,CAAC,EAC1B,OAAW,CAACntF,EAAM+jF,CAAG,IAAK,OAAO,QAAQgJ,EAAI,OAAS,CAAC,CAAC,EAAG,GAAIhJ,EAAI,YAAa,CAC/E,IAAM19E,EAAIq1B,EAAK,QAAQ17B,CAAI,EAC3BmtF,EAAiB,KAAK,GAAGntF,CAAI,IAAIqG,EAAI,OAAOA,EAAE,KAAK,EAAI,GAAG,EAAE,CAC7D,CACA6mB,EAAM,KAAK,CACV,MAAMwO,EAAK,EAAE,GACb,UAAUA,EAAK,UAAY,EAAE,GAC7B,QAAQA,EAAK,aAAa,GAC1B,SAAS7sB,EAAE,WAAa,QAAQ,GAChC,QAAQy1E,CAAO,GACf,SAASz1E,EAAE,aAAe,CAAC,GAC3B,WAAWA,EAAE,UAAY,EAAK,GAC9B,WAAWq+E,CAAa,GACxB,SAASF,CAAe,GAAGA,EAAkB,IAAIn+E,EAAE,WAAW,OAAS,aAAa,GAAK,EAAE,GAC3F,QAAQo+E,CAAU,IAAIA,EAAaF,EAAI,wBAAwB,oBAAsB,WAAaA,EAAI,wBAAwB,kBAAoB,SAAW,OAAS,EAAE,GACxK,OAAO,CAAC,CAACA,EAAI,WAAW,GACxB,QAAQl+E,EAAE,KAAO,OAAO,KAAKA,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,GAAG,EAAI,EAAE,GAC1D,MAAMs+E,EAAiB,KAAK,EAAE,KAAK,GAAG,CAAC,EACxC,EAAE,KAAK,GAAG,CAAC,EACX,QAAWzG,KAAS1F,EAAS,YAAYj4D,CAAE,EAAE,KAAK,CAAC33B,EAAGC,IAAMD,EAAE,SAAS,YAAcC,EAAE,SAAS,WAAW,EAAGy7F,EAAMpG,EAAM,EAAE,CAC7H,EACA,OAAI1F,EAAS,QAAQ8L,EAAM9L,EAAS,MAAM,EACnC9zD,CACR,CACA,IAAMkgE,IAA0B30B,EAAgB,GAAG,CAAC1zD,EAAKA,CAAG,EAAGygB,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAIonB,IAAY,CAC3L,UACA,IAAMC,EAAY,aAAarnB,EAAIonB,CAAO,EACpCE,EAAU,aAAan6D,GAAM,aAAak6D,EAAW,EAAE,CAAC,EAAG,EAAE,EAC7Dj1D,EAAI,aAAai1D,EAAWC,CAAO,EACnCxf,EAAK,aAAa,EAAG,aAAa,aAAa11C,EAAGA,CAAC,EAAG,aAAa,KAAM,aAAa,IAAKA,CAAC,CAAC,CAAC,CAAC,EAC/Fm1D,EAAK,aAAan1D,EAAG,aAAa,GAAI,aAAaA,EAAG,aAAa,EAAG,aAAa,IAAKA,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7Fo1D,EAAMt5D,EAAI,aAAa45C,EAAIyf,CAAE,EAAG,IAAI,EACpCE,EAAW,aAAaF,EAAIC,CAAG,EACrC,OAAOjoE,EAAQ,aAAa,aAAa+nE,EAAS,CAAC,EAAGF,CAAO,EAAG,aAAa,aAAaE,EAASG,CAAQ,EAAGL,CAAO,EAAG,aAAa,aAAaE,EAAS,CAAC,EAAGF,CAAO,CAAC,CACxK,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,SACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,KACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,IACA,SACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,GACD,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,IACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CACC,GACA,WACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,SACD,EACA,CACC,EACA,CACC,EACA,UACA,IACA,UACD,EACA,IACA,SACD,EACA,CACC,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,SACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMj6D,GACnB,UAAW,IAAMe,EACjB,UAAW,IAAM3O,CAClB,CACD,CAAC,GAAK43C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuwB,IAAwBl1B,EAAgB,GAAG,CAAC1zD,EAAKA,CAAG,EAAGygB,CAAO,GAAoB43C,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAIonB,IAAY,CACzL,UACA,IAAMC,EAAY,aAAarnB,EAAIonB,CAAO,EACpCE,EAAU,aAAan6D,GAAM,aAAak6D,EAAW,EAAE,CAAC,EAAG,EAAE,EAC7Dj1D,EAAI,aAAai1D,EAAWC,CAAO,EACnCK,EAAK,aAAav1D,EAAG,aAAa,IAAK,aAAaA,EAAG,aAAa,EAAG,aAAa,GAAIA,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7F01C,EAAK,aAAa,EAAG,aAAa,aAAa11C,EAAGA,CAAC,EAAG,aAAa,KAAM,aAAa,IAAKA,CAAC,CAAC,CAAC,CAAC,EAC/Fm1D,EAAK,aAAan1D,EAAG,aAAa,GAAI,aAAaA,EAAG,aAAa,EAAG,aAAa,IAAKA,CAAC,CAAC,CAAC,CAAC,CAAC,EAC7Fw1D,EAAK,aAAa,aAAax1D,EAAGA,CAAC,EAAG,aAAa,IAAK,aAAa,GAAIA,CAAC,CAAC,CAAC,EAClF,OAAO7S,EAAQooE,EAAI,aAAa7f,EAAIyf,CAAE,EAAGK,CAAE,CAC5C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,SACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,KACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,IACA,SACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,GACD,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CAAC,EA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,EAC7F,IAAK9oE,EAAQ,aAAa,aAAaiqE,EAAK,EAAE,EAAGnB,CAAE,EAAG,aAAa,aAAasB,EAAK,EAAE,EAAGtB,CAAE,CAAC,EAC7F,IAAK9oE,EAAQ,aAAa,aAAakqE,EAAK,EAAE,EAAGpB,CAAE,EAAG,aAAa,aAAasB,EAAK,EAAE,EAAGtB,CAAE,CAAC,EAC7F,EAAGzoE,EAAQ,aAAawpE,EAAKE,CAAG,EAAG,aAAaD,EAAKC,CAAG,EAAG,aAAaF,EAAKG,CAAG,EAAG,aAAaF,EAAKE,CAAG,CAAC,CAC1G,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,CAAC,CAAC,IAAK,CACN,IAAO,CACN,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CAAC,CACF,EACA,IAAO,CACN,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CAAC,CACF,EACA,IAAO,CACN,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CAAC,CACF,EACA,IAAO,CACN,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CAAC,CACF,EACA,EAAK,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,IACA,KA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AC,EAC5CmqB,EAAU,IACVC,EAAUjgE,EAAM+/D,EAAQ1sE,EAAQ,CAAC2sE,EAAS,CAACA,CAAO,EAAG3sE,EAAQ2sE,EAASA,CAAO,CAAC,EAC9EE,EAAiB,aAAaJ,EAAgB,EAAE,EACtD,OAAOH,GAAkB,CACxB,IAAK1rB,EAAG,IAAIgsB,EAAQ,IAAI,aAAa,EAAGC,CAAc,CAAC,CAAC,EACxD,IAAKjsB,EAAG,IAAIgsB,CAAO,EACnB,IAAKhsB,EAAG,IAAIgsB,EAAQ,IAAI,aAAa,EAAGC,CAAc,CAAC,CAAC,CACzD,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,SACD,EAAG,CACF,EACA,IACA,SACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,UAAW,SAAS,CACtB,CACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,iBACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,gBACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,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EAClD,GAAIq3B,EAAS,aAAaC,EAAiBA,CAAe,GAAKt3B,EAAI,YAAc,IAAK,CACrF,IAAMu3B,EAAY,aAAa,aAAalkE,GAAI,aAAa,aAAagkE,EAAQ,aAAar3B,EAAI,OAAQA,EAAI,MAAM,CAAC,EAAG,EAAE,CAAC,EAAG81B,EAAU,EAAGC,EAAe,EAC3JxmD,EAAO,aAAaA,EAAM,aAAa,aAAa,aAAagoD,EAAWv3B,EAAI,WAAW,EAAGA,EAAI,EAAE,EAAG,CAAC,CAAC,CAC1G,CACAy2B,EAAgB,EAAE,SAASxxF,CAAG,EAAIsqC,CACnC,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,kBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,OACD,EACA,IACA,IACD,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,GACD,EACA,UACD,EACA,KACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,eACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,YACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,YAAY,CACd,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,YAAY,CACd,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,kBACA,IACA,iBACD,CACD,EACA,KACA,CACC,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,IACA,YACD,EACA,IACA,iBACD,CACD,EAAG,CACF,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CAAC,CACH,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,MACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,UAAW,CACV,QAAS,IAAMjqC,EACf,QAAW,IAAMkxF,EACjB,gBAAmB,IAAMC,EACzB,WAAc,IAAMF,EACpB,cAAiB,IAAMP,GACvB,QAAS,IAAMxwF,EACf,aAAc,IAAM2zB,EACpB,UAAW,IAAM9F,GACjB,WAAc,IAAMyiE,GACpB,gBAAmB,IAAMC,EAC1B,CACD,CAAC,GAAKl4B,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,sBAAsB04B,CAAU,EAAE,EACxD,eAAgBr9B,EAAgB,GAAG,CAAC5zD,EAAKA,CAAG,CAAC,GAAoBu4D,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmM,EAAIC,IAAO,CAC7J,UACA,GAAID,EAAK1kE,EAAI,CAAC,GAAK0kE,EAAK1kE,EAAIkxF,CAAO,GAAKvsB,EAAK3kE,EAAI,CAAC,GAAK2kE,EAAK3kE,EAAIkxF,CAAO,EAAG,CACzE,IAAMG,EAAKrxF,EAAIixF,CAAU,EACnBtxF,EAAM,aAAa,aAAaglE,EAAI0sB,CAAE,EAAG3sB,CAAE,EAC3CtqC,EAAQg3D,EAAe,EAAE,OAAO,aAAazxF,EAAKK,EAAI,CAAC,CAAC,CAAC,EACzDm6B,EAAOi3D,EAAe,EAAE,OAAO,aAAazxF,EAAKK,EAAI,CAAC,CAAC,CAAC,EACxDuxF,EAAOH,EAAe,EAAE,OAAO,aAAazxF,EAAK0xF,CAAE,CAAC,EACpDC,EAAKF,EAAe,EAAE,OAAO,aAAazxF,EAAK0xF,CAAE,CAAC,EAClDloB,EAAK,aAAa,aAAa/uC,EAAOD,CAAI,EAAG,EAAE,EAC/CivC,EAAK,aAAa,aAAamoB,EAAMD,CAAE,EAAG,EAAE,EAClDh/B,GAAa8+B,EAAe,EAAE,QAAS1wE,GAAQgkD,EAAIC,CAAE,EAAG9jD,EAAQsoD,EAAIC,EAAI,EAAG,CAAC,CAAC,CAC9E,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,QACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,QACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,QACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,QACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,QACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,E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,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,SACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,aACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,QACA,IACA,CACC,EACA,YACA,IACA,aACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,gBAAgB,CAClB,CACD,EACA,IACA,QACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAMC,GAClB,YAAa,IAAMK,GACnB,OAAU,IAAMf,GAChB,YAAa,IAAMkB,GACnB,UAAW,IAAME,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EACRe,GAAYjB,EAAgB,GAAG,CACpCC,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIc,EAAaV,EAAOW,IAAe,CACtJ,UACA,IAAMT,EAAQC,GAAMP,EAAID,CAAE,EACpBM,EAAMH,GAAK,aAAa,aAAaH,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EACnEgB,EAAc,aAAaF,EAAaC,CAAU,EAClDE,EAAS,aAAa,aAAaX,EAAOF,CAAK,EAAGZ,EAAM,EACxD0B,EAAQ,aAAaD,EAAQP,GAAMO,CAAM,CAAC,EAC1CE,EAAIC,EAAI,aAAa,aAAaF,EAAO,CAAC,EAAG,CAAC,CAAC,EAC/CG,EAAY,aAAaL,EAAa,aAAa,aAAaF,EAAaE,CAAW,EAAGG,CAAC,CAAC,EACnG,OAAO,aAAad,EAAKgB,CAAS,CACnC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,cACA,IACA,YACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,SACA,IACA,CACC,EACA,YACA,CAAC,QAAQ,CACV,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,cACA,IACA,CACC,EACA,CACC,EACA,cACA,IACA,aACD,EACA,IACA,GACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,MACA,IACA,WACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMd,GACnB,WAAY,IAAML,GAClB,OAAU,IAAMV,GAChB,YAAa,IAAMkB,GACnB,UAAW,IAAMU,CAClB,CACD,CAAC,GAAKtB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwB,GAAU1B,EAAgB,GAAG,CAClCC,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIc,EAAaV,EAAOW,IAAe,CACtJ,UACA,IAAMC,EAAc,aAAaF,EAAaC,CAAU,EAClDV,EAAMH,GAAK,aAAa,aAAaH,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EACnEM,EAAQC,GAAMP,EAAID,CAAE,EACpBS,EAAc,aAAahB,GAAQY,CAAK,EACxCK,EAAYC,GAAM,aAAa,aAAaJ,EAAOE,CAAW,EAAG,EAAE,CAAC,EACpEe,EAAK,aAAajB,EAAO,aAAaG,EAAWD,CAAW,CAAC,EAC7DgB,EAAMJ,EAAI,aAAaf,EAAKoB,GAAIF,CAAE,CAAC,CAAC,EACpCG,EAAM,aAAarB,EAAKO,GAAIW,CAAE,CAAC,EAC/BI,EAAK,aAAapC,GAAIa,CAAK,EAC3BwB,EAAQH,GAAIE,CAAE,EACdE,EAAQjB,GAAIe,CAAE,EACdG,EAAK,aAAad,EAAaY,CAAK,EACpCG,EAAK,aAAa,aAAaf,EAAaa,CAAK,EAAGf,CAAW,EAC/DkB,EAAKR,EACLS,EAAK,aAAaP,EAAKZ,CAAW,EAClCoB,EAAQ,aAAa,aAAaF,EAAIF,CAAE,EAAG,aAAaG,EAAIF,CAAE,CAAC,EAC/DI,EAAQ,aAAa,aAAaL,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EAC/DZ,EAAIiB,EAAM,aAAaF,EAAOC,CAAK,EAAG,EAAG,CAAC,EAC1CE,EAAK,aAAab,EAAK,aAAaM,EAAIX,CAAC,CAAC,EAC1CmB,EAAK,aAAaZ,EAAK,aAAaZ,EAAa,aAAaiB,EAAIZ,CAAC,CAAC,CAAC,EACrEoB,EAAOrC,GAAK,aAAa,aAAamC,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EACpEE,EAAU,aAAa,aAAaV,EAAIG,CAAE,EAAG,aAAaF,EAAIC,CAAE,CAAC,EACvE,OAAO,aAAaO,EAAME,GAAKD,CAAO,CAAC,CACxC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,cACA,CACC,EACA,cACA,IACA,YACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,SACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,aACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,YACA,IACA,aACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,cACA,IACA,OACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,KACA,KACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,aACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,OACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,CACC,EACA,cACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,IACA,CACC,EACA,WACA,CAAC,OAAO,CACT,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAMtC,GAClB,YAAa,IAAMK,GACnB,OAAU,IAAMf,GAChB,YAAa,IAAMkB,GACnB,UAAW,IAAMU,EACjB,UAAW,IAAMK,GACjB,UAAW,IAAMb,GACjB,GAAM,IAAMrB,GACZ,YAAa,IAAM6C,EACnB,WAAY,IAAMK,EACnB,CACD,CAAC,GAAK3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4C,GAAU9C,EAAgB,GAAG,CAClCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAA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,CACjE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,OACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,QACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CACC,GACA,YACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,YACA,IACA,WACD,EACA,IACA,UACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM1B,EACjB,UAAW,IAAM8B,EACjB,WAAY,IAAMhD,GAClB,UAAW,IAAMkD,EAClB,CACD,CAAC,GAAKtD,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8D,GAAahE,EAAgB,GAAG,CACrCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAI6D,EAASC,IAAY,CACxI,UACA,IAAMzB,EAAK,aAAatC,EAAI8D,CAAO,EAC7BvB,EAAK,aAAatC,EAAI8D,CAAO,EAC7BC,EAAI7D,GAAK,aAAa,aAAamC,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EACvE,OAAO,aAAa,aAAayB,EAAG,CAAC,EAAGX,GAAIS,EAASC,CAAO,CAAC,CAC9D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,KACA,IACA,SACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,SACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,UAAW,SAAS,CACtB,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAM5D,GAClB,UAAW,IAAMkD,EAClB,CACD,CAAC,GAAKtD,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkE,GAAYpE,EAAgB,GAAG,CACpCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIC,EAAQgE,IAAW,CACtI,UACA,IAAMlB,EAAK3B,EAAIrB,CAAE,EACXiD,EAAK5B,EAAIpB,CAAE,EACXkE,EAAK,aAAajE,EAAQgE,CAAM,EAChCE,EAAIjE,GAAKgD,EAAI,aAAa,aAAajD,EAAQA,CAAM,EAAG,aAAaiE,EAAIA,CAAE,CAAC,EAAG,CAAC,CAAC,EACjFE,EAAO,aAAa,aAAapB,EAAImB,CAAC,EAAGD,CAAE,EAAI,aAAanB,EAAIoB,CAAC,EACjEE,EAAQnE,GAAK,aAAa,aAAa6C,EAAIA,CAAE,EAAG,aAAa,aAAaC,EAAImB,CAAC,EAAG,aAAanB,EAAImB,CAAC,CAAC,CAAC,CAAC,EAC7G,OAAOG,EAAO,aAAapE,GAAK,aAAa,aAAa,aAAa6C,EAAImB,CAAE,EAAG,aAAanB,EAAImB,CAAE,CAAC,EAAG,aAAalB,EAAIA,CAAE,CAAC,CAAC,EAAG/C,CAAM,EAAGoE,EAAOD,CAAI,CACpJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,QACA,QACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMhD,EACjB,WAAY,IAAMlB,GAClB,UAAW,IAAMgD,EACjB,aAAc,IAAMoB,CACrB,CACD,CAAC,GAAKxE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRyE,GAAc3E,EAAgB,GAAG,CACtCC,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIc,EAAaC,EAAYyD,IAAW,CACvJ,UACA,IAAMxB,EAAK5B,EAAIpB,CAAE,EACXyE,EAAK3D,EACL4D,EAAK,aAAa5D,EAAaC,CAAU,EACzC4D,EAAMH,EACNI,EAAI,aAAa,aAAa,aAAa,aAAaH,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EAAG,aAAaC,EAAKA,CAAG,CAAC,EAAGzB,EAAI,aAAayB,EAAK,CAAC,EAAG,IAAI,CAAC,EAChJR,EAAIjE,GAAKgD,EAAI,aAAa,aAAauB,EAAIA,CAAE,EAAG,aAAaG,EAAGA,CAAC,CAAC,EAAG,CAAC,CAAC,EACvEC,EAAM,aAAaF,EAAK,aAAa,aAAa5E,EAAIoE,CAAC,EAAG,aAAanB,EAAI4B,CAAC,CAAC,CAAC,EAC9EE,EAAM,aAAa,aAAaH,EAAKA,CAAG,EAAGzB,EAAI,aAAaiB,EAAGnB,CAAE,EAAG,CAAC,CAAC,EACtE+B,EAAM,aAAahF,EAAI6E,CAAC,EACxBI,EAAM,aAAahC,EAAImB,CAAC,EACxBE,EAAQnE,GAAK,aAAa,aAAa6E,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,CAAC,EACzEC,EAAO/E,GAAK,aAAa,aAAaH,EAAIA,CAAE,EAAG,aAAaiD,EAAIA,CAAE,CAAC,CAAC,EACpEkC,EAAS,aAAanF,EAAI4E,CAAG,EAC7BQ,EAAWjF,GAAK,aAAa,aAAagF,EAAQA,CAAM,EAAG,aAAalC,EAAIA,CAAE,CAAC,CAAC,EACtF,OAAOsB,EAAOpB,EAAI,aAAa+B,EAAMR,CAAE,EAAG,aAAa,aAAaU,EAAUT,CAAE,EAAG,EAAE,CAAC,EAAGL,EAAOQ,EAAMC,CAAG,CAC1G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,aACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,IACA,YACD,CACD,EACA,CACC,GACA,MACA,QACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,IACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,WACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,QACA,QACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM1D,EACjB,UAAW,IAAM8B,EACjB,WAAY,IAAMhD,GAClB,aAAc,IAAMoE,CACrB,CACD,CAAC,GAAKxE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsF,GAAexF,EAAgB,GAAG,CACvCC,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIqF,EAAIC,EAAIC,IAAO,CAClI,UACA,IAAMxC,EAAK3B,EAAIrB,CAAE,EACXyF,EAAMF,EACNG,EAAMF,EACNG,EAAM,aAAaJ,EAAID,CAAE,EACzBM,EAAM,aAAaJ,EAAI,CAAC,EACxBK,EAAatB,EAAOgB,EAAID,EAAIrF,EAAK,CAAC,EAClC6F,EAAM,aAAa9C,EAAIK,GAAIL,EAAI6C,CAAU,CAAC,EAC1CE,EAAM,aAAa1E,EAAIpB,CAAE,EAAGuF,CAAE,EAC9BQ,EAAQ,aAAaP,EAAKzC,CAAE,EAC5BiD,EAAQ,aAAaP,EAAKzF,CAAE,EAC5BiG,EAAS,aAAa,aAAaF,EAAOL,CAAG,EAAG,aAAaM,EAAOL,CAAG,CAAC,EACxEO,EAAShD,EAAI,aAAa,aAAawC,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,EAAG,IAAI,EAC/ExE,EAAIiB,EAAM,aAAa6D,EAAQC,CAAM,EAAG,EAAG,CAAC,EAC5CC,EAAM,aAAa,aAAapD,EAAIyC,CAAG,EAAG,aAAaE,EAAKvE,CAAC,CAAC,EAC9DiF,EAAM,aAAa,aAAapG,EAAIyF,CAAG,EAAG,aAAaE,EAAKxE,CAAC,CAAC,EAC9DkF,EAAS/B,EAAOzE,EAAI,CAAC,EAAGA,EAAI,EAAE,EAAGiG,EAAM,CAAC,EACxCQ,EAAIhC,EAAOzE,EAAI,CAAC,EAAGwG,EAAQF,EAAM,CAAC,EAClCI,EAAM,aAAa,aAAaV,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,EACjEU,EAAM,aAAa,aAAaL,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,EACvE,OAAO,aAAaE,EAAGpG,GAAKkD,GAAImD,EAAKC,CAAG,CAAC,CAAC,CAC3C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,IACD,EACA,CACC,GACA,MACA,IACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,aACA,CACC,EACA,aACA,CACC,KACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,YAAY,CACpB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,QACA,IACA,KACD,EACA,IACA,CACC,EACA,QACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,SACA,IACA,QACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,SACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMpF,EACjB,aAAc,IAAMkD,EACpB,UAAW,IAAMlB,GACjB,UAAW,IAAMF,EACjB,YAAa,IAAMd,EACnB,QAAS,IAAMvC,EACf,WAAY,IAAMK,EACnB,CACD,CAAC,GAAKJ,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2G,GAAW7G,EAAgB,GAAG,CACnCC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIC,IAAW,CAC9H,UACA,IAAMyG,EAAI,aAAazG,EAAQ,GAAG,EAC5B8C,EAAK,aAAa3B,EAAIrB,CAAE,EAAG2G,CAAC,EAC5B1D,EAAK,aAAa,aAAa,aAAahD,EAAI,EAAE,EAAG0G,CAAC,EAAG,EAAE,EAC3DC,EAAK,aAAa5D,EAAI,GAAG,EACzB6D,EAAK,aAAa5D,EAAI,GAAG,EACzB6D,EAAQ,aAAa3G,GAAK,aAAa,aAAayG,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EAAGnH,EAAY,EACjGqH,EAAM,aAAa9D,EAAI,CAAC,EACxB+D,EAAO,aAAa,aAAahE,EAAIA,CAAE,EAAG,aAAa+D,EAAKA,CAAG,CAAC,EAChEE,EAAI,aAAa9D,EAAI,aAAaH,EAAIC,CAAE,EAAG,CAAC,EAAG,EAAE,EACjDiE,EAAM,aAAalE,EAAIiE,CAAC,EACxBE,EAAM,aAAalE,EAAIgE,CAAC,EACxBG,EAAQ,aAAa,aAAaF,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,EACnEE,EAAQ,aAAalH,GAAKkD,GAAI2D,EAAMI,CAAK,CAAC,EAAG1E,GAAK,aAAaM,EAAIC,CAAE,CAAC,CAAC,EAC7E,OAAO,aAAasB,EAAO8C,EAAOP,EAAO,aAAa9D,EAAIC,CAAE,EAAI,CAAC,EAAG0D,CAAC,CACtE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,IACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,OAAO,CACjB,CAAC,CACF,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,KACA,IACA,IACD,CAAC,CACF,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,aACA,CACC,QACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtF,EACjB,WAAY,IAAMlB,GAClB,aAAgB,IAAMT,GACtB,UAAW,IAAMyD,EACjB,UAAW,IAAME,GACjB,WAAY,IAAMX,GAClB,aAAc,IAAM6B,CACrB,CACD,CAAC,GAAKxE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuH,GAASzH,EAAgB,GAAG,CACjCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIC,EAAQqH,IAAc,CACzI,UACA,IAAMvE,EAAK3B,EAAIrB,CAAE,EACXwH,EAAK9F,GAAI6F,CAAS,EAClBE,EAAK5G,GAAI0G,CAAS,EAClBG,EAAI,aAAavH,GAAK,aAAa,aAAa6C,EAAIA,CAAE,EAAG,aAAa/C,EAAIA,CAAE,CAAC,CAAC,EAAGC,CAAM,EACvFyH,EAAUtF,EAAM,aAAa,aAAaW,EAAIwE,CAAE,EAAG,aAAavH,EAAIwH,CAAE,CAAC,EAAG,EAAGvH,CAAM,EACnF0H,EAAK,aAAa5E,EAAI,aAAawE,EAAIG,CAAO,CAAC,EAC/CE,EAAK,aAAa5H,EAAI,aAAawH,EAAIE,CAAO,CAAC,EAC/CV,EAAI9G,GAAK,aAAa,aAAayH,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EACvE,OAAO1E,EAAIuE,EAAG,aAAaT,EAAGvE,GAAK,aAAa,aAAa+E,EAAIzE,CAAE,EAAG,aAAawE,EAAIvH,CAAE,CAAC,CAAC,CAAC,CAAC,CAC9F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,IAAK,CACL,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMoB,EACjB,UAAW,IAAMK,GACjB,UAAW,IAAMb,GACjB,WAAY,IAAMV,GAClB,YAAa,IAAMkC,EACnB,UAAW,IAAMc,EACjB,WAAY,IAAMT,EACnB,CACD,CAAC,GAAK3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+H,GAAcjI,EAAgB,GAAG,CACtCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIC,EAAQ6H,IAAM,CACjI,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAG7H,CAAM,EAAG,EAAE,EAC9C+B,EAAKZ,EAAIrB,CAAE,EACXkC,EAAK,aAAa,aAAajC,EAAI,EAAE,EAAG+H,CAAG,EAC3CC,EAAQ9E,EAAI4E,EAAG,IAAI,EACnB3D,EAAI,aAAalE,EAAQ+H,CAAK,EAC9BpD,EAAI1E,GAAKgD,EAAI,aAAa,EAAG,aAAaiB,EAAGA,CAAC,CAAC,EAAG,CAAC,CAAC,EACpDJ,EAAI,aAAa,aAAa/B,EAAI,aAAamC,EAAG,EAAE,CAAC,EAAG,aAAalC,EAAI2C,CAAC,CAAC,EAC3EqD,EAAO,aAAa/H,GAAK,aAAa,aAAa8B,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EAAGhC,CAAM,EAC1FiI,EAAQ,aAAajG,EAAI6F,CAAC,EAC1BK,EAAOjI,GAAK,aAAa,aAAa8B,EAAIA,CAAE,EAAG,aAAakG,EAAOA,CAAK,CAAC,CAAC,EAChF,OAAO5D,EAAOA,EAAO,aAAa,aAAa,aAAatC,EAAI4C,CAAC,EAAG,aAAa3C,EAAIkC,CAAC,CAAC,EAAGlE,CAAM,EAAGkI,EAAMpE,EAAI,aAAaa,EAAGkD,CAAC,CAAC,EAAGG,EAAMlE,EAAI,CAAC,CAC9I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,IAAK,CAAC,EAAG,QAAQ,CAAC,CACpB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,IACA,OACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,IACA,OACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,IACA,QACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,CACC,EACA,aACA,CACC,OACA,OACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CACD,CACD,EACA,OACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM3C,EACjB,UAAW,IAAM8B,EACjB,WAAY,IAAMhD,GAClB,aAAc,IAAMoE,CACrB,CACD,CAAC,GAAKxE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsI,GAAmBxI,EAAgB,GAAG,CAC3CC,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAIqI,EAAI9C,EAAI+C,IAAO,CAClI,UACA,IAAMxG,EAAKwG,EACLvG,EAAKwD,EACLgD,EAAQvI,EAAK,EACbwI,EAAMlE,EAAOvE,EAAI,aAAaA,EAAI,EAAE,EAAGwI,CAAK,EAC5CE,EAAMnE,EAAOtE,EAAI,aAAaA,EAAI,EAAE,EAAGuI,CAAK,EAC5CG,EAAM,aAAaF,EAAK1G,CAAE,EAC1B6G,EAAK,aAAaF,EAAK1G,CAAE,EACzB6G,EAAK,aAAaF,EAAKtG,EAAMsG,EAAK,aAAaL,EAAI,EAAE,EAAGA,CAAE,CAAC,EAC3DQ,EAAK,aAAa,aAAaD,EAAIA,CAAE,EAAG,aAAaD,EAAIA,CAAE,CAAC,EAC5DG,EAAK,aAAaH,EAAI,EAAE,EACxBrC,EAAI,aAAa,aAAakC,EAAKzG,CAAE,EAAG,aAAa0G,EAAK3G,CAAE,CAAC,EAC7DiH,EAAQzC,EAAI,EACZvD,EAAKuB,EAAOkE,EAAK,aAAaA,EAAK,EAAE,EAAGO,CAAK,EAC7C/F,EAAKsB,EAAOmE,EAAK,aAAaA,EAAK,EAAE,EAAGM,CAAK,EAC7CC,EAAM,aAAajG,EAAIsF,CAAE,EACzBY,EAAQ,aAAa,aAAaD,EAAKlH,CAAE,EAAG,aAAakB,EAAIjB,CAAE,CAAC,EAChEmH,EAAQhG,EAAI,aAAa,aAAapB,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EAAG,IAAI,EAC1EoH,EAAK/G,EAAM,aAAa6G,EAAOC,CAAK,EAAG,GAAI,CAAC,EAC5CE,EAAK,aAAaJ,EAAK,aAAalH,EAAIqH,CAAE,CAAC,EAC3CE,EAAK,aAAarG,EAAI,aAAajB,EAAIoH,CAAE,CAAC,EAC1CG,EAASlG,GAAIyF,EAAI,aAAa,aAAaO,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EACzEE,EAASnG,GAAI0F,EAAI,aAAa,aAAaT,EAAI9C,CAAE,EAAGnE,EAAIkF,CAAC,CAAC,CAAC,EACjE,OAAO,aAAapG,GAAKoJ,CAAM,EAAG7G,GAAK,aAAa8G,EAAQ,EAAE,CAAC,CAAC,CACjE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,IACD,EACA,CACC,GACA,KACA,IACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,OACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,OACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,CACC,EACA,YACA,CACC,MACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,MACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,MACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,OACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,OACD,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,WACA,CAAC,QAAQ,CACV,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,SACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMjF,EACpB,YAAa,IAAMlC,EACnB,UAAW,IAAMc,EACjB,UAAW,IAAME,GACjB,UAAW,IAAMhC,EACjB,WAAY,IAAMlB,GAClB,WAAY,IAAMuC,EACnB,CACD,CAAC,GAAK3C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0J,GAAmB5J,EAAgB,GAAG,CAC3C6J,EACA5J,EACA4J,EACA5J,CACD,EAAG4J,CAAO,GAAoB3J,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC4J,EAAQC,EAAUC,EAAIC,IAAW,CAChJ,UACA,IAAMC,EAAWL,EAAQ,aAAaG,EAAG,EAAGC,CAAM,EAAGD,EAAG,CAAC,EACnDG,EAAYN,EAAQ,aAAaC,EAAO,EAAGG,CAAM,EAAG,aAAa,EAAGH,EAAO,CAAC,CAAC,EAC7E3J,EAAK,aAAa+J,EAAS,EAAGC,EAAU,CAAC,EACzC/J,EAAK,aAAa8J,EAAS,EAAGC,EAAU,CAAC,EACzCC,EAAS,aAAaL,EAAUjK,EAAU,EAC1CuK,EAAOrJ,GAAIoJ,CAAM,EACjBE,EAAOzI,GAAIuI,CAAM,EACvB,OAAOP,EAAQ,aAAa,aAAa1J,EAAIkK,CAAI,EAAG,aAAajK,EAAIkK,CAAI,CAAC,EAAG,aAAa,aAAalK,EAAIiK,CAAI,EAAG,aAAalK,EAAImK,CAAI,CAAC,CAAC,CAC1I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMT,EACjB,WAAc,IAAM/J,GACpB,UAAW,IAAMkB,GACjB,UAAW,IAAMa,EAClB,CACD,CAAC,GAAK3B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqK,IAA6B,WAAW,uBAA0BvF,GAAMA,IAAIwF,GAAO,CACxF,YAAavK,EACb,YAAaA,CACd,CAAC,EAAG,WAAW,EACTwK,GAAoBzK,EAAgB,GAAG,CAC5CC,EACAA,EACAA,EACAA,CACD,EAAGsK,EAAS,GAAoBrK,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyC,EAAM+H,EAAUC,EAAiBC,IAAmB,CACrK,UACA,IAAMC,EAAYF,EAAkB,EAC9BG,EAAWF,GAAkB,IAC7BG,EAAkBH,GAAkB,GACpCI,EAAgB,aAAaL,EAAiB,EAAE,EAChDM,EAAe,aAAaN,EAAiB,EAAE,EAC/CO,EAAU,aAAaF,EAAe,EAAE,EACxCG,EAAczG,EAAOA,EAAOzE,EAAI,CAAC,EAAGiL,EAASH,CAAe,EAAGE,EAAcH,CAAQ,EACrFM,EAAc1G,EAAOA,EAAOiG,EAAiBK,EAAeD,CAAe,EAAG9K,EAAI,CAAC,EAAG6K,CAAQ,EAC9FO,EAAc,aAAa,EAAGC,GAAW,aAAaF,EAAaV,CAAQ,EAAGU,EAAazI,CAAI,CAAC,EAChG4I,EAAQD,GAAW,aAAaH,EAAaT,CAAQ,EAAGS,EAAaxI,CAAI,EAC/E,OAAO4H,GAAU,CAChB,YAAAc,EACA,YAAa3G,EAAOzE,EAAI,CAAC,EAAGsL,EAAOV,CAAS,CAC7C,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,iBACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,kBACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,WACA,CACC,EACA,iBACA,KACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,iBACA,KACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,kBACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,eACA,CACC,EACA,kBACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,gBACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,UACA,iBACD,CACD,EACA,eACA,UACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CACC,kBACA,gBACA,iBACD,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,UACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA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ACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,YAAY,CACnB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,aACA,CACC,MACA,MACA,IACA,GACD,CACD,EACA,CACC,EACA,YACA,CACC,MACA,MACA,GACD,CACD,EACA,OACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,WAAW,CAClB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,MACA,MACA,IACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,SAAS,CAChB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CACC,MACA,MACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,UAAU,CACjB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,WACA,CACC,MACA,MACA,IACA,QACA,OACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,SAAS,CAChB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CACC,MACA,MACA,IACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,gBAAgB,CACvB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,iBACA,CACC,MACA,MACA,IACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,YAAY,CACnB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,aACA,CACC,MACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,WAAW,CAClB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,MACA,MACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,aAAa,CACpB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,cACA,CACC,MACA,MACA,IACA,QACA,KACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,cAAc,CACrB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,eACA,CACC,MACA,MACA,QACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,UAAU,CACjB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,WACA,CACC,MACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,QAAQ,CACf,EACA,CACC,EACA,OACA,IACA,CACC,EACA,SACA,CACC,MACA,MACA,IACA,CACC,EACA,KACA,IACA,uBACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,aAAa,CACpB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,cACA,CACC,MACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,kBAAkB,CACzB,EACA,CACC,EACA,OACA,IACA,CACC,EACA,mBACA,CACC,MACA,MACA,IACA,IACA,KACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,MACA,MACA,GACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,EACA,CAAC,G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D,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,kBACP,MAAO,QACR,CACD,CACD,CACD,CACA,SAASS,IAAoBT,EAAW,CACvC,MAAO,CACN,QAAS,SACT,UAAWU,GACX,YAAa,GACb,YAAaV,GAAW,aAAe,kDACvC,GAAI,CACH,KAAM,SACN,QAASW,GACT,MAAO,iBACP,MAAO,QACR,CACD,CACD,CACA,SAASC,GAAcC,EAAcd,EAAae,EAAS,CAC1D,IAAMC,EAAYD,EAAQ,UAAaE,IAC/B,CACN,MAAS,EACT,QAAW,EACX,KAAQ,EACR,aAAc,EACd,KAAQ,CACT,GAAEA,CAAK,GAAK,EACRA,IACG,CACN,MAAS,EACT,QAAW,EACX,KAAQ,EACR,aAAc,EACd,KAAQ,CACT,GAAEA,CAAK,GAAK,EAEPC,EAAY,CACjB,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,aACP,MAAO,YACR,CACD,EACA,OAAIH,EAAQ,WAAWG,EAAU,KAAK,CACrC,MAAO,OACP,MAAO,MACR,CAAC,EACM,CACN,QAASJ,EACT,YAAAd,EACA,UAAAgB,EACA,YAAa,GACb,GAAI,CACH,KAAM,SACN,QAASE,EACT,MAAO,aACP,MAAO,QACR,CACD,CACD,CACA,IAAIC,IAAoB,CACvB,WAAY,CACX,QAAS,GACT,YAAa,gEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,mFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,4EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,EACT,YAAa,yDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,EACT,YAAa,8EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,eACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,yCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,qCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,WACR,CACD,EACA,eAAgB,CACf,QAAS,UACT,UAAWX,GACX,YAAa,mCACb,GAAI,CACH,KAAM,QACN,MAAO,kBACP,MAAO,WACR,CACD,EACA,kBAAmB,CAClB,QAAS,GACT,YAAa,uEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,qBACP,MAAO,WACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,iFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,SACR,CACD,EACA,gBAAiB,CAChB,QAAS,GACT,YAAa,wEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,mBACP,MAAO,SACR,CACD,EACA,aAAc,CACb,QAAS,UACT,UAAWA,GACX,YAAa,gCACb,GAAI,CACH,KAAM,QACN,MAAO,gBACP,MAAO,SACR,CACD,EACA,aAAc,CACb,QAAS,IACT,YAAa,sCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KA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,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,YACA,CACC,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,SACA,CAAC,EAAG,GAAG,CACR,EACA,GACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,GACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,YACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,KACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,WACA,IACA,MACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,MACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,yBACA,CACC,OACA,QACA,CACC,EACA,YACA,GACD,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,GACD,EACA,KACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,OACA,OACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CAAC,IAAK,CACN,KAAQ,OACR,MAAS,OACV,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMQ,EACnB,QAAS,IAAMU,EACf,UAAW,IAAMvB,EACjB,UAAW,IAAMc,EACjB,uBAA0B,IAAMC,GAChC,QAAW,IAAMb,EAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACd,SAASyB,GAAgBxB,EAAMT,EAAgB,CAC9C,OAAQA,EAAgB,CACvB,IAAK,GAAG,OAAOkC,EAAKC,GAAU,WAAY,CAACD,EAAKE,GAAY,aAAc,CAACF,EAAKG,GAAc,eAAgB,CAAC5B,CAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EACxH,IAAK,GAAG,OAAOyB,EAAKC,GAAU,WAAY,CAACD,EAAKE,GAAY,aAAc,CAAC3B,CAAI,CAAC,CAAC,CAAC,EAClF,IAAK,GAAG,OAAOyB,EAAKC,GAAU,WAAY,CAACD,EAAKI,GAAU,WAAY,CAAC7B,CAAI,CAAC,CAAC,CAAC,EAC9E,IAAK,GAAG,OAAOyB,EAAKC,GAAU,WAAY,CAACD,EAAKK,GAAU,WAAY,CAAC9B,CAAI,CAAC,CAAC,CAAC,EAC9E,IAAK,GAAG,OAAOyB,EAAKC,GAAU,WAAY,CAACD,EAAKM,GAAU,WAAY,CAACN,EAAKO,GAAU,WAAY,CAAChC,CAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAC5G,QAAS,OAAOA,CACjB,CACD,CACA,SAASiC,GAAqBC,EAAGC,EAAU5C,EAAgB,CAC1D,IAAM6C,EAAMC,GAAQZ,EAAKV,GAAsB,uBAAwB,CACtEmB,EACAC,EAAS,YACTA,EAAS,eACTA,EAAS,qBACTA,EAAS,SACV,CAAC,EAAG,SAAS,EACb,OAAOG,GAAKd,GAAgBY,EAAI,OAAO,MAAM,EAAG7C,CAAc,EAAG6C,EAAI,OAAO,OAAO,CAAC,CACrF,CACA,SAASG,GAA0BC,EAAQC,EAAa,CACvD,GAAM,CAAE,UAAAC,EAAW,iBAAAC,CAAiB,EAAIH,EACxC,GAAI,CAACE,GAAa,CAACC,EAAkB,OAAO,KAC5C,IAAMC,EAAeD,EAAiBD,CAAS,EAC3CG,EAAS,KACb,MAAO,CACN,aAAAD,EACA,WAAaE,GAAY,CACxB,IAAMC,EAAMD,EAAQF,EAAa,GAAG,EAC/BG,IACLF,EAASJ,EAAYM,EAAI,OAAO,EACjC,EACA,MAAO,IAAMF,EACb,MAAO,IAAMA,IAAW,IACzB,CACD,CACA,IAAIG,IAAUpC,GAAM,OAAOA,GAAM,SAAW,CAACA,EAAGA,CAAC,EAAI,CAACA,EAAE,CAAC,EAAGA,EAAE,CAAC,CAAC,EAChE,SAASqC,GAAuBT,EAAQU,EAAM,CAC7C,GAAM,CAAE,IAAAC,EAAK,uBAAAC,EAAwB,UAAAC,EAAW,YAAAC,CAAY,EAAId,EAC1De,EAAOJ,GAAK,KAClB,GAAI,CAACI,EAAM,OAAO,KAClB,GAAM,CAAE,OAAAC,CAAO,EAAIN,EACbO,EAAQC,GAAS,CACtB,IAAMC,EAAMJ,EAAK,cAAc,CAC9B,KAAMP,IAAOU,CAAI,EACjB,OAAAF,CACD,CAAC,EAAE,OAAO,UAAW,SAAS,EAC9B,MAAO,CACN,QAASG,EACT,QAAS,IAAMA,EAAI,QAAQ,CAC5B,CACD,EACMC,EAAY,CAAC,EACbC,EAAS3B,IACd0B,EAAU,KAAK1B,CAAC,EACTA,GAEF4B,EAASD,EAAMJ,EAAKP,EAAK,IAAI,CAAC,EAC9Ba,EAASF,EAAMJ,EAAKP,EAAK,IAAI,CAAC,EAC9Bc,EAAaH,EAAMJ,EAAKP,EAAK,IAAI,CAAC,EAClCe,EAAa,OAAO,KAAKf,EAAK,YAAc,CAAC,CAAC,EAC9CgB,EAAS,CAAC,EACVC,EAAS,CAAC,EAChB,QAAWC,KAAQH,EAClBC,EAAOE,CAAI,EAAIP,EAAMJ,EAAKP,EAAK,WAAWkB,CAAI,CAAC,CAAC,EAAE,QAClDD,EAAOC,CAAI,EAAIP,EAAMJ,EAAKP,EAAK,WAAWkB,CAAI,CAAC,CAAC,EAAE,QAEnD,IAAMC,EAAW,CAAC,EAClB,OAAW,CAACD,EAAMV,CAAI,IAAK,OAAO,QAAQR,EAAK,UAAY,CAAC,CAAC,EAAGmB,EAASD,CAAI,EAAIP,EAAMJ,EAAKC,CAAI,CAAC,EAAE,QACnGL,EAAU,IAAM,CACf,QAAWnB,KAAK0B,EAAW1B,EAAE,QAAQ,CACtC,CAAC,EACD,IAAMoC,EAAUlB,EAAuBY,EAAW,OAAO,EACnDO,EAAOC,GAAmB,CAC/B,MAAOV,EAAO,QACd,MAAOI,CACR,EAAG,CACF,MAAOH,EAAO,QACd,MAAOI,CACR,CAAC,EACGM,EAAgB,KAChBC,EACEC,EAAQpC,GAA0BC,EAASI,GAAiB,CACjE,IAAMgC,EAAM,CACX,aAAAhC,EACA,QAASoB,EAAW,QACpB,SAAAK,CACD,EACA,OAAAK,EAASxB,EAAK,aAAeA,EAAK,aAAa0B,CAAG,EAAI,OACtDH,EAAgBF,EAAK,OAAO,CAACM,EAAMC,IAAU5B,EAAK,WAAW0B,EAAKC,EAAMC,CAAK,CAAC,EACvE,EACR,CAAC,EACD,GAAI,CAACH,EAAO,OAAO,KACnB,IAAMI,EAAQ7B,EAAK,cAAgB,IAC/B8B,EAAY,EAChB,MAAO,CACN,aAAcL,EAAM,aACpB,QAAAL,EACA,KAAAC,EACA,WAAYI,EAAM,WAClB,KAAM,CAACM,EAAaC,IAAU,CAC7B,GAAI,CAACP,EAAM,MAAM,GAAK,CAACF,EAAe,OAAO,KAC7C,IAAMU,EAAeF,GAAa,WAAa,KACzCG,EAAWlC,EAAK,UAAYI,EAAYJ,EAAK,SAAS,EAAI,OAC1DmC,EAAQ,OAAOD,GAAa,UAAY,OAAO,SAASA,CAAQ,EAAIA,EAAW,EAC/EE,EAAK,KAAK,IAAIH,EAAcJ,CAAK,EAAIM,EAC3CL,GAAaM,EACb,IAAMC,EAAQL,EAAM,CACnB,OAAQT,EAAc,EACtB,OAAAC,EACA,GAAAY,EACA,UAAAN,EACA,aAAAG,CACD,CAAC,EACD,OAAII,GAAOhB,EAAK,KAAK,EACdgB,CACR,CACD,CACD,CAEA,IAAMC,GAAuBC,GAAUA,EAiBvC,SAASC,IAAuB,CAC/B,MAAO,CACN,QAAS,KACT,UAAWC,GACX,gBAAiB,CAACC,EAAeC,IAAa,CAC7C,IAAMC,EAAaC,GAAM,CACxB,IAAMC,EAAI,MAAM,QAAQD,CAAC,EAAIA,EAAE,OAAS,EACxC,OAAOC,EAAI,EAAIA,EAAI,CACpB,EACA,OAAOF,EAAUF,CAAa,IAAME,EAAUD,CAAQ,CACvD,EACA,YAAa,oEACb,GAAI,CACH,KAAM,iBACN,MAAO,SACP,MAAO,QACR,CACD,CACD,CACA,IAAMI,GAAqBC,GAAUA,EACrC,SAASC,GAAeC,EAAMC,EAAK,CAClC,IAAMC,EAAK,CACV,KAAM,OACN,MAAOD,EAAI,MACX,MAAOA,EAAI,MACX,KAAMD,EAAK,KACX,SAAUA,EAAK,SACf,SAAUA,EAAK,UAAY,EAC3B,UAAWA,EAAK,SACjB,EACA,MAAO,CACN,QAASC,EAAI,QACb,UAAWJ,GACX,YAAaI,EAAI,YACjB,GAAAC,CACD,CACD,CACA,SAASC,IAAWC,EAAQ,CAC3B,IAAMF,EAAKE,GAAQ,GACnB,MAAI,CAACF,GAAMA,EAAG,OAAS,QAAU,CAACA,EAAG,MAAQ,OAAOA,EAAG,UAAa,SAAiB,KAC9E,CACN,KAAMA,EAAG,KACT,SAAUA,EAAG,SACb,SAAUA,EAAG,SACb,UAAWA,EAAG,SACf,CACD,CACA,IAAMG,GAAgB,CAACC,EAAMC,IAAU,GAAGD,CAAI,IAAIC,CAAK,GACjDC,GAAiBF,GAAS,GAAGA,CAAI,QACvC,SAASG,GAAiBX,EAAO,CAChC,MAAO,CAAC,CAACA,GAAS,OAAOA,GAAU,UAAYA,EAAM,OAAS,gBAC/D,CACA,IAAMY,GAAiB,CAACJ,EAAMK,EAAOJ,IAAU,GAAGD,CAAI,IAAIK,CAAK,IAAIJ,CAAK,GACxE,SAASK,GAAoBC,EAAK,CACjC,IAAMC,EAAI,4BAA4B,KAAKD,CAAG,EAC9C,OAAOC,EAAI,CACV,KAAMA,EAAE,CAAC,EACT,MAAO,OAAOA,EAAE,CAAC,CAAC,EAClB,MAAOA,EAAE,CAAC,CACX,EAAI,IACL,CACA,SAASC,GAAiBC,EAAOhB,EAAMiB,EAAM,CAC5C,OAAQ,MAAM,QAAQD,CAAK,EAAIA,EAAM,MAAM,EAAGhB,EAAK,QAAQ,EAAI,CAAC,GAAG,IAAI,CAACkB,EAAKP,IAAU,CACtF,IAAMQ,EAAOD,GAAO,OAAOA,GAAQ,SAAWA,EAAM,CAAC,EAC/CE,EAAM,CAAC,EACb,OAAW,CAACb,EAAON,CAAG,IAAK,OAAO,QAAQD,EAAK,IAAI,EAAG,CACrD,IAAMF,EAAQqB,EAAKZ,CAAK,IAAM,QAAUY,EAAKZ,CAAK,IAAM,KAAON,EAAI,QAAUkB,EAAKZ,CAAK,EACvFa,EAAIb,CAAK,EAAIc,IAAapB,EAAI,KAAMH,EAAOa,EAAOJ,EAAOU,CAAI,CAC9D,CACA,OAAOG,CACR,CAAC,CACF,CACA,SAASC,IAAaC,EAAMxB,EAAOa,EAAOJ,EAAOU,EAAM,CACtD,OAAQK,EAAM,CACb,IAAK,WAAY,CAChB,GAAIb,GAAiBX,CAAK,EAAG,CAC5B,IAAMyB,EAAON,EAAK,iBAAiBN,EAAOJ,EAAOT,CAAK,EACtD,OAAIyB,GACG,CACN,EAAG,OAAOzB,EAAM,GAAM,SAAWA,EAAM,EAAIA,EAAM,SAAW,GAC5D,EAAG,GAAK,OAAOA,EAAM,GAAM,SAAWA,EAAM,EAAIA,EAAM,SAAW,GAClE,CACD,CACA,IAAM0B,EAAIC,GAAkB3B,CAAK,EACjC,MAAO,CACN,EAAG0B,EAAE,EACL,EAAGA,EAAE,CACN,CACD,CACA,IAAK,QAAS,OAAOP,EAAK,MAAM,OAAOnB,GAAU,SAAWA,EAAQ,SAAS,EAC7E,IAAK,UAAW,OAAOA,EAAQ,EAAI,GACnC,QAAS,OAAO,OAAOA,GAAU,SAAWA,EAAQ,CACrD,CACD,CACA,SAAS4B,IAAc5B,EAAO,CAC7B,OAAI,OAAOA,GAAU,SAAiB,CACrCA,EACA,EACA,EACA,CACD,EACI,MAAM,QAAQA,CAAK,EAAUA,EAC1B,CACNA,EAAM,EACNA,EAAM,EACN,EACA,CACD,CACD,CACA,SAAS6B,GAASX,EAAOhB,EAAM,CAC9B,IAAM4B,EAAS,CAAC,EAChB,QAAWrB,KAAS,OAAO,KAAKP,EAAK,IAAI,EAAG,CAC3C,IAAM6B,EAAQ,IAAI,MAAM7B,EAAK,SAAW,CAAC,EAAE,KAAK,CAAC,EACjD,QAAS8B,EAAI,EAAGA,EAAI,KAAK,IAAId,EAAM,OAAQhB,EAAK,QAAQ,EAAG8B,IAAK,CAC/D,IAAMC,EAAOL,IAAcV,EAAMc,CAAC,EAAEvB,CAAK,CAAC,EAC1CsB,EAAMC,EAAI,CAAC,EAAIC,EAAK,CAAC,EACrBF,EAAMC,EAAI,EAAI,CAAC,EAAIC,EAAK,CAAC,EACzBF,EAAMC,EAAI,EAAI,CAAC,EAAIC,EAAK,CAAC,EACzBF,EAAMC,EAAI,EAAI,CAAC,EAAIC,EAAK,CAAC,CAC1B,CACAH,EAAOrB,CAAK,EAAIsB,CACjB,CACA,MAAO,CACN,MAAOb,EAAM,OACb,OAAAY,CACD,CACD,CACA,SAASI,GAAehB,EAAOhB,EAAM,CACpC,OAAK,MAAM,QAAQgB,CAAK,EACjBA,EAAM,KAAMG,GAASA,GAAQ,OAAOA,GAAS,UAAY,OAAO,QAAQnB,EAAK,IAAI,EAAE,KAAK,CAAC,CAACiC,EAAGC,CAAC,IAAMA,EAAE,OAAS,YAAczB,GAAiBU,EAAKc,CAAC,CAAC,CAAC,CAAC,EAD5H,EAEnC,CACA,IAAIE,GAAoB,YACxB,SAASC,GAAqBC,EAAM,CACnCF,GAAoBE,EACpB,GAAI,CACHC,GAAkBD,CAAI,CACvB,MAAQ,CAAC,CACV,CACA,SAASE,IAAsBzC,EAAO,CACrC,GAAI,CACH,IAAM0C,EAAS,IAAIC,GAAM3C,CAAK,EACxB4C,EAAcP,KAAsB,OAAS,cAAgB,YAC7DQ,EAASH,EAAO,GAAGE,CAAW,EAAE,OAChCE,EAAQ,OAAOJ,EAAO,KAAK,EACjC,MAAO,CACN,EAAG,OAAO,SAASG,IAAS,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,EAC9C,EAAG,OAAO,SAASA,IAAS,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,EAC9C,EAAG,OAAO,SAASA,IAAS,CAAC,CAAC,EAAIA,EAAO,CAAC,EAAI,EAC9C,EAAG,OAAO,SAASC,CAAK,EAAIA,EAAQ,CACrC,CACD,MAAQ,CACP,MAAO,CACN,EAAG,EACH,EAAG,EACH,EAAG,EACH,EAAG,CACJ,CACD,CACD,CACA,SAASC,GAAkB/C,EAAO,CACjC,GAAM,CAAE,EAAAgD,EAAG,EAAAC,EAAG,EAAAC,EAAG,EAAAC,CAAE,EAAIV,IAAsBzC,CAAK,EAClD,OAAOoD,EAAMJ,EAAGC,EAAGC,EAAGC,CAAC,CACxB,CACA,SAASE,GAAYrD,EAAO,CAC3B,IAAMoC,EAAIW,GAAkB/C,CAAK,EACjC,MAAO,CACNoC,EAAE,EACFA,EAAE,EACFA,EAAE,EACFA,EAAE,CACH,CACD,CACA,SAASkB,GAAkBC,EAAKC,EAAY,CAC3C,GAAI,OAAOD,GAAQ,SAAU,OAAOA,EACpC,GAAI,OAAOA,GAAQ,UAAYA,IAAQ,KAAM,OAAOA,EAAI,MACxD,IAAME,EAAMF,EAAI,YAAY,EAAE,KAAK,EACnC,GAAIC,EAAY,CACf,GAAIC,IAAQ,MAAO,MAAO,GAC1B,GAAIA,IAAQ,SAAU,MAAO,GAC7B,GAAIA,IAAQ,SAAU,MAAO,GAC9B,KAAO,CACN,GAAIA,IAAQ,OAAQ,MAAO,GAC3B,GAAIA,IAAQ,QAAS,MAAO,GAC5B,GAAIA,IAAQ,SAAU,MAAO,GAC9B,CACA,eAAQ,KAAK,2BAA2BF,CAAG,yBAAyB,EAC7D,EACR,CACA,SAASG,IAAqB1D,EAAO,CACpC,IAAI2D,EAAI,GACJC,EAAI,GACR,GAAI,OAAO5D,GAAU,SAAU,CAC9B,IAAM6D,EAAQ7D,EAAM,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,EAChD6D,EAAM,SAAS,MAAM,EAAGF,EAAI,EACvBE,EAAM,SAAS,OAAO,EAAGF,EAAI,GAC7BE,EAAM,SAAS,QAAQ,GAAKA,EAAM,SAAW,IAAMA,EAAM,CAAC,IAAM,OAASA,EAAM,CAAC,IAAM,aAAWF,EAAI,IAC1GE,EAAM,SAAS,KAAK,EAAGD,EAAI,EACtBC,EAAM,SAAS,QAAQ,EAAGD,EAAI,GAC9BC,EAAM,SAAS,QAAQ,GAAKA,EAAM,SAAW,IAAMA,EAAM,CAAC,IAAM,QAAUA,EAAM,CAAC,IAAM,YAAUD,EAAI,IAC1GC,EAAM,SAAW,GAAKA,EAAM,CAAC,IAAM,WACtCF,EAAI,GACJC,EAAI,GAEN,MAAW,OAAO5D,GAAU,UAAYA,IAAU,MACjD2D,EAAIL,GAAkBtD,EAAM,EAAG,EAAK,EACpC4D,EAAIN,GAAkBtD,EAAM,EAAG,EAAI,GAC7B,QAAQ,KAAK,oCAAoCA,CAAK,yBAAyB,EACtF,OAAO8D,EAAMH,EAAG,EAAIC,CAAC,CACtB,CACA,SAASG,IAAgBC,EAAe,CACvC,GAAKA,EACL,OAAIA,IAAkBC,GAAuBlB,GACzCiB,IAAkBrC,GAA0B+B,IAC5CM,IAAkBvE,GAA4BA,GAC9CuE,IAAkBjE,GAA0BA,GACzCiE,CACR,CACA,SAASE,GAA0BC,EAAOC,EAAQ,CAC7CD,EAAQ,EACRC,EAAS,CACd,CACA,SAASC,GAAmBxE,EAAG,CAC9B,OAAOA,GAAK,MAAQ,OAAOA,GAAM,UAAY,OAAOA,EAAE,OAAU,WAAaA,EAAE,OAAS,MAAQA,EAAE,OAAS,KAC5G,CACA,SAASyE,GAAoBC,EAAO,CACnC,GAAI,CAACA,EAAO,OACZ,IAAIjD,EACJ,OAAW,CAACkD,EAAMrE,CAAG,IAAK,OAAO,QAAQoE,CAAK,EAAG,CAChD,IAAME,EAAItE,GAAK,IAAI,aACfsE,IAAM,iBAAmBA,IAAM,sBAAwBA,IAAM,gBAAkBA,IAAM,yBAAwBnD,IAAwB,IAAI,KAAO,IAAIkD,EAAMC,CAAC,CAChK,CACA,OAAOnD,CACR,CACA,SAASoD,GAAqBC,EAAMC,EAAgB,CACnD,IAAMC,EAAKF,GAAM,aACXG,EAAgC,IAAI,IACpCC,EAA4B,IAAI,IACtC,GAAIF,EAAI,QAAWG,IAAQ,CAC1B,IACA,IACA,QACA,QACD,EAAG,CACF,IAAM9B,EAAI2B,EAAGG,CAAI,EACZ9B,IACDA,EAAE,KAAO,cAAgBA,EAAE,KAAO,aAAc4B,EAAc,IAAI5B,EAAE,IAAI,GACnEA,EAAE,KAAO,iBAAmBA,EAAE,KAAO,uBAAsB6B,EAAU,IAAI7B,EAAE,KAAMA,EAAE,EAAE,EAC/F,CACA,GAAI0B,EAAgB,OAAW,CAACpE,EAAMyE,CAAI,IAAKL,EAAgBG,EAAU,IAAIvE,EAAMyE,CAAI,EACvF,OAAOH,EAAc,KAAO,GAAKC,EAAU,KAAO,EAAI,CACrD,cAAAD,EACA,UAAAC,CACD,EAAI,IACL,CACA,IAAIG,IAAsBC,IAAY,CACrC,GAAIA,EAAO,SAAS,MAAM,EAAI,QAAUA,EAAO,SAAS,OAAO,EAAI,MAAQ,SAC3E,GAAIA,EAAO,SAAS,KAAK,EAAI,QAAUA,EAAO,SAAS,QAAQ,EAAI,MAAQ,QAC5E,GACIC,IAAsB,CAACC,EAAUC,EAAMC,IAAOD,IAAS,QAAUD,EAAWE,EAAKD,IAAS,MAAQD,EAAWE,EAAKF,EACtH,SAASG,GAAcC,EAAS5F,EAAGsE,EAAOC,EAAQ,CACjD,IAAMsB,EAAO,CAACnC,EAAKoC,IAAQtB,GAAmBd,CAAG,EAAIA,EAAI,OAAS,KAAOA,EAAI,MAAQA,EAAI,MAAQoC,EAAM,OAAOpC,GAAQ,SAAWA,EAAMoC,EAAM,EAC7I,OAAIF,EAAQ,KAAO,gBAAwBC,EAAK7F,EAAGuE,CAAM,EACrDqB,EAAQ,KAAO,qBAA6BC,EAAK7F,EAAG,EAAIuE,CAAM,EAC9DqB,EAAQ,KAAO,eAAuBC,EAAK7F,EAAGsE,CAAK,EAChD,CACR,CACA,SAASyB,GAAiBjB,EAAMJ,EAAOJ,EAAOC,EAAQ,CACrD,GAAIO,GAAM,cAAe,CACxB,IAAMzB,EAAIyB,EAAK,cAAcJ,EAAOJ,EAAOC,CAAM,EACjD,MAAO,CACN,IAAKD,EAAQ,EAAIjB,EAAE,QAAUiB,EAAQ,EAAI,EACzC,IAAKC,EAAS,EAAIlB,EAAE,SAAWkB,EAAS,EAAI,CAC7C,CACD,CACA,IAAMS,EAAKF,GAAM,aACbkB,EAAM,EAAGC,EAAM,EACnB,OAAIjB,GAAI,OAASV,EAAQ,IAAG0B,EAAML,GAAcX,EAAG,MAAON,EAAMM,EAAG,MAAM,IAAI,EAAGV,EAAOC,CAAM,GAAK,EAAID,IAClGU,GAAI,QAAUT,EAAS,IAAG0B,EAAMN,GAAcX,EAAG,OAAQN,EAAMM,EAAG,OAAO,IAAI,EAAGV,EAAOC,CAAM,GAAK,EAAIA,IACnG,CACN,IAAAyB,EACA,IAAAC,CACD,CACD,CACA,SAASC,GAAoBlG,EAAG8F,EAAKL,EAAMC,EAAI,CAC9C,IAAIF,EACJ,GAAIhB,GAAmBxE,CAAC,EAAG,GAAIA,EAAE,OAAS,KAAM,CAC/C,IAAMmG,EAAML,EAAM,EAAI9F,EAAE,MAAQ8F,EAAM,EACtCN,EAAWC,IAAS,MAAQ,EAAIU,EAAMV,IAAS,SAAW,GAAKU,EAAMA,CACtE,MAAOX,EAAWxF,EAAE,cACX,OAAOA,GAAM,SAAUwF,EAAWxF,MACtC,QAAOA,EACZ,OAAOuF,IAAoBC,EAAUC,EAAMC,CAAE,CAC9C,CACA,SAASU,IAAYpG,EAAGqG,EAAY/B,EAAOC,EAAQ,CAClD,OAAIvE,EAAE,OAAS,KAAaA,EAAE,MAC1BqG,IAAe,eAAuB/B,EAAQ,EAAItE,EAAE,MAAQsE,EAAQtE,EAAE,MACtEuE,GAAU,EAAUvE,EAAE,MACtBqG,IAAe,sBAA8BrG,EAAE,MAAQ,EAAIuE,EAASvE,EAAE,MAAQA,EAAE,MAC7EqG,IAAe,gBAAkBrG,EAAE,MAAQuE,EAASvE,EAAE,OAAS,EAAIuE,EAC3E,CACA,SAAS+B,GAAuBxB,EAAMyB,EAAUC,EAAUlB,EAAQhB,EAAOC,EAAQQ,EAAgBW,EAAI,CACpG,IAAMe,EAAO5B,GAAqBC,EAAMC,CAAc,EACtD,GAAI,CAAC0B,EAAM,OAAOD,EAClB,GAAM,CAAE,GAAAE,EAAI,GAAAC,CAAG,EAAItB,IAAmBC,CAAM,EAC5C,GAAImB,EAAK,cAAc,IAAIF,CAAQ,EAClC,MAAI,CAACC,GAAY,OAAOA,GAAa,SAAiBA,EAC/C,CACN,GAAGA,EACH,EAAGN,GAAoBM,EAAS,EAAGlC,EAAOoC,EAAIhB,GAAI,KAAO,CAAC,EAC1D,EAAGQ,GAAoBM,EAAS,EAAGjC,EAAQoC,EAAIjB,GAAI,KAAO,CAAC,CAC5D,EAED,IAAMW,EAAaI,EAAK,UAAU,IAAIF,CAAQ,EAC9C,OAAIF,GAAc7B,GAAmBgC,CAAQ,EAAUJ,IAAYI,EAAUH,EAAY/B,EAAOC,CAAM,EAC/FiC,CACR,CACA,SAASI,GAAkB9B,EAAMyB,EAAUxB,EAAgB,CAC1D,IAAM0B,EAAO5B,GAAqBC,EAAMC,CAAc,EACtD,OAAK0B,EACEA,EAAK,cAAc,IAAIF,CAAQ,GAAKE,EAAK,UAAU,IAAIF,CAAQ,EADpD,EAEnB,CACA,SAASM,GAAqBC,EAAYC,EAAeC,EAAa,CACrE,IAAMC,EAAc,CAAC,EACfnC,EAAOgC,EAAW,uBAClB/B,EAAiBN,GAAoBqC,EAAW,KAAK,EACrDI,EAAuBC,IAAsBL,EAAW,MAAOC,CAAa,EAClF,OAAW,CAACR,EAAUa,CAAU,IAAK,OAAO,QAAQN,EAAW,KAAK,EAAG,CACtE,IAAMO,EAAYD,EAAW,UAC7B,GAAIC,IAAczH,GAAqB,CACtC0H,IAAiBL,EAAaV,EAAUa,EAAYL,EAAcR,CAAQ,EAAGW,CAAoB,EACjG,QACD,CACA,GAAIG,IAAcnH,GAAmB,CACpCqH,IAAeN,EAAaV,EAAUa,EAAYL,EAAcR,CAAQ,CAAC,EACzE,QACD,CACA,IAAMC,EAAWO,EAAcR,CAAQ,EACnCpG,EAAQqG,EACRrG,GAAU,OAA0BA,EAAQiH,EAAW,SACvDjH,GAAU,OACb,QAAQ,MAAM,sBAAsBoG,CAAQ,kDAAmD,CAC9F,SAAAA,EACA,aAAcC,EACd,QAASY,EAAW,QACpB,aAAc,CAAC,CAACC,CACjB,CAAC,EACDlH,EAAQ,GAET,IAAMqH,EAAetD,IAAgBmD,CAAS,EACxCI,EAAQb,GAAkB9B,EAAMyB,EAAUxB,CAAc,EACxD2C,EAAM,CAACF,GAAgB,CAACC,IAAU,OAAOtH,GAAU,UAAY,OAAOA,GAAU,UAAYA,IAAU,MAAQ,CAAC,MAAM,QAAQA,CAAK,GACxI8G,EAAYV,CAAQ,EAAI,CACvB,MAAApG,EACA,UAAWqH,EACX,YAAaJ,EAAW,aAAe,GACvC,GAAGA,EAAW,gBAAkB,CAC/B,gBAAiBA,EAAW,gBAC5B,mBAAoBZ,GAAYY,EAAW,OAC5C,EAAI,CAAC,EACL,GAAGK,EAAQ,CAAE,gBAAiBjB,CAAS,EAAI,CAAC,EAC5C,GAAGkB,EAAM,CAAE,IAAK,EAAK,EAAI,CAAC,CAC3B,CACD,CACA,OAAOT,CACR,CACA,SAASE,IAAsBzC,EAAOqC,EAAe,CACpD,OAAW,CAACpC,EAAMrE,CAAG,IAAK,OAAO,QAAQoE,CAAK,EAAG,GAAIpE,EAAI,YAAcqH,GAAqB,CAC3F,IAAMpG,EAAMwF,EAAcpC,CAAI,GAAKrE,EAAI,QACvC,OAAO,OAAOiB,GAAQ,SAAWoG,GAAoBpG,CAAG,EAAI,CAC7D,CACA,MAAO,EACR,CACA,SAAS+F,IAAiBL,EAAaV,EAAUa,EAAYZ,EAAUoB,EAAgB,CACtF,IAAMC,EAAQrB,GAAY,KACpBsB,EAASC,GAAUF,EAAOrE,EAAW,EACrCwE,EAAYC,GAAmBH,EAAO,OAAQA,EAAO,UAAWF,CAAc,EACpFX,EAAYV,CAAQ,EAAI,CACvB,MAAOsB,EACP,UAAWjI,GACX,IAAK,GACL,YAAawH,EAAW,aAAe,GACvC,GAAGA,EAAW,gBAAkB,CAC/B,gBAAiBA,EAAW,gBAC5B,mBAAoBS,GAAST,EAAW,OACzC,EAAI,CAAC,CACN,EACAH,EAAY,YAAc,CACzB,MAAOa,EAAO,OACd,OAAQI,GAAQ3E,EAAO,CAAC,CACzB,EACA0D,EAAY,eAAiB,CAC5B,MAAOa,EAAO,UACd,OAAQI,GAAQ3E,EAAO,EAAI,CAAC,CAC7B,EACA0D,EAAY,qBAAuB,CAClC,MAAOe,EACP,OAAQE,GAAQC,EAAO,CAAC,CACzB,EACAlB,EAAY,UAAY,CACvB,MAAOa,EAAO,UACd,OAAQM,CACT,CACD,CACA,SAASb,IAAeN,EAAaV,EAAUa,EAAYZ,EAAU,CACpE,IAAMnG,EAAOG,IAAW4G,CAAU,EAClC,GAAI,CAAC/G,EAAM,CACV,QAAQ,MAAM,wBAAwBkG,CAAQ,qCAAqC,EACnF,MACD,CACA,IAAMlF,EAAQD,GAAiBoF,GAAYY,EAAW,QAAS/G,EAAM,CAAE,MAAOmD,EAAY,CAAC,EACrFsE,EAAS9F,GAASX,EAAOhB,CAAI,EACnC4G,EAAYV,CAAQ,EAAI,CACvB,MAAOlF,EACP,UAAWnB,GACX,IAAK,GACL,YAAakH,EAAW,aAAe,GACvC,SAAUZ,GAAYY,EAAW,QACjC,UAAW/G,CACZ,EACA,OAAW,CAACO,EAAOsB,CAAK,IAAK,OAAO,QAAQ4F,EAAO,MAAM,EAAGb,EAAYvG,GAAc6F,EAAU3F,CAAK,CAAC,EAAI,CACzG,MAAOsB,EACP,OAAQgG,GAAQ3E,EAAOlD,EAAK,QAAQ,CACrC,EACA4G,EAAYpG,GAAc0F,CAAQ,CAAC,EAAI,CACtC,MAAOuB,EAAO,MACd,OAAQM,CACT,CACD,CACA,SAASC,GAAkBC,EAAM,CAChC,OAAOC,GAAoB,EAAID,EAAK,OAASA,EAAK,OACnD,CACA,SAASE,GAAiBF,EAAM,CAC/B,OAAOD,GAAkBC,CAAI,CAC9B,CACA,IAAMG,GAAe,KACfC,GAAoB,CACzB,KAAM,IACN,KAAM,GACP,EACMC,GAAW,CAAC,kBAAmB,iBAAiB,EAChDC,GAAW,CAChB,kBACA,kBACA,iBACD,EACA,SAASC,GAAeC,EAAaC,EAAiB,GAAK,EAAG,CAC7D,IAAMC,EAAKF,EACLG,EAAID,GAAI,YAAY,QAAU,EACpC,MAAO,CACN,GAAI,KAAK,IAAI,KAAK,IAAIA,GAAI,WAAa,KAAM,IAAI,EAAG,IAAI,EACxD,OAAQC,EAAI,GAAKD,GAAI,YAAY,OAAS,GAAKC,EAAIF,EACnD,SAAUC,GAAI,SAAS,GAAK,GAC5B,SAAUA,GAAI,SAAS,GAAK,EAC7B,CACD,CACA,SAASE,GAAmBC,EAAa,CACxC,MAAO,CAACjI,EAAKkI,IAAa,CACzB,IAAMpJ,EAAImJ,EAAYjI,CAAG,EACzB,OAAO,OAAOlB,GAAM,SAAWA,EAAIoJ,CACpC,CACD,CACA,SAASC,IAAgB9H,EAAK+H,EAAOC,EAAK,CACzC,OAAO,KAAK,IAAI,KAAK,IAAI,KAAK,MAAMhI,CAAG,EAAG+H,CAAK,EAAGC,CAAG,CACtD,CACA,IAAMC,GAAcC,GAAO,CAC1B,GAAIC,EACJ,GAAIA,EACJ,GAAIA,EACJ,GAAIA,CACL,CAAC,EAAE,MAAM,aAAa,EAChBC,GAAmBC,EAAgB,GAAG,CAC3C3F,EACAmE,EACAA,EACAA,CACD,EAAGoB,EAAW,GAAoBK,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAKC,EAAOC,EAAQC,IAAQ,CAC/I,UACA,IAAMC,EAAMC,EAAIH,EAAQ,IAAI,EACtBI,EAAMV,EAAIW,GAAM,aAAa,aAAaP,EAAI,EAAGI,CAAG,EAAGD,CAAG,CAAC,CAAC,EAC5DK,EAAMZ,EAAIW,GAAM,aAAaP,EAAI,EAAGG,CAAG,CAAC,CAAC,EACzCM,EAAOb,EAAIc,GAAK,aAAa,aAAaT,EAAOE,CAAG,EAAGC,CAAG,CAAC,CAAC,EAC5DO,EAAOf,EAAIc,GAAK,aAAaT,EAAOE,CAAG,CAAC,CAAC,EACzCS,EAAO,aAAahB,EAAIO,CAAG,EAAG,CAAC,EACrC,OAAOT,GAAY,CAClB,GAAIW,EAAI,aAAaC,EAAKG,CAAI,EAAG,CAAC,EAClC,GAAII,GAAI,aAAaP,EAAKG,CAAI,EAAGG,CAAI,EACrC,GAAIP,EAAI,aAAaG,EAAKG,CAAI,EAAG,CAAC,EAClC,GAAIE,GAAI,aAAaL,EAAKG,CAAI,EAAGC,CAAI,CACtC,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,SAAS,CAAC,CAC1B,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,KACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,QACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,QACA,CAAC,KAAK,CACP,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,GAAI,CACJ,EACA,cACA,CAAC,CAAC,IAAK,CACN,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,MACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,MACD,EAAG,MAAM,CACV,EACA,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,MACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,MACD,EAAG,MAAM,CACV,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMP,EACjB,QAAS,IAAMT,EACf,YAAa,IAAMW,GACnB,WAAY,IAAMG,GAClB,YAAe,IAAMhB,GACrB,UAAW,IAAMmB,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,kBAAkB,EAClCe,GAAmBhB,EAAgB,GAAG,CAC3C3F,EACAyF,EACAmB,EACD,EAAGrB,EAAW,GAAoBK,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAQC,EAAKL,IAAS,CACzI,UACA,IAAMN,EAAMV,EAAIW,GAAMS,EAAO,CAAC,CAAC,EACzBR,EAAMZ,EAAIW,GAAMS,EAAO,CAAC,CAAC,EAC/B,OAAOtB,GAAY,CAClB,GAAIW,EAAI,aAAaC,EAAKW,CAAG,EAAG,CAAC,EACjC,GAAIJ,GAAI,aAAaP,EAAKW,CAAG,EAAGL,EAAK,CAAC,EACtC,GAAIP,EAAI,aAAaG,EAAKS,CAAG,EAAG,CAAC,EACjC,GAAIJ,GAAI,aAAaL,EAAKS,CAAG,EAAGL,EAAK,CAAC,CACvC,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,SACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,SACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,cACA,CAAC,CAAC,IAAK,CACN,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,KACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,KACD,EAAG,CACF,EACA,OACA,GACD,CAAC,CACF,EACA,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,KACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,GAAM,CACL,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,KACD,EAAG,CACF,EACA,OACA,GACD,CAAC,CACF,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMhB,EACf,YAAa,IAAMW,GACnB,YAAe,IAAMb,GACrB,UAAW,IAAMW,EACjB,UAAW,IAAMQ,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,kBAAkB,EAClCmB,GAAsBpB,EAAgB,GAAG,CAACxB,EAAKA,CAAG,EAAGA,CAAG,GAAoByB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoB,EAAQ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MAAM,EAAGuG,EAAI,CAAC,CAAC,CAAC,EAC7HiD,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EAC7BxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAa8H,EAAI,EAAG,aAAaxJ,EAAE,KAAMsO,CAAG,CAAC,EAAG,aAAa9E,EAAI,EAAG,aAAaxJ,EAAE,KAAMsO,CAAG,CAAC,EAAG9E,EAAI,EAAG,CAAC,CACpI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CAAC,SAAU,OAAO,CACnB,CACD,EA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AC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,cACA,CAAC,SAAU,OAAO,CACnB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CACC,EACA,IACA,UACD,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,IACA,MACD,EACA,CACC,EACA,IACA,MACD,EACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,GACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,GACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,GACD,CACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiB,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,UAAW,IAAM+B,EACjB,YAAe,IAAMsG,EACrB,YAAa,IAAM/B,EACnB,MAAS,IAAM4B,EACf,UAAW,IAAMnI,EACjB,UAAW,IAAM5E,EACjB,UAAW,IAAMsN,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,QAAQW,CAAU,EAAE,CACxD,CACA,SAASS,GAAwBC,EAAUzP,EAAM,CAChD,IAAMgL,EAASyE,EACT,CAAE,EAAA9Q,EAAG,WAAAyP,EAAY,YAAAsB,EAAa,kBAAAC,CAAkB,EAAI3P,EACpD4P,EAAS5P,EAAK,QAAU,GACxB6P,EAAQ7P,EAAK,OAAS,GACtB8P,EAAcnR,EAAI,IACxB,GAAIkR,IAAU7P,EAAK,MAAQA,EAAK,YAAc4P,GAAS,MAAM,IAAI,MAAM,8HAAyH5P,EAAK,IAAI,gBAAgBA,EAAK,UAAU,YAAY4P,CAAM,GAAG,EAC7P,GAAI,CAACC,IAAU,CAAC7P,EAAK,MAAQ,CAACA,EAAK,YAAa,MAAM,IAAI,MAAM,uGAAkGA,EAAK,IAAI,gBAAgBA,EAAK,UAAU,GAAG,EAC7M,OAAI6P,EAAcvH,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC/J,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CG,EAAQ,aAAa3H,EAAIwH,CAAE,EAAG,EAAE,EAChCI,EAAQ,aAAa5H,EAAIyH,CAAE,EAAG,EAAE,EAChCI,EAAK,aAAaF,EAAOlO,EAAE,KAAK,EAChCqO,EAAK,aAAaF,EAAOnO,EAAE,KAAK,EAChC0M,EAAS,aAAa,aAAa0B,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EAChEmB,EAAQlH,EAAI,aAAatI,EAAE,QAASA,EAAE,OAAO,EAAGuG,EAAI,CAAC,CAAC,EACtDkJ,EAAY,aAAahD,GAAgBC,EAAQ8C,CAAK,EAAGxP,EAAE,QAAQ,EACnE+O,EAAOtE,EAAO,EAAE,KAAKwD,CAAG,EACxByB,EAAUX,EAAK,EACfY,EAAU,aAAa,aAAa,aAAa3P,EAAE,cAAeyP,CAAS,EAAGzP,EAAE,EAAE,EAAGmP,CAAW,EAChGS,EAAU9G,GAAI,aAAa4G,EAASC,CAAO,EAAG,CAAC,EAC/CE,EAAa,aAAaF,EAASrH,EAAIsH,EAASrJ,EAAI,IAAI,CAAC,CAAC,EAChEkE,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMkO,EAAS,aAAab,EAAK,EAAG,aAAa,EAAGjG,GAAI+G,EAAY,CAAC,CAAC,CAAC,EAAG,EAAG,CAAC,EACnG,IAAMrG,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvB6B,EAAKhH,GAAI,aAAa,aAAa2G,EAAWzP,EAAE,EAAE,EAAGoP,CAAiB,EAAG,CAAC,EAC1EW,EAAY,aAAa,aAAa,aAAa/P,EAAE,QAAS0P,CAAO,EAAG1P,EAAE,EAAE,EAAGuP,CAAW,EAChG9E,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMsN,EAAIxF,EAAI,EAAGxJ,EAAE,SAAU8P,CAAE,EAAG,aAAad,EAAIxF,EAAI,EAAGxJ,EAAE,SAAU8P,CAAE,EAAGC,CAAS,EAAGvG,EAAI,EAAG,CAAC,CACrH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,kBACA,CAAC,SAAU,OAAO,CACnB,EACA,IACA,CACC,EACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,eACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,IACA,SACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,UAAW,CACX,EACA,QACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,UACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,GAAG,CAAC,CACxB,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,mBACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,aACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,IACA,UACD,EACA,IACD,CACD,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,IACA,UACD,EACA,IACD,CACD,EACA,IACA,WACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiB,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,UAAW,IAAM+B,EACjB,gBAAmB,IAAMmE,GACzB,YAAe,IAAM0C,EACrB,UAAW,IAAMrG,GACjB,UAAW,IAAMpH,EACjB,kBAAqB,IAAM0N,EAC3B,YAAe,IAAMG,EACrB,UAAW,IAAMP,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,OAAO,EACtCwB,EAAetH,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAChK,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CiC,EAAOvF,EAAO,EAAE,QAAQwD,CAAG,EAAE,EAC7BC,EAAQ,aAAa3H,EAAIwH,CAAE,EAAG,EAAE,EAChCI,EAAQ,aAAa5H,EAAIyH,CAAE,EAAG,EAAE,EAChCI,EAAK,aAAaF,EAAOlO,EAAE,KAAK,EAChCqO,EAAK,aAAaF,EAAOnO,EAAE,KAAK,EAChC0M,EAAS,aAAa,aAAa0B,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EAChEmB,EAAQlH,EAAI,aAAatI,EAAE,QAASA,EAAE,OAAO,EAAGuG,EAAI,CAAC,CAAC,EACtDkJ,EAAY,aAAahD,GAAgBC,EAAQ8C,CAAK,EAAGQ,CAAI,EAC7DjB,EAAOtE,EAAO,EAAE,KAAKwD,CAAG,EACxByB,EAAUX,EAAK,EACfY,EAAU,aAAa,aAAa,aAAa3P,EAAE,cAAeyP,CAAS,EAAGzP,EAAE,EAAE,EAAGmP,CAAW,EAChGS,EAAU9G,GAAI,aAAa4G,EAASC,CAAO,EAAG,CAAC,EAC/CE,EAAa,aAAaF,EAASrH,EAAIsH,EAASrJ,EAAI,IAAI,CAAC,CAAC,EAChEkE,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMkO,EAAS,aAAab,EAAK,EAAG,aAAa,EAAGjG,GAAI+G,EAAY,CAAC,CAAC,CAAC,EAAG,EAAG,CAAC,EACnG,IAAMrG,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvBgC,EAAU,aAAa,aAAa,aAAa7B,EAAIpO,EAAE,QAAQ,EAAG,aAAaqO,EAAIrO,EAAE,QAAQ,CAAC,EAAGsI,EAAItI,EAAE,QAASuG,EAAI,CAAC,CAAC,CAAC,EACvH2J,EAAO5H,EAAI,aAAa,aAAatI,EAAE,SAAUA,EAAE,QAAQ,EAAG,aAAaA,EAAE,SAAUA,EAAE,QAAQ,CAAC,EAAGuG,EAAI,CAAC,CAAC,EAC3G4J,EAAM,aAAanQ,EAAE,SAAU,aAAa,aAAa,aAAaA,EAAE,SAAUiQ,CAAO,EAAGjQ,EAAE,YAAY,EAAGoQ,GAAKF,CAAI,CAAC,CAAC,EACxHG,EAAM,aAAarQ,EAAE,SAAU,aAAa,aAAa,aAAaA,EAAE,SAAUiQ,CAAO,EAAGjQ,EAAE,YAAY,EAAGoQ,GAAKF,CAAI,CAAC,CAAC,EACxHJ,EAAKhH,GAAI,aAAa,aAAa2G,EAAWzP,EAAE,EAAE,EAAGoP,CAAiB,EAAG,CAAC,EAC1EW,GAAY,aAAa,aAAa,aAAa,aAAa/P,EAAE,QAAS0P,CAAO,EAAG1P,EAAE,EAAE,EAAGuP,CAAW,EAAGS,CAAI,EAC9GM,GAAW,aAAapC,EAAOlO,EAAE,OAAO,EACxCuQ,GAAW,aAAapC,EAAOnO,EAAE,OAAO,EACxCwQ,GAAe,aAAa,aAAaF,GAAUA,EAAQ,EAAG,aAAaC,GAAUA,EAAQ,CAAC,EAC9FE,GAAY,aAAa,aAAahE,GAAgB+D,GAAclI,EAAItI,EAAE,WAAYuG,EAAI,CAAC,CAAC,CAAC,EAAGvG,EAAE,WAAW,EAAGgQ,CAAI,EAC1HvF,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAasN,EAAIxF,EAAI,EAAG2G,EAAKL,CAAE,EAAG,aAAa9P,EAAE,WAAYyQ,EAAS,CAAC,EAAG,aAAa,aAAazB,EAAIxF,EAAI,EAAG6G,EAAKP,CAAE,EAAGC,EAAS,EAAG,aAAa/P,EAAE,WAAYyQ,EAAS,CAAC,EAAGjH,EAAI,EAAG,CAAC,CACjN,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,kBACA,CAAC,SAAU,OAAO,CACnB,EACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,eACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,IACA,SACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,UAAW,CACX,EACA,QACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,UACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,GAAG,CAAC,CACxB,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,UACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,UACD,CACD,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,SACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,IACA,UACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,IACA,UACD,CACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,mBACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,aACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,WACA,IACA,UACD,EACA,IACA,CACC,EACA,WACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,CAAC,eAAgB,CAChB,EACA,UACA,CAAC,CACA,EACA,IACA,YACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,MACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,MACA,IACD,CACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiB,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,UAAW,IAAM+B,EACjB,gBAAmB,IAAMmE,GACzB,YAAe,IAAM0C,EACrB,UA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CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,kBACA,CAAC,SAAU,OAAO,CACnB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,eACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,IACA,SACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,UAAW,CACX,EACA,QACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,UACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,GAAG,CAAC,CACxB,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,UACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,UACD,CACD,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,SACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,IACA,UACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,IACA,UACD,CACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,mBACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,WACA,IACA,UACD,EACA,IACA,CACC,EACA,WACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,kBACA,CAAC,eAAgB,CAChB,EACA,UACA,CAAC,CACA,EACA,IACA,YACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,aACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,MACA,IACD,CACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiB,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,UAAW,IAAM+B,EACjB,gBAAmB,IAAMmE,GACzB,YAAe,IAAM0C,EACrB,UAAW,IAAMrG,GACjB,UAAW,IAAMpH,EACjB,WAAY,IAAM0O,GAClB,kBAAqB,IAAMhB,EAC3B,YAAe,IAAMG,EACrB,UAAW,IAAMP,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,OAAO,CAC3C,CACA,IAAI6C,GAAiC,IAAI,IACzC,SAASC,IAAoBvS,EAAGwS,EAAU,CACzC,OAAIA,IAAa,WAAmB7I,EAAgB,GAAG,CACtDF,EACAA,EACAA,EACAA,CACD,EAAGiG,CAAG,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAIC,EAAIC,EAAIC,IAAO,CAC9H,UACA,IAAMC,EAAM,aAAa,aAAa,aAAaJ,EAAIE,CAAE,EAAG3S,CAAC,EAAGA,CAAC,EAC3D8S,EAAM,aAAa,aAAa,aAAaJ,EAAIE,CAAE,EAAG5S,CAAC,EAAGA,CAAC,EACjE,OAAO0P,EAAI,aAAa,aAAamD,EAAK7S,CAAC,EAAG8S,CAAG,CAAC,CACnD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,GACD,EACA,IACA,GACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,EAAK,IAAM9S,EACX,QAAS,IAAM0P,CAChB,CACD,CAAC,GAAK9F,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,EACnBD,EAAgB,GAAG,CACzBF,EACAA,EACAA,EACAA,CACD,EAAGiG,CAAG,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6I,EAAIC,EAAIC,EAAIC,IAAO,CAC9H,UACA,IAAMC,EAAMpE,EAAM,aAAagE,EAAIE,CAAE,EAAG,EAAG,aAAa3S,EAAG,CAAC,CAAC,EACvD8S,EAAMrE,EAAM,aAAaiE,EAAIE,CAAE,EAAG,EAAG,aAAa5S,EAAG,CAAC,CAAC,EAC7D,OAAO0P,EAAI,aAAa,aAAamD,EAAK7S,CAAC,EAAG8S,CAAG,CAAC,CACnD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,IACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,IACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMrE,EACnB,EAAK,IAAMzO,EACX,QAAS,IAAM0P,CAChB,CACD,CAAC,GAAK9F,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,MAAM,CAC7B,CACA,SAASmJ,IAAe/S,EAAGwS,EAAU,CACpC,IAAMvR,EAAM,GAAGjB,CAAC,IAAIwS,CAAQ,GACtBpD,EAAMkD,GAAe,IAAIrR,CAAG,EAClC,GAAImO,EAAK,OAAOA,EAChB,IAAME,EAAQiD,IAAoBvS,EAAGwS,CAAQ,EAC7C,OAAAF,GAAe,IAAIrR,EAAKqO,CAAK,EACtBA,CACR,CACA,SAAS0D,GAAyBlC,EAAUzP,EAAM,CACjD,IAAMgL,EAASyE,EACT,CAAE,EAAA9Q,EAAG,WAAAyP,EAAY,SAAA+C,EAAU,IAAAS,CAAI,EAAI5R,EACnC6R,EAAKH,IAAe/S,EAAGwS,CAAQ,EAC/BW,EAAgB9R,EAAK,eAAiB,GACtC+R,EAAWZ,IAAa,WACxBa,EAAYJ,IAAQ,MAAQ,MAAQ,OAC1C,GAAIA,IAAQ,eAAiB5R,EAAK,gBAAkB,OAAYA,EAAK,YAAc,IAAQ,MAAM,IAAI,MAAM,qIAAqIA,EAAK,gBAAkB,EAAK,gBAAgBA,EAAK,YAAc,EAAK,GAAG,EACvT,GAAIA,EAAK,WAAa+R,EAAU,MAAM,IAAI,MAAM,iLAA4K,EAC5N,IAAME,EAAO3J,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC1J,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACX4D,EAAKlH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EACpCc,EAAKnH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACnCe,EAAKpH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EACpCgB,EAAKrH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACnCiB,EAAQ,aAAa,aAAa,aAAaH,EAAG,EAAGD,EAAG,CAAC,EAAG,aAAaG,EAAG,EAAGD,EAAG,CAAC,CAAC,EAAG,EAAE,EACzFrI,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EAC7BxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM8H,EAAI,EAAGA,EAAI,EAAGuI,EAAO,CAAC,CAClD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,QACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMjE,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,OAAU,IAAM4C,EAChB,GAAM,IAAM6G,EACZ,UAAW,IAAM5P,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,MAAM,EACnCmE,EAAcvS,EAAK,aAAa,MAAQ,EACxCwS,EAAYxS,EAAK,YAAcsI,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAClL,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACXmE,EAAKC,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EAAE,CAAC,EAC3CsB,EAAKD,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,CAAC,EAC1CuB,EAAKF,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EAAE,CAAC,EAC3CwB,EAAKH,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,CAAC,EAC1CyB,EAAK9H,EAAO,EAAE,KAAKwD,CAAG,EAAE,EACxBuE,GAAK,aAAa,aAAaJ,EAAIF,CAAE,EAAG,EAAE,EAC1CO,GAAK,aAAa,aAAaH,EAAID,CAAE,EAAG,EAAE,EAC1CK,GAAKpK,EAAI8H,GAAK,aAAa,aAAaoC,GAAIA,EAAE,EAAG,aAAaC,GAAIA,EAAE,CAAC,CAAC,EAAGlM,EAAI,IAAI,CAAC,EAClFoM,GAAK,aAAa,aAAa,aAAa,aAAaF,GAAIC,EAAE,EAAGH,CAAE,EAAGvS,EAAE,YAAY,EAAGA,EAAE,EAAE,EAC5F4S,GAAK,aAAa,aAAa,aAAa,aAAa,aAAaJ,GAAIE,EAAE,EAAG,EAAE,EAAGH,CAAE,EAAGvS,EAAE,YAAY,EAAGA,EAAE,EAAE,EAChH6S,GAAKtM,EAAI,CAAC,EACVuM,GAAKvM,EAAI,CAAC,EACd,GAAIvG,EAAE,QAAU,EAAG,CAClB,IAAM+S,GAAM,aAAa,aAAaxM,EAAIwH,CAAE,EAAG,EAAE,EAAGxH,EAAInI,CAAC,CAAC,EACpD4U,GAAM,aAAa,aAAazM,EAAIyH,CAAE,EAAG,EAAE,EAAGzH,EAAInI,CAAC,CAAC,EACpD6U,GAAMC,GAAQ9Q,EAAM,aAAa2Q,GAAK/S,EAAE,WAAW,EAAG,aAAagT,GAAKhT,EAAE,WAAW,CAAC,EAAGA,EAAE,WAAW,EACtGmT,GAAK,aAAa,aAAanT,EAAE,QAASgS,CAAW,EAAGhS,EAAE,EAAE,EAClE6S,GAAK,aAAaI,GAAI,EAAGE,EAAE,EAC3BL,GAAK,aAAaG,GAAI,EAAGE,EAAE,CAC5B,CACA,IAAM3J,GAAMiB,EAAO,EAAE,KAAKwD,CAAG,EAC7BxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAa,aAAa8H,GAAI,EAAGmJ,EAAE,EAAGE,EAAE,EAAG,aAAa,aAAarJ,GAAI,EAAGoJ,EAAE,EAAGE,EAAE,EAAGtJ,GAAI,EAAG,CAAC,CAC1H,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,SAAS,CAAC,CAChB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CACC,EACA,IACA,aACD,CACD,EAAG,CACF,EACA,MACA,IACA,CACC,EACA,IACA,aACD,CACD,CAAC,CACF,EAAG,CACF,EACA,IACA,aACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,aACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,IACA,IACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiB,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,UAAW,IAAMsK,EACjB,GAAM,IAAMb,EACZ,UAAW,IAAMhJ,EACjB,WAAY,IAAM8H,GAClB,QAAS,IAAM7J,EACf,gBAAiB,IAAM2M,GACvB,UAAW,IAAM9Q,EACjB,YAAe,IAAM4P,EACrB,UAAW,IAAMtQ,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,WAAW,EAAI9F,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC/L,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACXmE,EAAKC,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EAAE,CAAC,EAC3CsB,EAAKD,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,CAAC,EAC1CuB,EAAKF,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EAAE,CAAC,EAC3CwB,EAAKH,EAAI1H,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,CAAC,EAC1CyB,EAAK9H,EAAO,EAAE,KAAKwD,CAAG,EAAE,EACxBuE,GAAK,aAAa,aAAaJ,EAAIF,CAAE,EAAG,EAAE,EAC1CO,GAAK,aAAa,aAAaH,EAAID,CAAE,EAAG,EAAE,EAC1CK,GAAKpK,EAAI8H,GAAK,aAAa,aAAaoC,GAAIA,EAAE,EAAG,aAAaC,GAAIA,EAAE,CAAC,CAAC,EAAGlM,EAAI,IAAI,CAAC,EAClFoM,GAAK,aAAa,aAAa,aAAa,aAAaF,GAAIC,EAAE,EAAGH,CAAE,EAAGvS,EAAE,YAAY,EAAGA,EAAE,EAAE,EAC5F4S,GAAK,aAAa,aAAa,aAAa,aAAa,aAAaJ,GAAIE,EAAE,EAAG,EAAE,EAAGH,CAAE,EAAGvS,EAAE,YAAY,EAAGA,EAAE,EAAE,EAC9GwJ,GAAMiB,EAAO,EAAE,KAAKwD,CAAG,EAC7BxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAa8H,GAAI,EAAGmJ,EAAE,EAAG,aAAanJ,GAAI,EAAGoJ,EAAE,EAAGpJ,GAAI,EAAG,CAAC,CACtF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,SAAS,CAAC,CAChB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiB,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,UAAW,IAAMsK,EACjB,GAAM,IAAMb,EACZ,UAAW,IAAMhJ,EACjB,WAAY,IAAM8H,GAClB,QAAS,IAAM7J,EACf,UAAW,IAAM7E,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,WAAW,EACxCuF,EAAa3T,EAAK,UAAYsI,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACjL,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACXsF,EAAK9M,EAAIwH,CAAE,EACXuF,EAAK/M,EAAIyH,CAAE,EACXuF,EAAW9I,EAAO,EAAE,QAAQwD,CAAG,EAAE,EACjCuF,EAAU/I,EAAO,EAAE,KAAKwD,CAAG,EAC3BwF,EAAUJ,EAAK,IAAM5I,EAAO,EAAE,QAAQ6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EAAE,EAAI,GAC7D4C,EAAUL,EAAK9M,EAAI,aAAanI,EAAG,GAAG,CAAC,GAAKqM,EAAO,EAAE,QAAQ6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EAAI,GACnF6C,GAAUL,EAAK,IAAM7I,EAAO,EAAE,QAAQ6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EAAE,EAAI,GAC7D8C,GAAUN,EAAK/M,EAAI,aAAanI,EAAG,GAAG,CAAC,GAAKqM,EAAO,EAAE,QAAQ6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EAAI,GACnF+C,GAAIC,EAAOrJ,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EAAE,EAAG,aAAa0C,EAAQ,EAAG,EAAE,EAAGC,CAAO,EACnFM,GAAID,EAAOrJ,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EAAG,aAAa0C,EAAQ,EAAG,EAAE,EAAGE,CAAO,EAClFM,GAAIF,EAAOrJ,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EAAE,EAAG,aAAa0C,EAAQ,EAAG,EAAE,EAAGG,EAAO,EACnFM,GAAIH,EAAOrJ,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EAAG,aAAa0C,EAAQ,EAAG,EAAE,EAAGI,EAAO,EAClFM,GAAM,aAAa,aAAa,aAAa,aAAaH,GAAGF,EAAC,EAAG,aAAaI,GAAGD,EAAC,CAAC,EAAG,EAAE,EAAGT,CAAQ,EACzG9I,EAAO,EAAE,SAASwD,CAAG,EAAI,aAAa,aAAaxD,EAAO,EAAE,SAASwD,CAAG,EAAGsD,CAAa,EAAGgC,CAAQ,EACnG9I,EAAO,EAAE,WAAWwD,CAAG,EAAIiG,EAC5B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,SACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,SACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,SACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,SACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,UACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,eACD,EACA,IACA,UACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,YACD,EACA,KACD,EACA,IACA,KACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMpG,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,QAAS,IAAMtB,EACf,OAAU,IAAMkE,EAChB,GAAM,IAAM6G,EACZ,aAAc,IAAMwC,EACpB,cAAiB,IAAMvC,CACxB,CACD,CAAC,GAAKvJ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,YAAY,EAAI2D,EAAWzJ,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC3M,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACX4D,EAAKlH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EAAE,EACtCc,EAAKnH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EACrCe,EAAKpH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EAAE,EACtCgB,EAAKrH,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EACrCoD,EAAM,aAAa,aAAa,aAAatC,EAAID,CAAE,EAAG,aAAaG,EAAID,CAAE,CAAC,EAAG,EAAE,EACrFpH,EAAO,EAAE,SAASwD,CAAG,EAAI,aAAaxD,EAAO,EAAE,SAASwD,CAAG,EAAGsD,CAAa,EAC3E9G,EAAO,EAAE,WAAWwD,CAAG,EAAIiG,CAC5B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,eACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,YACD,EACA,KACD,EACA,IACA,KACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMpG,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,OAAU,IAAM4C,EAChB,GAAM,IAAM6G,EACZ,cAAiB,IAAMC,CACxB,CACD,CAAC,GAAKvJ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,YAAY,EAAI9F,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAChM,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACXsF,EAAK9M,EAAIwH,CAAE,EACXuF,EAAK/M,EAAIyH,CAAE,EACXwF,EAAU/I,EAAO,EAAE,KAAKwD,CAAG,EAC3BkG,EAAU1J,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EAAE,EAC3CsD,EAAU3J,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EAC1CuD,EAAU5J,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EAAE,EAC3CwD,GAAU7J,EAAO,EAAE,KAAK6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EAAE,EAC1C+C,GAAIC,EAAOK,EAAS,aAAaX,EAAQ,EAAG,EAAE,EAAGH,EAAK,EAAE,EACxDU,GAAID,EAAOM,EAAS,aAAaZ,EAAQ,EAAG,EAAE,EAAGH,EAAK9M,EAAI,aAAanI,EAAG,GAAG,CAAC,CAAC,EAC/E4V,GAAIF,EAAOO,EAAS,aAAab,EAAQ,EAAG,EAAE,EAAGF,EAAK,EAAE,EACxDW,GAAIH,EAAOQ,GAAS,aAAad,EAAQ,EAAG,EAAE,EAAGF,EAAK/M,EAAI,aAAanI,EAAG,GAAG,CAAC,CAAC,EAC/E8V,GAAM,aAAa,aAAa,aAAaH,GAAGF,EAAC,EAAG,aAAaI,GAAGD,EAAC,CAAC,EAAG,EAAE,EACjFvJ,EAAO,EAAE,SAASwD,CAAG,EAAI,aAAaxD,EAAO,EAAE,SAASwD,CAAG,EAAGsD,CAAa,EAC3E9G,EAAO,EAAE,WAAWwD,CAAG,EAAIiG,EAC5B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,UACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,UACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,UACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,UACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,eACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,YACD,EACA,KACD,EACA,IACA,KACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMpG,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,QAAS,IAAMtB,EACf,OAAU,IAAMkE,EAChB,GAAM,IAAM6G,EACZ,aAAc,IAAMwC,EACpB,cAAiB,IAAMvC,CACxB,CACD,CAAC,GAAKvJ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,YAAY,EACzC0G,EAASxM,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC5J,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACXyG,EAAK/J,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EACxC2D,EAAKhK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACvC4D,EAAKjK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EACxC6D,EAAKlK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACvCoD,EAAMzJ,EAAO,EAAE,WAAWwD,CAAG,EACnCxD,EAAO,EAAE,SAASwD,CAAG,EAAI,aAAa,aAAa,aAAa,aAAa,aAAauG,EAAIC,CAAE,EAAGC,CAAE,EAAGC,CAAE,EAAGT,CAAG,EAAG,GAAG,CACvH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,YACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMpG,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,OAAU,IAAM4C,EAChB,GAAM,IAAM6G,CACb,CACD,CAAC,GAAKtJ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,QAAQ,EACrC+G,EAAcnV,EAAK,YACnBoV,EAAeD,IAAgB,OAAS7M,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC3L,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACXyG,EAAK/J,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EACxC2D,EAAKhK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACvC4D,EAAKjK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EACxC6D,EAAKlK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACvCtH,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EAC7BxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAa8H,EAAI,EAAG,aAAa,aAAaiL,EAAID,CAAE,EAAG,EAAE,CAAC,EAAG,aAAahL,EAAI,EAAG,aAAa,aAAamL,EAAID,CAAE,EAAG,EAAE,CAAC,EAAGlL,EAAI,EAAG,CAAC,CAC9J,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMsE,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,OAAU,IAAM4C,EAChB,GAAM,IAAM6G,EACZ,UAAW,IAAM5P,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,cAAc,EAAI9F,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAClM,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C8C,EAAKhJ,EAAImG,CAAE,EACX8C,EAAKjJ,EAAIkG,CAAE,EACXyG,EAAK/J,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,EAAE,CAAC,EACxC2D,EAAKhK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACvC4D,EAAKjK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,GAAI,CAAC,CAAC,EACxC6D,EAAKlK,EAAO,EAAE,SAAS6G,EAAGT,EAAIC,EAAI,EAAG,CAAC,CAAC,EACvCtH,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvB6G,EAAK,aAAatL,EAAI,EAAG,aAAa,aAAaiL,EAAID,CAAE,EAAG,EAAE,CAAC,EAC/DO,GAAK,aAAavL,EAAI,EAAG,aAAa,aAAamL,EAAID,CAAE,EAAG,EAAE,CAAC,EAC/DM,GAASzO,EAAIqO,CAAW,EACxBK,GAAO3M,EAAI8H,GAAK,aAAa,aAAa0E,EAAIA,CAAE,EAAG,aAAaC,GAAIA,EAAE,CAAC,CAAC,EAAGxO,EAAI,IAAI,CAAC,EACpF2O,GAAW,aAAaF,GAAQ1M,EAAI2M,GAAMD,EAAM,CAAC,EACvDvK,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAaoT,EAAII,EAAQ,EAAG,aAAaH,GAAIG,EAAQ,EAAG1L,EAAI,EAAG,CAAC,CAC5F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,KACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,UAAU,CAAC,CACjB,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,QAAQ,CAClB,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,KACA,IACA,UACD,EACA,CACC,EACA,KACA,IACA,UACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMsE,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMyJ,EACf,OAAU,IAAM4C,EAChB,GAAM,IAAM6G,EACZ,QAAS,IAAM/K,EACf,YAAe,IAAMqO,EACrB,UAAW,IAAMtM,EACjB,WAAY,IAAM8H,GAClB,UAAW,IAAM1O,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,cAAc,EAC3CmC,EAAOvQ,EAAK,WAAa,GACzB0V,EAAU,CACf,KAAAzD,EACA,UAAAO,EACA,WAAAmB,EACA,OAAAmB,EACA,aAAAM,EACA,UAAWrD,EAAWzJ,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACnK,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CvE,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvBmH,EAAO,aAAa,aAAa,aAAa7O,EAAIwH,CAAE,EAAG,aAAavE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAGuG,EAAInI,CAAC,CAAC,EAAGmI,EAAInI,CAAC,CAAC,EAClGiX,EAAO,aAAa,aAAa,aAAa9O,EAAIyH,CAAE,EAAG,aAAaxE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAGuG,EAAInI,CAAC,CAAC,EAAGmI,EAAInI,CAAC,CAAC,EAClGkX,EAAK9M,GAAM4M,CAAI,EACfG,EAAK/M,GAAM6M,CAAI,EACfG,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,GAAM7N,EAAIyN,CAAE,EACZK,GAAM9N,EAAI0N,CAAE,EACZK,GAAM,aAAa,aAAaF,GAAK,CAAC,EAAGtX,CAAC,EAC1CyX,GAAM,aAAa,aAAaF,GAAK,CAAC,EAAGvX,CAAC,EAC1C0X,GAAMrL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EAChEK,GAAMtL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa6H,GAAKvX,CAAC,EAAGwX,EAAG,CAAC,CAAC,EAChEI,GAAMvL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa+H,GAAKzX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EAChEO,GAAMxL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa+H,GAAKzX,CAAC,EAAGwX,EAAG,CAAC,CAAC,EAChEM,GAAQ,aAAa,EAAG,aAAalW,EAAE,QAASA,EAAE,EAAE,CAAC,EAC3DyK,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAasN,EAAIA,EAAI8G,GAAI,EAAGC,GAAI,EAAGP,CAAE,EAAGxG,EAAIgH,GAAI,EAAGC,GAAI,EAAGT,CAAE,EAAGC,CAAE,EAAGS,EAAK,EAAG,aAAalH,EAAIA,EAAI8G,GAAI,EAAGC,GAAI,EAAGP,CAAE,EAAGxG,EAAIgH,GAAI,EAAGC,GAAI,EAAGT,CAAE,EAAGC,CAAE,EAAGS,EAAK,EAAG,EAAG,CAAC,CACxL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,IACA,OACD,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,IACA,OACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMzL,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,YAAa,IAAMiC,GACnB,QAAS,IAAMX,EACf,UAAW,IAAMnG,EACjB,UAAW,IAAMsN,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,WAAW,EAAImC,EAAOjI,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACtM,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CvE,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvBmH,EAAOvI,EAAM,aAAatG,EAAIwH,CAAE,EAAG,aAAavE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFiX,EAAOxI,EAAM,aAAatG,EAAIyH,CAAE,EAAG,aAAaxE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFkX,EAAKzI,EAAMrE,GAAM4M,CAAI,EAAG,EAAG7O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDmX,EAAK1I,EAAMrE,GAAM6M,CAAI,EAAG,EAAG9O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDoX,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,GAAM7N,EAAIyN,CAAE,EACZK,GAAM9N,EAAI0N,CAAE,EACZO,GAAMrL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EAChEK,GAAMtL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EACjFM,GAAMvL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EACjFO,GAAMxL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EAClGQ,GAAQ,aAAa,EAAG,aAAalW,EAAE,QAASA,EAAE,EAAE,CAAC,EACrDV,GAAImL,EAAO,EAAE,QAAQwD,CAAG,EAAE,EAChCxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAa,aAAasN,EAAIA,EAAI8G,GAAI,EAAGC,GAAI,EAAGP,CAAE,EAAGxG,EAAIgH,GAAI,EAAGC,GAAI,EAAGT,CAAE,EAAGC,CAAE,EAAGS,EAAK,EAAG5W,EAAC,EAAG,aAAa,aAAa0P,EAAIA,EAAI8G,GAAI,EAAGC,GAAI,EAAGP,CAAE,EAAGxG,EAAIgH,GAAI,EAAGC,GAAI,EAAGT,CAAE,EAAGC,CAAE,EAAGS,EAAK,EAAG5W,EAAC,EAAG,EAAG,CAAC,CAC1N,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,IACA,OACD,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,IACA,OACD,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMmL,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,YAAa,IAAMyO,EACnB,QAAS,IAAMtG,EACf,YAAa,IAAMiC,GACnB,QAAS,IAAMX,EACf,UAAW,IAAMnG,EACjB,UAAW,IAAMsN,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,WAAW,EAAI9F,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC/L,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CvE,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvBmH,EAAOvI,EAAM,aAAatG,EAAIwH,CAAE,EAAG,aAAavE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFiX,EAAOxI,EAAM,aAAatG,EAAIyH,CAAE,EAAG,aAAaxE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFkX,EAAKzI,EAAMrE,GAAM4M,CAAI,EAAG,EAAG7O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDmX,EAAK1I,EAAMrE,GAAM6M,CAAI,EAAG,EAAG9O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDoX,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,GAAM7N,EAAIyN,CAAE,EACZK,GAAM9N,EAAI0N,CAAE,EACZO,GAAMrL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EAChEK,GAAMtL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EACjFM,GAAMvL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EACjFO,GAAMxL,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EAClGQ,GAAQ,aAAa,EAAG,aAAalW,EAAE,QAASA,EAAE,EAAE,CAAC,EAC3DyK,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,aAAasN,EAAIA,EAAI8G,GAAI,EAAGC,GAAI,EAAGP,CAAE,EAAGxG,EAAIgH,GAAI,EAAGC,GAAI,EAAGT,CAAE,EAAGC,CAAE,EAAGS,EAAK,EAAG,aAAalH,EAAIA,EAAI8G,GAAI,EAAGC,GAAI,EAAGP,CAAE,EAAGxG,EAAIgH,GAAI,EAAGC,GAAI,EAAGT,CAAE,EAAGC,CAAE,EAAGS,EAAK,EAAG,EAAG,CAAC,CACxL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,IACA,OACD,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,IACA,OACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMzL,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,YAAa,IAAMyO,EACnB,QAAS,IAAMtG,EACf,YAAa,IAAMiC,GACnB,QAAS,IAAMX,EACf,UAAW,IAAMnG,EACjB,UAAW,IAAMsN,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,WAAW,EAC9C,QAASpO,EAAK,uBAAyBsI,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACpL,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C5P,EAAIsM,EAAO,EAAE,KAAKwD,CAAG,EAC3BxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMvD,EAAE,EAAGA,EAAE,EAAG,EAAG,CAAC,EACzCgY,GAAa1L,EAAO,EAAE,UAAW2L,GAAMrI,EAAIC,CAAE,EAAGtM,EAAMvD,EAAE,EAAGA,EAAE,EAAG,EAAG,CAAC,CAAC,CACtE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAM2P,EACf,EAAK,IAAM1P,EACX,OAAU,IAAMqM,EAChB,UAAW,IAAM/I,EACjB,mBAAoB,IAAMyU,GAC1B,UAAW,IAAMC,EAClB,CACD,CAAC,GAAKpO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,S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AGC,GAAI,EAAGhB,CAAE,EAAGxG,EAAIyH,GAAI,EAAGC,GAAI,EAAGlB,CAAE,EAAGC,CAAE,EACxDjU,GAAIwN,EAAIA,EAAIuH,GAAI,EAAGC,GAAI,EAAGhB,CAAE,EAAGxG,EAAIyH,GAAI,EAAGC,GAAI,EAAGlB,CAAE,EAAGC,CAAE,EACxDS,GAAQ,aAAa,EAAG,aAAalW,EAAE,QAASA,EAAE,EAAE,CAAC,EAC3DyK,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM4G,EAAI,aAAahH,GAAG4U,EAAK,EAAG3P,EAAI,CAAC,CAAC,EAAG+B,EAAI,aAAa/G,GAAG2U,EAAK,EAAG3P,EAAI,CAAC,CAAC,EAAG+B,EAAI,aAAa9G,GAAG0U,EAAK,EAAG3P,EAAI,CAAC,CAAC,EAAG,CAAC,CAC5I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,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,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,OACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,IACA,GACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,YACD,CACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMyK,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,YAAa,IAAMyO,EACnB,QAAS,IAAMtG,EACf,YAAa,IAAMiC,GACnB,QAAS,IAAMX,EACf,UAAW,IAAMmH,EACjB,UAAW,IAAMtN,EACjB,UAAW,IAAM4G,EACjB,UAAW,IAAMQ,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,SAAS4D,CAAS,EAAE,EAC9C4E,GAAkBC,EAAYnB,EAAQ,UAAYpN,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACxM,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CvE,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvBmH,EAAOvI,EAAM,aAAatG,EAAIwH,CAAE,EAAG,aAAavE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFiX,EAAOxI,EAAM,aAAatG,EAAIyH,CAAE,EAAG,aAAaxE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFkX,EAAKzI,EAAMrE,GAAM4M,CAAI,EAAG,EAAG7O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDmX,EAAK1I,EAAMrE,GAAM6M,CAAI,EAAG,EAAG9O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDoX,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,GAAM7N,EAAIyN,CAAE,EACZK,GAAM9N,EAAI0N,CAAE,EACZoB,GAAMlM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EAChEkB,GAAMnM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EACjFmB,GAAMpM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EACjFoB,GAAMrM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EAClGqB,GAAO/H,EAAIA,EAAI2H,GAAI,EAAGC,GAAI,EAAGpB,CAAE,EAAGxG,EAAI6H,GAAI,EAAGC,GAAI,EAAGtB,CAAE,EAAGC,CAAE,EAC3DuB,GAAMhI,EAAIA,EAAI2H,GAAI,EAAGC,GAAI,EAAGpB,CAAE,EAAGxG,EAAI6H,GAAI,EAAGC,GAAI,EAAGtB,CAAE,EAAGC,CAAE,EAC1DS,GAAQ,aAAa,EAAG,aAAalW,EAAE,QAASA,EAAE,EAAE,CAAC,EAC3DyK,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM4G,EAAI,aAAayO,GAAMb,EAAK,EAAG3P,EAAI,CAAC,CAAC,EAAGuC,GAAI,aAAakO,GAAK,aAAa,aAAahX,EAAE,GAAI,EAAE,EAAGA,EAAE,UAAU,CAAC,EAAG,CAAC,EAAG,EAAG,CAAC,CACvJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,OACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA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CD,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMhL,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,YAAa,IAAMiC,GACnB,QAAS,IAAMX,EACf,UAAW,IAAMnG,EACjB,UAAW,IAAMsN,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,SAAS4D,CAAS,EAAE,EAAI1J,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACxM,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CvE,EAAMiB,EAAO,EAAE,KAAKwD,CAAG,EACvBmH,EAAOvI,EAAM,aAAatG,EAAIwH,CAAE,EAAG,aAAavE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFiX,EAAOxI,EAAM,aAAatG,EAAIyH,CAAE,EAAG,aAAaxE,EAAI,EAAGxJ,EAAE,EAAE,CAAC,EAAG,EAAGuG,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EACzFkX,EAAKzI,EAAMrE,GAAM4M,CAAI,EAAG,EAAG7O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDmX,EAAK1I,EAAMrE,GAAM6M,CAAI,EAAG,EAAG9O,EAAI,aAAanI,EAAG,CAAC,CAAC,CAAC,EAClDoX,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,EAAK,aAAaJ,EAAME,CAAE,EAC1BG,GAAM7N,EAAIyN,CAAE,EACZK,GAAM9N,EAAI0N,CAAE,EACZoB,GAAMlM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EAChEkB,GAAMnM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAKvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EACjFmB,GAAMpM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,CAAC,CAAC,EACjFoB,GAAMrM,EAAO,EAAE,KAAKqD,EAAI,aAAa,aAAa,aAAa,aAAa6H,GAAK,CAAC,EAAGvX,CAAC,EAAGsX,EAAG,EAAG,CAAC,CAAC,CAAC,EACxGjL,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMsN,EAAIA,EAAI2H,GAAI,EAAGC,GAAI,EAAGpB,CAAE,EAAGxG,EAAI6H,GAAI,EAAGC,GAAI,EAAGtB,CAAE,EAAGC,CAAE,EAAGzG,EAAIA,EAAI2H,GAAI,EAAGC,GAAI,EAAGpB,CAAE,EAAGxG,EAAI6H,GAAI,EAAGC,GAAI,EAAGtB,CAAE,EAAGC,CAAE,EAAG,EAAG,CAAC,CAC9I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,MAAM,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,IACD,CACD,EACA,IACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMhL,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,YAAa,IAAMyO,EACnB,QAAS,IAAMtG,EACf,YAAa,IAAMiC,GACnB,QAAS,IAAMX,EACf,UAAW,IAAMnG,EACjB,UAAW,IAAMsN,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,SAAS4D,CAAS,EAAE,EACvD0D,EAAQ,QAAUpN,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC/J,UACA,IAAMC,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CkJ,EAAKxM,EAAO,EAAE,KAAKwD,CAAG,EAC5BxD,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMuV,EAAG,EAAGA,EAAG,EAAG,EAAG,CAAC,CAC5C,GAAI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,CAAC,EAAG,EAAG,CAAC,EAC9ClO,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMkX,EAAOC,EAAU,EAAG,CAAC,EAChDpO,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMkX,EAAOC,EAAU,EAAG,CAAC,EAChDpO,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,EAAG,EAAG,EAAG,CAAC,EACrC+I,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAM,EAAG,EAAG,EAAG,CAAC,EACrC+I,EAAO,EAAE,SAASwD,CAAG,EAAI,EACzBxD,EAAO,EAAE,WAAWwD,CAAG,EAAI,CAC5B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,cACA,CACC,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,CACC,EACA,IACA,MACD,EACA,eACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,MACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,QACD,EACA,IACA,OACD,EACA,OACA,MACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,MACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,QACA,WACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,QACA,WACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,YACD,EACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMxD,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,YAAe,IAAM4Z,GACrB,QAAS,IAAMzR,EACf,cAAiB,IAAM2R,EACvB,YAAa,IAAMrL,EACnB,IAAO,IAAMkL,GACb,OAAU,IAAMQ,EAChB,MAAS,IAAMC,EACf,KAAQ,IAAMC,EACd,KAAQ,IAAM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CA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,kBACA,CAAC,eAAgB,CAChB,EACA,UACA,CAAC,CACA,EACA,IACA,YACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,aACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiB,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,IAAO,IAAMuS,GACb,UAAW,IAAMI,GACjB,UAAW,IAAMC,GACjB,KAAQ,IAAMH,EACd,gBAAmB,IAAMvM,GACzB,UAAW,IAAMnE,EACjB,UAAW,IAAM5G,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,OAAO,CAC3C,CACA,SAASyL,GAAwBpK,EAAUzP,EAAM,CAChD,IAAMgL,EAASyE,EACT,CAAE,EAAA9Q,EAAG,WAAAyP,CAAW,EAAIpO,EACpByY,GAAiBzY,EAAK,WAAa,GAAKrB,EAC9C,OAAO2J,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACpJ,UACA,IAAMhO,EAAIyK,EAAO,EAAE,OACbwD,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C4K,EAAMX,GAAYzR,EAAIwH,CAAE,EAAGxH,EAAIyH,CAAE,EAAGhO,EAAE,KAAMkY,CAAa,EACzDqB,EAASxB,GAAIY,EAAI,EAAGA,EAAI,CAAC,EACzBa,EAAW,aAAa,EAAGxZ,EAAE,QAAQ,EACrCyZ,EAAgB,aAAa,EAAG,aAAaD,EAAU,CAAC,CAAC,EACzDE,EAAa7M,EAAM,aAAa,aAAa,aAAa0M,EAAQ,EAAE,EAAGE,CAAa,EAAG,EAAE,EAAG,EAAG,CAAC,EAChG1K,EAAOtE,EAAO,EAAE,KAAKwD,CAAG,EACxB0L,EAAW,aAAa,EAAG,aAAaH,EAAU,GAAG,CAAC,EACtDI,EAAY9Q,GAAI,aAAa,aAAa9I,EAAE,GAAI,EAAE,EAAG2Z,CAAQ,EAAG,EAAE,EACxElP,EAAO,EAAE,KAAKwD,CAAG,EAAIvM,EAAMqN,EAAK,EAAGC,EAAID,EAAK,EAAG2K,EAAYE,CAAS,EAAG,EAAG,CAAC,CAC5E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,cACA,CACC,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,CACC,EACA,IACA,MACD,EACA,eACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,UACD,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,aACA,WACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMnP,EAChB,QAAS,IAAMqD,EACf,EAAK,IAAM1P,EACX,YAAe,IAAM4Z,GACrB,QAAS,IAAMzR,EACf,cAAiB,IAAM2R,EACvB,IAAO,IAAMH,GACb,YAAa,IAAMlL,EACnB,UAAW,IAAM/D,GACjB,UAAW,IAAMpH,EACjB,UAAW,IAAMsN,CAClB,CACD,CAAC,GAAKhH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,cAAc,CAClD,CACA,IAAIgM,GAAe,IACfC,GAAc/R,EAAgB,GAAG,CACpCxB,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGnE,CAAK,GAAoB4F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+R,EAAG5b,EAAG6b,EAASC,EAASC,EAAOC,EAAUhS,IAAW,CACjK,UACA,IAAMiS,EAAO,aAAa,aAAaL,EAAGC,CAAO,EAAG7R,CAAM,EACpDkG,EAAK,aAAalQ,EAAG8b,CAAO,EAC5BI,EAAOlB,GAAIgB,CAAQ,EACnBG,EAAOpB,GAAIiB,CAAQ,EACnBI,EAAM,aAAa,aAAaH,EAAMC,CAAI,EAAG,aAAahM,EAAIiM,CAAI,CAAC,EACnEE,EAAM,aAAa,aAAanM,EAAIgM,CAAI,EAAG,aAAaD,EAAME,CAAI,CAAC,EACzE,OAAOlY,EAAM,aAAa,aAAamY,EAAKL,CAAK,EAAG,EAAE,EAAG,aAAa,aAAaM,EAAKN,CAAK,EAAG,EAAE,CAAC,CACpG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,IACA,SACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,MACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMf,GACjB,UAAW,IAAMD,GACjB,UAAW,IAAM9W,CAClB,CACD,CAAC,GAAK4F,EAAE,GAAG,CAAC,CAAC,CAAC,EACdJ,GAAO,CACN,QAASrB,EACT,QAASA,EACT,MAAOA,EACP,SAAUA,EACV,OAAQA,EACR,SAAUA,EACV,QAASA,EACT,WAAYA,EACZ,aAAcA,EACd,WAAYA,EACZ,SAAUA,EACV,SAAUA,EACV,WAAYA,EACZ,UAAWA,EACX,UAAWA,EACX,QAASA,EACT,QAASA,EACT,YAAaA,CACd,CAAC,EACD,SAASkU,GAAiBC,EAAcjb,EAAM,CAC7C,GAAM,CAAE,EAAArB,EAAG,WAAAyP,CAAW,EAAIpO,EACpBkb,EAASD,EACTE,EAAY,CACjB,QAASvU,GAAQ3E,EAAOtD,EAAIA,CAAC,EAC7B,OAAQ,SACT,EACMyc,GAAkC,WAAW,uBAA0BpZ,GAAMA,IAAIsG,EAAgB,gBAAgB,CACtH,QAAS6S,EACT,OAAQ,CAAE,QAASD,CAAO,CAC3B,CAAC,EAAG,gBAAgB,EACdG,GAA6B,WAAW,uBAA0BrZ,GAAMA,IAAIsG,EAAgB,gBAAgB,CACjH,QAAS6S,EACT,OAAQ,CAAE,QAASD,CAAO,EAC1B,UAAW,CAAE,QAASI,GAAUxU,CAAG,CAAE,CACtC,CAAC,EAAG,WAAW,EACTyU,GAA+B,WAAW,uBAA0BvZ,GAAMA,IAAIsG,EAAgB,gBAAgB,CACnH,QAAS6S,EACT,OAAQ,CAAE,QAASD,CAAO,EAC1B,SAAU,CACT,QAASI,GAAUxU,CAAG,EACtB,WAAY,oBACb,CACD,CAAC,EAAG,aAAa,EAuQjB,MAAO,CACN,eAAAsU,EACA,UAAAC,EACA,YAAAE,EACA,SA1QiBC,GAAc,CAC/B,IAAMC,EAAQC,GAAmBF,CAAS,EAC1C,OAAOlT,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACpJ,UACA,IAAMhO,EAAI6a,EAAe,EAAE,OACrB5M,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/C3F,EAAM8S,EAAMpB,GAAY,aAAa,aAAavT,EAAIwH,CAAE,EAAG,EAAE,EAAGxH,EAAInI,CAAC,CAAC,EAAG,aAAa,aAAamI,EAAIyH,CAAE,EAAG,EAAE,EAAGzH,EAAInI,CAAC,CAAC,EAAG4B,EAAE,QAASA,EAAE,QAASA,EAAE,MAAOA,EAAE,SAAUA,EAAE,MAAM,EAAGA,EAAE,SAAUA,EAAE,QAASA,EAAE,WAAYA,EAAE,aAAcA,EAAE,WAAYA,EAAE,SAAUA,EAAE,SAAUA,EAAE,UAAU,EACvRob,EAAStH,EAAOvN,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAG6B,EAAI,EAAI,CAAC,EAC/CyS,EAAe,EAAE,QAAQ5M,CAAG,EAAIvM,EAAM0Z,EAAQhT,EAAI,EAAG,EAAG,CAAC,CAC1D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,cACA,CACC,IACA,IACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CACC,QACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,YACD,EACA,CACC,EACA,IACA,cACD,EACA,CACC,EACA,IACA,YACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,SACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,SACA,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,eAAkB,IAAMyS,EACxB,QAAS,IAAM/M,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,YAAe,IAAMuT,GACrB,MAAS,IAAMoB,EACf,aAAc,IAAMpH,EACpB,UAAW,IAAMpS,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,MAAM,CAC1C,EAMC,UAAW9F,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CACxJ,UACA,IAAMhO,EAAI8a,EAAU,EAAE,OAChB7M,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CsN,EAAQvB,GAAY,aAAa,aAAavT,EAAIwH,CAAE,EAAG,EAAE,EAAGxH,EAAInI,CAAC,CAAC,EAAG,aAAa,aAAamI,EAAIyH,CAAE,EAAG,EAAE,EAAGzH,EAAInI,CAAC,CAAC,EAAG4B,EAAE,QAASA,EAAE,QAASA,EAAE,MAAOA,EAAE,SAAUA,EAAE,MAAM,EACzKsb,EAAS,aAAazB,GAAc,CAAC,EACrC0B,EAAK1O,EAAMhF,EAAI,aAAawT,EAAM,EAAGxB,EAAY,CAAC,EAAG,EAAGyB,CAAM,EAC9DE,EAAK3O,EAAMhF,EAAI,aAAawT,EAAM,EAAGxB,EAAY,CAAC,EAAG,EAAGyB,CAAM,EAC9DG,EAAOC,GAAYZ,EAAU,EAAE,UAAW1E,GAAMtI,EAAIyN,CAAE,EAAGzN,EAAI0N,CAAE,CAAC,EAAG,CAAC,EAAE,EACtEJ,EAAStH,EAAOvN,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGkV,EAAO,CAAC,EAC9CX,EAAU,EAAE,QAAQ7M,CAAG,EAAIvM,EAAM0Z,EAAQK,EAAM,EAAG,CAAC,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,cACA,CACC,IACA,IACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,cACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,cACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,QACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,YACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,SACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,SACA,OACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMX,EACnB,QAAS,IAAMhN,EACf,EAAK,IAAM1P,EACX,QAAS,IAAMmI,EACf,YAAe,IAAMuT,GACrB,aAAgB,IAAMD,GACtB,YAAa,IAAMhN,EACnB,QAAS,IAAMhF,EACf,kBAAmB,IAAM6T,GACzB,UAAW,IAAMtF,GACjB,aAAc,IAAMtC,EACpB,UAAW,IAAMpS,CAClB,CACD,CAAC,GAAKsG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAG6F,CAAU,SAAS,EAC5C,YAAa9F,EAAgB,GAAG,CAAC+F,EAAKA,CAAG,CAAC,GAAoB9F,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAIC,IAAO,CAC1J,UACA,IAAMhO,EAAIgb,EAAY,EAAE,OAClB/M,EAAM,aAAa,aAAaD,EAAIF,EAAI1P,CAAC,CAAC,EAAG2P,CAAE,EAC/CsN,EAAQvB,GAAY,aAAa,aAAavT,EAAIwH,CAAE,EAAG,EAAE,EAAGxH,EAAInI,CAAC,CAAC,EAAG,aAAa,aAAamI,EAAIyH,CAAE,EAAG,EAAE,EAAGzH,EAAInI,CAAC,CAAC,EAAG4B,EAAE,QAASA,EAAE,QAASA,EAAE,MAAOA,EAAE,SAAUA,EAAE,MAAM,EACzK2b,EAAM9O,EAAMwO,EAAM,EAAGrb,EAAE,UAAW,aAAaA,EAAE,UAAWA,EAAE,OAAO,CAAC,EACtE4b,EAAM/O,EAAMwO,EAAM,EAAGrb,EAAE,UAAW,aAAaA,EAAE,UAAWA,EAAE,OAAO,CAAC,EACtE6b,EAAc/R,GAAO1H,EAAM,aAAaiZ,EAAM,EAAGM,CAAG,EAAG,aAAaN,EAAM,EAAGO,CAAG,CAAC,CAAC,EAClFE,EAAO,aAAa9b,EAAE,YAAa,CAAC,EACpCub,EAAK1O,EAAM,aAAa,aAAa,aAAa,aAAa8O,EAAK3b,EAAE,SAAS,EAAGA,EAAE,OAAO,EAAGA,EAAE,WAAW,EAAG,EAAE,EAAGuG,EAAI,CAAC,EAAGuV,CAAI,EAC/HN,EAAK3O,EAAM,aAAa,aAAa,aAAa,aAAa+O,EAAK5b,EAAE,SAAS,EAAGA,EAAE,OAAO,EAAGA,EAAE,WAAW,EAAG,EAAE,EAAGuG,EAAI,CAAC,EAAGuV,CAAI,EAC/HL,EAAO,aAAaC,GAAYV,EAAY,EAAE,SAAU5E,GAAMtI,EAAIyN,CAAE,EAAGzN,EAAI0N,CAAE,CAAC,EAAG,CAAC,EAAE,EAAGK,CAAW,EAClGT,EAAStH,EAAOvN,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGkV,EAAO,CAAC,EAC9CT,EAAY,EAAE,QAAQ/M,CAAG,EAAIvM,EAAM0Z,EAAQK,EAAM,EAAG,CAAC,CACtD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,cACA,CACC,IACA,IACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,QACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,UACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CA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,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,WACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,OAAO,CACT,EACA,IACA,QACD,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,UACA,IACA,CACC,EACA,SACA,IACA,gBACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,WACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,SAAS,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,SAAS,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,OACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,sBACA,CAAC,OAAO,CACT,EACA,IACA,QACD,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,gBACD,CACD,EACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,GACA,WACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,sBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACA,UACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,OACD,EAAG,CACF,EACA,CACC,EACA,IACA,IACA,UACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,sBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACA,UACD,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,UACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,SAAS,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,SAAS,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,OACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,sBACA,CAAC,OAAO,CACT,EACA,IACA,QACD,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,UACA,IACA,CACC,EACA,OACA,IACA,gBACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,UACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,GAAG,EACP,OACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,YACD,EACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,UACA,IACA,KACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,gBACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,iBAAiB,CACnB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CAAC,EAAG,GAAG,EACP,KACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CAAC,EAAG,GAAG,EACP,KACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CACF,EACA,QACA,CAAC,UAAU,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CACF,EACA,QACA,CAAC,UAAU,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,yBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,yBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,yBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,yBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,aACA,IACA,CACC,EACA,CACC,EACA,IACA,iBACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,aACA,IACA,QACD,CAAC,CACF,CAAC,EACD,CAAC,EAAG,CAAC,CAAC,GAAI,YAAY,CAAC,CAAC,CACzB,CACD,CAAC,CACF,EACA,UAAW,CACV,uBAA0B,IAAMlD,GAChC,QAAS,IAAMV,EACf,SAAY,IAAMe,EAClB,YAAe,IAAMC,EACrB,W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CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,SACD,EACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,OACD,EACA,IACA,IACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,UACD,EACA,KACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,OACD,EACA,IACA,qBACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,IACA,MACD,EACA,IACA,YACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,aACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,aACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,kBACA,IACA,iBACD,CACD,EACA,KACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EAAG,CACF,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CAAC,CACH,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,mBAAmB,CACrB,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,OACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,OACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,MACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,qBACA,GACD,EACA,SACD,EACA,KACD,EACA,IACA,MACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,UAAW,CACV,QAAS,IAAM7B,EACf,SAAY,IAAML,GAClB,mBAAsB,IAAM5D,GAC5B,UAAa,IAAM,IACnB,oBAAuB,IAAM,KAC7B,QAAS,IAAMN,EACf,UAAW,IAAM4G,GACjB,UAAW,IAAMnD,EACjB,kBAAqB,IAAM,EAC3B,YAAa,IAAMW,CACpB,CACD,CAAC,GAAKhD,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,kB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,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,KACD,EACA,CAAC,CACA,EACA,IACA,OACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,OACD,EACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,IACA,gBACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,UAAU,CAAC,CACjB,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,GACD,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,GACD,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,MAAM,CAChB,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,MAAM,CAChB,EAAG,CACF,EACA,QACA,CAAC,WAAW,CACb,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,QACA,CAAC,WAAW,CACb,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,EACA,QACA,IACA,QACD,EACA,CAAC,EAAG,CACH,CACC,GACA,WACA,CACC,EACA,CACC,EACA,QACA,IACA,QACD,EACA,IACA,CACC,EACA,QACA,CAAC,YAAY,CACd,CACD,CACD,EACA,CACC,GACA,SACA,QACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,YACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,EACA,SACA,IACA,CACC,EACA,SACA,IACA,UACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAE,CAAC,CAAC,CACT,EACA,CACC,EACA,WACA,IACA,MACD,CACD,CAAC,CACF,EACA,CACC,GACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,SACA,IACA,UACD,CACD,EACA,CACC,GACA,QACA,QACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,CACC,EACA,OACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,OACA,IACA,MACD,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,EACA,QACA,IACA,MACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,OACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,kBACA,CAAC,EAAG,CACH,CACC,GACA,YACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,GACA,KACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,MAAM,CAChB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,WACD,EAAG,MAAM,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CACR,EACA,OACA,IACA,WACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,WACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,WACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,CAAC,MAAO,UAAU,CACnB,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,SAAS,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,UACA,CAAC,MAAO,SAAS,CAClB,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,SAAS,CACb,EACA,IACA,CACC,EACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,eAAe,CACjB,EACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,aACA,CACC,EACA,IACA,UACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,OAAQ,CACR,EACA,CAAC,EAAG,GAAG,EACP,IACA,MACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,GACD,EAAG,CACF,EACA,cACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,WACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,UACA,IACA,CACC,EACA,qBACA,CAAC,aAAa,CACf,CACD,CAAC,CAAC,EACF,CACC,GACA,CACC,EACA,WACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,UACA,IACA,CACC,EACA,mBACA,CAAC,aAAa,CACf,CACD,CAAC,CAAC,EACF,CACC,GACA,CACC,EACA,WACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EAAG,CACF,EACA,kBACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,QACD,CACD,CACD,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,EACA,UACA,IACA,CACC,EACA,YACA,CACC,cACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,CACD,CACD,CAAC,CAAC,CACH,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,SACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,cACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,cACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,iBACA,CACC,CACC,EACA,QACA,IACA,QACD,EACA,CACC,EACA,QACA,IACA,QACD,EACA,QACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,iBACA,CACC,CACC,EACA,OACA,IACA,QACD,EACA,CACC,EACA,OACA,IACA,QACD,EACA,QACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,MACA,IACA,iBACD,EACA,IACA,CACC,EACA,WACA,IACA,SACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,yBACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,GACD,EACA,CACC,EACA,UACA,GACD,EACA,YACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,yBACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CAAC,MAAO,CAAC,EAAG,GAAG,CAAC,CACjB,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,uBAA0B,IAAMhI,GAChC,QAAS,IAAMV,EACf,SAAY,IAAMoH,EAClB,SAAY,IAAMC,EAClB,gBAAiB,IAAMO,GACvB,aAAc,IAAMG,EACpB,UAAW,IAAMtE,EACjB,UAAW,IAAMX,EACjB,UAAW,IAAM4B,GACjB,UAAa,IAAM,GACnB,UAAW,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EAAE,EAAG3N,EAAE,YAAc,EAAE,EAC7D,aAAa2N,EAAQJ,CAAG,CAChC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,wBACA,CAAC,CACA,EACA,CACC,EACA,cACA,GACD,EACA,UACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,IACD,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,IACD,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,UACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,MAAO,CACP,EACA,UACA,CACC,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,CACb,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,eACD,EACA,IACA,CACC,EACA,QACA,CAAC,mBAAmB,CACrB,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,gBACD,CACD,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,aACA,CACC,SACA,CACC,EACA,SACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,SACA,IACA,KACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAe,IAAMlB,EACrB,wBAAyB,IAAMW,GAC/B,QAAS,IAAMrN,EACf,EAAK,IAAM6C,EACX,YAAa,IAAMuB,EACnB,QAAS,IAAMG,EACf,UAAW,IAAMG,GACjB,kBAAmB,IAAMiJ,GACzB,UAAW,IAAMlC,GACjB,UAAW,IAAMhI,EACjB,UAAW,IAAMyG,GACjB,UAAW,IAAMjK,EACjB,oBAAqB,IAAMsM,EAAM,YACjC,aAAc,IAAMxE,CACrB,CACD,CAAC,GAAK3G,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,UAAU,EAAI,KAyI3C2B,EAAQ1B,GAASY,GAxIC,CAACe,EAAKC,IAAO5N,EAAgB,GAAG,CACvDP,EACAA,EACAuE,EACAA,CACD,EAAGpD,CAAK,GAAoBC,IAAO,WAAW,mBA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P,GAAM,aAAaF,GAAOtP,EAAE,OAAO,EACnCoG,GAAS,aAAa,aAAamJ,GAAKA,EAAG,EAAG,aAAaC,GAAKA,EAAG,CAAC,EACpEC,GAAM,aAAalJ,GAAI,aAAa,aAAaH,GAAQhD,EAAIpD,EAAE,WAAYL,EAAI,CAAC,CAAC,CAAC,EAAG,EAAE,CAAC,EAAGK,EAAE,YAAY,EAC/GoP,GAAO/K,GAAI,aAAa+K,GAAM,aAAaK,GAAKzP,EAAE,aAAa,CAAC,EAAGL,EAAI,CAAC,CAAC,CAC1E,CACAwP,GAAOpL,EAAMoL,GAAM,EAAG,CAAC,EACvBC,GAAOrL,EAAMqL,GAAM,EAAG,CAAC,EACvBhD,EAAO,EAAE,SAAShH,CAAG,EAAItE,EAAMqO,GAAMC,EAAI,CAC1C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,KACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CACC,CACC,EACA,IACA,MACD,EACA,CACC,EACA,IACA,MACD,EACA,KACA,IACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,OACA,IACA,KACD,EACA,IACA,CACC,EACA,WACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACD,EACA,IACA,MACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,WACA,IACA,UACD,EACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,YACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,cACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,eACD,CACD,CACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,OACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,OACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,E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AK,aAAa,aAAaP,EAAK1N,CAAC,EAAG4N,CAAM,EAC9CM,EAAK,aAAa,aAAaP,EAAK3N,CAAC,EAAG6N,CAAM,EAC9CnK,EAAMwB,EAAO+I,EAAI,aAAaA,EAAID,CAAM,EAAGA,GAAU,CAAC,EACtDrK,EAAMuB,EAAO,aAAagJ,EAAIF,CAAM,EAAGE,EAAIF,GAAU,CAAC,EACtDG,EAAOC,GAAK,aAAa,aAAa1K,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,CAAC,EACxE0K,EAAQ,aAAaP,EAAQ,aAAa,EAAGC,CAAO,CAAC,EAC3D,OAAO,aAAa,EAAGpN,GAAW0N,EAAOP,EAAQK,CAAI,CAAC,CACvD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,KACA,IACA,QACD,EACA,CACC,EACA,SACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,IACA,QACD,EACA,KACA,CACC,EACA,SACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CAAC,CACF,CACD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C,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,aACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EA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CA,CACC,EACA,QACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,SACD,EACA,KACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,SACA,IACA,OACD,EACA,CAAC,EAAG,GAAG,EACP,MACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,CAAC,QAAQ,CACV,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,aACA,CACC,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,QACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,eACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,eACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,eACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,IACA,WACA,SACA,WACD,CACD,EACA,CACC,GACA,WACA,CACC,IACA,WACA,YACA,QACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,SACD,EACA,YACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,EACA,IACA,YACD,EACA,CAAC,EAAG,GAAG,EACP,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,OAAO,CACT,EACA,CAAC,EAAG,GAAG,EACP,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,MAAM,CACV,CACD,EACA,CACC,GACA,SACA,CACC,IACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,MAAM,CACR,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,QACD,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,IACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,MAAM,CACR,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,QACD,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,SACD,EACA,QACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,SACD,EACA,QACD,EACA,CACC,EACA,QACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,YAAY,CACd,EACA,CAAC,EAAG,GAAG,EACP,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,MAAM,CACV,CACD,EACA,CACC,GACA,QACA,CACC,IACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,KAAK,CACP,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,QACD,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,IACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,KAAK,CACP,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,QACD,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,SACD,EACA,OACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,SACD,EACA,OACD,EACA,CACC,EACA,aACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,cACA,CACC,KACA,KACA,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CACC,CACC,EACA,QACA,CAAC,UAAU,CACZ,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,EACA,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,MACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,MAAO,IAAI,CACb,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,QACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CACC,CACC,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,QACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,QACA,aACA,CACC,EACA,OACA,KACA,aACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,SACA,SACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,IACA,QACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMb,EACpB,QAAS,IAAMvN,EACf,EAAK,IAAM1B,EACX,QAAS,IAAM7C,EACf,SAAY,IAAMsR,EAClB,QAAS,IAAM1E,EACf,YAAa,IAAMxI,EACnB,KAAQ,IAAMsN,EACd,OAAU,IAAMY,EAChB,aAAc,IAAMvK,EACpB,YAAa,IAAMlD,GACnB,UAAW,IAAMH,GACjB,UAAW,IAAMf,EACjB,YAAe,IAAMqO,EACrB,eAAgB,IAAMsC,GACtB,UAAW,IAAMrU,EACjB,UAAa,IAAMsR,CACpB,CACD,CAAC,GAAKnQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,MAAM,EACnCqI,EAASpU,EAAgB,GAAG,CAACgE,EAAKA,CAAG,CAAC,GAAoBnD,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkE,EAAIC,IAAO,CAC5J,UACA,IAAME,EAAM,aAAa,aAAaF,EAAIhB,EAAI1B,CAAC,CAAC,EAAGyC,CAAE,EAC/CmN,EAAQnB,EAAW/L,EAAKD,EACxB4H,EAAM9I,EAAM,aAAapE,EAAIyS,CAAK,EAAGV,EAAa,EAAE,OAAOtM,CAAG,CAAC,EAAG,EAAGiM,CAAI,EACzEtR,EAAI,aAAa,aAAa8M,EAAK,EAAE,EAAGuE,CAAE,EAChDjG,GAAauG,EAAa,EAAE,SAAUtG,GAAMnG,EAAIC,CAAE,EAAGmG,EAAMtL,EAAG,EAAG,EAAG,CAAC,CAAC,CACvE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,IACA,WACA,KACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,OAAO,CACT,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,eACA,GACD,EACA,QACD,EACA,KACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,eACA,GACD,EACA,UACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMmE,EACf,EAAK,IAAM1B,EACX,SAAY,IAAMyO,EAClB,YAAa,IAAMlN,EACnB,QAAS,IAAMpE,EACf,aAAgB,IAAM+R,EACtB,KAAQ,IAAML,EACd,GAAM,IAAMD,EACZ,mBAAoB,IAAMjG,GAC1B,UAAW,IAAMC,GACjB,UAAW,IAAMC,CAClB,CACD,CAAC,GAAKtK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,QAAQ,EAC3C,MAAO,CACN,WAAAuF,EACA,WAAAF,EACA,WAAAG,EACA,WAAAF,EACA,aAAAG,EACA,IAAAE,EACA,MAAOI,EAAS,CAAC,EACjB,MAAOA,EAAS,CAAC,EACjB,OAAAsC,CACD,CACD,CACA,IAAMC,GAAgBrU,EAAgB,GAAG,CACxCmL,EACAA,EACA1L,CACD,EAAGA,CAAG,GAAoBoB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyT,EAAM7O,EAAM8O,IAAc,CACrI,UACA,IAAMC,EAAOjS,EAAI+R,EAAK,IAAI,IAAI7O,EAAK,GAAG,CAAC,EACjCgP,EAAKlS,EAAI,aAAa+R,EAAK,EAAG7O,EAAK,CAAC,CAAC,EACrCkD,EAAO,aAAagB,GAAI6K,EAAM9U,EAAM,KAAM,KAAM,IAAI,CAAC,EAAG+U,CAAE,EAChE,OAAOxR,GAAWsR,EAAW,aAAa,aAAaA,EAAW,CAAC,EAAG,IAAI,EAAG5L,CAAI,CAClF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,CAAC,OAAQ,CACR,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,EACA,IACA,IACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,iBACA,CACC,YACA,CACC,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMpG,EACjB,UAAW,IAAMoH,GACjB,UAAW,IAAMjK,EACjB,iBAAkB,IAAMuD,EACzB,CACD,CAAC,GAAKpC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,EAC/B6T,GAAiB1U,EAAgB,GAAG,CAACN,EAAOD,CAAG,EAAGC,CAAK,GAAoBmB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+Q,EAAK+C,IAAW,CAClL,UACA,IAAMC,EAAMC,GAASjD,CAAG,EACxB,OAAOkD,GAASpV,EAAMqV,GAAM,aAAaH,EAAI,EAAGD,CAAM,CAAC,EAAGC,EAAI,EAAGA,EAAI,CAAC,CAAC,CACxE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,EAAG,CACF,KAAQ,IACR,KAAQ,QACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,uBACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,QACD,CAAC,CACF,EACA,CACC,EACA,MACA,GACD,EACA,CA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,EAAG,aAAa,aAAa,aAAa,aAAavU,EAAG,EAAG,EAAE,EAAGgV,CAAI,EAAG,EAAE,EAAG,aAAa,aAAaD,EAAE,OAAQA,EAAE,EAAE,EAAGR,CAAU,CAAC,CAAC,CACpR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,MACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,YACD,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,YACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMnJ,EAChB,UAAW,IAAMhJ,EACjB,UAAW,IAAMtC,EACjB,WAAc,IAAMyU,CACrB,CACD,CAAC,GAAKxU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,YAAY,EACzCoI,EAAUnU,EAAgB,GAAG,CAACP,EAAKA,CAAG,EAAG0L,CAAK,GAAoBtK,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkV,EAAIC,IAAO,CACpK,UACA,IAAMH,EAAI3J,EAAO,EAAE,OACbxD,EAAI,aAAamN,EAAE,UAAWT,CAAa,EACjD,OAAOE,EAAc,aAAaS,EAAIrN,CAAC,EAAG,aAAasN,EAAItN,CAAC,CAAC,EAAE,IAAI4M,EAAc,aAAaS,EAAIrN,CAAC,EAAG,aAAasN,EAAItN,CAAC,CAAC,CAAC,EAAE,IAAI4M,EAAc,aAAaS,EAAIrN,CAAC,EAAG,aAAasN,EAAItN,CAAC,CAAC,CAAC,EAAE,IAAI4M,EAAc,aAAaS,EAAIrN,CAAC,EAAG,aAAasN,EAAItN,CAAC,CAAC,CAAC,EAAE,IAAI,aAAamN,EAAE,YAAa,GAAG,CAAC,CAC3R,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,eACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,KACA,IACA,GACD,EAAG,CACF,EACA,KACA,IACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,gBACA,CAAC,CACA,EACA,KACA,IACA,GACD,EAAG,CACF,EACA,KACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,gBACA,CAAC,CACA,EACA,KACA,IACA,GACD,EAAG,CACF,EACA,KACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,gBACA,CAAC,CACA,EACA,KACA,IACA,GACD,EAAG,CACF,EACA,KACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI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AG,CACL,EAAG,CACF,EACA,CACC,EACA,OACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,QACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,QACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,QACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,YACA,YACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,aACA,CACC,QACA,SACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EAAG,MAAM,CACV,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMrK,EAChB,UAAW,IAAMf,EACjB,aAAc,IAAM3D,CACrB,CACD,CAAC,GAAK3G,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,OAAO,EAC1C,MAAO,CACN,OAAAG,EACA,OAAAP,EACA,OAAQuJ,IAAW,SAAWlV,EAAgB,GAAG,CAACgE,EAAKA,CAAG,CAAC,GAAoBnD,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkE,EAAIC,IAAO,CAC3K,UACA,IAAMlE,EAAK6U,EAAQ5Q,EAAIC,CAAE,EACnB2R,EAAIf,EAAW9U,CAAE,EACjBwV,EAAQH,EAAQQ,EAAE,EAAGA,EAAE,CAAC,EACxBrC,EAAOoB,EAAW5U,EAAG,EAAGA,EAAG,CAAC,EAC5BuV,EAAIhC,GAAcC,EAAMlH,GAAYlB,EAAO,EAAE,SAAUhB,GAAMnG,EAAIC,CAAE,EAAG,CAAC,EAAGkH,EAAO,EAAE,OAAO,eAAe,EAC/GjB,GAAaiB,EAAO,EAAE,KAAMhB,GAAMnG,EAAIC,CAAE,EAAGoR,EAAM9B,EAAM+B,EAAGC,CAAK,CAAC,EAChErL,GAAaiB,EAAO,EAAE,QAAShB,GAAMnG,EAAIC,CAAE,EAAGsR,CAAK,EACnDrL,GAAaiB,EAAO,EAAE,YAAahB,GAAMnG,EAAIC,CAAE,EAAGsP,CAAI,CACvD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,UACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,gBACA,CACC,OACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,iBACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,QACA,CACC,OACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,OACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,aACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAW,IAAMqB,EACjB,WAAc,IAAMC,EACpB,QAAW,IAAMO,EACjB,WAAc,IAAMT,EACpB,kBAAmB,IAAMtI,GACzB,OAAU,IAAMlB,EAChB,UAAW,IAAMhB,GACjB,cAAiB,IAAMmJ,GACvB,mBAAoB,IAAMpJ,GAC1B,MAAS,IAAMmL,CAChB,CACD,CAAC,GAAKvV,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,MAAM,EAAI/L,EAAgB,GAAG,CAACgE,EAAKA,CAAG,CAAC,GAAoBnD,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkE,EAAIC,IAAO,CAC1L,UACA,IAAMlE,EAAK6U,EAAQ5Q,EAAIC,CAAE,EACnB2R,EAAIf,EAAW9U,CAAE,EACjBwV,EAAQH,EAAQQ,EAAE,EAAGA,EAAE,CAAC,EACxBC,EAAOR,EAAMV,EAAW5U,EAAG,EAAGA,EAAG,CAAC,EAAGrB,EAAI,CAAC,EAAG6W,CAAK,EACxDrL,GAAaiB,EAAO,EAAE,KAAMhB,GAAMnG,EAAIC,CAAE,EAAG4R,CAAI,EAC/C3L,GAAaiB,EAAO,EAAE,QAAShB,GAAMnG,EAAIC,CAAE,EAAG4R,CAAI,CACnD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CACC,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,OACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAW,IAAMjB,EACjB,WAAc,IAAMC,EACpB,QAAW,IAAMO,EACjB,WAAc,IAAMT,EACpB,MAAS,IAAMU,EACf,QAAS,IAAM3W,EACf,mBAAoB,IAAMwL,GAC1B,OAAU,IAAMiB,EAChB,UAAW,IAAMhB,EAClB,CACD,CAAC,GAAKrK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,W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GAAaiB,EAAO,EAAE,KAAMhB,GAAMnG,EAAIC,CAAE,EAAG4R,EAAI,EAC/C3L,GAAaiB,EAAO,EAAE,QAAShB,GAAMnG,EAAIC,CAAE,EAAG4R,EAAI,CACnD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,MACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CACC,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,WACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,IACA,aACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,SAAS,CACd,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,MACA,SACA,CACC,EACA,YACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,IACA,MACD,CACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,iBACA,CACC,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,IACD,CACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,KACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,KACD,CACD,EACA,KACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,KACD,EACA,CAAC,aAAa,CACf,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,KACD,EACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,KACD,EACA,QACA,aACD,CACD,EACA,KACD,EACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAW,CACX,EACA,QACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,wBACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,KACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,KACD,CACD,EACA,KACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CACC,OACA,QACA,OACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,QACA,eACA,CACC,EACA,OACA,IACA,UACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM1K,EAChB,QAAS,IAAMzM,EACf,IAAO,IAAMwV,EACb,UAAW,IAAM/R,EACjB,YAAe,IAAM4T,EACrB,YAAa,IAAMxS,GACnB,eAAgB,IAAMoT,GACtB,aAAc,IAAMlQ,EACpB,WAAc,IAAMuP,EACpB,UAAW,IAAMlV,GACjB,iBAAkB,IAAMoB,GACxB,UAAW,IAAMtB,GACjB,YAAa,IAAMkC,EACnB,QAAS,IAAMG,EACf,kBAAmB,IAAMoJ,GACzB,UAAW,IAAMlC,GACjB,UAAW,IAAM9H,EACjB,YAAe,IAAM4T,EACrB,UAAW,IAAMtX,EACjB,YAAe,IAAMuX,EACrB,YAAe,IAAMC,EACrB,UAAW,IAAM/L,EACjB,wBAAyB,IAAM2B,GAC/B,mBAAoB,IAAM7B,EAC3B,CACD,CAAC,GAAKpK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGkL,CAAU,MAAM,CAC1C,CACD,CACA,IAAIgP,IAAa,CAChB,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,GACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,IACA,GACA,GACA,GACA,GACA,IACA,IACA,IACA,EACD,EACIC,IAAe,CAClB,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,GACA,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EAAMnE,EAAM,aAAaod,EAAG,aAAaO,EAAI,KAAK,CAAC,EAAG,aAAa,aAAaP,EAAG,aAAaM,EAAI,OAAO,CAAC,EAAG,aAAaC,EAAI,OAAO,CAAC,EAAG,aAAaP,EAAG,aAAaM,EAAI,KAAK,CAAC,CAAC,EAAG1d,EAAM,EAAG,EAAG,CAAC,EAAGA,EAAM,EAAG,EAAG,CAAC,CAAC,CAC5N,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,YACA,CACC,UACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,UACD,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,YACA,CAAC,QAAS,CAAC,EAAG,IAAI,CAAC,CACpB,EACA,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,YACA,CAAC,QAAS,CAAC,EAAG,IAAI,CAAC,CACpB,EACA,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,YACA,CAAC,QAAS,CAAC,EAAG,IAAI,CAAC,CACpB,EACA,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,YACA,CAAC,QAAS,CACT,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,CAAC,CACF,EACA,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,CACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,UACA,CACC,EACA,CACC,EACA,IACA,IACA,OACD,EACA,IACA,GACD,CACD,EACA,IACA,KACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CAAC,EAAG,GAAG,EACP,UACA,CACC,EACA,IACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,YACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CAAC,EAAG,GAAG,EACP,UACA,CACC,EACA,IACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,UACA,CACC,EACA,CACC,EACA,IACA,IACA,OACD,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,IACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,eACA,GACD,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,CACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,YACD,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,KACD,EACA,IACA,IACD,CACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,CAAC,CAAC,CACH,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,SACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,SACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,CACC,EACA,UACA,CACC,IACA,IACA,GACD,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMmE,EACnB,aAAc,IAAM2D,EACpB,YAAa,IAAMvH,GACnB,QAAS,IAAMR,EACf,MAAS,IAAMgc,EACf,QAAW,IAAML,GACjB,QAAW,IAAMF,GACjB,UAAW,IAAMvZ,GACjB,WAAc,IAAMwZ,GACpB,YAAa,IAAM7W,GACnB,aAAgB,IAAM+W,GACtB,eAAkB,IAAMC,GACxB,UAAW,IAAM5b,CAClB,CACD,CAAC,GAAKmB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,cAAc,CACrC,CACA,SAASyc,GAAiB7B,EAAO,CAChC,IAAM1T,EAAMwT,GAAe,IAAIE,CAAK,EACpC,GAAI1T,EAAK,OAAOA,EAChB,IAAM8I,EAAQ2K,IAAkBC,CAAK,EACrC,OAAAF,GAAe,IAAIE,EAAO5K,CAAK,EACxBA,CACR,CACA,SAAS0M,GAAwB/W,EAAM,CACtC,GAAM,CAAE,MAAAiV,EAAO,OAAA+B,EAAQ,WAAAzR,EAAY,OAAA8D,CAAO,EAAIrJ,EACxCiX,EAAU,EAAID,EACd7R,EAASnM,GAAO,CACrB,WAAYC,EACZ,YAAaA,EACb,QAASA,CACV,CAAC,EAAE,MAAM,qBAAqB,EACxByM,GAA0B,WAAW,uBAA0B3M,GAAMA,IAAIS,EAAgB,gBAAgB,CAC9G,MAAO,CAAE,QAAS6L,GAAUpM,CAAG,CAAE,EACjC,QAAS,CAAE,eAAgBW,GAAiByP,EAAQ,YAAY,CAAE,EAClE,OAAQ,CAAE,QAASlE,CAAO,CAC3B,CAAC,EAAG,QAAQ,EACN+R,EAAWJ,GAAiB7B,CAAK,EACvC,MAAO,CACN,OAAAvP,EACA,OAAQlM,EAAgB,GAAG,CAACgE,EAAKA,CAAG,CAAC,GAAoBnD,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkE,EAAIC,IAAO,CACrJ,UACA,IAAMlF,EAAIoM,EAAO,EAAE,OACbyR,EAASle,EAAIsF,CAAE,EACf6Y,EAASne,EAAIuF,CAAE,EACf6Y,EAAWvZ,GAAM,aAAaqZ,EAAQ,CAAC,CAAC,EACxCG,EAAWxZ,GAAM,aAAasZ,EAAQ,CAAC,CAAC,EACxCjC,EAAS,aAAagC,EAAQ,aAAaE,EAAU,CAAC,CAAC,EACvDjC,EAAS,aAAagC,EAAQ,aAAaE,EAAU,CAAC,CAAC,EACvDC,EAAU,aAAaF,EAAUJ,CAAO,EACxCO,EAAU,aAAaF,EAAUL,CAAO,EACxC/B,EAAQzb,GAAQP,EAAO,EAAE,EAAE,EAC3Bue,EAAM5R,EAAI,aAAavM,EAAE,WAAY,CAAC,CAAC,EACvCoe,EAAM7R,EAAI,aAAavM,EAAE,YAAa,CAAC,CAAC,EAC9C,QAASuc,EAAI,EAAGA,EAAI,EAAGA,IAAK,QAASC,EAAI,EAAGA,EAAI,EAAGA,IAAK,CACvD,IAAMrP,EAAK,aAAa,aAAa8Q,EAAS,aAAate,EAAI6c,CAAC,EAAGkB,CAAM,CAAC,EAAG,aAAaA,EAAQ,EAAE,CAAC,EAC/FtQ,EAAK,aAAa,aAAa8Q,EAAS,aAAave,EAAI4c,CAAC,EAAGmB,CAAM,CAAC,EAAG,aAAaA,EAAQ,EAAE,CAAC,EAC/FzZ,EAAKF,EAAMwI,EAAIY,CAAE,EAAG,EAAGgR,CAAG,EAC1Bha,EAAKJ,EAAMwI,EAAIa,CAAE,EAAG,EAAGgR,CAAG,EAC1B/Q,EAAQC,GAAYlB,EAAO,EAAE,MAAOhB,GAAMlH,EAAID,CAAE,EAAGC,EAAIC,CAAE,CAAC,EAAG,CAAC,EACpEyX,EAAM,aAAa,aAAaW,EAAG,CAAC,EAAGC,CAAC,CAAC,EAAIzK,GAAmB1E,CAAK,EAAE,GACxE,CACA,IAAMyE,EAAM8L,EAAShC,EAAOC,EAAQC,EAAQ9b,EAAE,OAAO,EACrDmL,GAAaiB,EAAO,EAAE,QAAShB,GAAMnG,EAAIC,CAAE,EAAGmG,EAAMyG,EAAK,CAAC,CAAC,CAC5D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,CACA,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,CACA,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,WACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,WACA,IACA,SACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,YACA,CAAC,UAAW,CAAC,EAAG,IAAI,CAAC,CACtB,EACA,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,QACD,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,QACD,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,CAAC,EAAG,GAAG,EACP,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,CAAC,EAAG,GAAG,EACP,KACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,2BACA,CAAC,OAAO,CACT,EACA,KACD,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,QACA,SACA,SACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,C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,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,gBACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,KACD,EACA,CAAC,CACA,EACA,KACA,IACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,KACA,IACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,KACA,IACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,KACA,IACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,aACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,UACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,EACT,eACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,gBACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,gBACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,GAAG,CAAC,CACzB,CACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,GAAG,CAAC,CACzB,CACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,YAAY,CACd,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,aAAa,CACf,CAAC,CACF,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,YAAY,CACd,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,UAAU,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,aACA,IACA,aACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,mBACA,IACA,gBACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,KACD,EACA,CAAC,CACA,EACA,mBACA,IACA,aACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,gBACA,KACD,EACA,CAAC,CACA,EACA,iBACA,IACA,aACD,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AAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,IACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,IACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,IACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,UACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAME,EACjB,aAAc,IAAMN,GACpB,UAAW,IAAMJ,EACjB,UAAW,IAAMc,EACjB,UAAW,IAAME,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EACRpC,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EAAI,CAAC,EAAGA,EAAI,EAAE,EAAG6B,EAAM,CAAC,EACxCpC,EAAImC,EAAO5B,EAAI,CAAC,EAAGkC,EAAQF,EAAM,CAAC,EAClCG,EAAM,aAAa,aAAaR,EAAKA,CAAG,EAAG,aAAaE,EAAKA,CAAG,CAAC,EACjEO,EAAM,aAAa,aAAaJ,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,EACvE,OAAO,aAAaxC,EAAG4C,GAAKtB,GAAIoB,EAAKC,CAAG,CAAC,CAAC,CAC3C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,aACA,CACC,KACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,IACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,SACA,IACA,QACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,SACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,IACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMjC,GACpB,UAAW,IAAMe,EACjB,UAAW,IAAMH,GACjB,aAAc,IAAMa,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,EACzEmK,EAAK,aAAaF,EAAIxL,CAAE,EACxB2L,EAAK,aAAaF,EAAIlK,CAAC,EACvBqK,EAAO,aAAanB,GAAK,aAAa,aAAaiB,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EAAGE,GAAK,aAAaJ,EAAIlK,CAAC,CAAC,CAAC,EAC7GuK,EAAK,aAAaR,EAAIN,CAAE,EACxB9B,EAAQC,GAAIF,EAAI2C,EAAME,CAAE,EAAG,CAAC,EAC5B9C,EAAQT,GAAOe,EAAML,EAAI2C,EAAM,CAAC,EAAG3C,EAAI6C,EAAI,CAAC,CAAC,CAAC,EACpD,OAAO,aAAa5C,EAAOF,CAAK,CACjC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,IACA,CAAC,EAAG,WAAW,CAChB,CACD,EACA,CACC,GACA,KACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,GACA,KACA,CAAC,EAAG,SAAS,CACd,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,KACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,KACA,IACA,GACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,IAAI,CACd,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,EAAG,CACF,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,QACA,IACA,OACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMH,EACjB,UAAW,IAAMM,GACjB,YAAa,IAAMO,EACnB,WAAY,IAAMe,GAClB,WAAY,IAAMoB,GAClB,UAAW,IAAM5C,EACjB,aAAc,IAAMV,GACpB,UAAW,IAAMe,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRlD,GAAc+C,EAAgB,GAAG,CACtCC,EACAC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGyD,EAAIC,EAAIC,IAAO,CAC7H,UACA,IAAMC,EAAK3D,GAAOJ,EAAM,aAAaG,EAAE,EAAGyD,CAAE,EAAG,aAAazD,EAAE,EAAG0D,CAAE,EAAG,aAAa1D,EAAE,EAAG2D,CAAE,CAAC,CAAC,EACtFE,EAAK5D,GAAOJ,EAAM,aAAaG,EAAE,EAAG,aAAayD,EAAIA,CAAE,CAAC,EAAG,aAAazD,EAAE,EAAG,aAAa0D,EAAIA,CAAE,CAAC,EAAG,aAAa1D,EAAE,EAAG,aAAa2D,EAAIA,CAAE,CAAC,CAAC,CAAC,EAClJ,OAAO,aAAa,aAAaC,EAAI,aAAaA,EAAI,CAAC,CAAC,EAAGjD,EAAIkD,EAAI,IAAI,CAAC,CACzE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,UAAU,CAAC,CACvB,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAM5D,GACpB,UAAW,IAAMJ,EACjB,UAAW,IAAMc,CAClB,CACD,CAAC,GAAKZ,EAAE,GAAG,CAAC,CAAC,CAAC,EACRvD,GAAWoD,EAAgB,GAAG,CACnCC,EACAC,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAG/G,EAAGG,IAAM,CACvH,UACA,IAAMkH,EAAKL,GAAOe,EAAMhB,EAAE,EAAGA,EAAE,CAAC,CAAC,EAC3BQ,EAAKD,EAAIP,EAAE,CAAC,EACZ8D,EAAM,aAAa7K,EAAG,EAAE,EACxB8K,EAAM3K,EACN4K,EAAM,aAAa1D,EAAIrH,CAAC,EACxBgL,EAAMzD,EACN0D,EAAMvD,EAAI,aAAa,aAAamD,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,EAAG,IAAI,EAC5EpL,EAAIyI,EAAM,aAAa,aAAa,aAAa4C,EAAKF,CAAG,EAAG,aAAaG,EAAKF,CAAG,CAAC,EAAGG,CAAG,EAAG,EAAG,CAAC,EAC/FC,EAAM,aAAaH,EAAK,aAAaF,EAAKnL,CAAC,CAAC,EAC5CyL,EAAM,aAAaH,EAAK,aAAaF,EAAKpL,CAAC,CAAC,EAC5C0L,EAAOlC,GAAK,aAAa,aAAagC,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,CAAC,EAC9E,OAAO,aAAaC,EAAMd,GAAK,aAAa,aAAa,aAAanK,EAAGkH,CAAE,EAAG,aAAarH,EAAGuH,CAAE,CAAC,EAAG,aAAavH,EAAGG,CAAC,CAAC,CAAC,CAAC,CACzH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,GACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,IACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,KACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CAAC,CACF,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAM6G,GACpB,UAAW,IAAMe,EACjB,UAAW,IAAMT,EACjB,UAAW,IAAMI,EACjB,YAAa,IAAMS,EACnB,WAAY,IAAMe,GAClB,WAAY,IAAMoB,EACnB,CACD,CAAC,GAAKxD,EAAE,GAAG,CAAC,CAAC,CAAC,EACR5C,GAASyC,EAAgB,GAAG,CACjCC,EACAC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGsE,EAAIjD,EAAIC,IAAO,CAC7H,UACA,IAAMd,EAAKG,EAAI,aAAaJ,EAAIP,EAAE,CAAC,EAAGsE,CAAE,EAAG,CAAC,EACtCC,EAAO,aAAatE,GAAOe,EAAMhB,EAAE,EAAGQ,CAAE,CAAC,EAAGa,CAAE,EACpD,OAAO,aAAapB,GAAOe,EAAMuD,EAAMvE,EAAE,CAAC,CAAC,EAAGsB,CAAE,CACjD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,IACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,IAAI,CACR,CAAC,CACF,EACA,IACA,IACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CACR,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMX,EACjB,UAAW,IAAMJ,EACjB,aAAc,IAAMN,GACpB,UAAW,IAAMe,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRhC,GAAO6B,EAAgB,GAAG,CAC/BE,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyE,EAAGpC,EAAGjL,IAAM,CACvH,UACA,IAAMiC,EAAIgI,EAAM,aAAa,aAAa,aAAa,aAAagB,EAAGoC,CAAC,EAAGrN,CAAC,EAAG,EAAE,EAAG,EAAE,EAAG,EAAG,CAAC,EAC7F,OAAO,aAAasN,EAAIrC,EAAGoC,EAAGpL,CAAC,EAAG,aAAa,aAAajC,EAAGiC,CAAC,EAAG,aAAa,EAAGA,CAAC,CAAC,CAAC,CACvF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EAAG,CAAC,GAAI,CACP,EACA,CACC,EACA,UACA,CACC,IACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,YAAa,IAAMgI,EACnB,UAAW,IAAMqD,CAClB,CACD,CAAC,GAAK1E,EAAE,GAAG,CAAC,CAAC,CAAC,EACRhD,GAAQ6C,EAAgB,GAAG,CAChCC,EACAC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAG/G,EAAGG,EAAGsL,IAAU,CAC9H,UACA,IAAMhM,EAAO8D,GAASwD,EAAG/G,EAAGG,CAAC,EACvBuL,EAAQ1E,GAAOe,EAAMhB,EAAE,EAAGA,EAAE,CAAC,CAAC,EAC9B4E,EAAMC,GAAM7E,EAAE,EAAGA,EAAE,CAAC,EACpB8E,EAAS,aAAa1G,GAAQsG,CAAK,EACnCK,EAAMC,GAAM,aAAa,aAAaJ,EAAKE,CAAM,EAAG,EAAE,CAAC,EACvDG,EAAK,aAAaL,EAAK,aAAaG,EAAKD,CAAM,CAAC,EAChDI,EAAK,aAAajM,EAAGkM,GAAI,aAAahH,GAAIuG,CAAK,CAAC,CAAC,EACvD,OAAO/D,EAAIA,EAAIjI,EAAM,aAAa,aAAaiM,EAAOQ,GAAIF,CAAE,CAAC,EAAGC,CAAE,CAAC,EAAG,aAAalF,EAAE,EAAG,aAAa5G,EAAG,GAAG,CAAC,CAAC,CAC9G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,WACA,CACC,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,IACA,OACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,OACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,OAAQ,OAAO,CACjB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,KAAM,OAAO,CACf,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,SAAY,IAAMoD,GAClB,aAAc,IAAMyD,GACpB,UAAW,IAAMe,EACjB,YAAa,IAAM6D,GACnB,OAAU,IAAMzG,GAChB,YAAa,IAAM4G,GACnB,UAAW,IAAMG,GACjB,GAAM,IAAMhH,GACZ,UAAW,IAAMwC,CAClB,CACD,CAAC,GAAKZ,EAAE,GAAG,CAAC,CAAC,CAAC,EACR9C,GAAU2C,EAAgB,GAAG,CAClCC,EACAC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGoF,EAAGC,EAAMC,EAAOC,IAAU,CACxI,UACA,IAAMC,EAAMX,GAAM7E,EAAE,EAAGA,EAAE,CAAC,EACpB7I,EAAI6N,GAAM,aAAa,aAAa,aAAahF,EAAE,EAAGsF,CAAK,EAAG,aAAaE,EAAKpH,EAAM,CAAC,EAAG,EAAE,CAAC,EAC7FqH,EAAQ,aAAaD,EAAK,aAAapH,GAAQjH,CAAC,CAAC,EACjDuO,EAAM,aAAaN,EAAGD,GAAIM,CAAK,CAAC,EAChCE,EAAM,aAAa,aAAaL,EAAOG,CAAK,EAAGrH,EAAM,EACrDwH,EAAM,aAAaR,EAAGS,GAAIJ,CAAK,CAAC,EACtC,OAAO9E,EAAI,aAAaV,GAAOJ,EAAM,aAAaG,EAAE,EAAG0F,CAAG,EAAG,aAAa1F,EAAE,EAAG2F,CAAG,EAAG,aAAa3F,EAAE,EAAG4F,CAAG,CAAC,CAAC,EAAGP,CAAI,EAAG,aAAa9E,EAAIP,EAAE,CAAC,EAAG,aAAa,aAAasF,EAAOC,CAAK,EAAG,EAAE,CAAC,CAAC,CAC3L,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,MACA,IACA,QACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,IACA,CACC,EACA,SACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,CACD,CAAC,CACF,EACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,UAAW,MAAM,CACnB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMV,GACnB,YAAa,IAAMG,GACnB,OAAU,IAAM5G,GAChB,UAAW,IAAM+G,GACjB,UAAW,IAAMU,GACjB,aAAc,IAAM5F,GACpB,UAAW,IAAMJ,EACjB,UAAW,IAAMU,EACjB,UAAW,IAAMI,CAClB,CACD,CAAC,GAAKZ,EAAE,GAAG,CAAC,CAAC,CAAC,EACV+F,GAAgBC,GAAQlG,EAAO,CAAC,EAChCmG,GAAiB,EACf5I,GAAcwC,EAAgB,GAAG,CACtCC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAC,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGiG,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIvN,EAAG9B,IAAM,CACvJ,UACA,IAAMsP,EAAQX,GAAc,EAC5BW,EAAM,CAAC,EAAI5G,EAAMoG,CAAE,EACnBQ,EAAM,CAAC,EAAI5G,EAAMqG,CAAE,EACnBO,EAAM,CAAC,EAAI5G,EAAMsG,CAAE,EACnBM,EAAM,CAAC,EAAI5G,EAAMuG,CAAE,EACnBK,EAAM,CAAC,EAAI5G,EAAMwG,CAAE,EACnBI,EAAM,CAAC,EAAI5G,EAAMyG,CAAE,EACnBG,EAAM,CAAC,EAAI5G,EAAM0G,CAAE,EACnBE,EAAM,CAAC,EAAI5G,EAAM2G,CAAE,EACnB,IAAIE,EAAK,aAAazG,GAAOD,EAAE,IAAIyG,EAAM,CAAC,CAAC,CAAC,EAAGxN,CAAC,EAChD,QAAS0N,EAAI,EAAGA,EAAIX,GAAgBW,IAAKD,EAAK3I,GAAK2I,EAAI,aAAazG,GAAOD,EAAE,IAAIyG,EAAME,CAAC,CAAC,CAAC,EAAG1N,CAAC,EAAG9B,CAAC,EAClG,OAAOuP,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,gBACA,CAAC,CACF,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,QACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,EACA,IACA,GACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,gBACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,KACA,IACA,CACC,EACA,OACA,CACC,KACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,QACA,GACD,CAAC,CACF,CAAC,CACF,EACA,IACA,GACD,EACA,GACD,CACD,CACD,CAAC,CAAC,CACH,EACA,CAAC,GAAI,IAAI,CACV,CAAC,CACF,EACA,UAAW,CACV,cAAiB,IAAMZ,GACvB,UAAW,IAAMjG,EACjB,aAAc,IAAMI,GACpB,eAAkB,IAAM+F,GACxB,KAAQ,IAAMjI,EACf,CACD,CAAC,GAAKgC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRnD,GAAiBgD,EAAgB,GAAG,CAACC,EAAOC,CAAG,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAG/G,IAAM,CACzK,UACA,IAAM2N,EAAI/G,EAAMU,EAAIP,EAAE,CAAC,EAAGO,EAAIP,EAAE,CAAC,EAAGO,EAAIP,EAAE,CAAC,CAAC,EACtCwE,EAAIqC,GAAID,EAAG/G,EAAM,EAAG,SAAU,QAAQ,CAAC,EACvCuC,EAAIyE,GAAID,EAAG/G,EAAM,SAAU,EAAG,QAAQ,CAAC,EACvCiH,EAAID,GAAID,EAAG/G,EAAM,SAAU,SAAU,CAAC,CAAC,EAC7C,OAAO,aAAac,EAAIA,EAAI6D,EAAGpC,CAAC,EAAG0E,CAAC,EAAG7N,CAAC,CACzC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,WAAW,EACf,CAAC,EAAG,WAAW,CAChB,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,UACA,CACC,CAAC,EAAG,WAAW,EACf,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,WAAW,CAChB,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,UACA,CACC,CAAC,EAAG,WAAW,EACf,CAAC,EAAG,WAAW,EACf,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,GAAG,CACV,EAAG,GAAG,CACP,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM4G,EACjB,UAAW,IAAMU,EACjB,UAAW,IAAMsG,GACjB,UAAW,IAAMlG,CAClB,CACD,CAAC,GAAKZ,EAAE,GAAG,CAAC,CAAC,CAAC,EACRpD,GAAciD,EAAgB,GAAG,CACtCC,EACAC,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAG/G,EAAGG,IAAM,CACvH,UACA,IAAME,EAAI6I,GAAKxB,EAAI,aAAa,aAAa1H,EAAGA,CAAC,EAAG,aAAaG,EAAGA,CAAC,CAAC,EAAG,CAAC,CAAC,EACrEkH,EAAKL,GAAOe,EAAMhB,EAAE,EAAGA,EAAE,CAAC,CAAC,EAC3BQ,EAAKR,EAAE,EACPT,EAAIoB,EAAI,aAAa,aAAa,aAAa,aAAavH,EAAGH,CAAC,EAAGqH,CAAE,EAAGA,CAAE,EAAG,aAAa,aAAahH,EAAGA,CAAC,EAAG,aAAa,aAAaF,EAAGH,CAAC,EAAG,aAAauH,EAAI,CAAC,CAAC,CAAC,CAAC,EAAG,aAAa,aAAapH,EAAGkH,CAAE,EAAG,aAAahH,EAAGkH,CAAE,CAAC,CAAC,EAC7NuG,EAAQ,aAAa9G,GAAOe,EAAMV,EAAIE,CAAE,CAAC,EAAGvH,CAAC,EAC7C+N,EAAQ,aAAa5N,EAAGoH,CAAE,EAChC,OAAOkB,EAAOA,EAAOzB,GAAOe,EAAM,aAAaV,EAAIhH,CAAC,EAAG,aAAakH,EAAIpH,CAAC,CAAC,CAAC,EAAG4N,EAAO1G,EAAKhH,CAAC,EAAGyN,EAAOxH,EAAI,CAAC,CAC3G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,EACA,IACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,GACD,EAAG,CACF,EACA,KACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,QACA,QACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,QACA,QACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAM4C,GAClB,UAAW,IAAMxB,EACjB,aAAc,IAAMV,GACpB,UAAW,IAAMe,EACjB,aAAc,IAAMU,CACrB,CACD,CAAC,GAAK3B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRxC,GAAWqC,EAAgB,GAAG,CACnCC,EACAC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAG1G,EAAG2N,EAAIC,EAAKC,EAAKC,EAAMC,EAAKC,EAAKC,EAAQC,EAAMC,IAAQ,CACrK,UACA,IAAMC,EAAK,aAAaP,EAAKtB,GAAI,aAAa,aAAauB,EAAMpH,EAAE,CAAC,EAAGqH,CAAG,CAAC,CAAC,EACtEM,EAAK,aAAa,aAAaR,EAAK,EAAE,EAAGtB,GAAI,aAAa,aAAa,aAAauB,EAAM,EAAE,EAAGpH,EAAE,CAAC,EAAGsH,CAAG,CAAC,CAAC,EAC1G9G,EAAK,aAAaR,EAAE,EAAG0H,CAAE,EACzBjH,EAAK,aAAaT,EAAE,EAAG2H,CAAE,EACzB/C,EAAM,aAAa,aAAa2C,EAAQvH,EAAE,CAAC,EAAGwH,CAAI,EAClDV,EAAI3B,GAAIP,CAAG,EACXrF,EAAIsG,GAAIjB,CAAG,EACXlB,EAAK,aAAa,aAAalD,EAAIsG,CAAC,EAAG,aAAarG,EAAIlB,CAAC,CAAC,EAC1DoE,EAAK,aAAa,aAAalD,EAAIqG,CAAC,EAAG,aAAatG,EAAIjB,CAAC,CAAC,EAC1DqI,EAAQ,aAAaX,EAAI,EAAE,EAC3BY,EAAK,aAAa,aAAatH,EAAImD,CAAE,EAAGpK,CAAC,EAAGsO,CAAK,EACjDE,EAAK,aAAa,aAAavH,EAAIoD,CAAE,EAAGsD,CAAE,EAAGW,CAAK,EAClDG,EAAK,aAAa,aAAa9H,GAAOe,EAAML,EAAIkH,EAAI,CAAC,EAAGlH,EAAImH,EAAI,CAAC,CAAC,CAAC,EAAGjH,GAAIF,EAAIkH,EAAIC,CAAE,EAAG,CAAC,CAAC,EAAGF,CAAK,EACjG3G,EAAK,aAAaV,EAAIP,EAAE,CAAC,EAAGkH,CAAG,EAC/BR,EAAK,aAAazG,GAAOe,EAAML,EAAIoH,EAAI,CAAC,EAAGpH,EAAIM,EAAI,CAAC,CAAC,CAAC,EAAGJ,GAAIF,EAAIoH,EAAI9G,CAAE,EAAG,CAAC,CAAC,EAClF,OAAO,aAAayF,EAAIe,CAAG,CAC5B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,KACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,GACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,IACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EAAG,CACF,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EAAG,CACF,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,KACA,IACA,KACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM5B,GACjB,UAAW,IAAMV,GACjB,UAAW,IAAM5E,EACjB,aAAc,IAAMN,GACpB,UAAW,IAAMe,EACjB,UAAW,IAAML,EACjB,UAAW,IAAME,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EACRnC,GAAegC,EAAgB,GAAG,CACvCC,EACAC,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAG/G,EAAGkO,EAAKC,EAAMC,EAAKC,EAAKG,IAAQ,CAC9I,UACA,IAAMnO,EAAI,aAAa,aAAauM,GAAI,aAAa,aAAa7F,EAAE,EAAGoH,CAAI,EAAGC,CAAG,CAAC,EAAGxB,GAAI,aAAa,aAAa,aAAa7F,EAAE,EAAGoH,CAAI,EAAG,GAAG,EAAGE,CAAG,CAAC,CAAC,EAAG,aAAazB,GAAI,aAAa,aAAa,aAAa7F,EAAE,EAAGoH,CAAI,EAAG,EAAE,EAAG,aAAaE,EAAK,GAAG,CAAC,CAAC,EAAGzB,GAAI,aAAa,aAAa,aAAa7F,EAAE,EAAGoH,CAAI,EAAG,GAAG,EAAG,aAAaC,EAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAC5UX,EAAK,aAAa,aAAazG,GAAOD,CAAC,EAAG/G,CAAC,EAAG,aAAa,aAAakO,EAAK7N,CAAC,EAAG,EAAE,CAAC,EAC1F,OAAO,aAAaoN,EAAIe,CAAG,CAC5B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,KACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,CAAC,GAAG,CACL,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,KACA,IACA,KACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM5B,GACjB,aAAc,IAAM5F,EACrB,CACD,CAAC,GAAKF,EAAE,GAAG,CAAC,CAAC,CAAC,EACRjD,GAAa8C,EAAgB,GAAG,CACrCE,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiI,EAAYC,EAAW7C,EAAG/C,EAAI6F,EAAIC,IAAQ,CACrJ,UACA,IAAMN,EAAK,aAAa,aAAatH,EAAI,aAAayH,EAAY5C,CAAC,CAAC,EAAG/C,CAAE,EAAG8F,CAAG,EACzEL,EAAK,aAAa,aAAavH,EAAI0H,CAAS,EAAGC,CAAE,EAAGC,CAAG,EACvDzH,EAAQT,GAAOe,EAAML,EAAIkH,EAAI,CAAC,EAAGlH,EAAImH,EAAI,CAAC,CAAC,CAAC,EAC5ClH,EAAQC,GAAIF,EAAIkH,EAAIC,CAAE,EAAG,CAAC,EAChC,OAAO,aAAa,aAAapH,EAAOE,CAAK,EAAGuH,CAAG,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,GACD,CAAC,CACF,EACA,IACA,IACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,WAAW,CACb,EACA,IACA,IACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,EAAG,CACF,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM5H,EACjB,aAAc,IAAMN,GACpB,UAAW,IAAMe,EACjB,UAAW,IAAML,EACjB,UAAW,IAAME,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EACR/C,GAAc4C,EAAgB,GAAG,CACtCC,EACAC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGoI,EAAQC,EAAOC,EAAOH,EAAKI,EAAMC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,IAAO,CAC1K,UACA,IAAMX,EAAK,aAAaG,EAAO,EAAE,EAC3BhG,EAAK,aAAaiG,EAAO,EAAE,EAC3BQ,EAAQ,aAAa7I,GAAOD,CAAC,EAAGuI,CAAI,EACpCQ,EAAM,aAAa,aAAa/I,EAAE,EAAGwI,CAAE,EAAG,aAAaxI,EAAE,EAAGyI,CAAE,CAAC,EAC/DO,EAAM,aAAa,aAAahJ,EAAE,EAAGwI,CAAE,EAAG,aAAaxI,EAAE,EAAGyI,CAAE,CAAC,EAC/DQ,EAAKnM,GAAWmD,GAAOe,EAAMhB,EAAE,EAAGgJ,CAAG,CAAC,EAAGD,EAAKX,EAAQ/F,EAAI6F,EAAIC,CAAG,EACjEe,EAAM,aAAa,aAAalJ,EAAE,EAAG0I,CAAE,EAAG,aAAa1I,EAAE,EAAG2I,CAAE,CAAC,EAC/DQ,EAAM,aAAa,aAAanJ,EAAE,EAAG0I,CAAE,EAAG,aAAa1I,EAAE,EAAG2I,CAAE,CAAC,EAC/DZ,EAAKjL,GAAWmD,GAAOe,EAAMkI,EAAKlJ,EAAE,CAAC,CAAC,EAAGmJ,EAAK,aAAaf,EAAQ,GAAG,EAAG/F,EAAI6F,EAAIC,CAAG,EACpFiB,EAAM,aAAa,aAAapJ,EAAE,EAAG4I,CAAE,EAAG,aAAa5I,EAAE,EAAG6I,CAAE,CAAC,EAC/DQ,EAAKvM,GAAWmD,GAAOe,EAAM,aAAa,aAAahB,EAAE,EAAG4I,CAAE,EAAG,aAAa5I,EAAE,EAAG6I,CAAE,CAAC,EAAG7I,EAAE,CAAC,CAAC,EAAGoJ,EAAK,aAAahB,EAAQ,GAAG,EAAG/F,EAAI6F,EAAIC,CAAG,EACjJ,OAAOtH,GAAIA,GAAIiI,EAAOG,CAAE,EAAGpI,GAAIkH,EAAIsB,CAAE,CAAC,CACvC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,aACA,CAAC,GAAG,CACL,EACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,KAAK,CACT,CAAC,CACF,EACA,MACA,SACA,KACA,KACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CACP,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,MACA,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,KACA,KACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CACP,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,EACA,MACA,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,KACA,KACA,KACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,QAAS,IAAI,CACf,EAAG,CACF,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMpJ,GACpB,WAAc,IAAMnD,GACpB,UAAW,IAAMkE,EACjB,UAAW,IAAMH,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EACRlG,IAA6B,WAAW,uBAA0B2K,GAAMA,IAAI8E,GAAO,CACxF,GAAIxJ,EACJ,GAAIA,EACJ,GAAIA,EACJ,GAAIA,EACJ,GAAIA,EACJ,GAAIA,CACL,CAAC,EAAG,WAAW,EACTxD,GAAasD,EAAgB,GAAG,CAACC,EAAOhG,EAAS,EAAGgG,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACwJ,EAAGC,IAAQ,CAC/K,UACA,IAAMhK,EAAK,aAAa,aAAa+J,EAAE,EAAGC,EAAI,EAAE,EAAG,aAAaD,EAAE,EAAGC,EAAI,EAAE,CAAC,EACtE/J,EAAK,aAAa,aAAa8J,EAAE,EAAGC,EAAI,EAAE,EAAG,aAAaD,EAAE,EAAGC,EAAI,EAAE,CAAC,EACtE9J,EAAK,aAAa,aAAa6J,EAAE,EAAGC,EAAI,EAAE,EAAG,aAAa/J,EAAI+J,EAAI,EAAE,CAAC,EACrE7J,EAAK,aAAa,aAAa4J,EAAE,EAAGC,EAAI,EAAE,EAAG,aAAa/J,EAAI+J,EAAI,EAAE,CAAC,EAC3E,OAAO3J,EAAM,aAAa,aAAaL,EAAIgK,EAAI,EAAE,EAAG,aAAa9J,EAAI8J,EAAI,EAAE,CAAC,EAAG,aAAa,aAAahK,EAAIgK,EAAI,EAAE,EAAG,aAAa9J,EAAI8J,EAAI,EAAE,CAAC,EAAG7J,CAAE,CACpJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,MACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,MACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,KACA,KACA,IACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,UAAW,IAAME,CAAM,CACrC,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACd,SAASrF,GAAuB+O,EAAOC,EAAc,OAAQC,EAAY,OAAQ,CAChF,IAAMC,EAAWvO,GAAoB,EAAI,GAAK,GACxCwO,EAAWxO,GAAoB,EAAI,IAAM,IACzCyO,EAAazO,GAAoB,EAAI,IAAM,IACjD,OAAOuE,EAAgB,GAAG,CACzBoB,EACAnH,GACAiG,CACD,EAAGiK,CAAK,GAAoBhK,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiK,EAAKR,EAAKS,IAAW,CAClI,UACA,IAAMC,EAAMrK,EAAM,aAAamK,EAAI,EAAG,EAAE,EAAG,aAAa,GAAIA,EAAI,CAAC,EAAG,IAAI,EAClEG,EAAMtK,EAAM,EAAG,EAAG,CAAC,EACnBuK,EAAK9N,GAAW4N,EAAKV,CAAG,EACxBa,EAAK/N,GAAW6N,EAAKX,CAAG,EACxBc,EAAQC,EAAInJ,EAAM,aAAa6I,EAAQnK,EAAIgK,CAAU,CAAC,EAAGhK,EA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4B,GAAQ,CACpB,CACD,CACA,OAAO9C,EAAMgB,EAAUC,EAAUC,EAAUC,CAAS,CACrD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,MAAO,KAAK,CACd,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,MAAO,KAAK,CACd,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,SACA,IACA,CACC,EACA,QACA,CAAC,YAAY,CACd,CACD,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,UACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,UACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,IACA,QACD,EACA,CACC,GACA,QACA,QACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,IAAI,CACd,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CAAC,EAAE,CAAC,CAAC,CACT,EACA,CACC,GACA,CACC,EACA,IACA,IACA,MACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,EACA,CACC,EACA,QACA,IACA,GACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,OAAO,CAAC,CACpB,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,WACA,MACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,YACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,OACD,EACA,CACC,GACA,MACA,GACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,KAAK,CACP,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,KACD,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,KACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,QACD,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,WAAW,CAClB,EACA,CAAC,EAAG,CACH,CACC,GACA,UACA,KACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,KAAK,CACP,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,EACA,CACC,EACA,UACA,IACA,KACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,MACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,CACD,CAAC,CACF,EACA,CACC,GACA,MACA,SACD,EACA,CACC,GACA,MACA,KACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,KAAK,CACP,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,KACD,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,KACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,MAAM,CACb,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,OACA,IACA,QACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,EACA,CACC,GACA,CACC,EACA,IACA,IACA,MACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,EACA,CACC,EACA,QACA,IACA,GACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,OAAO,CAAC,CACpB,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,MACA,OACD,EACA,CACC,GACA,MACA,GACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,KAAK,CACP,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,KACD,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,KACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,CACC,EACA,QACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,QACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,YACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,YACA,IACA,QACD,EACA,CACC,GACA,CACC,EACA,cACA,MACA,CAAC,IAAK,KAAK,CACZ,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,CACC,EACA,cACA,MACA,CAAC,IAAK,WAAW,CAClB,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CAAC,EAAG,OAAO,CACZ,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,CACC,UACA,UACA,CACC,EACA,OACA,KACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CACC,WACA,UACA,CACC,EACA,MACA,KACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,WACA,YACA,CACC,EACA,MACA,KACA,MACD,CACD,CACD,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,WACA,WACA,WACA,WACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMrL,EACjB,WAAc,IAAMvD,GACpB,QAAS,IAAMiO,EACf,YAAa,IAAMnJ,EACnB,QAAS,IAAMtB,EACf,WAAc,IAAMgK,EACpB,SAAY,IAAMF,EAClB,SAAY,IAAMC,EAClB,UAAW,IAAMhD,GACjB,WAAY,IAAM1E,GAClB,UAAW,IAAMxB,EACjB,MAAS,IAAM8I,EACf,UAAW,IAAM5I,GACjB,UAAa,IAAM8I,EACnB,YAAe,IAAMD,EACrB,UAAW,IAAMnJ,EACjB,UAAW,IAAMS,EACjB,aAAc,IAAMU,EACpB,UAAW,IAAMqI,CAClB,CACD,CAAC,GAAKhK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,iBAAiB,CACxC,CACA,SAAStF,IAAqBgP,EAAOC,EAAc,OAAQC,EAAY,OAAQ,CAC9E,OAAOjP,GAAuB+O,EAAOC,EAAaC,CAAS,CAC5D,CACA,IAAMvP,GAA0B,cAC1BC,GAAuB,KAC7B,SAASgC,IAA4B,CACpC,OAAOhB,GAAoB,EAAI,IAAMhB,EACtC,CACA,IAAIyS,IAAqB,CACxB,IACA,IACA,IACA,IACA,IACA,IACA,IACA,KACA,KACA,IACD,EACA,SAAS5Q,GAAsB6Q,EAAQC,EAAQvV,EAAOwV,EAAsBC,EAAQC,EAAS,CAC5F,GAAI,EAAEF,EAAuB,IAAM,EAAExV,EAAQ,GAAI,OAAOyV,EACxD,IAAME,EAAiB/R,GAAoB,EAAI,GAAK,EAC9CgS,EAAW,KAAK,IAAIN,EAAQC,CAAM,EAAIvV,EAAQwV,EAAuBG,EACvEE,EAAMJ,EACV,QAAW9K,KAAK0K,IAAoB,CACnC,GAAI1K,EAAI8K,EAAQ,MAChB,GAAI9K,GAAKiL,EAAU,CAClBC,EAAMlL,EACN,KACD,CACD,CACA,OAAI+K,EAAU,GAAKG,EAAMH,GAAWE,EAAWF,EAAU,MAAKG,EAAM,KAAK,IAAIH,EAASD,CAAM,GACrFI,CACR,CACA,IAAM1T,IAA+B,WAAW,uBAA0B4K,GAAMA,IAAI8E,GAAO,CAC1F,IAAKiE,GAAM,GAAIC,GAAK,GAAI3T,EAAS,CAAC,EAClC,OAAQiG,EACR,MAAOA,EACP,MAAOA,EACP,QAASA,EACT,QAASA,EACT,UAAW2N,EACX,GAAI3N,EACJ,GAAIA,EACJ,GAAIA,EACJ,GAAIA,EACJ,IAAKD,EACL,IAAKA,EACL,IAAKA,EACL,IAAKA,EACL,IAAKA,EACL,IAAKA,EACL,IAAKA,EACL,IAAKA,CACN,CAAC,EAAG,aAAa,EACjB,SAASrE,IAA4B,CACpC,MAAO,CACN,QAAyB,WAAW,uBAA0BgJ,GAAMA,IAAI5E,EAAgB,gBAAgB,CACvG,MAAO,CAAE,eAAgB8N,GAAiBtT,GAAyB,YAAY,CAAE,EACjF,OAAQ,CAAE,QAASR,EAAY,CAChC,CAAC,EAAG,QAAQ,EACZ,YAAAA,EACD,CACD,CACA,SAASe,GAA2BgT,EAAQC,EAAS,CACpD,OAAOhO,EAAgB,GAAG,CAAC6N,EAAKA,CAAG,CAAC,GAAoB1N,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACrI,EAAIC,IAAO,CACpJ,UACA,IAAMqI,EAAI2N,EAAO,EAAE,OACbE,EAAa/N,EAAIE,EAAE,SAAS,EAC5B8N,EAAQF,EAAQ5M,EAAM,aAAahB,EAAE,QAAS,aAAa,aAAa,aAAaF,EAAIpI,CAAE,EAAG,EAAE,EAAGmW,CAAU,EAAG7N,EAAE,KAAK,CAAC,EAAG,aAAaA,EAAE,QAAS,aAAa,aAAa,aAAaF,EAAInI,CAAE,EAAG,EAAE,EAAGkW,CAAU,EAAG7N,EAAE,KAAK,CAAC,CAAC,EAAGA,EAAE,IAAKA,EAAE,MAAM,EACtP+N,GAAaJ,EAAO,EAAE,MAAOK,GAAMtW,EAAIC,CAAE,EAAGmW,CAAK,CAClD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,WACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,YACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,YACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,KACA,CACC,EACA,IACA,KACD,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,OACD,CACD,CACD,CAAC,CACF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GAAI,CAAC,CAAC,EAC/CW,GAAO/P,EAAM2P,GAAMlQ,GAAIA,GAAIsP,EAAI,EAAGC,EAAI,CAAC,EAAGvP,GAAI0P,GAAI,EAAGC,GAAI,CAAC,CAAC,EAAG7P,EAAIA,EAAIwP,EAAI,EAAGC,EAAI,CAAC,EAAGzP,EAAI4P,GAAI,EAAGC,GAAI,CAAC,CAAC,CAAC,EACvGY,GAAQ,aAAahQ,EAAM0P,GAAMG,GAAMC,EAAI,EAAGrC,CAAW,EAC/D,OAAO9E,EAAMtF,EAAI2M,GAAOzQ,EAAI,aAAaV,GAAOe,EAAM,aAAa0N,EAAG,EAAG,EAAE,EAAG,aAAaA,EAAG,EAAG,EAAE,CAAC,CAAC,EAAG1O,EAAE,MAAM,EAAGoR,EAAK,EAAGC,GAAWvR,EAAI,CAAC,EAAG,IAAK+O,CAAW,CAAC,EAAGmC,GAAG,EAAGA,GAAG,EAAGG,EAAI,CACnL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,eACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,CACC,EACA,IACA,SACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAM,CACN,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,IAAI,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,IAAI,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,IAAI,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAM,CACN,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAM,CACN,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,OACA,OACA,MACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,YACA,CACC,OACA,OACA,MACD,CACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF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IACA,SACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,IAAI,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAM,CACN,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,QACA,CACC,EACA,UACA,CAAC,UAAW,OAAO,CACpB,EACA,CACC,EACA,iBACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CAAC,EAAG,MAAM,EACV,aACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,OACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAgB,IAAM/C,EACtB,YAAa,IAAM7M,EACnB,aAAc,IAAMnB,GACpB,UAAW,IAAMe,EACjB,YAAa,IAAMgE,GACnB,WAAc,IAAMmJ,EACpB,UAAW,IAAM1J,EACjB,UAAW,IAAM9D,EACjB,iBAAkB,IAAM0Q,GACxB,QAAS,IAAMvR,EACf,UAAW,IAAMiK,CAClB,CACD,CAAC,GAAKhK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,iBAAiB,EACvC,aAAA7F,EACD,CACD,CACA,SAASe,GAA6BwW,EAAM9D,EAAQ+D,EAAQC,EAA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ACA,CACC,EACA,UACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,OACA,OACA,MACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,YACA,CACC,OACA,OACA,MACD,CACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,QACA,CACC,EACA,UACA,CAAC,UAAW,OAAO,CACpB,EACA,CACC,EACA,iBACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CAAC,EAAG,MAAM,EACV,aACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,OACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM/P,EACnB,aAAc,IAAMnB,GACpB,UAAW,IAAMe,EACjB,YAAa,IAAMgE,GACnB,QAAS,IAAMyI,EACf,QAAS,IAAM3N,EACf,kBAAmB,IAAM2O,GACzB,UAAW,IAAMT,GACjB,UAAW,IAAMvJ,EACjB,UAAW,IAAM5D,GACjB,UAAW,IAAMF,EACjB,iBAAkB,IAAM0Q,GACxB,UAAW,IAAMtH,CAClB,CACD,CAAC,GAAKhK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgB,EACtC,mBAAoBH,EAAgB,GAAG,CACtCoB,EACAkN,GAAUpO,CAAG,EACbA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGiK,CAAK,GAAoBhK,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC2O,EAAIZ,EAAOsE,EAASC,EAASC,EAAOC,EAAO1E,EAAY5D,IAAW,CAC/K,UACA,IAAM0E,EAAMvN,EAAMsN,EAAG,EAAG0D,EAAS,aAAaA,EAASE,CAAK,CAAC,EACvD1D,EAAMxN,EAAMsN,EAAG,EAAG2D,EAAS,aAAaA,EAASE,CAAK,CAAC,EACvD1D,EAAc5O,GAAOe,EAAM,aAAa0N,EAAG,EAAGC,CAAG,EAAG,aAAaD,EAAG,EAAGE,CAAG,CAAC,CAAC,EAC5E1L,EAAK,aAAa,aAAa,aAAa,aAAayL,EAAKyD,CAAO,EAAGE,CAAK,EAAGzE,CAAU,EAAG,EAAE,EAC/F1K,EAAK,aAAa,aAAa,aAAa,aAAayL,EAAKyD,CAAO,EAAGE,CAAK,EAAG1E,CAAU,EAAG,EAAE,EAC/FiB,EAAK9J,GAAM9B,CAAE,EACb6L,EAAK/J,GAAM7B,CAAE,EACb6L,EAAK,aAAa9L,EAAI4L,CAAE,EACxBG,EAAK,aAAa9L,EAAI4L,CAAE,EACxBG,EAAM,aAAaF,EAAIA,CAAE,EACzBG,EAAM,aAAaD,EAAKF,CAAE,EAC1BI,EAAM,aAAa,aAAa,aAAaD,EAAK,GAAG,EAAGD,CAAG,EAAG,aAAaF,EAAI,EAAE,CAAC,EAClFK,EAAM,aAAa,aAAa,aAAaF,EAAK,GAAG,EAAG,aAAaD,EAAK,GAAG,CAAC,EAAG,CAAC,EAClFI,EAAM,aAAa,aAAa,aAAaH,EAAK,IAAI,EAAG,aAAaD,EAAK,CAAC,CAAC,EAAG,aAAaF,EAAI,EAAE,CAAC,EACpGO,EAAM,aAAa,aAAaJ,EAAK,EAAE,EAAG,aAAaD,EAAK,EAAE,CAAC,EAC/DM,EAAM,aAAaP,EAAIA,CAAE,EACzBQ,EAAM,aAAaD,EAAKP,CAAE,EAC1BS,EAAM,aAAa,aAAa,aAAaD,EAAK,GAAG,EAAGD,CAAG,EAAG,aAAaP,EAAI,EAAE,CAAC,EAClFU,EAAM,aAAa,aAAa,aAAaF,EAAK,GAAG,EAAG,aAAaD,EAAK,GAAG,CAAC,EAAG,CAAC,EAClFI,EAAM,aAAa,aAAa,aAAaH,EAAK,IAAI,EAAG,aAAaD,EAAK,CAAC,CAAC,EAAG,aAAaP,EAAI,EAAE,CAAC,EACpGY,EAAM,aAAa,aAAaJ,EAAK,EAAE,EAAG,aAAaD,EAAK,EAAE,CAAC,EAC/DwD,EAAM,aAAa,EAAGhE,CAAE,EACxBiE,EAAM,aAAa,aAAa,aAAaD,EAAKA,CAAG,EAAGA,CAAG,EAAG,SAAS,EACvEE,EAAM,aAAa,aAAa,aAAa/D,EAAK,EAAE,EAAGD,CAAG,EAAG,SAAS,EACtEiE,EAAM,aAAa,aAAa,aAAa,aAAahE,EAAK,GAAG,EAAG,aAAaD,EAAK,EAAE,CAAC,EAAG,aAAaF,EAAI,EAAE,CAAC,EAAG,SAAS,EAC7HoE,GAAM,aAAajE,EAAK,SAAS,EACjCkE,GAAO,aAAa,aAAaL,EAAKA,CAAG,EAAG,GAAG,EAC/CM,GAAO,aAAa,aAAapE,EAAK,GAAG,EAAG,aAAaF,EAAI,CAAC,CAAC,EAC/DuE,GAAO,aAAa,aAAa,aAAarE,EAAK,IAAI,EAAGF,CAAE,EAAG,EAAE,EACjEwE,GAAO,aAAatE,EAAK,EAAE,EAC3BuE,GAAM,aAAa,EAAGxE,CAAE,EACxByE,GAAM,aAAa,aAAa,aAAaD,GAAKA,EAAG,EAAGA,EAAG,EAAG,SAAS,EACvEE,GAAM,aAAa,aAAa,aAAalE,EAAK,EAAE,EAAGD,CAAG,EAAG,SAAS,EACtEoE,GAAM,aAAa,aAAa,aAAa,aAAanE,EAAK,GAAG,EAAG,aAAaD,EAAK,EAAE,CAAC,EAAG,aAAaP,EAAI,EAAE,CAAC,EAAG,SAAS,EAC7H4E,GAAM,aAAapE,EAAK,SAAS,EACjCqE,GAAO,aAAa,aAAaL,GAAKA,EAAG,EAAG,GAAG,EAC/CM,GAAO,aAAa,aAAavE,EAAK,GAAG,EAAG,aAAaP,EAAI,CAAC,CAAC,EAC/D+E,GAAO,aAAa,aAAa,aAAaxE,EAAK,IAAI,EAAGP,CAAE,EAAG,EAAE,EACjEgF,GAAO,aAAazE,EAAK,EAAE,EAC3BlB,GAAO,aAAaT,EAAY,CAAC,EACjC2E,GAAM/E,EAAIrM,EAAM,aAAa0N,EAAI,CAAC,EAAGhP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EAClDmE,GAAMhF,EAAIrM,EAAM0N,EAAIhP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EACjCoE,GAAMjF,EAAIrM,EAAM,aAAa0N,EAAI,CAAC,EAAGhP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EAClDqE,GAAMlF,EAAIrM,EAAM,aAAa0N,EAAI,CAAC,EAAGhP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EAClDsE,GAAMnF,EAAIrM,EAAM,aAAa2N,EAAI,CAAC,EAAGjP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EAClDuE,GAAMpF,EAAIrM,EAAM2N,EAAIjP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EACjCwE,GAAMrF,EAAIrM,EAAM,aAAa2N,EAAI,CAAC,EAAGjP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EAClDyE,GAAMtF,EAAIrM,EAAM,aAAa2N,EAAI,CAAC,EAAGjP,EAAI,CAAC,EAAGwO,EAAI,CAAC,EAClDwB,GAAMrB,GAAYX,EAAOE,GAAMwE,GAAKI,EAAG,EAAG,CAAC,EAC3C7C,GAAMtB,GAAYX,EAAOE,GAAMyE,GAAKG,EAAG,EAAG,CAAC,EAC3C5C,GAAMvB,GAAYX,EAAOE,GAAM0E,GAAKE,EAAG,EAAG,CAAC,EAC3C3C,GAAMxB,GAAYX,EAAOE,GAAM2E,GAAKC,EAAG,EAAG,CAAC,EAC3C1C,GAAMzB,GAAYX,EAAOE,GAAMwE,GAAKK,EAAG,EAAG,CAAC,EAC3C1C,GAAM1B,GAAYX,EAAOE,GAAMyE,GAAKI,EAAG,EAAG,CAAC,EAC3CzC,GAAM3B,GAAYX,EAAOE,GAAM0E,GAAKG,EAAG,EAAG,CAAC,EAC3CxC,GAAM5B,GAAYX,EAAOE,GAAM2E,GAAKE,EAAG,EAAG,CAAC,EAC3CvC,GAAM7B,GAAYX,EAAOE,GAAMwE,GAAKM,EAAG,EAAG,CAAC,EAC3CvC,GAAM9B,GAAYX,EAAOE,GAAMyE,GAAKK,EAAG,EAAG,CAAC,EAC3CtC,GAAM/B,GAAYX,EAAOE,GAAM0E,GAAKI,EAAG,EAAG,CAAC,EAC3CrC,GAAMhC,GAAYX,EAAOE,GAAM2E,GAAKG,EAAG,EAAG,CAAC,EAC3CpC,GAAMjC,GAAYX,EAAOE,GAAMwE,GAAKO,EAAG,EAAG,CAAC,EAC3CpC,GAAMlC,GAAYX,EAAOE,GAAMyE,GAAKM,EAAG,EAAG,CAAC,EAC3CnC,GAAMnC,GAAYX,EAAOE,GAAM0E,GAAKK,EAAG,EAAG,CAAC,EAC3ClC,GAAMpC,GAAYX,EAAOE,GAAM2E,GAAKI,EAAG,EAAG,CAAC,EAC3CjC,GAAO,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAahB,GAAI,EAAGV,CAAG,EAAGM,CAAG,EAAG,aAAa,aAAaK,GAAI,EAAGV,CAAG,EAAGK,CAAG,CAAC,EAAG,aAAa,aAAaM,GAAI,EAAGV,CAAG,EAAGI,CAAG,CAAC,EAAG,aAAa,aAAaO,GAAI,EAAGV,CAAG,EAAGG,CAAG,CAAC,EAAG,aAAa,aAAaQ,GAAI,EAAGd,CAAG,EAAGO,CAAG,CAAC,EAAG,aAAa,aAAaQ,GAAI,EAAGd,CAAG,EAAGM,CAAG,CAAC,EAAG,aAAa,aAAaS,GAAI,EAAGd,CAAG,EAAGK,CAAG,CAAC,EAAG,aAAa,aAAaU,GAAI,EAAGd,CAAG,EAAGI,CAAG,CAAC,EAAG,aAAa,aAAaW,GAAI,EAAGlB,CAAG,EAAGQ,CAAG,CAAC,EAAG,aAAa,aAAaW,GAAI,EAAGlB,CAAG,EAAGO,CAAG,CAAC,EAAG,aAAa,aAAaY,GAAI,EAAGlB,CAAG,EAAGM,CAAG,CAAC,EAAG,aAAa,aAAaa,GAAI,EAAGlB,CAAG,EAAGK,CAAG,CAAC,EAAG,aAAa,aAAac,GAAI,EAAGtB,CAAG,EAAGS,CAAG,CAAC,EAAG,aAAa,aAAac,GAAI,EAAGtB,CAAG,EAAGQ,CAAG,CAAC,EAAG,aAAa,aAAae,GAAI,EAAGtB,CAAG,EAAGO,CAAG,CAAC,EAAG,aAAa,aAAagB,GAAI,EAAGtB,CAAG,EAAGM,CAAG,CAAC,EACt6BkB,GAAO,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAajB,GAAI,EAAGV,CAAG,EAAGM,CAAG,EAAG,aAAa,aAAaK,GAAI,EAAGV,CAAG,EAAGK,CAAG,CAAC,EAAG,aAAa,aAAaM,GAAI,EAAGV,CAAG,EAAGI,CAAG,CAAC,EAAG,aAAa,aAAaO,GAAI,EAAGV,CAAG,EAAGG,CAAG,CAAC,EAAG,aAAa,aAAaQ,GAAI,EAAGd,CAAG,EAAGO,CAAG,CAAC,EAAG,aAAa,aAAaQ,GAAI,EAAGd,CAAG,EAAGM,CAAG,CAAC,EAAG,aAAa,aAAaS,GAAI,EAAGd,CAAG,EAAGK,CAAG,CAAC,EAAG,aAAa,aAAaU,GAAI,EAAGd,CAAG,EAAGI,CAAG,CAAC,EAAG,aAAa,aAAaW,GAAI,EAAGlB,CAAG,EAAGQ,CAAG,CAAC,EAAG,aAAa,aAAaW,GAAI,EAAGlB,CAAG,EAAGO,CAAG,CAAC,EAAG,aAAa,aAAaY,GAAI,EAAGlB,CAAG,EAAGM,CAAG,CAAC,EAAG,aAAa,aAAaa,GAAI,EAAGlB,CAAG,EAAGK,CAAG,CAAC,EAAG,aAAa,aAAac,GAAI,EAAGtB,CAAG,EAAGS,CAAG,CAAC,EAAG,aAAa,aAAac,GAAI,EAAGtB,CAAG,EAAGQ,CAAG,CAAC,EAAG,aAAa,aAAae,GAAI,EAAGtB,CAAG,EAAGO,CAAG,CAAC,EAAG,aAAa,aAAagB,GAAI,EAAGtB,CAAG,EAAGM,CAAG,CAAC,EACt6BqE,GAAQ,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAapE,GAAI,EAAGuD,EAAI,EAAGK,EAAG,EAAG,aAAa,aAAa3D,GAAI,EAAGuD,EAAI,EAAGI,EAAG,CAAC,EAAG,aAAa,aAAa1D,GAAI,EAAGuD,EAAI,EAAGG,EAAG,CAAC,EAAG,aAAa,aAAazD,GAAI,EAAGuD,EAAI,EAAGE,EAAG,CAAC,EAAG,aAAa,aAAaxD,GAAI,EAAGmD,EAAI,EAAGM,EAAG,CAAC,EAAG,aAAa,aAAaxD,GAAI,EAAGmD,EAAI,EAAGK,EAAG,CAAC,EAAG,aAAa,aAAavD,GAAI,EAAGmD,EAAI,EAAGI,EAAG,CAAC,EAAG,aAAa,aAAatD,GAAI,EAAGmD,EAAI,EAAGG,EAAG,CAAC,EAAG,aAAa,aAAarD,GAAI,EAAG+C,EAAI,EAAGO,EAAG,CAAC,EAAG,aAAa,aAAarD,GAAI,EAAG+C,EAAI,EAAGM,EAAG,CAAC,EAAG,aAAa,aAAapD,GAAI,EAAG+C,EAAI,EAAGK,EAAG,CAAC,EAAG,aAAa,aAAanD,GAAI,EAAG+C,EAAI,EAAGI,EAAG,CAAC,EAAG,aAAa,aAAalD,GAAI,EAAG2C,EAAI,EAAGQ,EAAG,CAAC,EAAG,aAAa,aAAalD,GAAI,EAAG2C,EAAI,EAAGO,EAAG,CAAC,EAAG,aAAa,aAAajD,GAAI,EAAG2C,EAAI,EAAGM,EAAG,CAAC,EAAG,aAAa,aAAahD,GAAI,EAAG2C,EAAI,EAAGK,EAAG,CAAC,EACv7BM,GAAQ,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAa,aAAarE,GAAI,EAAGmD,CAAG,EAAGa,EAAI,EAAG,aAAa,aAAa/D,GAAI,EAAGmD,CAAG,EAAGY,EAAI,CAAC,EAAG,aAAa,aAAa9D,GAAI,EAAGmD,CAAG,EAAGW,EAAI,CAAC,EAAG,aAAa,aAAa7D,GAAI,EAAGmD,EAAG,EAAGU,EAAI,CAAC,EAAG,aAAa,aAAa5D,GAAI,EAAG+C,CAAG,EAAGc,EAAI,CAAC,EAAG,aAAa,aAAa5D,GAAI,EAAG+C,CAAG,EAAGa,EAAI,CAAC,EAAG,aAAa,aAAa3D,GAAI,EAAG+C,CAAG,EAAGY,EAAI,CAAC,EAAG,aAAa,aAAa1D,GAAI,EAAG+C,EAAG,EAAGW,EAAI,CAAC,EAAG,aAAa,aAAazD,GAAI,EAAG2C,CAAG,EAAGe,EAAI,CAAC,EAAG,aAAa,aAAazD,GAAI,EAAG2C,CAAG,EAAGc,EAAI,CAAC,EAAG,aAAa,aAAaxD,GAAI,EAAG2C,CAAG,EAAGa,EAAI,CAAC,EAAG,aAAa,aAAavD,GAAI,EAAG2C,EAAG,EAAGY,EAAI,CAAC,EAAG,aAAa,aAAatD,GAAI,EAAGuC,CAAG,EAAGgB,EAAI,CAAC,EAAG,aAAa,aAAatD,GAAI,EAAGuC,CAAG,EAAGe,EAAI,CAAC,EAAG,aAAa,aAAarD,GAAI,EAAGuC,CAAG,EAAGc,EAAI,CAAC,EAAG,aAAa,aAAapD,GAAI,EAAGuC,EAAG,EAAGa,EAAI,CAAC,EACv7BhD,GAAOpQ,GAAIA,GAAIsP,GAAI,EAAGC,GAAI,CAAC,EAAGvP,GAAI0P,GAAI,EAAGC,GAAI,CAAC,CAAC,EAC/CU,GAAOvQ,EAAIA,EAAIwP,GAAI,EAAGC,GAAI,CAAC,EAAGzP,EAAI4P,GAAI,EAAGC,GAAI,CAAC,CAAC,EAC/CW,GAAO/P,EAAM2P,GAAMlQ,GAAIA,GAAIsP,GAAI,EAAGC,GAAI,CAAC,EAAGvP,GAAI0P,GAAI,EAAGC,GAAI,CAAC,CAAC,EAAG7P,EAAIA,EAAIwP,GAAI,EAAGC,GAAI,CAAC,EAAGzP,EAAI4P,GAAI,EAAGC,GAAI,CAAC,CAAC,CAAC,EACvG4D,GAAQ,aAAa,aAAa,aAAalD,GAAMD,EAAI,EAAG,EAAE,EAAG,IAAI,EACrEoD,GAAOjT,EAAM,aAAa,aAAa,aAAa,aAAa8P,GAAMJ,EAAI,EAAGsD,EAAK,EAAG,EAAE,EAAG,EAAE,EAAG,EAAG,CAAC,EACpGE,GAAO,aAAa7P,EAAIyM,GAAMJ,GAAMuD,EAAI,EAAG,aAAa,aAAaD,GAAOC,EAAI,EAAG,aAAa,EAAGA,EAAI,CAAC,CAAC,EACzGE,GAAOnT,EAAM,aAAa,aAAa,aAAa,aAAakT,GAAMrD,EAAI,EAAGmD,EAAK,EAAG,EAAE,EAAG,EAAE,EAAG,EAAG,CAAC,EACpGI,GAAQ,aAAa/P,EAAIwM,GAAMqD,GAAMC,EAAI,EAAG,aAAa,aAAaH,GAAOG,EAAI,EAAG,aAAa,EAAGA,EAAI,CAAC,CAAC,EAC1GnD,GAAQ,aAAaoD,GAAO3F,CAAW,EACvC4F,GAAOhQ,EAAI2M,GAAOzQ,EAAI,aAAaV,GAAOe,EAAM,aAAa0N,EAAG,EAAG,EAAE,EAAG,aAAaA,EAAG,EAAG,EAAE,CAAC,CAAC,EAAGzE,CAAM,EAAGmH,EAAK,EAAGC,GAAWvR,EAAI,CAAC,EAAG,IAAK+O,CAAW,CAAC,EACvJ6F,GAAUhT,EAAO5B,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGS,EAAI,aAAamO,EAAG,EAAGC,CAAG,CAAC,EAAI,IAAI,EACpEgG,GAAUjT,EAAO5B,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGS,EAAI,aAAamO,EAAG,EAAGE,CAAG,CAAC,EAAI,IAAI,EACpEgG,GAAS,aAAa,EAAGjU,EAAIkO,EAAa,IAAI,CAAC,EACrD,OAAO9E,EAAM0K,GAAM,aAAa,aAAa,aAAaP,GAAO,aAAarG,EAAYyE,CAAK,CAAC,EAAGoC,EAAO,EAAG,aAAa,aAAahG,EAAG,EAAGC,CAAG,EAAGiG,EAAM,CAAC,EAAG,aAAa,aAAa,aAAaT,GAAO,aAAatG,EAAY0E,CAAK,CAAC,EAAGoC,EAAO,EAAG,aAAa,aAAajG,EAAG,EAAGE,CAAG,EAAGgG,EAAM,CAAC,EAAGzD,EAAI,CAC5S,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,UACA,CACC,EACA,UACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,UACA,CACC,EACA,UACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,OACA,OACA,MACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,UAAU,CACf,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,CACC,OACA,OACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,MACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,UACA,CACC,OACA,OACA,MACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,MACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,QACA,CACC,EACA,UACA,CAAC,UAAW,OAAO,CACpB,EACA,CACC,EACA,iBACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CAAC,EAAG,MAAM,EACV,aACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,SAAS,CAAC,CAC/B,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,aACA,IACA,OACD,CACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,aACA,IACA,OACD,CACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EACA,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CD,EACA,UACA,CACC,EACA,UACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,UACA,CACC,EACA,UACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAA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AC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,YACD,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,kBACA,CACC,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,QACA,CACC,EACA,UACA,CAAC,UAAW,OAAO,CACpB,EACA,CACC,EACA,iBACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CAAC,EAAG,MAAM,EACV,aACD,CACD,CACD,CACD,CACD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uD,GAAYgD,GAAGgX,GAAG,GAAIA,GAAG,GAAIA,GAAG,GAAIA,GAAG,IAAI,EAAGA,GAAG,GAAIA,GAAG,IAAI,EAAGA,GAAG,IAAI,EAAGA,GAAG,IAAI,EAAGA,GAAG,IAAI,EAAGA,GAAG,IAAI,EAAGA,GAAG,IAAI,CAAC,EAChJtZ,GAASsC,GAAGgX,GAAG,EAAE,CAC9B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,KACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EAAG,CACF,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,QAAQ,CACf,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,SAAS,CAChB,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,cAAc,CACrB,EACA,CAAC,GAAI,CACJ,EACA,eACA,CAAC,IAAK,CACL,EACA,KACA,IACD,CAAC,CACF,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,YAAY,CACnB,EACA,CAAC,GAAI,CACJ,EACA,kBACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,WAAW,CAClB,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,QAAQ,CACf,EACA,CAAC,GAAI,CACJ,EACA,eACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,WAAW,CAClB,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,SAAS,CAChB,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,aAAa,CACpB,EACA,CAAC,GAAI,CACJ,EACA,cACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,WAAW,CAClB,EACA,CAAC,GAAI,CACJ,EACA,WACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,QAAQ,CACf,EACA,CAAC,GAAI,CACJ,EACA,SACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,OAAO,CACd,EACA,CAAC,GAAI,CACJ,EACA,QACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,SAAS,CAChB,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,QACA,CAAC,aAAa,CACf,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,aAAa,CACpB,EACA,CAAC,GAAI,CACJ,EACA,cACA,CACC,IACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,KACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,gBAAgB,CACvB,EACA,CAAC,GAAI,CACJ,EACA,iBACA,CAAC,IAAK,CACL,EACA,KACA,IACD,CAAC,CACF,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,cAAc,CACrB,EACA,CAAC,GAAI,CACJ,EACA,cACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,UAAU,CACjB,EACA,CAAC,GAAI,CACJ,EACA,WACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,QAAQ,CACf,EACA,CAAC,GAAI,CACJ,EACA,eACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,CACD,CACD,CAAC,EACD,CACC,GACA,CACC,EACA,YACA,MACA,CAAC,IAAK,aAAa,CACpB,EACA,CAAC,GAAI,CACJ,EACA,cACA,CACC,IACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,CACD,CACD,CAAC,EACD,CAAC,GAAI,CACJ,EACA,WACA,CAAC,IAAK,CACL,EACA,KACA,IACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CA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OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,KACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,WACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,WACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,WACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,WACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,WACD,EACA,IACA,OACD,CACD,EACA,CACC,G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C,EAAG,KAAK,CACV,EAAG,CACF,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,WACA,CACC,KACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,QACA,IACA,OACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMiN,EAChB,UAAW,IAAM3M,EACjB,SAAY,IAAM2Z,EAClB,UAAW,IAAMpa,EACjB,UAAW,IAAMM,GACjB,UAAW,IAAMF,EACjB,QAAS,IAAMb,EACf,aAAc,IAAMG,EACrB,CACD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,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,UAAW,IAAMrD,CAAM,CACrC,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,mBAAmB,EACnChE,GAAiB6D,EAAgB,GAAG,CACzCC,EACAkK,EACAA,EACAA,EACAjK,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGwb,EAAKC,EAAKC,EAAMC,IAAO,CACrI,UACA,OAAO,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CC,GACA,KACA,CACC,EACA,oBACA,CACC,IACA,MACA,KACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,mBAAmB,CACxB,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,IAAK,CACL,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,GACD,EAAG,UAAU,CACd,EACA,IACA,CAAC,EAAG,mBAAmB,CACxB,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,kBAAqB,IAAM5gB,GAC3B,YAAa,IAAM0J,GACnB,aAAc,IAAM5E,GACpB,UAAW,IAAMe,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgB,EAChCnE,GAAcgE,EAAgB,GAAG,CACtCC,EACAkK,EACAA,EACAA,EACAjK,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGwb,EAAKC,EAAKO,EAAKL,IAAO,CACpI,UACA,IAAMG,EAAK3gB,GAAkB6E,EAAGwb,EAAKC,CAAG,EAClCpb,EAAW2b,EAAI,EACf1b,EAAK,aAAa,aAAaC,EAAIub,EAAG,CAAC,EAAGL,EAAI,CAAC,EAAGpb,CAAQ,EAC1DG,EAAK,aAAa,aAAaD,EAAIub,EAAG,CAAC,EAAGL,EAAI,CAAC,EAAGpb,CAAQ,EAC1DI,EAAK,aAAa,aAAaF,EAAIub,EAAG,CAAC,EAAGE,EAAI,CAAC,EAAG3b,CAAQ,EAC1DK,EAAQT,GAAOJ,EAAMc,EAAIL,EAAIR,EAAI,CAAC,CAAC,EAAGa,EAAIH,EAAIV,EAAI,CAAC,CAAC,EAAGa,EAAIF,EAAIX,EAAI,CAAC,CAAC,CAAC,CAAC,EACvEc,EAAQC,GAAIF,EAAIL,EAAIK,EAAIH,EAAIC,CAAE,CAAC,EAAGX,EAAI,CAAC,CAAC,EAC9C,OAAO,aAAa,aAAaY,EAAOE,CAAK,EAAGP,CAAQ,CACzD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,oBACA,CACC,IACA,MACA,KACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,UACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,kBAAqB,IAAMlF,GAC3B,UAAW,IAAMoF,EACjB,aAAc,IAAMN,GACpB,UAAW,IAAMJ,EACjB,UAAW,IAAMc,EACjB,QAAS,IAAMb,EACf,UAAW,IAAMe,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,aAAa,EAC7BzF,GAAYsF,EAAgB,GAAG,CACpCC,EACAA,EACAkK,EACAA,EACAA,EACAjK,CACD,EAAGkB,CAAK,GAAoBjB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC3G,EAAGlC,EAAGskB,EAAKC,EAAKO,EAAKL,IAAO,CACzI,UACA,IAAMG,EAAK3gB,GAAkB/B,EAAGoiB,EAAKC,CAAG,EAClCQ,EAAK9gB,GAAkBjE,EAAGskB,EAAKC,CAAG,EAClCS,EAAKrc,EAAMU,EAAI0b,EAAG,CAAC,EAAG1b,EAAI0b,EAAG,CAAC,EAAG1b,EAAI0b,EAAG,CAAC,CAAC,EAC1C/b,EAAKub,EAAI,EACTtb,EAAKsb,EAAI,EACTrb,EAAK4b,EAAI,EACTG,EAAS,aAAa,GAAIxb,EAAIR,EAAIC,CAAE,CAAC,EACrCgc,EAAS,aAAa,GAAIzb,EAAIT,EAAIE,CAAE,CAAC,EACrCic,EAAS,aAAa,GAAI1b,EAAIT,EAAIC,CAAE,CAAC,EACrCmc,EAAMtb,EAAM,aAAa,aAAa8a,EAAG,EAAGK,CAAM,EAAG,EAAE,EAAG,aAAa,aAAaL,EAAG,EAAGK,CAAM,EAAG,EAAE,CAAC,EACtGI,EAAMvb,EAAM,aAAa,aAAa8a,EAAG,EAAGM,CAAM,EAAG,EAAE,EAAG,aAAa,aAAaN,EAAG,EAAGM,CAAM,EAAG,EAAE,CAAC,EACtGI,EAAMxb,EAAM,aAAa,aAAa8a,EAAG,EAAGO,CAAM,EAAG,EAAE,EAAG,aAAa,aAAaP,EAAG,EAAGO,CAAM,EAAG,EAAE,CAAC,EACtGI,EAAS/a,EAAO8a,EAAKF,EAAKJ,EAAG,EAAIA,EAAG,CAAC,EAC3C,OAAOxa,EAAOA,EAAO8a,EAAKD,EAAKL,EAAG,EAAIA,EAAG,CAAC,EAAGO,EAAQP,EAAG,EAAIA,EAAG,CAAC,CACjE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,oBACA,CACC,IACA,MACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,oBACA,CACC,IACA,MACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,MACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,MACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD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C,KAAK,CACP,EACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,EACA,CACC,EACA,UACA,CAAC,SAAS,CACX,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,OAAQ,IAAI,CACd,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,OAAO,CACT,EACA,IACA,WACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CACN,EACA,aACA,CAAC,MAAM,CACR,CAAC,CACF,CAAC,CACF,EACA,IACA,WACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,kBAAqB,IAAM3hB,GAC3B,YAAa,IAAM0J,GACnB,UAAW,IAAMhF,EACjB,UAAW,IAAMsF,GACjB,UAAW,IAAMU,GACjB,UAAW,IAAMgB,GACjB,UAAW,IAAMlG,EACjB,UAAW,IAAMJ,EACjB,QAAS,IAAMT,EACf,aAAc,IAAMG,GACpB,UAAW,IAAMe,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgB,EAChCrE,GAAkBkE,EAAgB,GAAG,CAC1CC,EACAA,EACAkK,EACAA,EACAA,EACAjK,CACD,EAAGkB,CAAK,GAAoBjB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC3G,EAAGwiB,EAAIJ,EAAKC,EAAKC,EAAMC,IAAO,CAC3I,UACA,IAAMG,EAAK3gB,GAAkB/B,EAAGoiB,EAAKC,CAAG,EAClCmB,EAAanB,EAAI,EACjBoB,EAAYpB,EAAI,EAChBsB,EAAMlY,GAAMiX,EAAG,EAAGA,EAAG,CAAC,EACtBkB,EAAQnd,EAAM,aAAasF,GAAI4X,CAAG,EAAGH,CAAU,EAAG,EAAG,aAAa/W,GAAIkX,CAAG,EAAGH,CAAU,CAAC,EACvFK,EAAOpd,EAAM,aAAaic,EAAG,EAAGkB,EAAM,CAAC,EAAG,aAAalB,EAAG,EAAGkB,EAAM,CAAC,EAAG,aAAalB,EAAG,EAAGkB,EAAM,CAAC,CAAC,EAClGE,EAAU,aAAaH,EAAK,EAAE,EAC9BK,EAAQvW,GAAIoW,EAAMpd,EAAM,aAAasF,GAAI4X,CAAG,EAAG5X,GAAI+X,CAAO,CAAC,EAAGrX,GAAIqX,CAAO,EAAG,aAAarX,GAAIkX,CAAG,EAAG5X,GAAI+X,CAAO,CAAC,CAAC,CAAC,EACvH,OAAOlc,EAAM,aAAa,aAAa+b,EAAK,iBAAiB,EAAG,EAAE,EAAG,aAAa,aAAa,aAAaK,EAAOP,CAAS,EAAG,EAAE,EAAG,EAAE,CAAC,CACxI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,oBACA,CACC,IACA,MACA,KACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,YACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,EACA,CACC,EACA,UACA,CAAC,SAAS,CACX,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,OAAQ,IAAI,CACd,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,mBAAmB,CACxB,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,QACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,kBAAqB,IAAM1hB,GAC3B,YAAa,IAAM0J,GACnB,UAAW,IAAMhF,EACjB,UAAW,IAAMsF,GACjB,UAAW,IAAMU,GACjB,UAAW,IAAMgB,GACjB,UAAW,IAAM7F,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,iBAAiB,EACjC9D,GAAwB2D,EAAgB,GAAG,CAChDC,EACAkK,EACAA,EACAA,EACAjK,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGwb,EAAKC,EAAKC,EAAM/iB,IAAM,CACpI,UACA,IAAM2kB,EAAW9B,EAAI,EACf+B,EAAQ/B,EAAI,EACZgC,EAAQhC,EAAI,EACZsB,EAAYrB,EAAI,EAChB9c,EAAQ8c,EAAI,EACZgC,EAAYhC,EAAI,EAChBiC,EAAOvY,GAAImY,CAAQ,EACnBK,EAAO9X,GAAIyX,CAAQ,EACnBM,EAAM,aAAa,aAAa5d,EAAE,EAAG0d,CAAI,EAAG,aAAa1d,EAAE,EAAG2d,CAAI,CAAC,EACnEE,EAAM,aAAa,aAAa,aAAa7d,EAAE,EAAG2d,CAAI,EAAG,EAAE,EAAG,aAAa3d,EAAE,EAAG0d,CAAI,CAAC,EACrFI,EAAa,aAAa,aAAa,aAAaF,EAAKL,CAAK,EAAG5e,CAAK,EAAG,aAAahG,EAAG4iB,EAAyB,CAAC,EACnHtW,EAAKE,GAAI2Y,CAAU,EACnBC,EAAKlY,GAAIiY,CAAU,EACnBE,EAAS,aAAa,aAAaH,EAAK5Y,CAAE,EAAG,aAAajF,EAAE,EAAG+d,CAAE,CAAC,EAClEE,EAAS,aAAa,aAAa,aAAaJ,EAAKE,CAAE,EAAG,EAAE,EAAG,aAAa/d,EAAE,EAAGiF,CAAE,CAAC,EACpFoY,EAAK1c,EAAI,aAAaJ,EAAIyd,CAAM,EAAGR,CAAK,EAAG1d,EAAI,CAAC,CAAC,EACvD,OAAO,aAAa,aAAaG,GAAOe,EAAMqc,EAAIY,CAAM,CAAC,EAAGnB,CAAS,EAAGW,CAAS,CAClF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,OACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,IACA,2BACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,EACA,IACA,OACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,QAAQ,CAChB,CAAC,CACF,EACA,IACA,WACD,EACA,IACA,WACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtY,GACjB,UAAW,IAAMU,GACjB,0BAA6B,IAAM0V,GACnC,UAAW,IAAM5a,EACjB,UAAW,IAAMJ,EACjB,QAAS,IAAMT,EACf,aAAc,IAAMG,GACpB,UAAW,IAAMe,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,uBAAuB,EACvC7B,GAAyB0B,EAAgB,GAAG,CACjDC,EACAA,EACAkK,EACAA,EACAA,EACAjK,CACD,EAAGkB,CAAK,GAAoBjB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC3G,EAAGwiB,EAAIJ,EAAKC,EAAKC,EAAM/iB,IAAM,CAC1I,UACA,IAAM2kB,EAAW9B,EAAI,EACf+B,EAAQ/B,EAAI,EACZgC,EAAQhC,EAAI,EACZnT,EAAQmT,EAAI,EACZ7c,EAAQ8c,EAAI,EACZiC,EAAOvY,GAAImY,CAAQ,EACnBK,EAAO9X,GAAIyX,CAAQ,EACnBM,EAAM,aAAa,aAAaxkB,EAAE,EAAGskB,CAAI,EAAG,aAAatkB,EAAE,EAAGukB,CAAI,CAAC,EACnEE,EAAM,aAAa,aAAa,aAAazkB,EAAE,EAAGukB,CAAI,EAAG,EAAE,EAAG,aAAavkB,EAAE,EAAGskB,CAAI,CAAC,EACrFI,EAAa,aAAa,aAAa,aAAaF,EAAKL,CAAK,EAAG5e,CAAK,EAAG,aAAahG,EAAG4iB,EAAyB,CAAC,EACnHtW,EAAKE,GAAI2Y,CAAU,EACnBC,EAAKlY,GAAIiY,CAAU,EACnBI,EAAgBvd,EAAIE,GAAI,aAAa,aAAagd,EAAK5Y,CAAE,EAAG,aAAa7L,EAAE,EAAG2kB,CAAE,CAAC,EAAGP,CAAK,EAAG,aAAaA,EAAO,EAAE,CAAC,EACzH,OAAOxc,EAAM,aAAa,aAAa4c,EAAK,GAAG,EAAG,EAAE,EAAG,aAAa,aAAaM,EAAe7V,CAAK,EAAG,EAAE,CAAC,CAC5G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,OACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,IACA,2BACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,SAAU,OAAO,CACnB,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,gBACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMlD,GACjB,UAAW,IAAMU,GACjB,0BAA6B,IAAM0V,GACnC,UAAW,IAAM5a,EACjB,UAAW,IAAME,GACjB,UAAW,IAAMG,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,wBAAwB,EAC9C,SAASpE,GAAuBwiB,EAAQC,EAAU,CACjD,IAAMC,EAAM,CAAC,EACb,OAAAD,EAAS,QAAQ,CAACE,EAAS3X,IAAM,CAChC0X,EAAI,GAAGF,CAAM,GAAGxX,CAAC,EAAE,EAAI,CACtB,OAAQoD,EACR,QAAAuU,CACD,CACD,CAAC,EACMD,CACR,CCvlpBA,IAAME,GAAWC,EAAgB,GAAG,CACnCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC,EAAGC,EAAGC,EAAIC,IAAO,CAC5H,UACA,IAAMC,EAAKC,EAAIJ,CAAC,EACVK,EAAK,aAAaJ,EAAI,CAAC,EACvBK,EAAKJ,EACLK,EAAK,aAAaN,EAAI,CAAC,EACvBO,EAAIC,EAAM,aAAa,aAAa,aAAaN,EAAIG,CAAE,EAAG,aAAaD,EAAIE,CAAE,CAAC,EAAGG,EAAI,aAAa,aAAaJ,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EAAG,IAAI,CAAC,EAAG,EAAG,CAAC,EAC3JI,EAAK,aAAaR,EAAI,aAAaG,EAAIE,CAAC,CAAC,EACzCI,EAAK,aAAaP,EAAI,aAAaE,EAAIC,CAAC,CAAC,EACzCK,EAAK,aAAaV,EAAI,aAAaG,EAAIG,EAAM,aAAaN,EAAIO,EAAIJ,EAAI,IAAI,CAAC,EAAG,EAAG,CAAC,CAAC,CAAC,EACpFQ,EAAK,aAAaT,EAAIE,CAAE,EACxBQ,EAAMC,GAAI,aAAa,aAAaL,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EAAG,aAAa,aAAaC,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EAC5HG,EAASD,GAAI,aAAa,aAAaX,EAAIC,CAAE,EAAG,aAAaH,EAAII,CAAE,CAAC,EAAG,aAAaA,EAAIF,CAAE,CAAC,EAAI,EACrG,OAAOa,EAAOC,GAAKJ,CAAG,EAAG,CAACI,GAAKJ,CAAG,EAAGE,CAAM,CAC5C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,IACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,MAAM,CAAC,CACnB,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,CACC,EACA,WACA,CAAC,KAAK,CACP,EACA,CACC,EACA,IACA,CACC,EACA,WACA,CAAC,KAAK,CACP,CACD,EACA,QACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMb,EACjB,YAAa,IAAMK,EACnB,UAAW,IAAMC,EACjB,UAAW,IAAMM,GACjB,aAAc,IAAME,EACpB,WAAY,IAAMC,EACnB,CACD,CAAC,GAAKpB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,EAC/BqB,GAAavB,EAAgB,GAAG,CACrCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC,EAAGC,EAAGC,EAAIoB,IAAM,CAC3H,UACA,IAAMC,EAAK,aAAa,EAAGb,EAAM,EAAG,CAACR,EAAIA,CAAE,CAAC,EAC5C,OAAO,aAAakB,GAAK,aAAa,aAAaG,EAAIA,CAAE,EAAG,aAAatB,EAAGA,CAAC,CAAC,CAAC,EAAGqB,CAAC,CACpF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,KACA,CACC,EACA,IACA,IACA,CACC,EACA,YACA,CACC,IACA,CACC,EACA,IACA,IACD,EACA,IACD,CACD,CACD,CACD,EAAG,CAAC,GAAI,CACP,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CAAC,CACF,EACA,IACA,GACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,YAAa,IAAMZ,EACnB,WAAY,IAAMU,EACnB,CACD,CAAC,GAAKpB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,iBAAiB,EACjCwB,GAAS1B,EAAgB,GAAG,CACjCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC,EAAGC,EAAGC,EAAIC,IAAO,CAC5H,UACA,IAAMI,EAAK,aAAaF,EAAI,CAAC,EAAGH,CAAE,EAC5BM,EAAK,aAAaH,EAAIJ,CAAC,EAAGE,CAAE,EAC5BsB,EAAKd,EAAIJ,EAAI,CAAC,EACdmB,EAAKf,EAAIH,EAAI,CAAC,EACpB,OAAO,aAAaY,GAAK,aAAa,aAAaK,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EAAGT,GAAIN,EAAIJ,EAAIC,CAAE,EAAG,CAAC,CAAC,CACxG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,GAAG,CACL,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,GAAG,CACL,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMH,EACjB,UAAW,IAAMM,EACjB,WAAY,IAAMS,GAClB,UAAW,IAAMH,EAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,aAAa,EAC7B2B,GAAe,CACpB,MAAO,CACN,KAAM,EACN,GAAI,IACJ,GAAI,EACJ,KAAM,EACN,IAAK,IACN,EACA,OAAQ,CACP,KAAM,EACN,GAAI,IACJ,GAAI,GACJ,KAAM,EACN,IAAK,GACN,EACA,IAAK,CACJ,KAAM,EACN,GAAI,EACJ,GAAI,EACJ,KAAM,EACN,IAAK,GACN,EACA,OAAQ,CACP,KAAM,EACN,GAAI,GACJ,GAAI,GACJ,KAAM,EACN,IAAK,GACN,EACA,KAAM,CACL,KAAM,EACN,GAAI,EACJ,GAAI,EACJ,KAAM,EACN,IAAK,GACN,CACD,EACA,SAASC,GAAkBC,EAAMC,EAAU,CAC1C,OAAO,OAAOD,GAAS,UAAYA,KAAQF,GAAeE,EAAOC,CAClE,CACA,IAAMC,GAAuB,CAC5B,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,S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a,EAAG,aAAa,aAAa,IAAKD,CAAE,EAAGjE,EAAI+D,CAAI,CAAC,CAAC,EACvEI,EAAQ,aAAa,aAAa,aAAaH,EAAOA,CAAK,EAAG,aAAa9D,EAAGA,CAAC,CAAC,EAAG,aAAauC,EAAOA,CAAK,CAAC,EACnH,OAAO,aAAaqB,EAASK,EAAOH,EAAO9D,EAAGuC,EAAOC,CAAG,EAAGwB,CAAM,CAClE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,QACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,IACA,CACC,EACA,YACA,CACC,IACA,CACC,EACA,IACA,IACD,EACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,IACA,QACA,CACC,EACA,CACC,EACA,QACA,CAAC,MAAM,CACR,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,IACD,EACA,IACA,CACC,EACA,QACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,QACA,IACA,OACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,WACA,CACC,QACA,QACA,IACA,QACA,KACD,CACD,EACA,IACA,QACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,GAAM,IAAM5B,EACZ,YAAa,IAAM3B,EACnB,aAAc,IAAMS,EACpB,QAAS,IAAMpB,EACf,KAAQ,IAAM+D,EACd,UAAW,IAAMnD,EACjB,SAAY,IAAMkD,CACnB,CACD,CAAC,GAAK7D,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,kBAAkB,CACzC,CACA,IAAMmE,GAAgBrE,EAAgB,GAAG,CACxCsE,EACAA,EACArE,EACAA,CACD,EAAGqE,CAAK,GAAoBpE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACqE,EAAKC,EAAKC,EAAUC,IAAa,CAC9I,UACA,IAAMC,EAAMC,GAAOL,CAAG,EAChBM,EAAQxD,EAAOiD,EAAM,EAAG,CAAC,EAAGC,EAAI,IAAI1D,EAAI8D,EAAK,IAAI,CAAC,EAAE,IAAIF,CAAQ,EAAGE,EAAM,IAAI,EAAE,IAAIH,CAAG,EACtFM,EAAKF,GAAOC,CAAK,EACvB,OAAOxD,EAAOwD,EAAOA,EAAM,IAAIhE,EAAIiE,EAAI,IAAI,CAAC,EAAE,IAAIJ,CAAQ,EAAGI,EAAKJ,CAAQ,CAC3E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CAAC,EAAG,SAAS,CAAC,CACvB,CAAC,CACF,EACA,KACD,EACA,CAAC,UAAU,CACZ,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,SAAS,CACd,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,OAAO,CACT,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CAAC,EAAG,SAAS,CAAC,CACtB,CAAC,CACF,EACA,KACD,EACA,CAAC,UAAU,CACZ,EACA,CACC,EACA,KACA,IACA,UACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAME,GACpB,aAAc,IAAMvD,EACpB,UAAW,IAAMiD,EACjB,UAAW,IAAMzD,CAClB,CACD,CAAC,GAAKX,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,EACpC6E,GAAkB/E,EAAgB,GAAG,CAACC,CAAG,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8E,GAAO,CACjK,UACA,OAAO,aAAa,IAAK,aAAaC,GAAO,aAAa,aAAaD,EAAI,MAAM,EAAG,GAAG,CAAC,EAAG,EAAE,CAAC,CAC/F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,SAAS,CACd,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,eAAgB,IAAMC,EAAO,CAC3C,CAAC,GAAK/E,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,sBAAsB,EACtCgF,GAAoBlF,EAAgB,GAAG,CAACC,CAAG,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8E,GAAO,CACnK,UACA,OAAO,aAAa,IAAK,aAAaC,GAAO,aAAa,aAAaD,EAAI,IAAI,EAAG,IAAI,CAAC,EAAG,EAAE,CAAC,CAC9F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,eAAgB,IAAMC,EAAO,CAC3C,CAAC,GAAK/E,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,wBAAwB,EACxCiF,GAAoBnF,EAAgB,GAAG,CAACoF,EAAOA,CAAK,EAAGA,CAAK,GAAoBlF,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC4D,EAAGuB,IAAM,CAChL,UACA,IAAMC,EAAK1E,EAAMkD,EAAE,EAAG,EAAG,CAAC,EACpByB,EAAO,aAAaD,EAAI,aAAaD,EAAE,EAAG,aAAa,EAAGC,CAAE,CAAC,CAAC,EAC9DE,EAAM1B,EAAE,IAAI,IAAIwB,CAAE,EAAE,IAAID,EAAE,IAAI,IAAI,aAAaA,EAAE,EAAG,aAAa,EAAGC,CAAE,CAAC,CAAC,CAAC,EAAE,IAAIzE,EAAI0E,EAAM,IAAI,CAAC,EACpG,OAAOH,EAAMI,EAAI,EAAGA,EAAI,EAAGA,EAAI,EAAGD,CAAI,CACvC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,QAAQ,CAAC,CACvB,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM3E,EACnB,UAAW,IAAMC,EACjB,UAAW,IAAMuE,CAClB,CACD,CAAC,GAAKlF,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,wBAAwB,EACxCuF,GAAsBzF,EAAgB,GAAG,CAC9CsE,EACAA,EACArE,CACD,EAAGqE,CAAK,GAAoBpE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACwF,EAAMC,EAAMC,IAAc,CACvI,UACA,IAAMC,EAAQC,GAAIH,EAAMD,CAAI,EAC5B,OAAOrE,EAAOqE,EAAK,IAAI,aAAa,EAAGG,CAAK,CAAC,EAAE,IAAIF,CAAI,EAAGD,EAAME,EAAY,EAAE,CAC/E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,OAAQ,MAAM,CAChB,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,CAAC,CACF,EACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,UACA,OACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAME,GACjB,aAAc,IAAMzE,CACrB,CACD,CAAC,GAAKnB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,0BAA0B,EAC1C6F,GAAgB/F,EAAgB,GAAG,CACxCC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACS,EAAGqF,EAAQC,IAAU,CAChI,UACA,OAAO,aAAatF,EAAGuF,GAAI,aAAa,EAAG,aAAaF,EAAQC,CAAK,CAAC,CAAC,CAAC,CACzE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,IACA,OACD,CACD,CAAC,CACF,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAMC,EAAI,CACnC,CAAC,GAAKhG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,EACpCiG,GAAgBnG,EAAgB,GAAG,CACxCoF,EACAnF,EACAmF,EACAnF,CACD,EAAGmF,CAAK,GAAoBlF,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkG,EAAKC,EAAMC,EAAMC,IAAW,CACzI,UACA,IAAMC,EAAQ,aAAaF,EAAK,EAAGC,CAAM,EACnCE,EAAMJ,GAAQG,EACdjB,EAAO1E,EAAIwF,EAAMG,CAAK,EACtBE,EAASrF,EAAOsF,EAAML,EAAK,EAAGA,EAAK,EAAGA,EAAK,CAAC,EAAGK,EAAMP,EAAI,EAAGA,EAAI,EAAGA,EAAI,CAAC,EAAGK,CAAG,EACpF,OAAOrB,EAAMsB,EAAO,EAAGA,EAAO,EAAGA,EAAO,EAAGnB,CAAI,CAChD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,OACA,KACA,OACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,OAAQ,OAAO,CACjB,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,KACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM1E,EACjB,aAAc,IAAMQ,EACpB,UAAW,IAAMsF,EACjB,UAAW,IAAMvB,CAClB,CACD,CAAC,GAAKlF,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,EACpC0G,GAAkB5G,EAAgB,GAAG,CAC1C2G,EACAvB,EACAA,EACAA,CACD,EAAGuB,CAAK,GAAoBzG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC2G,EAAIC,EAAMC,EAAMC,IAAS,CACtI,UACA,OAAOL,EAAM,aAAa,aAAa,aAAaG,EAAK,EAAGD,EAAG,CAAC,EAAG,aAAaC,EAAK,EAAGD,EAAG,CAAC,CAAC,EAAG,aAAaC,EAAK,EAAGD,EAAG,CAAC,CAAC,EAAG,aAAa,aAAa,aAAaE,EAAK,EAAGF,EAAG,CAAC,EAAG,aAAaE,EAAK,EAAGF,EAAG,CAAC,CAAC,EAAG,aAAaE,EAAK,EAAGF,EAAG,CAAC,CAAC,EAAG,aAAa,aAAa,aAAaG,EAAK,EAAGH,EAAG,CAAC,EAAG,aAAaG,EAAK,EAAGH,EAAG,CAAC,CAAC,EAAG,aAAaG,EAAK,EAAGH,EAAG,CAAC,CAAC,CAAC,CAC5V,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAMF,CAAM,CACrC,CAAC,GAAKzG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,sBAAsB,EACtC+G,GAA4BjH,EAAgB,GAAG,CACpD2G,EACAvB,EACAA,EACAA,CACD,EAAGuB,CAAK,GAAoBzG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgH,EAAGJ,EAAMC,EAAMC,IAAS,CACrI,UACA,OAAOL,EAAM,aAAa,aAAa,aAAaG,EAAK,EAAGI,EAAE,CAAC,EAAG,aAAaH,EAAK,EAAGG,EAAE,CAAC,CAAC,EAAG,aAAaF,EAAK,EAAGE,EAAE,CAAC,CAAC,EAAG,aAAa,aAAa,aAAaJ,EAAK,EAAGI,EAAE,CAAC,EAAG,aAAaH,EAAK,EAAGG,EAAE,CAAC,CAAC,EAAG,aAAaF,EAAK,EAAGE,EAAE,CAAC,CAAC,EAAG,aAAa,aAAa,aAAaJ,EAAK,EAAGI,EAAE,CAAC,EAAG,aAAaH,EAAK,EAAGG,EAAE,CAAC,CAAC,EAAG,aAAaF,EAAK,EAAGE,EAAE,CAAC,CAAC,CAAC,CACnV,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAMP,CAAM,CACrC,CAAC,GAAKzG,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,uBAAuB,EACvCiH,GAAgBC,GAAO,CAC5B,GAAIC,EACJ,GAAIA,EACJ,GAAIA,EACJ,GAAIA,EACJ,GAAIpH,EACJ,GAAIA,CACL,CAAC,EAAE,MAAM,oBAAoB,EACvBqH,GAAqBtH,EAAgB,GAAG,CAACsE,EAAOA,CAAK,EAAG6C,EAAa,GAAoBjH,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACqH,EAAMC,IAAS,CAC/L,UACA,IAAMC,EAAK,aAAa,aAAaF,EAAK,EAAGC,EAAK,CAAC,EAAG,EAAE,EAClDE,EAAK,aAAa,aAAaH,EAAK,EAAGC,EAAK,CAAC,EAAG,EAAE,EAClDG,EAAMC,GAAMH,CAAE,EACdI,EAAMD,GAAMF,CAAE,EACpB,OAAOP,GAAc,CACpB,GAAIE,EAAIzG,EAAM+G,EAAK1H,EAAI,CAAC,EAAG,aAAauH,EAAK,EAAG,CAAC,CAAC,CAAC,EACnD,GAAIH,EAAIzG,EAAM,aAAa+G,EAAK,CAAC,EAAG1H,EAAI,CAAC,EAAG,aAAauH,EAAK,EAAG,CAAC,CAAC,CAAC,EACpE,GAAIH,EAAIzG,EAAMiH,EAAK5H,EAAI,CAAC,EAAG,aAAauH,EAAK,EAAG,CAAC,CAAC,CAAC,EACnD,GAAIH,EAAIzG,EAAM,aAAaiH,EAAK,CAAC,EAAG5H,EAAI,CAAC,EAAG,aAAauH,EAAK,EAAG,CAAC,CAAC,CAAC,EACpE,GAAI,aAAaC,EAAIE,CAAG,EACxB,GAAI,aAAaD,EAAIG,CAAG,CACzB,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,MACT,EAAG,CACF,KAAQ,IACR,KAAQ,MACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CAAC,CAAC,IAAK,CACN,GAAM,CACL,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,EACA,GAAM,CACL,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,EACA,GAAM,CACL,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,EACA,GAAM,CACL,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,EACA,GAAM,CACL,EACA,KACA,IACA,KACD,EACA,GAAM,CACL,EACA,KACA,IACA,KACD,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMD,GACnB,cAAiB,IAAMT,GACvB,QAAS,IAAME,EACf,YAAa,IAAMzG,EACnB,QAAS,IAAMX,CAChB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAA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C,EAAG0I,CAAG,EAC/FK,EAAO/D,GAAO,aAAa,aAAaD,EAAI,SAAS,EAAG,GAAG,CAAC,EAClEqD,EAAO,EAAE,IAAI,CAAC,EAAIjD,EAAM,aAAab,EAAI,EAAGuE,CAAG,EAAG,aAAavE,EAAI,EAAGuE,CAAG,EAAG,aAAa,aAAavE,EAAI,EAAGuE,CAAG,EAAGF,CAAE,EAAGI,CAAI,EAC5HX,EAAO,EAAE,IAAI,CAAC,EAAIjD,EAAM,EAAG,EAAG,EAAG,CAAC,CACnC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,CACb,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,CAAC,CACF,EACA,IACA,KACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,KACD,EACA,IACA,IACD,EACA,MACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMnF,EACf,eAAgB,IAAMuI,GACtB,UAAW,IAAM7B,EACjB,gBAAiB,IAAMkC,GACvB,UAAW,IAAME,GACjB,eAAgB,IAAM9D,GACtB,IAAO,IAAM0D,EACb,OAAU,IAAMN,EAChB,UAAW,IAAMjD,EACjB,GAAM,IAAMwD,CACb,CACD,CAAC,GAAK1I,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM6B,CAAI,CAC3B,CACA,SAASkH,GAAyBZ,EAAQtG,EAAM2G,EAAK,CACpD,IAAMQ,EAAMR,GAAK,kBAAoB,IAC/BS,EAAMT,GAAK,aAAe,EAC1BU,EAAM,kBACZ,OAAOpJ,EAAgB,GAAG,CAACqH,CAAG,CAAC,GAAoBnH,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMoI,GAAM,CAC1I,UACA,IAAMC,EAAMF,EAAO,EAAE,OACfrD,EAAK/E,EAAIqI,CAAC,EACVzF,EAAK,aAAa0F,EAAI,KAAM,MAAM,EAClCc,EAASxI,EAAI+G,GAAM,aAAaW,EAAI,MAAOtI,EAAIiJ,CAAG,CAAC,CAAC,EAAGjJ,EAAIkJ,CAAG,CAAC,EAC/D9D,EAAI,aAAaL,EAAI,aAAa4C,GAAM,aAAa5C,EAAIqE,CAAM,CAAC,EAAGA,CAAM,CAAC,EAC1EC,EAAKd,GAAO7B,EAAM,aAAa,aAAa,aAAatB,EAAG,MAAM,EAAGxC,CAAE,EAAG,GAAG,EAAG,aAAa,aAAa,aAAawC,EAAG,MAAM,EAAGxC,CAAE,EAAG,IAAI,EAAG,aAAa,aAAa,aAAawC,EAAG,MAAM,EAAGxC,CAAE,EAAG,IAAI,CAAC,CAAC,EAC7M0G,EAAM,aAAaD,EAAG,EAAGF,CAAG,EAC5BI,EAAKlF,EAAMmF,GAAIF,CAAG,EAAGrD,GAAIqD,CAAG,CAAC,EAC7BG,EAASpF,EAAM,aAAa,aAAa,IAAK,aAAagF,EAAG,EAAG,GAAG,CAAC,EAAGf,EAAI,OAAO,EAAG,aAAa,IAAK,aAAae,EAAG,EAAG,GAAG,CAAC,CAAC,EAChIK,EAAKnB,GAAO7B,EAAM,aAAa,aAAa,aAAa3B,EAAI,SAAS,EAAGnC,CAAE,EAAG,GAAG,EAAG,aAAa,aAAa,aAAamC,EAAI,SAAS,EAAGnC,CAAE,EAAG,IAAI,EAAG,aAAa,aAAa,aAAamC,EAAI,SAAS,EAAGnC,CAAE,EAAG,IAAI,CAAC,CAAC,EACzNJ,EAAI,aAAa,aAAakH,EAAG,EAAG,EAAE,EAAG,EAAE,EAC3CxJ,EAAI,aAAa,aAAawJ,EAAG,EAAG,EAAE,EAAG,GAAG,EAC5CrJ,EAAKM,EAAM,aAAa,aAAa8I,EAAO,EAAG,aAAaF,EAAG,EAAG/G,CAAC,CAAC,EAAG,aAAa+G,EAAG,EAAGrJ,CAAC,CAAC,EAAG,EAAGoI,EAAI,OAAO,EAC7G/H,EAAKI,EAAM,aAAa,aAAa8I,EAAO,EAAG,aAAaF,EAAG,EAAG/G,CAAC,CAAC,EAAG,aAAa+G,EAAG,EAAGrJ,CAAC,CAAC,EAAG,EAAG,CAAC,EACnGyJ,EAAO,aAAaL,EAAK,aAAa,aAAaI,EAAG,EAAG,EAAE,EAAG,EAAE,CAAC,EACjEE,EAAK,aAAatB,EAAI,SAAU,aAAa,IAAK,aAAaoB,EAAG,EAAG,GAAG,CAAC,CAAC,EAChFtB,EAAO,EAAE,OAAOC,CAAC,EAAIlD,EAAM9E,EAAIE,EAAI,aAAaiJ,GAAIG,CAAI,EAAGC,CAAE,EAAG,aAAa3D,GAAI0D,CAAI,EAAGC,CAAE,CAAC,EAC3FxB,EAAO,EAAE,KAAKC,CAAC,EAAIrI,EAAI,CAAC,CACzB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,MACD,EACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,OACD,EACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,QACD,CAAC,CACF,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAK,CACP,EAAG,CACF,EACA,UACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,MACA,SACD,CACD,EAAG,CACF,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,WAAW,CAChB,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,MACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,UACD,EACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,MAAM,CACR,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,MAAM,CA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AQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,GAAG,CAAC,CACvB,CACD,EACA,IACA,CACC,EACA,WACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,OAAO,CAAC,CAC5B,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,YACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,GAAG,CACL,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,SACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,QACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,UACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,UACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,UACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,UACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,GACD,CAAC,CACF,EACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,KACD,EACA,CACC,GACA,KACA,KACD,EACA,CACC,GACA,OACA,MACD,EACA,CACC,GACA,OACA,MACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,cACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,EACA,IACA,GACD,EACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,EACA,IACA,GACD,EACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,OACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,OACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,IACA,MACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,OACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,IACA,MACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,OACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EAAG,CACF,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CACC,KACA,KACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,OACA,IACA,MACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,OACA,IACA,MACD,EAAG,CACF,EACA,OACA,IACA,CACC,EACA,UACA,CACC,OACA,OACA,IACD,CACD,CACD,CAAC,CAAC,CACH,EACA,CACC,EACA,KACA,IACA,IACD,EACA,CACC,EACA,KACA,IACA,IACD,EACA,CACC,EACA,OACA,IACA,MACD,EACA,CACC,EACA,OACA,IACA,MACD,CACD,CAAC,CACF,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,MAAM,CAClB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,OACD,CAAC,CACF,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,IACD,EAAG,CACF,EACA,KACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,CACC,EACA,aACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,QACD,CACD,CACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,MAAM,CAClB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,OACD,CAAC,CACF,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,MAAM,CACR,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,MACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,OAAO,CAAC,CACtB,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,QACA,QACD,CACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,GAAG,EACP,KACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,MAAO,UAAU,CACnB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMxM,EACjB,QAAS,IAAMZ,EACf,UAAW,IAAMmF,EACjB,WAAc,IAAM8E,EACpB,kBAAmB,IAAMkB,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMhE,EACf,aAAc,IAAMhG,EACpB,UAAW,IAAMd,EACjB,aAAgB,IAAM4J,EACtB,UAAW,IAAMlH,EACjB,YAAa,IAAMrC,EACnB,aAAc,IAAMgE,GACpB,UAAW,IAAMN,EACjB,UAAW,IAAMnD,GACjB,UAAW,IAAM+B,GACj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CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,cACA,CACC,IACA,IACA,QACA,KACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,YAAe,IAAMX,CAAY,CAC/C,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGd,EAAI,IAAI,QAAQ,EAAIE,EAAQ,UAAYW,EAAgB,GAAG,CACnFhB,EACAA,EACAA,EACAD,EACAC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC0B,EAAKN,EAAMC,EAAMM,EAAMJ,EAAOK,EAASH,IAAQ,CAC1J,UACA,OAAOT,EAAY,aAAaU,EAAKE,CAAO,EAAGR,EAAMC,EAAME,EAAOE,CAAG,CACtE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,cACA,CACC,CACC,EACA,MACA,IACA,SACD,EACA,OACA,OACA,QACA,KACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE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a,aAAamE,EAAIlE,EAAIgB,CAAG,CAAC,EAAGoD,CAAE,CAAC,EAC5D/D,GAAUQ,EAAE,EAAE,OAAO0D,EAAG,EAAGD,EAAC,EACxBX,EAAQ,GAAGtD,GAAUQ,EAAE,EAAE,OAAO0D,EAAG,EAAGxE,EAAI,aAAasE,GAAGT,CAAQ,CAAC,CAAC,CACzE,CACD,CACD,CACD,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,IAAK,CACL,EACA,IACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,CAAC,MAAM,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,QACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,MACA,OACD,EACA,CAAC,EAAG,UAAU,EACd,CACC,EACA,CACC,EACA,QACA,CAAC,SAAS,CACX,EACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,QACA,IACA,OACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,QACA,IACA,KACD,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,mBACA,CACC,CACC,EACA,IACA,KACD,EACA,OACA,SACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,CACD,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,IACA,MACD,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,SACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,OACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,cACA,CACC,MACA,OACA,OACA,CACC,EACA,IACA,KACD,EACA,QACA,UACA,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,MAAM,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,KACD,EAAG,GAAG,CACP,EACA,CACC,GACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,UACD,CAAC,CACF,CAAC,CACF,CAAC,CAAC,CACH,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,UAAW,CACV,EAAK,IAAM/C,EACX,KAAQ,IAAMW,EACd,WAAc,IAAMY,EACpB,QAAS,IAAM3B,EACf,KAAQ,IAAMY,EACd,UAAW,IAAMc,EACjB,YAAa,IAAMG,EACnB,QAAW,IAAMnB,EACjB,QAAW,IAAMF,EACjB,IAAO,IAAMG,EACb,KAAQ,IAAMF,EACd,iBAAoB,IAAM+C,GAC1B,IAAO,IAAMjD,EACb,YAAe,IAAM4B,EACrB,QAAS,IAAM7C,EACf,QAAS,IAAMC,EACf,gBAAiB,IAAMK,EACxB,CACD,CAAC,GAAKqB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,IAAM4D,GAAY,CACjB,aAAa7D,EAAQC,EAAK,CACzB,IAAM6D,EAAO7D,EAAI,KACX8D,EAAM9D,EAAI,OACV+D,EAAM,kBACZ,OAAOlD,EAAgB,GAAG,CAAChB,EAAKD,CAAK,EAAGA,CAAK,GAAoBkB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkD,EAAIC,IAAW,CACjK,UACA,IAAMpB,EAAM9C,EAAO,EAAE,OACfmE,EAAIC,GAAOvE,EAAM,aAAa,aAAaoE,EAAI,IAAI,EAAG,GAAG,EAAG,aAAa,aAAaA,EAAI,IAAI,EAAG,IAAI,CAAC,CAAC,EACvGI,EAAO,aAAa,aAAa,aAAa,GAAIF,EAAE,CAAC,EAAGL,CAAI,EAAGhB,EAAI,UAAU,EAC7EwB,EAAK,aAAaH,EAAE,EAAGH,CAAG,EAC1BO,EAAM,aAAa,aAAaR,EAAKjB,EAAI,UAAU,EAAG,aAAa,GAAI,aAAaqB,EAAE,EAAG,EAAE,CAAC,CAAC,EAC7FvB,EAAI,aAAa,aAAaE,EAAI,KAAMuB,CAAI,EAAGC,CAAE,EACvD,OAAOJ,EAAO,IAAIrE,EAAMqB,GAAI0B,CAAC,EAAGzB,GAAIyB,CAAC,CAAC,EAAE,IAAI2B,CAAG,CAAC,CACjD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,QACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,YACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,YACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,MACD,EACA,IACA,MACD,EACA,IACA,IACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,UACA,CAAC,GAAG,CACL,CAAC,CACF,EACA,KACD,EACA,CAAC,KAAK,CACP,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMvE,EAChB,eAAgB,IAAMoE,GACtB,UAAW,IAAMvE,EACjB,KAAQ,IAAMiE,EACd,IAAO,IAAME,EACb,IAAO,IAAMD,EACb,UAAW,IAAM7C,GACjB,UAAW,IAAMC,EAClB,CACD,CAAC,GAAKJ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,uBAAuB,CAC9C,EACA,kBAAkBf,EAAQC,EAAK,CAC9B,IAAMuE,EAAOvE,EAAI,KACX+D,EAAM,kBACZ,OAAOlD,EAAgB,GAAG,CAAChB,CAAG,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMkD,GAAO,CAChJ,UACA,IAAMnB,EAAM9C,EAAO,EAAE,OACfsE,EAAK,aAAaG,GAAO,aAAa,aAAaR,EAAI,GAAG,EAAG,GAAG,CAAC,EAAGD,CAAG,EACvEU,EAAM,aAAa,aAAavD,GAAI,aAAa,aAAa2B,EAAI,KAAM0B,CAAI,EAAGF,CAAE,CAAC,EAAG,EAAE,EAAG,EAAE,EAClG,OAAO,aAAaK,EAAI7E,EAAI,CAAC,EAAG4E,EAAK5B,EAAI,OAAO,EAAG,aAAa,GAAI,aAAa,GAAI8B,GAAkBX,CAAE,CAAC,CAAC,CAAC,CAC7G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,MACD,EACA,IACA,MACD,EACA,IACA,IACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACA,CACC,EACA,MACA,SACD,CACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,2BACA,CAAC,IAAI,CACN,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMjE,EAChB,eAAgB,IAAMyE,GACtB,IAAO,IAAMT,EACb,UAAW,IAAM7C,GACjB,KAAQ,IAAMqD,EACd,UAAW,IAAMG,EACjB,QAAS,IAAM7E,EACf,2BAA4B,IAAM8E,EACnC,CACD,CAAC,GAAK7D,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,4BAA4B,CACnD,EACA,eAAef,EAAQ,CACtB,OAAOc,EAAgB,GAAG,CAAChB,CAAG,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMkD,GAAO,CAChJ,UACA,OAAOzC,EAAI,aAAaxB,EAAO,EAAE,OAAO,MAAO,aAAa,IAAK,aAAa,IAAK4E,GAAkBX,CAAE,CAAC,CAAC,CAAC,EAAG,IAAI,CAClH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,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M,EAAO,EAAE,OAAO4D,EAAG,EAAGD,EAAC,CAClC,CACD,CACD,CACD,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,QACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,UACD,EAAG,CACF,EACA,QACA,CAAC,YAAY,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,KAAK,CACP,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,KAAK,CACP,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,EACA,OACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,WAAW,CACb,EACA,CACC,EACA,QACA,CAAC,WAAW,CACb,EACA,OACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,IACA,MACD,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,QACA,IACA,UACD,EACA,IACA,CACC,EACA,QACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,mBACA,CACC,MACA,QACA,SACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,CACD,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,SACD,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EAAG,CACF,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,SACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,EACA,IACA,UACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,QACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,CACC,IACA,OACA,OACA,QACA,OACA,OACD,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,IACA,MACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,IACD,CAAC,CACF,CACD,EAAG,CACF,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,GAAG,CACP,CAAC,CAAC,CACH,CACD,CAAC,CACF,CACD,CAAC,CACF,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM3D,EAChB,QAAS,IAAMF,EACf,MAAS,IAAMsF,EACf,UAAW,IAAMvF,EACjB,WAAc,IAAMwF,EACpB,UAAW,IAAM7D,EACjB,WAAc,IAAMyD,EACpB,UAAW,IAAMN,EACjB,IAAO,IAAMlE,EACb,UAAa,IAAMyE,EACnB,UAAa,IAAMC,EACnB,WAAc,IAAMG,EACpB,KAAQ,IAAM/E,EACd,iBAAoB,IAAM+C,GAC1B,IAAO,IAAMjD,EACb,QAAW,IAAMC,EACjB,SAAY,IAAMiF,EAClB,QAAS,IAAMnG,EACf,gBAAiB,IAAMM,EACxB,CACD,CAAC,GAAKqB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,SAASuG,IAAoBC,EAAOC,EAAO,CAC1C,IAAMC,EAAc7F,EAAgB,GAAG,CACtChB,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC0E,EAAGmB,EAAMC,EAAMC,EAAOpB,IAAU,CAC3I,UACA,OAAOqB,GAAI,aAAatB,EAAG,IAAI,CAAC,CACjC,GAAI,CACH,EAAG,EACH,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G,CAAC,EACxD,GAAItC,GAAIvE,EAAI,CAAC,EAAG,CACf,IAAMwE,GAAMxE,EAAI,aAAa,aAAamE,EAAIlE,EAAIgI,CAAO,CAAC,EAAG5D,CAAE,CAAC,EAChE/D,GAAUM,EAAO,EAAE,OAAO4D,EAAG,EAAGD,EAAC,EAC7BwE,GAASzI,GAAUM,EAAO,EAAE,OAAO4D,EAAG,EAAGxE,EAAI,aAAa,aAAa,aAAasE,GAAGuC,CAAM,EAAGiC,CAAS,EAAG,GAAG,CAAC,CAAC,CACtH,CACD,CACD,CACD,CACD,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,MACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,MACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,OACD,CACD,EACA,IACA,CACC,EACA,MACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,UACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,MACD,EACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,MACA,GACD,CACD,CACD,CACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,MACA,OACD,CACD,EACA,CAAC,EAAG,KAAK,EACT,CACC,EACA,QACA,CAAC,gBAAgB,CAClB,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,IACA,OACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,aACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,mBACA,CACC,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CACA,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,MACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,OACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,MACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,YACA,CACC,IACA,MACA,MACA,OACA,CACC,EACA,MACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,EACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SA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,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,WACD,EACA,CAAC,EAAG,CACH,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,WACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,aACD,EACA,IACA,IACD,CAAC,CACF,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,yBACA,CACC,KACA,CACC,EACA,IACA,MACD,EACA,CACC,EACA,IACA,MACD,EACA,CACC,EACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,SACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,cACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,EACA,CAAC,EAAG,KAAK,EACT,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,OACD,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,iBACA,CACC,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,MACD,CACD,EACA,CACC,EACA,IACA,cACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,aACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,QACA,CAAC,WAAW,CACb,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,MAAM,CACR,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,OACA,IACA,MACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,MACD,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,KACA,IACA,YACD,EACA,KACA,UACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,MACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,mBACA,CACC,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,MACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,MACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CACD,EAAG,CACF,GACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,EACA,KACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,MACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,KACA,CACC,EACA,CACC,EACA,WACA,CACC,IACA,MACA,MACA,OACA,CACC,EACA,QACA,CAAC,MAAM,CACR,CACD,CACD,EACA,IACA,IACD,CACD,EAAG,CACF,GACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,KACD,EACA,IACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,IACD,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,KACA,IACA,IACD,CAAC,CACF,CAAC,CACF,CACD,CAAC,CACF,CAAC,CAAC,CACH,CACD,CAAC,CACF,CAAC,CAAC,CACH,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM9I,EAChB,QAAS,IAAMZ,EACf,UAAa,IAAMyJ,EACnB,QAAS,IAAM/I,EACf,IAAO,IAAMkE,EACb,UAAW,IAAM7C,GACjB,YAAe,IAAM6H,EACrB,UAAW,IAAM9H,GACjB,UAAW,IAAM8I,EACjB,yBAA0B,IAAMD,GAChC,YAAa,IAAMpI,EACnB,QAAW,IAAMsH,EACjB,QAAW,IAAMzI,EACjB,UAAW,IAAMgB,EACjB,iBAAkB,IAAM+I,GACxB,UAAW,IAAM5F,EACjB,UAAa,IAAMiE,EACnB,KAAQ,IAAMrI,EACd,QAAS,IAAMlB,EACf,WAAY,IAAM+I,GAClB,WAAc,IAAMW,EACpB,iBAAoB,IAAMT,GAC1B,UAAW,IAAMzI,EACjB,UAAW,IAAM0I,GACjB,SAAY,IAAMhD,EAClB,gBAAiB,IAAM7F,GACvB,GAAM,IAAMoJ,CACb,CACD,CAAC,GAAK/H,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,SAAS8K,IAAY/K,EAAQC,EAAK,CACjC,IAAMC,E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,EACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,iBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,GACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,UACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CACC,CACC,EACA,MACA,MACD,EACA,CACC,EACA,MACA,MACD,EACA,CACC,EACA,YACA,CACC,UACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,sBACA,CAAC,SAAU,CAAC,EAAG,KAAK,CAAC,CACtB,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EA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QACA,CAAC,CACA,EACA,iBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,MACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,UACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,CACD,CACD,EAAG,CACF,EACA,MACA,IACA,CACC,EACA,QACA,CACC,CACC,EACA,MACA,MACD,EACA,CACC,EACA,MACA,MACD,EACA,CACC,EACA,YACA,CACC,UACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CAAC,CACH,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,sBACA,CAAC,SAAU,CAAC,EAAG,KAAK,CAAC,CACtB,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,MACA,OACA,KACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,KACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,EAAK,IAAMjM,EACX,QAAS,IAAMd,EACf,IAAO,IAAMiB,EACb,QAAS,IAAMP,EACf,iBAAkB,IAAMjB,GACxB,kBAAmB,IAAMW,GACzB,SAAY,IAAM4L,EAClB,UAAW,IAAMU,EACjB,UAAW,IAAMtK,EACjB,MAAS,IAAMwJ,EACf,YAAa,IAAMrJ,EACnB,oBAAuB,IAAMgK,GAC7B,UAAa,IAAMI,EACnB,mBAAoB,IAAMH,GAC1B,UAAW,IAAMC,EAClB,CACD,CAAC,GAAK9K,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,SAASmM,IAAYpM,EAAQC,EAAK,CACjC,IAAMI,EAAMJ,EAAI,IAChB,OAAOa,EAAgB,GAAG,CAAC1B,EAAKA,CAAG,CAAC,GAAoB2B,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACuK,EAAGC,IAAM,CAClJ,UACA,IAAMzI,EAAM9C,EAAO,EAAE,OACf4D,EAAM,aAAa,aAAa2H,EAAGnM,EAAIiB,CAAG,CAAC,EAAGiL,CAAC,EAC/CG,EAAS,aAAa3L,EAAIjB,GAAWmB,EAAO,EAAE,OAAO4D,CAAG,CAAC,CAAC,EAAG,aAAa,EAAG,GAAG,CAAC,EACvFpE,GAAYQ,EAAO,EAAE,OAAO4D,CAAG,EAAGxE,EAAI,CAAC,CAAC,EACxC,IAAMN,EAAI,aAAa6M,GAAoBF,EAAQ,GAAG,EAAG3I,EAAI,MAAM,CAAC,EACpE8I,GAAa5L,EAAO,EAAE,OAAQ6L,GAAMP,EAAGC,CAAC,EAAGO,EAAMhJ,EAAI,MAAM,EAAGA,EAAI,MAAM,EAAGA,EAAI,MAAM,EAAGhE,CAAC,CAAC,CAC3F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,iBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,sBACA,CAAC,SAAU,CAAC,EAAG,KAAK,CAAC,CACtB,EACA,IACA,CACC,EACA,CACC,EACA,MACA,OACD,EACA,GACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,OACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,OACD,EACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,OACD,EACA,GACD,EACA,GACD,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMkB,EAChB,QAAS,IAAMZ,EACf,IAAO,IAAMiB,EACb,QAAS,IAAMP,EACf,iBAAkB,IAAMjB,GACxB,kBAAmB,IAAMW,GACzB,oBAAuB,IAAMmM,GAC7B,mBAAoB,IAAMC,GAC1B,UAAW,IAAMC,GACjB,UAAW,IAAMC,CAClB,CACD,CAAC,GAAK/K,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,SAASoM,IAAqBrM,EAAQC,EAAK,CAC1C,IAAM6I,EAAK7I,EAAI,GACTqM,EAAUrM,EAAI,OACpB,OAAOa,EAAgB,GAAG,CAAC1B,EAAKA,CAAG,CAAC,GAAoB2B,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACuK,EAAGC,IAAM,CAClJ,UACA,IAAMnC,EAAIpJ,EAAO,EAAE,OACb4D,EAAM,aAAa,aAAa2H,EAAGnM,EAAIgK,EAAE,IAAI,CAAC,EAAGkC,CAAC,EAClDiB,EAAOzM,EAAIjB,GAAWmB,EAAO,EAAE,OAAO4D,CAAG,CAAC,CAAC,EAC3C4I,EAAO1M,EAAIjB,GAAWmB,EAAO,EAAE,OAAO4D,CAAG,CAAC,CAAC,EAC3C6I,EAAO3M,EAAIjB,GAAWmB,EAAO,EAAE,OAAO4D,CAAG,CAAC,CAAC,EAC3C8I,EAAO5M,EAAIjB,GAAWmB,EAAO,EAAE,OAAO4D,CAAG,CAAC,CAAC,EACjDpE,GAAYQ,EAAO,EAAE,OAAO4D,CAAG,EAAGxE,EAAI,CAAC,CAAC,EACxCI,GAAYQ,EAAO,EAAE,OAAO4D,CAAG,EAAGxE,EAAI,CAAC,CAAC,EACxCI,GAAYQ,EAAO,EAAE,OAAO4D,CAAG,EAAGxE,EAAI,CAAC,CAAC,EACxCI,GAAYQ,EAAO,EAAE,OAAO4D,CAAG,EAAGxE,EAAI,CAAC,CAAC,EACxC,IAAMuN,EAAQnL,EAAI+K,EAAMzM,EAAI,CAAC,CAAC,EACxB8M,EAAI,aAAaJ,EAAMG,CAAK,EAC5B,EAAI,aAAaF,EAAME,CAAK,EAC5BE,EAAI,aAAaH,EAAMC,CAAK,EAC5BG,EAAQnB,GAAoB,aAAaY,EAAM,aAAa,EAAGzD,CAAE,CAAC,EAAGwD,CAAO,EAClFV,GAAa5L,EAAO,EAAE,OAAQ6L,GAAMP,EAAGC,CAAC,EAAGO,EAAMc,EAAG,EAAGC,EAAGC,CAAK,CAAC,CACjE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,MACD,CAAC,CACF,CACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,iBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,iBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,iBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,iBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,OAAQ,CACR,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,sBACA,CAAC,CACA,EACA,OACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,EAAG,SAAS,CACb,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,CACC,EACA,UACA,CACC,IACA,IACA,IACA,OACD,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM9M,EAChB,QAAS,IAAMZ,EACf,QAAS,IAAMU,EACf,iBAAkB,IAAMjB,GACxB,kBAAmB,IAAMW,GACzB,UAAW,IAAMgC,EACjB,oBAAuB,IAAMmK,GAC7B,GAAM,IAAM7C,EACZ,QAAW,IAAMwD,EACjB,mBAAoB,IAAMV,GAC1B,UAAW,IAAMC,GACjB,UAAW,IAAMC,CAClB,CACD,CAAC,GAAK/K,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,IAAM8M,GAAQ,CACb,cAAehN,IACf,WAAY8E,IACZ,OAAQsC,IACR,OAAQuB,GACT,EACMsE,GAAU,CACf,KAAMjC,IACN,KAAMqB,IACN,cAAeC,GAChB,EACA,SAASY,IAASjN,EAAQC,EAAK,CAC9B,IAAMiN,EAAQjN,EAAI,QACZkN,EAASlN,EAAI,OACbmN,EAAStM,EAAgB,GAAG,CACjCzB,EACAA,EACAA,CACD,EAAGS,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsM,EAAIC,EAAIC,IAAO,CAC1H,UACA,IAAMC,EAAInO,EAAI6N,CAAK,EACb5B,EAAI3J,EAAM0L,EAAI,EAAG,aAAaG,EAAG,CAAC,CAAC,EACnCjC,EAAI5J,EAAM2L,EAAI,EAAG,aAAaE,EAAG,CAAC,CAAC,EACnCC,EAAI9L,EAAM4L,EAAI,EAAG,aAAaC,EAAG,CAAC,CAAC,EACnC5J,EAAMxE,EAAI,aAAa,aAAa,aAAa,aAAaqO,EAAGD,CAAC,EAAGjC,CAAC,EAAGiC,CAAC,EAAGlC,CAAC,CAAC,EACrF,OAAO,aAAaxL,EAAIjB,GAAWmB,EAAO,EAAE,KAAK4D,CAAG,CAAC,CAAC,EAAG,aAAa,EAAG,EAAE,CAAC,CAC7E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,KACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,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CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,UACD,CACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,UACD,CACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,UACD,CACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,GAAG,CACL,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,MAAM,CACR,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,CACC,CACC,EACA,KACA,IACA,IACD,EACA,CACC,EACA,KACA,IACA,IACD,EACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,KACA,KACA,KACA,KACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMlO,EAChB,QAAS,IAAMF,EACf,MAAS,IAAMoN,EACf,UAAW,IAAMlD,EACjB,OAAU,IAAMmD,EAChB,YAAa,IAAMxL,EACnB,YAAa,IAAMkM,GACnB,QAAS,IAAMxO,EACf,UAAW,IAAMsF,EACjB,OAAU,IAAMyI,EAChB,UAAW,IAAMtB,CAClB,CACD,CAAC,GAAK/K,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4N,EAAc7N,EAAgB,GAAG,CAAC1B,CAAG,CAAC,GAAoB2B,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMC,GAAM,CACvJ,UACAxB,GAAYQ,EAAO,EAAE,KAAKgB,CAAC,EAAG5B,EAAI,CAAC,CAAC,CACrC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,GACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CAAC,CACH,EACA,UAAW,CACV,kBAAmB,IAAMI,GACzB,OAAU,IAAMQ,EAChB,QAAS,IAAMZ,CAChB,CACD,CAAC,GAAK2B,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,MAAM,KAAK,EAC/B2O,EAAc9N,EAAgB,GAAG,CAAC1B,CAAG,CAAC,GAAoB2B,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMC,GAAM,CACvJ,UACA,IAAM8B,EAAM9C,EAAO,EAAE,OACfgG,EAAMhG,EAAO,EAAE,IAAIgB,CAAC,EACpBwM,EAAI1N,EAAIoN,CAAK,EACbS,EAAI3D,EAAM,aAAa,aAAa,aAAa,aAAa,aAAahE,EAAI,EAAGlD,EAAI,QAAQ,EAAGqK,CAAM,EAAG,aAAa,EAAGA,CAAM,CAAC,EAAGK,CAAC,EAAG,EAAE,EAAG,aAAa,aAAa,aAAa,aAAa,aAAaxH,EAAI,EAAGlD,EAAI,QAAQ,EAAGqK,CAAM,EAAG,aAAa,EAAGA,CAAM,CAAC,EAAGK,CAAC,EAAG,EAAE,EAAG,aAAa,aAAa,aAAa,aAAa,aAAaxH,EAAI,EAAGlD,EAAI,QAAQ,EAAGqK,CAAM,EAAG,aAAa,EAAGA,CAAM,CAAC,EAAGK,CAAC,EAAG,EAAE,CAAC,EACjZI,EAAOjM,EAAMkM,GAAMF,CAAC,EAAG3D,EAAM,EAAG,EAAG,CAAC,EAAGA,EAAM,aAAawD,EAAG,CAAC,EAAG,aAAaA,EAAG,CAAC,EAAG,aAAaA,EAAG,CAAC,CAAC,CAAC,EACxGM,EAAInM,EAAMgM,EAAE,IAAIC,CAAI,EAAG5D,EAAM,EAAG,EAAG,CAAC,EAAGA,EAAM,EAAG,EAAG,CAAC,CAAC,EACrD+D,EAAK1O,EAAIuO,EAAK,CAAC,EACfI,EAAK3O,EAAIuO,EAAK,CAAC,EACfK,EAAK5O,EAAIuO,EAAK,CAAC,EACfiB,EAAKxP,EAAI6N,CAAK,EACpB,QAASkB,EAAK,EAAGA,EAAK,EAAGA,IAAM,QAASC,EAAK,EAAGA,EAAK,EAAGA,IAAM,QAASC,EAAK,EAAGA,EAAK,EAAGA,IAAM,CAC5F,IAAM3E,EAAKhF,EAAI,aAAa,EAAGmJ,EAAE,CAAC,EAAGA,EAAE,EAAGhO,EAAIwO,CAAE,CAAC,EAC3C1E,EAAKjF,EAAI,aAAa,EAAGmJ,EAAE,CAAC,EAAGA,EAAE,EAAGhO,EAAIuO,CAAE,CAAC,EAC3CxE,EAAKlF,EAAI,aAAa,EAAGmJ,EAAE,CAAC,EAAGA,EAAE,EAAGhO,EAAIsO,CAAE,CAAC,EAC3C1K,EAAI,aAAa,aAAaiG,EAAIC,CAAE,EAAGC,CAAE,EACzCjG,EAAMxE,EAAI,aAAa,aAAa,aAAa,aAAa,aAAa6O,EAAIG,CAAE,EAAGS,CAAE,EAAG,aAAab,EAAIK,CAAE,CAAC,EAAGQ,CAAE,EAAG,aAAad,EAAIO,CAAE,CAAC,CAAC,EAChJ5O,GAAUM,EAAO,EAAE,KAAK4D,CAAG,EAAGxE,EAAI,aAAa,aAAasE,EAAG,EAAE,EAAG,EAAE,CAAC,CAAC,CACzE,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,UACD,CACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,UACD,CACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,UACD,CACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,GAAG,CACL,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,MAAM,CACR,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,KACD,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,CAAC,CACF,CAAC,CAAC,CACH,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM1D,EAChB,QAAS,IAAMF,EACf,MAAS,IAAMoN,EACf,UAAW,IAAMlD,EACjB,OAAU,IAAMmD,EAChB,YAAa,IAAMxL,EACnB,YAAa,IAAMkM,GACnB,QAAS,IAAMxO,EACf,UAAW,IAAMsF,EACjB,QAAS,IAAMvF,EACf,gBAAiB,IAAMM,EACxB,CACD,CAAC,GAAKqB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,MAAM,KAAK,EACrC,MAAO,CACN,MAAOa,EAAgB,GAAG,CACzBkJ,EACAA,EACAlK,CACD,EAAGkK,CAAK,GAAoBjJ,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiF,EAAK8I,EAAMC,IAAU,CAClI,UACA,IAAMjM,EAAM9C,EAAO,EAAE,OACfgP,EAAKtB,EAAkB1H,CAAG,EAC1BiJ,EAAY,aAAa,aAAanM,EAAI,OAAQ,GAAG,EAAGtB,EAAI,aAAa,aAAawN,EAAG,EAAG,CAAC,EAAG,CAAC,EAAG,CAAC,CAAC,EAC5G,OAAOhF,EAAM,aAAa,aAAagF,EAAG,EAAG,EAAE,EAAGC,CAAS,EAAG,aAAa,aAAaD,EAAG,EAAG,EAAE,EAAGC,CAAS,EAAG,aAAa,aAAaD,EAAG,EAAG,EAAE,EAAGC,CAAS,CAAC,CAC/J,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,oBACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,WACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,WACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,WACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMjP,EAChB,kBAAqB,IAAM0N,EAC3B,UAAW,IAAMlM,EACjB,UAAW,IAAMwI,CAClB,CACD,CAAC,GAAKjJ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,EACrC,YAAA4N,EACA,YAAAC,EACA,MAAO1B,EAAQA,EAAQA,CACxB,CACD,CACA,SAASgC,IAAYlP,EAAQC,EAAK,CACjC,IAAMkP,EAAUlP,EAAI,MACdmP,EAAInP,EAAI,QACR,CAAE,KAAAoP,EAAM,OAAAC,EAAQ,OAAAC,EAAQ,YAAAC,CAAY,EAAIvP,EAC9C,OAAOa,EAAgB,GAAG,CACzBkJ,EACAA,EACAlK,CACD,EAAGkK,CAAK,GAAoBjJ,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiF,EAAK5E,EAAK2N,IAAU,CACjI,UACA,IAAMjM,EAAM9C,EAAO,EAAE,OACfyP,EAAKN,EAAQnJ,CAAG,EAChBrC,EAAI7D,EAAIsP,CAAC,EACTJ,EAAKhF,EAAM,aAAamF,EAAQnF,EAAM,aAAahE,EAAI,EAAGrC,CAAC,EAAGqC,EAAI,EAAGA,EAAI,CAAC,CAAC,EAAGmJ,EAAQnF,EAAM,aAAahE,EAAI,EAAGrC,CAAC,EAAGqC,EAAI,EAAGA,EAAI,CAAC,CAAC,CAAC,EAAG,aAAamJ,EAAQnF,EAAMhE,EAAI,EAAG,aAAaA,EAAI,EAAGrC,CAAC,EAAGqC,EAAI,CAAC,CAAC,EAAGmJ,EAAQnF,EAAMhE,EAAI,EAAG,aAAaA,EAAI,EAAGrC,CAAC,EAAGqC,EAAI,CAAC,CAAC,CAAC,EAAG,aAAamJ,EAAQnF,EAAMhE,EAAI,EAAGA,EAAI,EAAG,aAAaA,EAAI,EAAGrC,CAAC,CAAC,CAAC,EAAGwL,EAAQnF,EAAMhE,EAAI,EAAGA,EAAI,EAAG,aAAaA,EAAI,EAAGrC,CAAC,CAAC,CAAC,CAAC,CAAC,EACvX+L,EAAKV,EAAG,IAAIxN,EAAIF,GAAO0N,CAAE,EAAG,IAAI,CAAC,EACnCW,EAAI3F,EAAM,EAAG,EAAG,CAAC,EACfmC,EAAM3K,EAAIiO,EAAI,CAAC,EACfG,EAAQ,aAAa,aAAarF,GAAW8E,EAAK,YAAaA,EAAK,UAAWI,CAAE,EAAGJ,EAAK,IAAI,EAAG,aAAalD,EAAKkD,EAAK,OAAO,CAAC,EACrIM,EAAIA,EAAE,IAAID,EAAG,IAAIE,CAAK,CAAC,EACvB,IAAMC,EAAKvO,GAAO0E,CAAG,EACf8J,EAAU,aAAavF,GAAW+E,EAAO,KAAMA,EAAO,GAAIO,CAAE,EAAGP,EAAO,CAAC,EAC7EK,EAAIA,EAAE,IAAI3J,EAAI,IAAI,aAAa8J,EAAStO,EAAIqO,EAAI,IAAI,CAAC,CAAC,CAAC,EACvD,IAAME,EAAU,aAAaxF,GAAWgF,EAAO,KAAMA,EAAO,GAAIE,CAAE,EAAGF,EAAO,CAAC,EAC7EI,EAAIA,EAAE,IAAI3J,EAAI,IAAI,aAAa+J,EAASvO,EAAIqO,EAAI,IAAI,CAAC,CAAC,CAAC,EACvD,IAAMG,EAAaC,GAAMjG,EAAMlH,EAAI,OAAQA,EAAI,OAAQA,EAAI,MAAM,EAAGkD,CAAG,EACjEkK,EAAU,aAAa,EAAG3F,GAAW,CAACiF,EAAY,YAAaA,EAAY,YAAaC,CAAE,CAAC,EACjG,OAAAE,EAAIA,EAAE,IAAIK,EAAW,IAAI5O,CAAG,EAAE,IAAI,aAAa0B,EAAI,QAASoN,CAAO,CAAC,CAAC,EAC9DP,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,CACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,MACA,GACD,CACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,MACA,GACD,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,KACA,KACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,IAAI,CACN,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,CACC,mBACA,iBACA,IACD,CACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,MACA,IACA,cACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,OAAO,CACT,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,iBACA,CACC,cACA,YACA,IACD,CACD,EACA,IACA,UACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,QAAQ,CAAC,CACrB,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,iBACA,CACC,cACA,YACA,IACD,CACD,EACA,IACA,UACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,QAAQ,CAAC,CACrB,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,MACA,QACD,EACA,CACC,EACA,MACA,QACD,EACA,CACC,EACA,MACA,QACD,CACD,CACD,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,IACA,yBACD,EACA,0BACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,KAAK,CACP,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,SACD,EACA,IACA,SACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,GAAG,CACT,CAAC,CACF,EACA,UAAW,C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AAAC,EAAO,MAAAC,EAAO,UAAAC,EAAW,KAAAxK,CAAK,EAAInG,EACpD,OAAOa,EAAgB,GAAG,CACzBkJ,EACAA,EACAlK,CACD,EAAGkK,CAAK,GAAoBjJ,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiF,EAAK8I,EAAM+B,IAAS,CACjI,UACA,IAAM/N,EAAM9C,EAAO,EAAE,OACrB,OAAO8Q,GAAO9K,EAAI,IAAIyK,CAAQ,EAAE,IAAIzG,EAAM,aAAalH,EAAI,KAAM4N,CAAK,EAAG,aAAa5N,EAAI,KAAM6N,CAAK,EAAG,aAAaE,EAAMD,CAAS,CAAC,CAAC,CAAC,EAAE,IAAI5G,EAAM,GAAI,GAAI,EAAE,CAAC,EAAE,IAAI,aAAalH,EAAI,UAAWsD,CAAI,CAAC,CACtM,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,eACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,UAAU,CACZ,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,MACD,EACA,IACA,OACD,EACA,CACC,EACA,CACC,EACA,MACA,MACD,EACA,IACA,OACD,EACA,CACC,EACA,OACA,IACA,WACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,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,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CACC,MACA,QACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,6BACA,CACC,QACA,IACA,KACA,CACC,EACA,MACA,SACD,EACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,aACA,CAAC,IAAI,CACN,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM1R,EAChB,UAAW,IAAMgK,EACjB,MAAS,IAAMoH,EACf,2BAA8B,IAAMO,GACpC,QAAS,IAAM7R,EACf,UAAa,IAAMuR,EACnB,YAAa,IAAM1P,EACnB,EAAK,IAAM2P,EACX,UAAW,IAAMxF,EACjB,aAAc,IAAMxK,EACrB,CACD,CAAC,GAAKP,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,SAAS2R,IAAS5R,EAAQC,EAAK,CAC9B,IAAM4R,EAAa5R,EAAI,UACvB,OAAOa,EAAgB,GAAG,CACzBjB,EACAA,EACAC,CACD,EAAGD,CAAK,GAAoBkB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiF,EAAK5E,EAAK0Q,IAAc,CACrI,UACA,IAAMhP,EAAM9C,EAAO,EAAE,OACjB+R,EAAMlS,EAAM,EAAG,CAAC,EAChBmS,EAAMnS,EAAM,EAAG,CAAC,EAChBoS,EAAMpS,EAAM,EAAG,CAAC,EAChBqS,EAASpS,EAAI,CAAC,EACdqS,EAASrS,EAAI,CAAC,EAClB,QAASsS,EAAI,EAAGA,EAAIP,GACf,EAAA/R,EAAIsS,CAAC,GAAKtP,EAAI,OADasP,IAAK,CAEpC,IAAMC,EAAQrS,EAAO,EAAE,OAAOZ,EAAIgT,CAAC,CAAC,EAC9BE,EAAOzS,EAAMwS,EAAM,EAAGA,EAAM,CAAC,EAC7BE,EAAMvM,EAAI,IAAIsM,CAAI,EAClBE,EAAMC,GAAIF,EAAKA,CAAG,EACpBC,EAAM,MAAQA,EAAM1P,EAAI,eAC3BkP,EAAMA,EAAI,IAAInS,EAAMwS,EAAM,EAAGA,EAAM,CAAC,CAAC,EACrCJ,EAAMA,EAAI,IAAIK,CAAI,EAClBJ,EAAS,aAAaA,EAAQ,CAAC,EAC3BM,EAAM1P,EAAI,cACbiP,EAAMA,EAAI,IAAIQ,EAAI,IAAIC,CAAG,CAAC,EAC1BL,EAAS,aAAaA,EAAQ,CAAC,GAGlC,CACA,IAAIO,EAAQ7S,EAAM,EAAG,CAAC,EACtB,GAAIqS,EAAS,GAAI,CAChB,IAAMS,EAAWC,GAAcZ,EAAI,IAAIE,CAAM,EAAG9Q,EAAK0Q,EAAWhP,EAAI,QAAQ,EACtE+P,EAAWD,GAAcX,EAAI,IAAIC,CAAM,EAAE,IAAIlM,CAAG,EAAG5E,EAAK0Q,EAAWhP,EAAI,QAAQ,EACrF4P,EAAQA,EAAM,IAAIC,EAAS,IAAI7P,EAAI,IAAI,CAAC,EAAE,IAAI+P,EAAS,IAAI/P,EAAI,IAAI,CAAC,CACrE,CACA,OAAIqP,EAAS,KAAIO,EAAQA,EAAM,IAAIE,GAAcb,EAAK3Q,EAAK0Q,EAAWhP,EAAI,QAAQ,EAAE,IAAIA,EAAI,IAAI,CAAC,GAC1F4P,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,YACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,KACA,CACC,EACA,MACA,OACD,CACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,QACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,KACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,cACD,CACD,CACD,EACA,CAAC,EAAG,CACH,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,QACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,aACD,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EAAG,CACF,EACA,SACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,WACA,CACC,EACA,uBACA,CACC,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,QAAQ,CACV,EACA,MACA,YACA,CACC,EACA,MACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,uBACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,QAAQ,CACV,EACA,KACD,EACA,CAAC,KAAK,CACP,EACA,MACA,YACA,CACC,EACA,MACA,UACD,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,MACA,MACD,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,MACA,MACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CAAC,CACJ,EACA,QACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,uBACA,CACC,MACA,MACA,YACA,CACC,EACA,MACA,UACD,CACD,CACD,EACA,KACD,EACA,CAAC,CACA,EACA,MACA,MACD,CAAC,CACF,CAAC,CACF,CACD,CAAC,CAAC,CACH,EACA,CAAC,GAAI,OAAO,CACb,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM1S,EAChB,UAAW,IAAMH,EACjB,QAAS,IAAMC,EACf,WAAc,IAAM+R,EACpB,QAAS,IAAMzS,EACf,UAAW,IAAMqT,GACjB,uBAAwB,IAAMG,EAC/B,CACD,CAAC,GAAK7R,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,CACtC,CACA,SAAS+R,IAAY9S,EAAQ,CAC5B,OAAOc,EAAgB,GAAG,CACzBjB,EACAA,EACAC,CACD,EAAGD,CAAK,GAAoBkB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiF,EAAK8I,EAAMiE,IAAe,CACvI,UACA,IAAMjQ,EAAM9C,EAAO,EAAE,OACjB0S,EAAQ7S,EAAM,EAAG,CAAC,EACtB,GAAIiD,EAAI,WAAa,GAAI,CACxB,IAAMkQ,EAAKnT,EAAMiD,EAAI,QAASA,EAAI,OAAO,EAAE,IAAIkD,CAAG,EAC5CiN,EAAOR,GAAIO,EAAIA,CAAE,EACvB,GAAIC,EAAO,MAAQA,EAAOnQ,EAAI,eAAgB,CAC7C,IAAMoQ,EAAQC,GAAKF,CAAI,EACjBG,EAAU,aAAa,EAAG,aAAaF,EAAO1R,EAAIsB,EAAI,aAAc,IAAI,CAAC,CAAC,EAC1EuQ,EAAO9R,EAAOzB,EAAI,CAAC,EAAGA,EAAI,EAAE,EAAGgD,EAAI,WAAa,GAAG,EACzD4P,EAAQM,EAAG,IAAIE,CAAK,EAAE,IAAI,aAAa,aAAaG,EAAMD,CAAO,EAAGtQ,EAAI,WAAW,CAAC,CACrF,CACD,CACA,OAAO4P,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,MACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,SACD,EAAG,CACF,EACA,MACA,SACD,CAAC,CACF,EACA,KACD,EACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,KACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,gBACD,CACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,cACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,CACC,EACA,MACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,OAAO,CACT,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,SACD,EACA,IACA,CACC,EACA,MACA,aACD,CACD,CAAC,CACF,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CAAC,GAAI,OAAO,CACb,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM1S,EAChB,UAAW,IAAMH,EACjB,UAAW,IAAM4S,GACjB,WAAY,IAAMU,GAClB,UAAW,IAAM3R,EACjB,aAAc,IAAMD,EACpB,QAAS,IAAMzB,CAChB,CACD,CAAC,GAAKiB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,kBAAkB,CACzC,CACA,SAASuS,IAAStT,EAAQ,CACzB,OAAOc,EAAgB,GAAG,CACzBjB,EACAA,EACAC,CACD,EAAGD,CAAK,GAAoBkB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiF,EAAK8I,EAAMiE,IAAe,CACvI,UACA,IAAMjQ,EAAM9C,EAAO,EAAE,OACfuT,EAAIzQ,EAAI,OACR0Q,EAAK1Q,EAAI,UACf,OAAOjD,EAAM,aAAa0B,EAAOzB,EAAI,CAAC,EAAG0T,EAAIxN,EAAI,EAAIuN,CAAC,EAAGhS,EAAOzB,EAAI,CAAC,EAAG,CAAC0T,EAAIxN,EAAI,EAAI,aAAalD,EAAI,QAASyQ,CAAC,CAAC,CAAC,EAAG,aAAahS,EAAOzB,EAAI,CAAC,EAAG0T,EAAIxN,EAAI,EAAIuN,CAAC,EAAGhS,EAAOzB,EAAI,CAAC,EAAG,CAAC0T,EAAIxN,EAAI,EAAI,aAAa,EAAGuN,CAAC,CAAC,CAAC,CAAC,CAClN,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,WACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,SACD,EACA,IACA,GACD,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,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jT,EAAOH,EAAI,EAAG,aAAaA,EAAI,EAAG,CAAC2S,CAAI,EAAGO,CAAI,EACpDG,EAAMlT,EAAOH,EAAI,EAAG,aAAaA,EAAI,EAAG,CAAC2S,CAAI,EAAGQ,CAAI,EACpDlH,EAAK1L,EAAMqE,EAAI,EAAG,EAAGlD,EAAI,OAAO,EAChCwK,EAAK3L,EAAMqE,EAAI,EAAG,EAAG,CAAC,EAC5BhG,EAAO,EAAE,OAAOgB,CAAC,EAAI8K,EAAMuB,EAAIC,EAAIkH,EAAKC,CAAG,CAC5C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,EAAG,CACF,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,GACD,EAAG,CACF,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,MACA,UACD,EACA,IACA,CACC,EACA,yBACA,CAAC,CACA,EACA,QACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CACC,MACA,MACA,WACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,aACA,CAAC,OAAO,CACT,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,UACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,SACA,IACA,WACD,EACA,IACA,WACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,IACA,WACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,MAAO,QAAQ,CACjB,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,MACA,CACC,EACA,YACA,IACA,OACD,EACA,WACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CAAC,EAAG,SAAS,CAAC,CACvB,CAAC,CACF,EACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,MACD,CACD,EACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,MACD,CACD,EACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,MACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,MACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,KACA,KACA,MACA,KACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMzU,EAChB,UAAW,IAAMH,EACjB,yBAA0B,IAAMoU,GAChC,QAAS,IAAMnU,EACf,MAAS,IAAMsR,EACf,aAAc,IAAM9P,GACpB,UAAW,IAAME,EACjB,YAAa,IAAMG,EACnB,UAAa,IAAMgS,EACnB,UAAa,IAAMC,EACnB,UAAW,IAAM7M,GACjB,UAAa,IAAM8M,EACnB,MAAS,IAAMC,EACf,aAAc,IAAMvS,EACpB,KAAQ,IAAMwS,EACd,UAAW,IAAMjI,CAClB,CACD,CAAC,GAAK/K,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,IAAMyU,GAAc9U,GAAO,CAC1B,KAAMC,EACN,SAAUC,EACV,IAAKA,CACN,CAAC,EAAE,MAAM,kBAAkB,EAC3B,SAAS6U,IAAe3U,EAAQ,CAC/B,OAAOc,EAAgB,GAAG,CAACjB,CAAK,EAAG6U,EAAW,GAAoB3T,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMiF,GAAQ,CAC3J,UACA,IAAMlD,EAAM9C,EAAO,EAAE,OACf4U,EAAS/U,EAAMiD,EAAI,QAASA,EAAI,OAAO,EACvC+R,EAAQ7O,EAAI,IAAI4O,CAAM,EACtBhI,EAAIpL,EAAIF,GAAOuT,CAAK,EAAG,IAAI,EAC3BC,EAAOD,EAAM,IAAIjI,CAAC,EAClBmI,EAAIC,GAAoBF,EAAMjV,EAAMiD,EAAI,MAAOA,EAAI,KAAK,EAAGA,EAAI,SAAS,EAC9E,OAAO4R,GAAY,CAClB,KAAAI,EACA,SAAU,aAAahS,EAAI,SAAUiE,GAAI,aAAa,aAAa,aAAa6F,EAAGA,CAAC,EAAGpL,EAAIsB,EAAI,QAAS,IAAI,CAAC,EAAG,EAAE,CAAC,CAAC,EACpH,IAAKmS,GAAMF,EAAE,EAAGA,EAAE,CAAC,CACpB,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,SACD,EAAG,CACF,EACA,MACA,SACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,OAAO,CACT,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,OACD,EAAG,CACF,EACA,MACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,6BACA,CACC,OACA,OACA,CACC,EACA,MACA,WACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,MACA,UACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,SACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,cACA,CAAC,CAAC,IAAK,CACN,KAAQ,OACR,SAAY,WACZ,IAAO,CACN,EACA,YACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM/U,EAChB,UAAW,IAAMH,EACjB,UAAW,IAAM2B,EACjB,aAAc,IAAMF,GACpB,6BAA8B,IAAM0T,GACpC,UAAW,IAAMjO,GACjB,YAAe,IAAM2N,GACrB,YAAa,IAAMO,EACpB,CACD,CAAC,GAAKlU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,0BAA0B,CACjD,CACA,IAAMmU,GAAuBpU,EAAgB,GAAG,CAAChB,EAAKA,CAAG,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkD,EAAIkR,IAAa,CACrL,UACA,OAAO5T,EAAOA,EAAO,aAAakD,GAAO,aAAa,aAAaR,EAAI,MAAM,EAAG,IAAI,CAAC,EAAG,iBAAiB,EAAGnE,EAAI,CAAC,EAAGqV,EAAW,EAAE,EAAGrV,EAAI,kBAAkB,EAAGqV,EAAW,GAAG,CAC5K,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IA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EAAGE,CAAE,EAAGnT,EAAI,KAAK,EAAG+S,CAAQ,CAAC,CAChM,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,MACA,UACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,QACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,OACD,CACD,EACA,IACA,UACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,OACD,CACD,EACA,IACA,UACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM7V,EAChB,YAAa,IAAM6N,GACnB,UAAW,IAAMrM,EACjB,eAAgB,IAAM4C,GACtB,UAAW,IAAMvE,EACjB,SAAY,IAAMgW,CACnB,CACD,CAAC,GAAK9U,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,mBAAmB,CAC1C,CACA,SAASmV,IAAclW,EAAQC,EAAK,CACnC,GAAM,CAAE,KAAAW,EAAM,QAAAuV,CAAQ,EAAIlW,EACpBmR,EAAQuE,IAAe1V,EAAI,OAAO,EAClCmW,EAAanW,EAAI,UACvB,OAAOa,EAAgB,GAAG,CAAC1B,CAAG,CAAC,GAAoB2B,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMC,GAAM,CAC1I,UACA,IAAM8B,EAAM9C,EAAO,EAAE,OACfqW,EAAKrW,EAAO,EAAE,OAAOgB,CAAC,EACxBuR,EAAM1S,EAAMwW,EAAG,EAAGA,EAAG,CAAC,EACtBf,EAAQe,EAAG,EACXC,EAAQD,EAAG,EACT5E,EAAK3O,EAAI,GACTmB,EAAKnE,EAAIkB,CAAC,EACVC,EAAQL,EAAKqD,CAAE,EACfoR,EAAMc,EAAQtW,EAAM,aAAaoB,EAAM,EAAGsR,EAAI,CAAC,EAAG,aAAatR,EAAM,EAAGsR,EAAI,CAAC,CAAC,CAAC,EACrF+D,EAAQ,aAAaA,EAAO,aAAalF,EAAMiE,EAAKC,EAAOrR,CAAE,EAAGwN,CAAE,CAAC,EACnE6E,EAAQ,aAAaA,EAAOvP,GAAI,aAAa,aAAajE,EAAI,QAAS2O,CAAE,EAAG,EAAE,CAAC,CAAC,EAChF6D,EAAQ,aAAaA,EAAO,aAAagB,EAAO7E,CAAE,CAAC,EACnD,IAAM0C,EAAMxS,EAAM,aAAa4U,EAAID,CAAK,EAAG9U,EAAIsB,EAAI,SAAU,IAAI,CAAC,EAAG,EAAG,CAAC,EACnEsR,EAAS,aAAapU,EAAO,EAAE,KAAKgB,CAAC,EAAG+F,GAAI,aAAa0K,EAAI,CAAC3O,EAAI,QAAQ,CAAC,CAAC,EAClF9C,EAAO,EAAE,KAAKgB,CAAC,EAAIQ,EAAI2S,EAAKC,CAAM,EAClC,IAAMoC,EAAOnB,EAAI,KAAK,IAAI,aAAa,aAAavS,EAAI,MAAOuS,EAAI,QAAQ,EAAG,EAAE,CAAC,EACjF9C,EAAMA,EAAI,IAAIiE,EAAK,IAAI/E,CAAE,CAAC,EAC1Bc,EAAMA,EAAI,IAAIxL,GAAI,aAAa,aAAajE,EAAI,MAAO2O,CAAE,EAAG,EAAE,CAAC,CAAC,EAChE,IAAMgF,EAASnV,GAAOiR,CAAG,EACzBA,EAAMhR,EAAOgR,EAAKA,EAAI,IAAI/Q,EAAIiV,EAAQ,IAAI,CAAC,EAAE,IAAIL,CAAU,EAAGK,EAASL,CAAU,EACjFpW,EAAO,EAAE,OAAOgB,CAAC,EAAI8K,EAAMyG,EAAI,EAAGA,EAAI,EAAG+C,EAAOgB,CAAK,CACtD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,QACA,CACC,MACA,QACA,IACD,CACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,SACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,OAAO,CACT,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,UACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,IACA,CACC,EACA,MACA,UACD,CACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,MAAO,QAAQ,CACjB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,MACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,OACD,EACA,IACA,CACC,EACA,MACA,UACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,OACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,aACA,CACC,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,SAAU,CAAC,EAAG,SAAS,CAAC,CAC1B,CAAC,CACF,EACA,KACD,EACA,CAAC,YAAY,CACd,EACA,CACC,EACA,SACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,QACA,OACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMtW,EAChB,UAAW,IAAMH,EACjB,QAAS,IAAMC,EACf,KAAQ,IAAMc,EACd,QAAW,IAAMuV,EACjB,MAAS,IAAM/E,EACf,UAAW,IAAMrK,GACjB,YAAa,IAAMpF,EACnB,UAAW,IAAM4U,EACjB,UAAW,IAAM/U,EACjB,aAAc,IAAMF,GACpB,aAAc,IAAMC,EACpB,WAAc,IAAM6U,EACpB,UAAW,IAAMtK,CAClB,CACD,CAAC,GAAK/K,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,SAASyW,IAAc1W,EAAQ,CAC9B,OAAOc,EAAgB,GAAG,CAAChB,CAAG,EAAGD,CAAK,GAAoBkB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMkD,GAAO,CAClJ,UACA,IAAMnB,EAAM9C,EAAO,EAAE,OACfmE,EAAIC,GAAOvE,EAAM,aAAa,aAAaoE,EAAI,KAAK,EAAG,GAAG,EAAG,aAAa,aAAaA,EAAI,MAAM,EAAG,IAAI,CAAC,CAAC,EAC1G0S,EAAW,aAAa,EAAG,aAAa,aAAaxS,EAAE,EAAG,EAAE,EAAGrB,EAAI,QAAQ,CAAC,EAC5E8T,EAAM,aAAa9T,EAAI,SAAU,aAAa,aAAa,aAAaqB,EAAE,EAAG,EAAE,EAAG,CAAC,EAAGrB,EAAI,WAAW,CAAC,EAC5G,OAAOjD,EAAMqB,GAAI0V,CAAG,EAAGzV,GAAIyV,CAAG,CAAC,EAAE,IAAI,aAAa9T,EAAI,UAAW6T,CAAQ,CAAC,CAC3E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,MACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,UACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,aACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAK,CACP,EAAG,CACF,EACA,UACA,CAAC,KAAK,CACP,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,WACD,EACA,IACA,UACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM3W,EAChB,eAAgB,IAAMoE,GACtB,UAAW,IAAMvE,EACjB,UAAW,IAAMqB,GACjB,UAAW,IAAMC,EAClB,CACD,CAAC,GAAKJ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,CAC3C,CACA,SAAS8V,IAAW7W,EAAQ,CAC3B,OAAOc,EAAgB,GAAG,CAACjB,CAAK,EAAGA,CAAK,GAAoBkB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMiF,GAAQ,CACrJ,UACA,IAAMlD,EAAM9C,EAAO,EAAE,OACjB8W,EAAUjX,EAAM,EAAG,CAAC,EACxB,OAAIiD,EAAI,YAAc,OAAMgU,EAAUzG,GAAarK,EAAI,IAAInG,EAAMiD,EAAI,QAASA,EAAI,OAAO,CAAC,EAAGA,EAAI,YAAaA,EAAI,WAAW,EAAE,IAAIA,EAAI,EAAE,GAClIgU,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,MACA,aACD,EACA,IACA,CAAC,EAAG,SAAS,CACd,EACA,CAAC,EAAG,CAAC,CACJ,GACA,QACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,SACD,EAAG,CACF,EACA,MACA,SACD,CAAC,CACF,CAAC,CACF,CACD,EAAG,CACF,EACA,UACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,sBACA,CACC,QACA,CACC,EACA,MACA,aACD,EACA,CACC,EACA,MACA,aACD,CACD,CACD,EACA,KACD,EACA,CAAC,CACA,EACA,MACA,IACD,CAAC,CACF,CACD,CAAC,CAAC,CACH,EACA,CAAC,GAAI,SAAS,CACf,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM9W,EAChB,UAAW,IAAMH,EACjB,sBAAuB,IAAMwQ,EAC9B,CACD,CAAC,GAAKtP,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,iBAAiB,CACxC,CACA,SAASgW,IAAQ/W,EAAQC,EAAK,CAC7B,GAAM,CAAE,MAAO+W,EAAS,KAAAC,CAAK,EAAIhX,EACjC,OAAOa,EAAgB,GAAG,CAAC1B,CAAG,CAAC,GAAoB2B,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMC,GAAM,CAC1I,UACA,IAAM8B,EAAM9C,EAAO,EAAE,OACf2I,EAAI3I,EAAO,EAAE,OAAOgB,CAAC,EACrBiD,EAAKnE,EAAIkB,CAAC,EACVyQ,EAAK3O,EAAI,GACXkD,EAAMnG,EAAM8I,EAAE,EAAGA,EAAE,CAAC,EACpBuO,EAAQrX,EAAM8I,EAAE,EAAGA,EAAE,CAAC,EAC1BuO,EAAQA,EAAM,IAAID,EAAKjR,CAAG,CAAC,EAC3BkR,EAAQA,EAAM,IAAIpU,EAAI,OAAO,EAC7BkD,EAAMA,EAAI,IAAIgR,EAAQ/S,CAAE,EAAE,IAAIiT,CAAK,EAAE,IAAIzF,CAAE,CAAC,EAC5C,IAAM9H,EAAK,aAAa3D,EAAI,EAAG,aAAa6H,GAAM,aAAa7H,EAAI,EAAGxE,EAAIsB,EAAI,QAAS,IAAI,CAAC,CAAC,EAAGA,EAAI,OAAO,CAAC,EACtG8G,EAAK,aAAa5D,EAAI,EAAG6H,GAAM7H,EAAI,CAAC,CAAC,EAC3ChG,EAAO,EAAE,OAAOgB,CAAC,EAAI8K,EAAMnC,EAAIC,EAAIsN,EAAM,EAAGA,EAAM,CAAC,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,OACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,MACA,SACD,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,OAAO,CACT,EACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,SACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,MACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,KACA,KACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMlX,EAChB,QAAS,IAAMF,EACf,UAAW,IAAMD,EACjB,KAAQ,IAAMoX,EACd,MAAS,IAAMD,EACf,YAAa,IAAMnJ,GACnB,UAAW,IAAMrM,EACjB,UAAW,IAAMsK,CAClB,CACD,CAAC,GAAK/K,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,IAAIkX,GAAmBrW,EAAgB,GAAG,CAACkJ,EAAOlK,CAAG,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACqW,EAAKC,IAAO,CAC5K,UACA,OAAO5E,GAAI2E,EAAKpN,EAAM,KAAM,KAAM,IAAI,CAAC,CACxC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CAAC,MAAO,CACP,EACA,UACA,CACC,CAAC,EAA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,CACC,EACA,yBACA,CACC,KACA,CACC,EACA,IACA,MACD,EACA,CACC,EACA,IACA,MACD,EACA,CACC,EACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,UACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EAAG,CACF,EACA,KACA,IACA,CACC,EACA,IACA,UACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,sBACA,CACC,SACA,CACC,EACA,IACA,aACD,EACA,CACC,EACA,IACA,aACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,uBACA,CAAC,SAAU,CACV,EACA,IACA,aACD,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,cACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,mCACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,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AAC,EAAGyZ,CAAS,EAC1CG,GAAOlY,EAAOkY,GAAMJ,EAASC,CAAS,EACtC5H,EAAKnQ,EAAOmQ,EAAI1H,EAAM,EAAG,EAAG,CAAC,EAAGsP,CAAS,EACzC,IAAMzI,GAAO6I,GAAO7Z,EAAM,aAAaC,EAAIoJ,CAAE,EAAG,EAAE,EAAG,aAAapJ,EAAIqJ,CAAE,EAAG,EAAE,CAAC,CAAC,EACzEwQ,GAAQpY,EAAOgQ,EAAG,EAAGzR,EAAI,CAAC,EAAGhB,EAAI+J,CAAS,EAChD7I,EAAO,EAAE,IAAIgB,CAAC,EAAI8K,EAAM0N,GAAK,EAAGA,GAAK,EAAGC,GAAM5I,EAAI,EAClD7Q,EAAO,EAAE,IAAIgB,CAAC,EAAI8K,EAAM4F,EAAG,EAAGA,EAAG,EAAGA,EAAG,EAAGiI,EAAK,CAChD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,OACD,CAAC,CACF,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,wBACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,4BACA,CAAC,CACA,EACA,UACA,CAAC,QAAS,OAAO,CAClB,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CACA,EACA,OACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,CACC,EACA,KACA,IACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,CACC,EACA,KACA,IACD,CACD,CACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,CACL,EACA,QACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,MAAO,GAAG,CACZ,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EAAG,CACF,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,CACC,QACA,MACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,OACD,CACD,EACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,OACD,CACD,CACD,EACA,KACD,EACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,6BACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,IACA,KACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,aACA,CACC,OACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,WACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,aACA,CACC,OACA,UACA,WACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,WACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,IACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,OACA,MACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,KACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,OACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM3Z,EAChB,QAAS,IAAMZ,EACf,QAAS,IAAMU,EACf,wBAAyB,IAAM6Y,GAC/B,4BAA6B,IAAME,GACnC,UAAW,IAAMhZ,EACjB,kBAAmB,IAAMkZ,GACzB,UAAW,IAAMlN,GACjB,UAAW,IAAMlH,EACjB,UAAW,IAAMnD,EACjB,UAAW,IAAMsK,EACjB,QAAW,IAAM0M,EACjB,OAAU,IAAM5D,EAChB,UAAW,IAAM5K,EACjB,MAAS,IAAMyO,EACf,2BAA8B,IAAM9G,GACpC,UA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CA,KACA,CACC,EACA,MACA,IACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,QACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,4BACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACD,EAAG,CACF,EACA,KACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,MACA,QACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,QACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,cACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,KACA,IACA,KACD,CACD,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,KACA,IACA,KACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,UACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,CACC,EACA,YACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,UACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,CACC,EACA,YACA,IACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,QACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,OACA,IACA,IACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,QACA,QACA,OACA,MACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMjb,EAChB,UAAW,IAAMH,EACjB,UAAW,IAAM2B,EACjB,QAAS,IAAM1B,EACf,EAAK,IAAM+Z,EACX,4BAA6B,IAAMhB,GACnC,kBAAmB,IAAME,GACzB,UAAW,IAAMlN,GACjB,UAAW,IAAMlH,EACjB,UAAW,IAAMoC,GACjB,aAAgB,IAAM+S,EACtB,YAAa,IAAMgB,GACnB,IAAO,IAAMd,EACb,IAAO,IAAME,EACb,UAAa,IAAMH,EACnB,YAAa,IAAMpY,EACnB,UAAW,IAAMmK,CAClB,CACD,CAAC,GAAK/K,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMd,EAAI,IAAI,CAC/B,CACA,IAAMmb,GAAQ,CACb,SAAAnO,IACA,YAAAiC,IACA,SAAAiB,IACA,QAAAG,IACA,WAAAE,IACA,SAAAoB,IACA,YAAAkB,IACA,SAAAQ,IACA,WAAAuD,IACA,aAAAoB,GACD,EACMoD,GAAS,CACd,aAAAjG,IACA,KAAMK,GACP,EACM6F,GAAQ,CACb,eAAA3G,IACA,iBAAAiB,GACD,EACM2F,GAAQ,CAAE,cAAA7E,GAAc,EACxB8E,GAAa,CAClB,SAAArK,IACA,WAAAuC,IACA,cAAAwC,IACA,QAAAa,IACA,OAAAwB,IACA,SAAAqB,GACD,EACI6B,GAAW3a,EAAgB,GAAG,CAAChB,EAAKA,CAAG,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC2a,EAAI7R,IAAO,CACjK,UACA,IAAM8R,EAAKna,EAAIka,EAAI,CAAC,EACdE,EAAKpa,EAAIqI,EAAI,CAAC,EACpB,OAAO,aAAagO,GAAIrW,EAAIka,EAAI7R,CAAE,EAAG,CAAC,EAAGsJ,GAAK,aAAa,aAAawI,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,CAAC,CACxG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMpa,EACjB,UAAW,IAAMqW,GACjB,WAAY,IAAM1E,EACnB,CACD,CAAC,GAAKpS,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,EAC1C,SAAS8a,IAAiB7b,EAAQ8b,EAAO,CACxC,OAAOhb,EAAgB,GAAG,CAACkJ,CAAK,EAAGlK,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMgb,GAAO,CAClJ,UACA,IAAMjZ,EAAM9C,EAAO,EAAE,OACf0b,EAAKI,EAAMjc,EAAM,aAAakc,EAAG,EAAG,EAAE,EAAG,aAAa,GAAIA,EAAG,CAAC,CAAC,EAAGjZ,EAAI,SAAUA,EAAI,QAASA,EAAI,WAAYA,EAAI,aAAcA,EAAI,WAAYA,EAAI,SAAUA,EAAI,SAAUA,EAAI,UAAU,EAAE,EACjM,OAAO2Y,GAASC,EAAI,aAAanF,EAAIwF,EAAG,CAAC,EAAGjZ,EAAI,SAAS,CAAC,CAC3D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,KACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,QACA,CACC,MACA,CACC,EACA,MACA,UACD,EACA,CACC,EACA,MACA,SACD,EACA,CACC,EACA,MACA,YACD,EACA,CACC,EACA,MACA,cACD,EACA,CACC,EACA,MACA,YACD,EACA,CACC,EACA,MACA,UACD,EACA,CACC,EACA,MACA,UACD,EACA,CACC,EACA,MACA,YACD,CACD,CACD,EACA,GACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,WACA,CAAC,KAAM,CACN,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,MACA,WACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAM9C,EAChB,UAAW,IAAMH,EACjB,MAAS,IAAMic,EACf,SAAY,IAAML,GAClB,UAAW,IAAMlF,CAClB,CACD,CAAC,GAAKxV,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,4BAA4B,CACnD,CACA,SAASib,IAAYhc,EAAQic,EAAWhc,EAAK,CAC5C,IAAMic,EAAOjc,EAAI,KACjB,OAAOa,EAAgB,GAAG,CAACkJ,CAAK,EAAGlK,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMgb,GAAO,CAClJ,UACA,IAAMjZ,EAAM9C,EAAO,EAAE,OACfmc,EAAS,aAAaD,EAAM,CAAC,EAC7BlU,EAAKrG,EAAMtC,EAAI,aAAa,aAAa0c,EAAG,EAAG,EAAE,EAAGG,CAAI,CAAC,EAAG,EAAGC,CAAM,EACrElU,EAAKtG,EAAMtC,EAAI,aAAa,aAAa,GAAI0c,EAAG,CAAC,EAAGG,CAAI,CAAC,EAAG,EAAGC,CAAM,EACrET,EAAK3C,GAAYkD,EAAU,EAAE,UAAWpQ,GAAMzM,EAAI4I,CAAE,EAAG5I,EAAI6I,CAAE,CAAC,EAAG,CAAC,EAAE,EACpEmU,EAAM5a,EAAI,aAAa+U,EAAIwF,EAAG,CAAC,EAAG,EAAE,EAAG,CAAC,EACxCM,EAAM7a,EAAI,aAAa+U,EAAIwF,EAAG,CAAC,EAAG,EAAE,EAAG,CAAC,EAC9C,OAAON,GAAS,aAAaC,EAAIvI,GAAK,aAAa,aAAaiJ,EAAKA,CAAG,EAAG,aAAaC,EAAKA,CAAG,CAAC,CAAC,CAAC,EAAG,aAAa9F,EAAIwF,EAAG,CAAC,EAAGjZ,EAAI,SAAS,CAAC,CAC7I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,MACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,MACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,YACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,MACA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,CACjB,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,IACA,WACD,CACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAMC,EAAI,CACnC,CAAC,GAAKH,EAAE,GAAG,CAAC,CAAC,CAAC,EACRO,GAAqBT,EAAgB,GAAG,CAC7CU,EACAT,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACS,EAAIC,EAAQC,EAAIC,EAAIC,IAAW,CAC1I,UACA,IAAMC,EAAK,aAAa,aAAaL,EAAG,EAAGE,CAAE,EAAGD,CAAM,EAChDK,EAAK,aAAaN,EAAG,EAAGG,CAAE,EAC1BI,EAAM,aAAa,aAAaF,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,EACnE,OAAOZ,GAAI,aAAa,aAAa,IAAKa,CAAG,EAAGH,CAAM,CAAC,CACxD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA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,GAAK,aAAa,aAAaD,EAAQ,EAAGA,EAAQ,CAAC,EAAG,aAAaA,EAAQ,EAAGA,EAAQ,CAAC,CAAC,CAAC,CAAC,CAC3G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,aACA,IACA,CACC,EACA,UACA,CAAC,eAAgB,CAAC,EAAG,QAAQ,CAAC,CAC/B,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,eACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,eACA,GACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,IAAK,CACL,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM5C,EACjB,YAAa,IAAM0C,EACnB,UAAW,IAAMV,EACjB,WAAY,IAAMa,EACnB,CACD,CAAC,GAAKrD,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsD,GAAqBxD,EAAgB,GAAG,CAC7CC,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGS,CAAK,GAAoBR,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAMgD,EAAGM,EAAgBC,EAAcC,EAAeC,IAAgB,CACnL,UACA,IAAMC,EAAYC,EAAIL,EAAgBC,EAAcP,CAAC,EAC/CY,EAAWrB,EAAIoB,EAAIH,EAAeC,EAAaT,CAAC,EAAG,IAAI,EACvDa,EAAiB,aAAa7D,EAAMuC,EAAImB,EAAW,IAAI,CAAC,EACxDI,EAAU,aAAa,EAAGF,CAAQ,EAClCG,EAAQ3C,GAAI,aAAa,EAAGa,GAAW,EAAG6B,EAASD,CAAc,CAAC,EAAG,aAAa,EAAG,aAAaD,EAAU,GAAG,CAAC,CAAC,EACvH,OAAOrD,EAAM0B,GAAW,aAAa,EAAG2B,CAAQ,EAAG,aAAa,EAAGA,CAAQ,EAAGC,CAAc,EAAGE,CAAK,CACrG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CACC,iBACA,eACA,GACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,gBACA,cACA,GACD,CACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,QAAQ,CAAC,CAC5B,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,UACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,UACA,gBACD,CACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,YAAa,gBAAgB,CAC/B,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,UACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,UACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,iBACA,CACC,qBACA,mBACA,gBACD,C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AAI2E,EAAUhD,IAAW,CACtI,UACA,IAAM1B,EAAS2E,GAASD,CAAQ,EAC1BE,EAAKlD,EAAO,EACZmD,EAAK,aAAa,EAAGnD,EAAO,CAAC,EAC7BtB,EAAK,aAAa,aAAaL,EAAG,EAAGC,CAAM,EAAG,aAAa4E,EAAI5E,CAAM,CAAC,EACtEK,EAAK,aAAaN,EAAG,EAAG8E,CAAE,EAChC,OAAO/E,EAAM6C,GAAK,aAAa,aAAavC,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EAAGgB,GAAMhB,EAAID,CAAE,CAAC,CAC3F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,KACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,OAAQ,OAAO,CACjB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAMuE,GACvB,WAAY,IAAMhC,GAClB,YAAa,IAAMtB,GACnB,UAAW,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CACV,CACD,CACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACD,EACA,CAAC,CACA,EACA,YACA,CACC,UACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,CAAC,EAAG,MAAM,CAAC,CACb,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,SACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,kBACA,CAAC,SAAS,CACX,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,SAAU,MAAM,CAClB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtE,EACjB,YAAa,IAAMqB,EACnB,kBAAmB,IAAMkD,GACzB,UAAW,IAAMN,CAClB,CACD,CAAC,GAAK9F,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqG,GAAiBvG,EAAgB,GAAG,CACzCU,EACAT,EACAS,CACD,EAAGA,CAAK,GAAoBR,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACS,EAAIC,EAAQ4F,IAAc,CACvI,UACA,IAAMC,EAAK/F,EAAM,aAAaC,EAAG,EAAGC,CAAM,EAAGD,EAAG,CAAC,EAC3C+F,EAAShG,EAAM,aAAa8F,EAAU,EAAG5F,CAAM,EAAG,aAAa,EAAG4F,EAAU,CAAC,CAAC,EAC9EG,EAAWjG,EAAM,aAAaE,EAAQ,EAAE,EAAG,EAAE,EAAE,IAAI8F,CAAM,EACzDE,EAAOC,GAAOF,CAAQ,EACtBG,EAAOC,EAAO,aAAaJ,EAAS,EAAGjE,EAAIkE,EAAM,IAAI,CAAC,EAAG3G,EAAI,CAAC,EAAG2G,EAAO,GAAG,EAC3EI,EAAOD,EAAO,aAAaJ,EAAS,EAAGjE,EAAIkE,EAAM,IAAI,CAAC,EAAG3G,EAAI,CAAC,EAAG2G,EAAO,GAAG,EAC3EK,EAAO,aAAaR,EAAG,EAAGC,EAAO,CAAC,EAClCQ,EAAO,aAAaT,EAAG,EAAGC,EAAO,CAAC,EACxC,OAAOhG,EAAM,aAAa,aAAauG,EAAMH,CAAI,EAAG,aAAaI,EAAMF,CAAI,CAAC,EAAG,aAAa,aAAaE,EAAMJ,CAAI,EAAG,aAAaG,EAAMD,CAAI,CAAC,CAAC,CAChJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,EACA,KACD,EACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,OAAO,CAAC,CACtB,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,OAAO,CAAC,CACtB,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtG,EACjB,aAAc,IAAMmG,GACpB,aAAc,IAAME,EACpB,UAAW,IAAMrE,EACjB,QAAS,IAAMzC,CAChB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EC1sEd,IAAMiH,GAAaC,EAAgB,GAAG,CAACC,EAAKA,CAAG,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAGC,IAAa,CAC1K,UACA,IAAMC,EAAQC,EAAIC,EAAIC,GAAKL,CAAC,CAAC,EAAGI,EAAIE,GAAKN,CAAC,CAAC,CAAC,EAC5C,OAAOG,EAAI,aAAaD,EAAOD,CAAQ,EAAG,IAAI,CAC/C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,UACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,GAAG,CACL,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,GAAG,CACL,CAAC,CACF,CAAC,CACF,CACD,EAAG,CAAC,GAAI,CACP,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,UACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAME,EACjB,UAAW,IAAMC,EACjB,WAAY,IAAMC,GAClB,WAAY,IAAMC,EACnB,CACD,CAAC,GAAKP,EAAE,GAAG,CAAC,CAAC,CAAC,EACRQ,GAAaV,EAAgB,GAAG,CAACW,EAAOV,CAAG,EAAGU,CAAK,GAAoBT,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACU,EAAGR,IAAa,CAC9K,UACA,IAAMS,EAAML,GAAKI,CAAC,EACZE,EAAML,GAAKG,CAAC,EACZP,EAAQM,EAAML,EAAIC,EAAIM,EAAI,CAAC,EAAGN,EAAIO,EAAI,CAAC,CAAC,EAAGR,EAAIC,EAAIM,EAAI,CAAC,EAAGN,EAAIO,EAAI,CAAC,CAAC,CAAC,EAC5E,OAAOH,EAAML,EAAI,aAAaD,EAAM,EAAGD,CAAQ,EAAG,IAAI,EAAGE,EAAI,aAAaD,EAAM,EAAGD,CAAQ,EAAG,IAAI,CAAC,CACpG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,UACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,UACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,UACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAMI,GAClB,WAAY,IAAMC,GAClB,UAAW,IAAME,EACjB,UAAW,IAAML,EACjB,UAAW,IAAMC,CAClB,CACD,CAAC,GAAKL,EAAE,GAAG,CAAC,CAAC,CAAC,EACRa,GAAmBf,EAAgB,GAAG,CAC3CC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACU,EAAGI,EAAGC,IAAc,CAC/H,UACA,IAAMC,EAAI,aAAaN,EAAG,aAAaI,EAAG,EAAE,CAAC,EACvCG,EAAI,aAAaP,EAAG,aAAaI,EAAG,EAAE,CAAC,EACvCI,EAAoB,aAAa,EAAGH,CAAS,EAC7CI,EAAK,aAAa,aAAaC,GAAMJ,CAAC,EAAGE,CAAiB,EAAGd,EAAI,aAAaiB,GAAML,CAAC,EAAGD,CAAS,EAAG,CAAC,CAAC,EACtGO,EAAK,aAAa,aAAaF,GAAMH,CAAC,EAAGC,CAAiB,EAAGd,EAAI,aAAaiB,GAAMJ,CAAC,EAAGF,CAAS,EAAG,CAAC,CAAC,EAC5G,OAAOQ,EAAM,aAAa,aAAaJ,EAAIG,CAAE,EAAGR,CAAC,EAAG,EAAG,CAAC,CACzD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,WACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,GAAG,CACL,EACA,IACA,mBACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,GAAG,CACL,EACA,IACA,WACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,GAAG,CACL,EACA,IACA,mBACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,GAAG,CACL,EACA,IACA,WACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,CACC,EACA,CAC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,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,IACA,WACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,IACA,WACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMzB,EACjB,UAAW,IAAMJ,EACjB,YAAa,IAAMgB,GACnB,YAAa,IAAME,CACpB,CACD,CAAC,GAAKvB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRmC,GAAoBrC,EAAgB,GAAG,CAC5CC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoC,EAAOC,EAAWC,EAAIC,IAAO,CACxI,UACA,OAAO,aAAa,aAAa,EAAGC,GAAWF,EAAIC,EAAIH,CAAK,CAAC,EAAGK,GAAK,KAAMJ,CAAS,CAAC,CACtF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,KACA,KACA,OACD,CACD,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,QAAQ,EAAG,WAAW,CAC5B,CACD,CAAC,CAAC,CAAC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Q,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,iBACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,SACA,CACC,EACA,iBACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,aACA,CAAC,gBAAgB,CAClB,CACD,EACA,CACC,GACA,cACA,CACC,EACA,gBACA,CAAC,gBAAgB,CAClB,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,GACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,eACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,QACA,IACA,YACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,QAAQ,CACV,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,UACA,CACC,EACA,eACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,aACA,GACD,CAAC,CACF,EACA,WACA,UACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,IACA,QACD,EAAG,CACF,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,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,sBACA,CACC,KACA,SACA,UACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,UACA,CACC,EACA,eACA,CACC,QACA,OACA,CACC,EACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,IACA,eACD,EAAG,CACF,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,UAAU,CAAC,CAC3B,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,IACA,YACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,oBAAuB,IAAMF,GAC7B,WAAc,IAAMzB,GACpB,UAAW,IAAME,GACjB,UAAW,IAAME,GACjB,eAAgB,IAAMI,GACtB,UAAW,IAAMhE,EACjB,aAAc,IAAMkD,GACpB,UAAW,IAAMvD,CAClB,CACD,CAAC,GAAKJ,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6F,GAAa/F,EAAgB,GAAG,CACrCW,EACAV,EACAU,EACAA,CACD,EAAGV,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsF,EAAQQ,EAAU1C,EAAIC,IAAa,CAC9I,UACA,IAAMoC,EAAQC,GAAoBtC,EAAIkC,EAAQjC,CAAQ,EAChDF,EAAQ4C,GAAMN,EAAM,EAAGA,EAAM,CAAC,EAC9BO,EAAa,aAAa,GAAI,aAAa7C,EAAO8C,EAAG,CAAC,EACtDC,EAAmB,aAAaJ,EAAU/C,EAAO,EACvD,OAAO,aAAaiD,EAAYE,CAAgB,CACjD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,sBACA,CACC,KACA,SACA,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,QACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,QACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,WACA,IACA,SACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,IACA,kBACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,oBAAuB,IAAMR,GAC7B,YAAa,IAAMK,GACnB,IAAO,IAAME,GACb,QAAW,IAAMlD,EAClB,CACD,CAAC,GAAK/C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRmG,GAAcrG,EAAgB,GAAG,CACtCW,EACAV,EACAA,EACAA,EACAU,EACAA,CACD,EAAGV,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsF,EAAQc,EAAMN,EAAUO,EAAWjD,EAAIC,IAAa,CAC/J,UACA,IAAMoC,EAAQC,GAAoBtC,EAAIkC,EAAQjC,CAAQ,EAChDiD,EAAS,aAAaR,EAAU7B,EAAU,EAC1CO,EAAUC,GAAQgB,EAAOtB,GAAImC,CAAM,EAAG,CAACjC,GAAIiC,CAAM,CAAC,EAClDC,EAAQlG,EAAImE,EAAQ,CAAC,EACrBgC,EAAQnG,EAAImE,EAAQ,CAAC,EACrB5B,EAAO6D,EAAI,aAAaF,EAAOC,CAAK,EAAGpG,EAAImG,EAAOC,CAAK,EAAGH,CAAS,EACzE,OAAO,aAAazD,EAAMwD,CAAI,CAC/B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,sBACA,CACC,KACA,SACA,UACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,eACA,CACC,QACA,OACA,CACC,EACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,OACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAS,OAAO,CAClB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,KACA,OACA,WACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,IACA,MACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,oBAAuB,IAAMV,GAC7B,WAAc,IAAMzB,GACpB,UAAW,IAAME,GACjB,UAAW,IAAME,GACjB,eAAgB,IAAMI,GACtB,UAAW,IAAMpE,EACjB,UAAW,IAAMD,EACjB,UAAW,IAAMqG,CAClB,CACD,CAAC,GAAKzG,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0G,GAAc5G,EAAgB,GAAG,CAACC,EAAKA,CAAG,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CC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,YACA,CAAC,KAAM,IAAI,CACZ,EACA,IACA,UACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,IACA,IACA,OACD,EACA,IACA,CACC,EACA,QACA,IACA,QACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMxE,GACpB,UAAW,IAAMlD,EACjB,YAAa,IAAMsF,GACnB,OAAU,IAAMoC,EACjB,CACD,CAAC,GAAKnI,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoI,GAAatI,EAAgB,GAAG,CACrCW,EACAV,EACAA,EACAA,EACAA,EACAA,EACAU,EACAA,CACD,EAAGV,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsF,EAAQyB,EAAOsB,EAAaC,EAAepI,EAAU8G,EAAU5D,EAAIC,IAAa,CAC3L,UACA,IAAMU,EAAS,aAAaV,EAAS,EAAGA,EAAS,CAAC,EAC5C6E,EAAIvE,GAAOlD,EAAM,aAAa,aAAa2C,EAAG,EAAGW,CAAM,EAAG,aAAauB,EAAO,EAAGvB,CAAM,CAAC,EAAG,aAAaX,EAAG,EAAG,aAAa,EAAGkC,EAAO,CAAC,CAAC,CAAC,CAAC,EACzIiD,EAASR,GAAazC,EAAQyB,EAAOC,EAAU5D,EAAIC,CAAQ,EAC3DmF,EAASnH,GAAMkH,CAAM,EACrBE,EAAQ,aAAapI,EAAI,aAAamI,EAAQ,EAAE,CAAC,EAAG,CAAC,EACrDE,EAAYnH,EAAM8G,EAAa,aAAaC,EAAe,IAAI,EAAG,CAAC,EACnEK,EAAgB,aAAa,EAAG,aAAapH,EAAM+G,EAAe,EAAG,CAAC,EAAGJ,CAAC,CAAC,EAC3EU,EAAQ,aAAaF,EAAWC,CAAa,EAC7CE,EAAKC,GAAOP,CAAM,EAClBQ,EAAS,aAAa,EAAG,aAAa,aAAavG,GAAW,IAAK,GAAI,aAAa6F,EAAa,CAAC,CAAC,EAAG7F,GAAW,IAAK,GAAI,aAAa,aAAa,EAAG6F,CAAW,EAAG,CAAC,CAAC,CAAC,EAAG,CAAC,CAAC,EAC7KW,EAAYvC,EAAI,aAAasC,EAAQF,CAAE,EAAGC,GAAOL,CAAK,EAAGlH,EAAMsH,EAAI,EAAG,CAAC,CAAC,EAC9E,OAAOrG,GAAW,aAAa,aAAaoG,EAAOI,CAAS,EAAG9I,CAAQ,EAAG,aAAa,aAAa0I,EAAOI,CAAS,EAAG9I,CAAQ,EAAGuI,CAAK,CACxI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,CACC,SACA,QACA,WACA,KACA,UACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CACC,cACA,CACC,EACA,gBACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,YACA,CACC,gBACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,IACA,eACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,EACT,CACC,EACA,cACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,EACT,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,E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,EAAG,KAAK,CACV,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,WACA,KACA,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,WACA,KACA,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,WACA,KACA,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,WACA,KACA,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,WACA,KACA,UACD,CACD,CACD,EACA,CACC,GACA,QACA,IACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,IACA,IACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,KACA,KACA,KACA,IACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAMxD,GACvB,UAAW,IAAMxG,EACjB,qBAAwB,IAAMuJ,GAC9B,UAAW,IAAMtI,GACjB,UAAa,IAAMuH,GACnB,UAAW,IAAM3B,CAClB,CACD,CAAC,GAAKtH,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgL,GAAYlL,EAAgB,GAAG,CACpCW,EACAA,EACAA,EACAA,EACAV,EACAA,EACAA,EACAA,CACD,EAAGU,CAAK,GAAoBT,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoD,EAAIoG,EAAIvG,EAAOC,EAAK+H,EAAgBC,EAAcC,EAAeC,IAAgB,CAC9L,UACA,IAAMrH,EAASkD,GAASuC,CAAE,EACpBlG,EAAW7C,EAAMwC,EAAM,EAAG,aAAa,EAAGA,EAAM,CAAC,CAAC,EAClDO,EAAS/C,EAAMyC,EAAI,EAAG,aAAa,EAAGA,EAAI,CAAC,CAAC,EAC5CmI,EAAU5K,EAAM,aAAa6C,EAAS,EAAGS,CAAM,EAAGT,EAAS,CAAC,EAC5DgI,EAAQ7K,EAAM,aAAa+C,EAAO,EAAGO,CAAM,EAAGP,EAAO,CAAC,EACtD+H,EAAOC,GAAe/K,EAAM,aAAa2C,EAAG,EAAGW,CAAM,EAAGX,EAAG,CAAC,EAAGiI,EAASC,CAAK,EAC7ElJ,EAAQqJ,GAAmBF,EAAK,EAAGA,EAAK,EAAG,aAAaN,EAAgB,GAAG,EAAG,aAAaC,EAAc,GAAG,EAAGC,EAAeC,CAAW,EACzIM,EAAStJ,EAAM,EACfuJ,EAAQvJ,EAAM,EACpB,OAAO3B,EAAMiL,EAAQC,CAAK,CAC3B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,QACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,MACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,WACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,SACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,6BACA,CACC,OACA,UACA,OACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,iCACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,CACC,EACA,iBACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,eACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,gBACA,aACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,GACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,SAAU,OAAO,CACnB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAM1E,GACvB,UAAW,IAAMxG,EACjB,6BAA8B,IAAM+K,GACpC,iCAAkC,IAAMC,EACzC,CACD,CAAC,GAAKzL,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4L,GAAaC,GAAU,CAC5B,OAAQ,OACR,aAAc,iBACd,OAAQ,GACR,UAAW,GACX,QAAS,gBACV,CAAC,EACKC,GAAehM,EAAgB,GAAG,CACvCW,EACAA,EACAV,CACD,EAAGgM,CAAK,GAAoB/L,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EA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,EAAO,GAAG,CAAC,EAAG,aAAaC,EAAG,EAAG,aAAaD,EAAO,GAAG,CAAC,CAAC,EAAG,aAAaP,EAAG,GAAG,CAAC,CAAC,EACjK,OAAO,aAAa,aAAa,aAAaG,EAAU,GAAG,EAAG,aAAaG,EAAU,GAAG,CAAC,EAAG,aAAaG,EAAU,EAAE,CAAC,CACvH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,UACD,EACA,CACC,GACA,QACA,QACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMrM,EACjB,UAAW,IAAM4D,GACjB,UAAW,IAAMF,EAClB,CACD,CAAC,GAAKnE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+M,GAAgBjN,EAAgB,GAAG,CACxCC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgN,EAASC,EAAMC,EAAKC,IAAS,CACxI,UACA,OAAO3K,GAAW0K,EAAKC,EAAM,aAAa,aAAa,aAAaH,EAAS,EAAE,EAAG,EAAE,EAAGC,CAAI,CAAC,CAC7F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,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CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,IACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,IACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,KACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM5M,GACnB,YAAa,IAAMC,GACnB,YAAe,IAAMmM,GACrB,UAAW,IAAM/M,EACjB,UAAW,IAAMgG,CAClB,CACD,CAAC,GAAKzG,EAAE,GAAG,CAAC,CAAC,CAAC,EACViO,GAAmBnO,EAAgB,GAAG,CACzCC,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgB,EAAGkN,EAAUC,EAAOC,EAAGC,EAAMC,IAAc,CACtJ,UACA,IAAMC,EAAQjF,GAAIoE,GAAkBjN,EAAM,aAAaO,EAAGqN,CAAI,EAAGD,CAAC,CAAC,EAAGE,CAAS,EAC/E,OAAO7H,EAAI6C,GAAIoE,GAAkBjN,EAAM,aAAayN,EAAUG,CAAI,EAAGD,CAAC,CAAC,EAAGE,CAAS,EAAGC,EAAOJ,CAAK,CACnG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,oBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,MACD,EAAG,GAAG,CACP,CAAC,CACF,EAAG,WAAW,CACf,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,oBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,WACA,IACA,MACD,EAAG,GAAG,CACP,CAAC,CACF,EAAG,WAAW,CACf,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,SACA,QACA,OACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM7E,GACjB,kBAAqB,IAAMoE,GAC3B,UAAW,IAAMjN,EACjB,UAAW,IAAMgG,CAClB,CACD,CAAC,GAAKzG,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwO,GAAe1O,EAAgB,GAAG,CACvCW,EACAA,EACAA,CACD,EAAG6G,CAAK,GAAoBtH,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoD,EAAIC,EAAUiC,IAAW,CACtI,UACA,IAAMvB,EAASkD,GAAS5D,CAAQ,EAC1BoL,EAAYhO,EAAM6E,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EACrDG,EAAQrC,EAAG,IAAIqL,CAAS,EACxBC,EAAUjO,EAAM,aAAagF,EAAM,EAAG1B,CAAM,EAAG0B,EAAM,CAAC,EACtDkJ,EAAMC,GAAqBF,CAAO,EACxC,OAAOpH,EAAMqH,EAAI,EAAGA,EAAI,EAAGA,EAAI,EAAGhL,GAAO+K,CAAO,CAAC,CAClD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,QACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,mCACA,CAAC,SAAS,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,aACA,CAAC,SAAS,CACX,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAMzH,GACvB,UAAW,IAAMxG,EACjB,mCAAoC,IAAMmO,GAC1C,UAAW,IAAMtH,EACjB,aAAc,IAAM3D,EACrB,CACD,CAAC,GAAK3D,EAAE,GAAG,CAAC,CAAC,CAAC,EACV6O,GAAkB/O,EAAgB,GAAG,CACxCwH,EACAvH,EACAA,EACAA,EACAA,EACAuH,EACA7G,CACD,EAAGV,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8O,EAAO9H,EAAU+H,EAAOC,EAAeC,EAAMC,EAAOC,IAAU,CACzK,UACA,IAAMC,EAAK,aAAa,aAAaN,EAAM,EAAGI,EAAM,CAAC,EAAG,aAAalI,EAAUkI,EAAM,CAAC,CAAC,EACjFG,EAAK,aAAa,aAAa,aAAaP,EAAM,EAAGI,EAAM,CAAC,EAAG,aAAa,EAAGH,CAAK,CAAC,EAAG,aAAa/H,EAAUkI,EAAM,CAAC,CAAC,EACvHrB,EAAI,aAAaoB,EAAME,EAAM,CAAC,EAC9BG,EAASrB,GAAiBa,EAAM,EAAGA,EAAM,EAAGA,EAAM,EAAGM,EAAIvB,EAAGmB,CAAa,EACzEO,EAAStB,GAAiBa,EAAM,EAAGA,EAAM,EAAGA,EAAM,EAAGO,EAAI,aAAaxB,EAAGsB,EAAM,CAAC,EAAGH,CAAa,EACtG,OAAO,aAAaM,EAAQC,CAAM,CACnC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CACC,EACA,WACA,IACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,CACD,EACA,IACA,CACC,EACA,WACA,IACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,mBACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,KACA,IACA,eACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,mBACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,KACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,eACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,SACA,IACA,QACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,iBAAoB,IAAMtB,EAAiB,CACzD,CAAC,GAAKjO,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwP,GAAkB1P,EAAgB,GAAG,CAC1CwH,EACAvH,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8O,EAAOW,EAAaC,EAASpB,EAAWqB,IAAW,CAC9J,UACA,IAAM3I,EAAW,aAAayI,EAAa,EAAE,EACvCV,EAAQ,aAAa,IAAK1O,EAAIsP,CAAM,CAAC,EACrCX,EAAgB,aAAa,EAAG,aAAa,EAAGzN,EAAM+M,EAAW,EAAG,CAAC,CAAC,CAAC,EACvEW,EAAO,aAAa,EAAGS,CAAO,EAC9BE,EAASf,GAAgBC,EAAO9H,EAAU+H,EAAOC,EAAeC,EAAM3H,EAAM,EAAG,EAAG,GAAI,CAAC,EAAG7G,EAAM,EAAG,CAAC,CAAC,EACrGoP,EAAShB,GAAgBC,EAAO9H,EAAU+H,EAAOC,EAAeC,EAAM3H,EAAM,IAAK,IAAK,GAAI,GAAG,EAAG7G,EAAM,IAAK,GAAG,CAAC,EACrH,OAAOc,EAAM,aAAaqO,EAAQ,aAAaC,EAAQ,EAAE,CAAC,EAAG,EAAG,CAAC,CAClE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,cACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,CACC,YACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,kBACA,CACC,QACA,WACA,QACA,gBACA,OACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,kBACA,CACC,QACA,WACA,QACA,gBACA,OACA,CACC,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EA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aAAa+P,EAAM,GAAG,EAAG,EAAE,CAAC,CAAC,EAAGG,GAAQlQ,EAAM,aAAa,aAAa,EAAG,GAAG,EAAG,IAAI,EAAG,aAAa,aAAa+P,EAAM,GAAG,EAAG,GAAG,CAAC,CAAC,EAAGG,GAAQlQ,EAAM,aAAa,aAAa,EAAG,GAAG,EAAG,IAAI,EAAG,aAAa,aAAa+P,EAAM,GAAG,EAAG,GAAG,CAAC,CAAC,CAAC,CAC5X,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,SACD,CACD,EACA,SACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,IAAI,CACT,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,aACA,OACA,OACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAMG,GACvB,UAAW,IAAMlQ,EACjB,UAAW,IAAMgG,EACjB,UAAW,IAAMa,CAClB,CACD,CAAC,GAAKtH,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8Q,GAAYhR,EAAgB,GAAG,CACpCC,EACAA,EACAA,EACAuH,CACD,EAAG7G,CAAK,GAAoBT,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgO,EAAG+C,EAAGC,EAAQC,IAAU,CACrI,UACA,IAAMC,EAAOD,EAAM,EACbE,EAAK/Q,EAAI4Q,EAAQ,GAAG,EACpBI,EAAQ,aAAaD,EAAI,aAAa,IAAK,aAAa,GAAID,CAAI,CAAC,CAAC,EAClEG,EAAK,aAAarD,EAAGmD,CAAE,EACvBG,EAAK,aAAaP,EAAGK,CAAK,EAChC,OAAO3Q,EAAM8Q,GAAwBF,EAAIC,EAAI,GAAG,EAAG,aAAaC,GAAwBF,EAAIC,EAAI,GAAG,EAAG,GAAG,CAAC,CAC3G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,MAAM,CAAC,CACvB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,OACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,sCACA,CACC,KACA,KACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,sCACA,CACC,KACA,KACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,OAAQ,UAAU,CACpB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMlR,EACjB,sCAAuC,IAAMmR,GAC7C,UAAW,IAAM9Q,CAClB,CACD,CAAC,GAAKT,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwR,GAAc1R,EAAgB,GAAG,CACtCC,EACAA,EACAA,EACAA,EACAuH,CACD,EAAGvH,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgO,EAAG+C,EAAGC,EAAQS,EAASR,IAAU,CAC5I,UACA,IAAMS,EAAOT,EAAM,EACbC,EAAOD,EAAM,EACbU,EAAOV,EAAM,EACbE,EAAK/Q,EAAI4Q,EAAQ,GAAG,EACpBI,EAAQ,aAAaD,EAAI,aAAa,IAAK,aAAa,GAAID,CAAI,CAAC,CAAC,EAClEI,EAAK,aAAaP,EAAGK,CAAK,EAC1BQ,EAAY5F,GAAI,aAAa,aAAasF,EAAIA,CAAE,EAAG,IAAI,CAAC,EACxDO,EAAM,aAAaV,EAAI,aAAa,IAAK,aAAa,IAAKO,CAAI,CAAC,CAAC,EACjEI,EAAM1R,EAAI,aAAa+Q,EAAI,aAAa,IAAK,aAAa,IAAKQ,CAAI,CAAC,CAAC,EAAG,IAAI,EAC5EI,EAAU,aAAaC,GAAWhE,EAAG6D,EAAKC,CAAG,EAAGF,CAAS,EACzDK,EAAM,aAAad,EAAI,aAAa,GAAI,aAAa,GAAIO,CAAI,CAAC,CAAC,EAC/DQ,EAAM9R,EAAI,aAAa+Q,EAAI,aAAa,IAAK,aAAa,IAAKQ,CAAI,CAAC,CAAC,EAAG,IAAI,EAC5EQ,EAAU,aAAa,aAAaH,GAAWhE,EAAGiE,EAAKC,CAAG,EAAGN,CAAS,EAAG,GAAG,EAClF,OAAO,aAAa,aAAaG,EAASI,CAAO,EAAGV,CAAO,CAC5D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,MAAM,CAAC,CACvB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,MACD,CACD,CACD,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,yBACA,CACC,IACA,MACA,KACD,CACD,EACA,IACA,WACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,MACD,CACD,CACD,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,yBACA,CACC,IACA,MACA,KACD,CACD,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,UACA,IACA,SACD,EACA,IACA,SACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,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D,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,cACA,CAAC,IAAK,GAAG,CACV,EACA,KACD,EACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,cACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,IAAI,CACN,EAAG,GAAG,CACP,EACA,KACD,EACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,IACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,IACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CAAC,IAAK,CACN,GAAM,KACN,GAAM,CACL,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,IAAI,CACN,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAe,IAAMF,GACrB,aAAc,IAAMG,EACpB,UAAW,IAAMC,GACjB,QAAW,IAAMR,EAClB,CACD,CAAC,GAAKJ,EAAE,GAAG,CAAC,CAAC,CAAC,EACRa,GAAad,EAAgB,GAAG,CAACF,CAAK,EAAGA,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMC,GAAM,CAC/J,UACA,OAAOJ,EAAM,aAAaI,EAAE,EAAG,aAAaA,EAAE,EAAGa,EAAK,CAAC,EAAG,aAAab,EAAE,EAAGP,EAAc,CAAC,CAC5F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,OACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,gBACD,CAAC,CAC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ClCS,EAAS,aAAa,aAAa,aAAaF,EAAKZ,CAAI,EAAG,aAAaa,EAAKX,CAAI,CAAC,EAAGE,CAAO,EAC7FW,EAAS,aAAa,aAAa,aAAaH,EAAK,CAACV,CAAI,EAAG,aAAaW,EAAKb,CAAI,CAAC,EAAGK,CAAO,EACpG,OAAOpC,EAAM,aAAa6C,EAAQtB,CAAM,EAAG,aAAa,EAAGuB,CAAM,CAAC,CACnE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,GACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,UACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,GACA,KACA,CACC,EACA,aACA,IACA,SACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,OACA,IACA,OACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,OACA,IACA,OACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,SACA,IACA,SACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,SACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,EACA,IACA,SACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,SACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtB,EACjB,UAAW,IAAMQ,GACjB,UAAW,IAAME,GACjB,YAAa,IAAM7B,GACnB,UAAW,IAAML,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4C,GAAW7C,EAAgB,GAAG,CAACF,CAAK,EAAGmB,CAAG,GAAoBhB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM6C,GAAO,CAC5J,UACA,IAAMC,EAAK3C,GAAM0C,EAAG,IAAIhD,EAAM,OAAQ,MAAM,CAAC,CAAC,EACxCkD,EA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ACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,0BACA,CACC,cACA,SACA,OACA,MACD,CACD,EACA,KACD,EACA,CAAC,OAAO,CACT,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,SAAY,IAAMyC,GAClB,UAAW,IAAM/D,EACjB,WAAc,IAAMkE,GACpB,UAAW,IAAMlC,GACjB,UAAW,IAAME,GACjB,wBAA2B,IAAMiC,EAClC,CACD,CAAC,GAAKhE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiE,IAAiBlE,EAAgB,GAAG,CACzCF,EACAA,EACAmB,EACAA,CACD,EAAGnB,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAUC,EAAOwC,IAAgB,CAClJ,UACA,IAAMvC,EAASwC,GAAS1C,CAAQ,EAC1B2C,EAAchE,EAAM,aAAaoB,EAAG,EAAGG,CAAM,EAAGH,EAAG,CAAC,EACpDiD,EAAM,CAAC,aAAaP,EAAaI,EAAU,EACjD,OAAOC,GAAwBH,EAAazC,EAAQS,GAAIqC,CAAG,EAAGnC,GAAImC,CAAG,CAAC,EAAE,IAAI/C,CAAK,CAClF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,CACC,EACA,cACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,0BACA,CACC,cACA,SACA,OACA,MACD,CACD,EACA,KACD,EACA,CAAC,OAAO,CACT,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,SAAY,IAAMyC,GAClB,UAAW,IAAM/D,EACjB,WAAc,IAAMkE,GACpB,UAAW,IAAMlC,GACjB,UAAW,IAAME,GACjB,wBAA2B,IAAMiC,EAClC,CACD,CAAC,GAAKhE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRmE,IAAepE,EAAgB,GAAG,CACvCF,EACAA,EACAmB,EACAA,CACD,EAAGnB,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAUC,EAAOwC,IAAgB,CAClJ,UACA,IAAMvC,EAASwC,GAAS1C,CAAQ,EAC1B2C,EAAchE,EAAM,aAAaoB,EAAG,EAAGG,CAAM,EAAGH,EAAG,CAAC,EACpD6C,EAAS,aAAaH,EAAaI,EAAU,EACnD,OAAOC,GAAwBH,EAAazC,EAAQS,GAAIiC,CAAM,EAAG/B,GAAI+B,CAAM,CAAC,EAAE,IAAI3C,CAAK,CACxF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,cACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CA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nB,CAAQ,EAAGgC,CAAE,EAAGD,CAAO,CAChI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,qBACA,CAAC,KAAM,CACN,EACA,WACA,CAAC,UAAU,CACZ,CAAC,CACF,EACA,OACA,CACC,EACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,UACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,aAAa,CACf,CACD,EACA,CAAC,GAAI,CACJ,EACA,iBACA,CACC,CACC,EACA,CACC,EACA,UACA,IACA,UACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,UACA,IACA,UACD,EACA,IACA,IACD,EACA,SACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAM1C,GACpB,UAAW,IAAMlC,GACjB,UAAW,IAAME,GACjB,QAAW,IAAMsE,GACjB,mBAAsB,IAAMV,GAC5B,SAAY,IAAM/B,GAClB,UAAW,IAAM2C,EACjB,YAAa,IAAMpG,GACnB,aAAc,IAAMwG,GACpB,iBAAkB,IAAMC,EACzB,CACD,CAAC,GAAK5G,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6G,IAAc9G,EAAgB,GAAG,CACtCF,EACAmB,EACAA,EACAA,EACAA,EACAA,EACAnB,EACAA,CACD,EAAGmB,CAAG,GAAoBhB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8G,EAAQC,EAAWrC,EAAUsC,EAAWC,EAAO3B,EAAUrE,EAAIC,IAAa,CACrL,UACA,IAAME,EAAS,aAAaF,EAAS,EAAGA,EAAS,CAAC,EAC5CgG,EAAOC,GAAOtH,EAAM,aAAa,aAAaoB,EAAG,EAAGG,CAAM,EAAG,aAAa0F,EAAO,EAAG1F,CAAM,CAAC,EAAG,aAAaH,EAAG,EAAG,aAAa,EAAG6F,EAAO,CAAC,CAAC,CAAC,CAAC,EAC5IM,EAAWrF,GAAI,aAAa,aAAa,aAAamF,EAAMH,CAAS,EAAGzB,CAAQ,EAAG2B,CAAK,CAAC,EACzFI,EAAqB,aAAa,aAAaL,EAAW,CAAC,EAAG,CAAC,EAC/DM,EAASV,GAAW,aAAaS,EAAoB3C,CAAQ,EAAG,aAAa2C,EAAoB3C,CAAQ,EAAG0C,CAAQ,EAC1H,OAAO,aAAa,EAAGE,CAAM,CAC9B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,WACD,EACA,IACA,UACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,SACA,CACC,EACA,iBACA,CACC,CACC,EACA,qBACA,IACA,UACD,EACA,CACC,EACA,qBACA,IACA,UACD,EACA,UACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMH,GACpB,UAAW,IAAMtH,EACjB,UAAW,IAAMkC,GACjB,iBAAkB,IAAM6E,EACzB,CACD,CAAC,GAAK5G,EAAE,GAAG,CAAC,CAAC,CAAC,EACVuH,GAAUxH,EAAgB,GAAG,CAACiB,CAAG,EAAGnB,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMwH,GAAQ,CAC1J,UACA,OAAO3H,EAAMM,GAAM,aAAa4B,GAAI,aAAayF,EAAK,KAAK,CAAC,EAAG,aAAa,CAAC,EAAGrH,GAAM,aAAa4B,GAAI,aAAayF,EAAK,KAAK,CAAC,EAAG,UAAU,CAAC,CAAC,CAC/I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,EACA,IACA,CAAC,EAAG,eAAe,CACpB,CAAC,CACF,EAAG,CACF,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CAAC,CACF,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAM3H,EACjB,YAAa,IAAMM,GACnB,UAAW,IAAM4B,EAClB,CACD,CAAC,GAAK/B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRyH,GAAkB1H,EAAgB,GAAG,CAC1CiB,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBhB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC0H,EAAWC,EAAUtC,EAASuC,EAAIC,EAAUC,EAAKC,IAAmB,CAC/K,UACA,IAAMC,EAAW,aAAaJ,EAAIC,CAAQ,EACpCI,EAAU,aAAa5G,EAAI,aAAaqG,EAAWC,CAAQ,EAAG,CAAC,EAAGtC,CAAO,EACzE6C,EAAOC,EAAM,aAAaF,EAAS5G,EAAI2G,EAAU,IAAI,CAAC,EAAG,EAAG,CAAC,EAC7DI,EAAQ,aAAaR,EAAIS,GAAKhH,EAAI,aAAa,EAAG,aAAa6G,EAAMA,CAAI,CAAC,EAAG,CAAC,CAAC,CAAC,EACtF,OAAO,aAAa,aAAa,EAAGtB,GAAWvF,EAAI,aAAa+G,EAAON,CAAG,EAAG,CAAC,EAAGzG,EAAI,aAAa+G,EAAON,CAAG,EAAG,IAAI,EAAGC,CAAc,CAAC,EAAGnB,GAAW,EAAGkB,EAAKM,CAAK,CAAC,CAClK,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,KACA,IACA,UACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,UACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,WAAY,CAAC,EAAG,QAAQ,CAAC,CAC3B,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,OACA,IACA,MACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,KACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA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9B,CAAS,CAAC,EAC5GE,EAAK,aAAakB,EAAa,EAAE,EACjCf,EAAiBxB,EAAI,aAAa6C,EAAW,EAAE,CAAC,EAChDM,EAAY,aAAa,EAAG9C,GAAW,aAAagB,EAAIE,CAAG,EAAG,aAAaF,EAAIE,CAAG,EAAGC,CAAc,CAAC,EAC1G,OAAOlI,EAAMwB,EAAI,aAAaoI,EAAYC,CAAS,EAAGjC,GAAgBC,EAAWC,EAAUtC,EAASuC,EAAIC,EAAUC,EAAKC,CAAc,CAAC,EAAGO,GAAoBC,EAAc1C,CAAO,CAAC,CACpL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,WACA,IACA,UACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,YACD,EACA,IACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,aACD,EACA,CACC,GACA,eACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,IACA,UACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,aACA,CAAC,GAAG,CACL,EACA,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,aACA,CAAC,GAAG,CACL,EACA,IACA,SACD,EACA,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,WACA,IACA,KACD,EACA,CACC,EACA,WACA,IACA,KACD,EACA,WACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,EACA,gBACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,IACA,WACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,kBACA,CACC,YACA,WACA,UACA,KACA,WACA,MACA,gBACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,WAAY,UAAU,CACxB,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,YAAa,CACb,EACA,sBACA,CAAC,eAAgB,SAAS,CAC3B,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAMjC,GACvB,UAAW,IAAM/D,EACjB,WAAc,IAAMkE,GACpB,UAAW,IAAMlC,GACjB,UAAW,IAAME,GACjB,YAAa,IAAM7B,GACnB,YAAa,IAAMC,GACnB,QAAW,IAAMoH,GACjB,YAAa,IAAMY,EACnB,aAAc,IAAMxB,GACpB,iBAAkB,IAAMC,GACxB,UAAW,IAAML,EACjB,gBAAmB,IAAMkB,GACzB,UAAW,IAAMpG,EACjB,oBAAuB,IAAMiH,EAC9B,CACD,CAAC,GAAKtI,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2J,IAAmB5J,EAAgB,GAAG,CAC3CF,EACAA,EACAmB,EACAA,CACD,EAAGnB,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAUC,EAAOyI,IAAa,CAC/I,UACA,OAAOlI,GAAoBT,EAAIC,EAAUC,EAAO,aAAayI,EAAU7F,EAAU,CAAC,CACnF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,sBACA,CACC,KACA,WACA,QACA,CACC,EACA,WACA,IACA,YACD,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,oBAAuB,IAAMrC,GAC7B,WAAc,IAAMqC,EACrB,CACD,CAAC,GAAK/D,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6J,IAAY9J,EAAgB,GAAG,CACpCF,EACAmB,EACAA,EACAA,CACD,EAAGnB,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8J,EAAQ9C,EAAWtC,EAAUnB,IAAc,CACxJ,UACA,IAAMiB,EAAY,aAAawC,EAAW,GAAG,EACvC+C,EAAW1I,EAAImD,EAAW,IAAI,EAC9BwF,EAAe,aAAaD,EAAU,CAAC,EACvCE,EAAI,aAAa,EAAGD,CAAY,EAChC/J,EAAI6J,EAAO,IAAIC,CAAQ,EACvBG,EAAMC,GAAKlK,CAAC,EACZmK,EAAMC,GAAKpK,CAAC,EACZqK,EAAK,aAAajJ,EAAIA,EAAIkF,EAAI2D,EAAI,CAAC,EAAG3D,EAAI6D,EAAI,CAAC,CAAC,EAAG,IAAI,EAAG1F,CAAQ,EAClE6F,EAAK,aAAalJ,EAAIA,EAAIkF,EAAI2D,EAAI,CAAC,EAAG3D,EAAI6D,EAAI,CAAC,CAAC,EAAG,IAAI,EAAG1F,CAAQ,EAClE8F,EAAKC,GAAqBxK,EAAE,EAAGqK,EAAIL,CAAC,EACpCS,EAAKD,GAAqBxK,EAAE,EAAGsK,EAAIN,CAAC,EACpCU,EAAU,aAAa,aAAa,EAAGH,CAAE,EAAG,aAAa,EAAGE,CAAE,CAAC,EACrE,OAAO7K,EAAM,aAAa,aAAa,EAAG8K,CAAO,EAAGC,GAAK,KAAMpG,CAAS,CAAC,EAAGJ,GAAclE,GAAM4J,CAAM,EAAGvG,CAAS,CAAC,CACpH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,QAAQ,CAAC,CAC5B,CACD,EACA,CACC,GACA,eACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CAAC,CACF,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,uBACA,CACC,CACC,EACA,IACA,GACD,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,uBACA,CACC,CACC,EACA,IACA,GACD,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,SACD,EACA,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,QAAQ,EAAG,WAAW,CAC5B,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,gBACA,CAAC,CACA,EACA,YACA,CAAC,QAAQ,CACV,EAAG,WAAW,CACf,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,WAAY,cAAc,CAC5B,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMlC,EACjB,WAAY,IAAM8I,GAClB,WAAY,IAAME,GAClB,UAAW,IAAM9D,EACjB,qBAAwB,IAAMkE,GAC9B,WAAY,IAAMG,GAClB,cAAiB,IAAMxG,GACvB,YAAa,IAAMlE,GACnB,UAAW,IAAML,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6K,IAAe9K,EAAgB,GAAG,CACvCF,EACAA,EACAmB,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBhB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAUmE,EAASyF,EAASvF,EAAQqD,EAAemC,EAASzF,EAAU0F,IAAS,CAC9L,UACA,IAAMnH,EAAcmB,GAAuB/D,EAAIC,CAAQ,EACjD4I,EAASjG,EAAY,IAAIwB,CAAO,EAChC4F,EAAW/K,GAAM4J,EAAO,CAAC,EACzBR,EAAWpG,GAAmBF,GAAaiI,CAAQ,EAAGrC,CAAa,EACnEsC,EAAQ,aAAa5F,EAAUgE,CAAQ,EACvC6B,EAAgB,aAAa5F,EAAQ6F,GAAYH,EAAU,CAAC,CAAC,EAC7DI,EAAOvL,GAAaD,EAAM,aAAa,aAAaiK,EAAO,EAAGqB,CAAa,EAAGD,CAAK,EAAGpB,EAAO,CAAC,CAAC,EAC/FwB,EAAiBnE,GAAOkE,EAAK,MAAM,IAAI,EAAE,CAAC,EAC1CE,EAAYpE,GAAOR,GAAO9C,EAAY,IAAIwB,CAAO,CAAC,CAAC,EACnDmG,EAAWC,GAAaH,EAAgB,aAAaR,EAAS,EAAE,EAAGS,CAAS,EAC5EG,EAAWvL,GAAM,aAAa4B,GAAI,aAAa,aAAasJ,EAAK,KAAK,EAAG,OAAO,EAAG,aAAaA,EAAK,KAAK,EAAG,MAAM,CAAC,CAAC,EAAG,UAAU,CAAC,EACnIM,EAAc,aAAa,aAAaX,EAAM,CAAC,EAAG,aAAaU,EAAUE,EAAG,CAAC,EAC7EC,EAAkBC,EAAI,EAAG,aAAa,aAAa/J,GAAI4J,CAAW,EAAG,EAAE,EAAG,EAAE,EAAGZ,CAAO,EAC5F,OAAO,aAAaS,EAAUK,CAAe,CAC9C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,cACA,CACC,EACA,yBACA,CAAC,KAAM,UAAU,CAClB,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,cACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,CACA,EACA,SACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,qBACA,CAAC,CACA,EACA,eACA,CAAC,UAAU,CACZ,EAAG,eAAe,CACnB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,IACA,UACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,SACA,IACA,CACC,EACA,cACA,CAAC,WAAY,CAAC,EAAG,GAAG,CAAC,CACtB,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,eACD,EACA,IACA,OACD,EAAG,CACF,EACA,SACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,eACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,OACD,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,cACA,KACD,EACA,CAAC,SAAS,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,eACA,CACC,iBACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,WACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,EACA,IACA,CAAC,EAAG,SAAS,CACd,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,EACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,WACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,aAAa,CACf,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,eACA,SACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,WACA,IACA,iBACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,uBAA0B,IAAM7G,GAChC,YAAa,IAAM9E,GACnB,mBAAsB,IAAMgD,GAC5B,aAAgB,IAAMF,GACtB,YAAe,IAAMoI,GACrB,UAAW,IAAMvL,EACjB,aAAgB,IAAMC,GACtB,aAAc,IAAMqH,GACpB,aAAc,IAAMR,GACpB,aAAgB,IAAM8E,GACtB,YAAa,IAAMtL,GACnB,UAAW,IAAM4B,GACjB,IAAO,IAAM6J,GACb,UAAW,IAAME,CAClB,CACD,CAAC,GAAK9L,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+L,IAAehM,EAAgB,GAAG,CACvCF,EACAmB,EACAA,EACAA,CACD,EAAGnB,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgM,EAAUhF,EAAWtC,EAAUnB,IAAc,CAC1J,UACA,IAAM0I,EAAM5L,GAAU2L,EAAUnM,EAAMiB,GAAO,CAAC,CAAC,EACzCoL,EAAe9H,GAAcvE,EAAMsM,GAAM,aAAaF,EAAI,GAAG,EAAGzI,EAAW,CAAC,EAAG2I,GAAM,aAAaF,EAAI,GAAG,EAAG,CAAC,CAAC,CAAC,EAAG1I,CAAS,EAC3H6I,EAAOvM,EAAM0G,EAAI0F,EAAI,GAAG,CAAC,EAAG1F,EAAI0F,EAAI,GAAG,CAAC,CAAC,EACzCI,EAAUhL,EAAIT,GAAIwL,EAAMvM,EAAM4D,GAAS,EAAE,CAAC,EAAG2I,EAAK,CAAC,EACzD,OAAOvM,EAAMyE,GAAkB,aAAa,GAAI+H,CAAO,EAAG,aAAarF,EAAW,GAAG,EAAG,aAAaL,GAAOqF,EAAS,CAAC,EAAG,EAAE,EAAGtH,CAAQ,EAAGwH,CAAY,CACtJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,WAAY,CACZ,EACA,UACA,CAAC,QAAS,CAAC,EAAG,GAAG,CAAC,CACnB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACD,EACA,GACD,EACA,IACA,aACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACD,EACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,WAAW,CACf,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACD,EACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACD,EACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CACR,EACA,UACA,CAAC,UAAW,CAAC,EAAG,KAAK,CAAC,CACvB,CAAC,CACF,EAAG,CA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EAAG,CACV,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,OACD,EAAG,CACF,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,gBACA,CAAC,QAAS,WAAW,CACtB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CACF,EACA,aACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,sBACA,CACC,QACA,YACA,SACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,WAAY,cAAc,CAC5B,CAAC,CACF,CAAC,CACF,E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ChC0J,EAAM,aAAazH,GAAOqH,CAAQ,EAAGrJ,CAAI,EACzC0J,EAAM,aAAa1H,GAAOsH,CAAO,EAAGtJ,CAAI,EAC9C,OAAO9E,EAAMoN,GAAgBpN,EAAMqO,EAAOC,CAAK,EAAGtO,EAAMgO,EAASC,CAAO,EAAGjO,EAAMuO,EAAKC,CAAG,CAAC,EAAGjK,GAAcvE,EAAMK,GAAM8N,CAAQ,EAAG/K,CAAG,EAAGM,CAAS,CAAC,CACnJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,KACA,WACA,UACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,IACA,QACD,EACA,IACA,QACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,kBACA,CACC,MACA,OACA,eACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,QACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,IACA,CACC,EACA,WACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,IACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,aACA,CAAC,UAAU,CACZ,EACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,aACA,CAAC,SAAS,CACX,EACA,IACA,MACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,kBACA,CACC,CACC,EACA,UACA,CAAC,QAAS,OAAO,CAClB,EACA,CACC,EACA,UACA,CAAC,UAAW,SAAS,CACtB,EACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CAAC,UAAU,CACZ,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,eACA,CACC,EACA,gBACA,CAAC,UAAW,WAAW,CACxB,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,YAAa,cAAc,CAC7B,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,SAAY,IAAMK,GAClB,WAAc,IAAMgJ,GACpB,YAAa,IAAM1M,GACnB,gBAAmB,IAAM4M,GACzB,YAAa,IAAM3M,GACnB,aAAc,IAAMwG,GACpB,gBAAmB,IAAMsG,GACzB,UAAW,IAAMpN,EACjB,cAAiB,IAAMuE,EACxB,CACD,CAAC,GAAKpE,EAAE,GAAG,CAAC,CAAC,CAAC,EACVsO,GAAcvO,EAAgB,GAAG,CAACF,CAAK,EAAGmB,CAAG,GAAoBhB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMC,GAAM,CAC5J,UACA,IAAMoJ,EAAIzI,GAAIX,EAAGJ,EAAM,MAAO,KAAK,CAAC,EACpC,OAAOM,GAAM,aAAa4B,GAAIsH,CAAC,EAAG,UAAU,CAAC,CAC9C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,IACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,UACA,CAAC,CAAC,EAAG,OAAO,EAAG,CAAC,EAAG,OAAO,CAAC,CAC5B,CAAC,CACF,CACD,EAAG,CAAC,GAAI,CACP,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,GAAG,CACL,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAMzI,GACjB,UAAW,IAAMf,EACjB,YAAa,IAAMM,GACnB,UAAW,IAAM4B,EAClB,CACD,CAAC,GAAK/B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuO,IAAexO,EAAgB,GAAG,CACvCF,EACAmB,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBhB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgM,EAAUhF,EAAWtC,EAAUqI,IAAS,CACnJ,UACA,IAAM1B,EAAOvL,GAAakM,CAAQ,EAC5BwC,EAAOF,GAAYzO,EAAM,aAAawL,EAAK,KAAK,EAAG0B,CAAI,EAAG,aAAa1B,EAAK,KAAK,EAAG0B,CAAI,CAAC,CAAC,EAAI,GAC9F0B,EAAM9N,EAAOK,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGwN,CAAI,EACjCE,EAAM/N,EAAOK,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGwN,CAAI,EACvC,OAAOlK,GAAkBqI,GAAIpG,EAAI,aAAaY,GAAOtH,EAAM,aAAawL,EAAK,MAAM,EAAGoD,CAAG,EAAGpD,EAAK,MAAM,CAAC,CAAC,EAAG,EAAE,CAAC,EAAG9E,EAAI,aAAaY,GAAOtH,EAAM,aAAawL,EAAK,MAAM,EAAGqD,CAAG,EAAG,aAAarD,EAAK,MAAM,EAAG,CAAC,CAAC,CAAC,EAAG,EAAE,CAAC,CAAC,EAAG,aAAarE,EAAW,IAAI,EAAG,aAAaL,GAAOqF,EAAS,CAAC,EAAG,EAAE,EAAGtH,CAAQ,CACvS,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,eACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,EACA,IACA,MACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,EACA,IACA,MACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,OACD,EACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,OACA,OACD,EACA,GACD,CAAC,CACF,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,OACD,EACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,OACA,OACD,EACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,WACA,GACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,oBACA,CACC,UACA,YACA,QACA,UACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAgB,IAAM5E,GACtB,YAAe,IAAMwO,GACrB,UAAW,IAAMzO,EACjB,aAAc,IAAMc,EACpB,QAAS,IAAMK,EACf,UAAW,IAAMuF,EACjB,aAAc,IAAMY,GACpB,UAAW,IAAMwF,GACjB,aAAc,IAAMhG,GACpB,kBAAqB,IAAMrC,EAC5B,CACD,CAAC,GAAKtE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2O,IAAa5O,EAAgB,GAAG,CACrCF,EACAmB,EACA4N,EACAA,CACD,EAAGA,CAAK,GAAoB5O,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgM,EAAU6C,EAAKC,EAAQC,IAAW,CAC/I,UACA,IAAM1D,EAAOvL,GAAakM,CAAQ,EAC5BvH,EAAQ,aAAakC,GAAOqF,EAAS,CAAC,EAAG,EAAE,EAC3CgD,EAAQ1B,GAASjC,EAAK,MAAM,EAAGwD,EAAK,aAAaA,EAAKpK,CAAK,CAAC,EAC5DwK,EAAQ3B,GAASjC,EAAK,MAAM,EAAGwD,EAAK,aAAaA,EAAKpK,CAAK,CAAC,EAC5DyK,EAAc9D,GAAY,aAAaC,EAAK,KAAK,EAAGA,EAAK,KAAK,CAAC,EAAG,CAAC,EACnE8D,EAAe,aAAaH,EAAOC,CAAK,EACxCG,EAAOjH,EAAM,aAAa6G,EAAO,aAAaG,EAAcD,CAAW,CAAC,EAAG,EAAG,CAAC,EAC/EG,EAAOlH,EAAM,aAAa8G,EAAO,aAAaE,EAAc,aAAa,EAAGD,CAAW,CAAC,CAAC,EAAG,EAAG,CAAC,EAChGI,EAAU,aAAaR,EAAO,EAAGM,CAAI,EACrCG,EAAU,aAAaR,EAAO,EAAGM,CAAI,EACrCG,EAAarH,EAAM,aAAamH,EAASC,CAAO,EAAG,EAAG,CAAC,EACvDE,EAAapO,EAAI,aAAaiO,EAASC,CAAO,EAAG,IAAI,EAC3D,OAAOX,EAAM,aAAa,aAAa,aAAaE,EAAO,EAAGQ,CAAO,EAAG,aAAaP,EAAO,EAAGQ,CAAO,CAAC,EAAGE,CAAU,EAAG,aAAa,aAAa,aAAaX,EAAO,EAAGQ,CAAO,EAAG,aAAaP,EAAO,EAAGQ,CAAO,CAAC,EAAGE,CAAU,EAAG,aAAa,aAAa,aAAaX,EAAO,EAAGQ,CAAO,EAAG,aAAaP,EAAO,EAAGQ,CAAO,CAAC,EAAGE,CAAU,EAAGD,CAAU,CACtV,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,eACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,WACA,GACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CACC,CACC,EACA,CACC,EACA,OACA,OACD,EACA,GACD,EACA,MACA,CACC,EACA,MACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CACC,CACC,EACA,CACC,EACA,OACA,OACD,EACA,GACD,EACA,MACA,CACC,EACA,MACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,cACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,MACD,EACA,GACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,eACA,CACC,EACA,QACA,IACA,OACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,eACA,IACA,aACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,eACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,aACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,IACA,SACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,IACA,SACD,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,SACD,CACD,EACA,IACA,YACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,SACD,CACD,EACA,IACA,YACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,SACD,CACD,EACA,IACA,YACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,IACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAgB,IAAM1P,GACtB,aAAc,IAAM6G,GACpB,SAAY,IAAM2G,GAClB,YAAe,IAAMlC,GACrB,YAAa,IAAMjD,EACnB,UAAW,IAAM9G,EACjB,UAAW,IAAMuN,CAClB,CACD,CAAC,GAAK5O,EAAE,GAAG,CAAC,CAAC,CAAC,EACV0P,GAAc,EAAI,KAAK,KAAK,CAAC,EAC3BC,IAAe5P,EAAgB,GAAG,CACvCF,EACAmB,EACAA,CACD,EAAG4O,CAAK,GAAoB5P,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgM,EAAUhF,EAAWtC,IAAa,CAC/I,UACA,IAAMuH,EAAM5L,GAAU2L,EAAUnM,EAAM,EAAGiB,EAAK,CAAC,EACzC+O,EAAKjP,GAAIqL,EAAI,GAAIpM,EAAM,EAAG,CAAC,CAAC,EAC5BiQ,EAAKlP,GAAIqL,EAAI,GAAIpM,EAAM,CAAC4D,GAAS,GAAG,CAAC,EACrCsM,EAAKnP,GAAIqL,EAAI,GAAIpM,EAAM4D,GAAS,GAAG,CAAC,EACpCuM,EAAQH,GAAMxO,EAAIyO,EAAIC,CAAE,EACxBE,EAAOtP,EAAOA,EAAO,IAAK,GAAImP,GAAMC,CAAE,EAAG,EAAGC,CAAK,EACjD1M,EAAOV,GAAS/C,EAAMsM,GAAM,aAAaF,EAAI,GAAG,EAAG,CAAC,CAAC,EAAGE,GAAM,aAAaF,EAAI,GAAG,EAAGyD,EAAW,CAAC,CAAC,CAAC,EACnGQ,EAAK7O,EAAIwO,EAAIxO,EAAIyO,EAAIC,CAAE,CAAC,EACxBI,EAAKxD,GAAIkD,EAAIlD,GAAImD,EAAIC,CAAE,CAAC,EACxBK,EAAW,aAAa,aAAa,aAAa,aAAaP,EAAIC,CAAE,EAAGC,CAAE,EAAGG,CAAE,EAAGC,CAAE,EACpFE,EAAW,aAAaH,EAAIE,CAAQ,EACpChE,EAAOvM,EAAM0G,EAAI0F,EAAI,GAAG,CAAC,EAAG1F,EAAI0F,EAAI,GAAG,CAAC,CAAC,EACzCI,EAAUhL,EAAIT,GAAIwL,EAAMvM,EAAM,GAAI4D,EAAO,CAAC,EAAG2I,EAAK,CAAC,EACzD,OAAOwD,EAAMtM,EAAM2M,EAAMpL,GAAoB8H,GAAI0D,EAAU,aAAa,GAAIhE,CAAO,CAAC,EAAG,aAAarF,EAAW,GAAG,EAAG,aAAa,aAAaL,GAAOqF,EAAS,CAAC,EAAG,EAAE,EAAG,aAAatH,EAAU,EAAE,CAAC,CAAC,CAAC,CACrM,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,WAAY,CACZ,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,OAAO,CACnB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACD,EAAG,CACF,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACD,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,IACA,SACD,EAAG,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACD,EAAG,CACF,EACA,UACA,CAAC,UAAW,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,KACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,KACA,KACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,EACT,QACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACD,EACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACD,EACA,GACD,EACA,IACA,aACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,KACA,IACA,UACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACD,EACA,GACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACD,EACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CACR,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,SAAS,CACvB,CAAC,CACF,EAAG,CACF,EACA,OACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,SACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,WAAY,SAAS,CACvB,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,WACA,GACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,sBACA,CACC,YACA,YACA,SACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,OACA,OACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMrE,GACnB,UAAW,IAAMR,EACjB,MAAS,IAAMiB,GACf,UAAW,IAAMF,GACjB,QAAW,IAAM6C,GACjB,UAAW,IAAMpC,EACjB,aAAc,IAAMV,EACpB,YAAa,IAAMwL,GACnB,YAAe,IAAMuD,GACrB,SAAY,IAAM9M,GAClB,UAAW,IAAM+J,GACjB,UAAW,IAAMpG,EACjB,aAAc,IAAMI,GACpB,oBAAuB,IAAM9B,GAC7B,UAAW,IAAM+K,CAClB,CACD,CAAC,GAAK5P,EAAE,GAAG,CAAC,CAAC,CAAC,EACVsQ,GAAa,GACXC,IAAkBxQ,EAAgB,GAAG,CAC1C6O,EACA/O,EACAmB,EACAA,EACAA,CACD,EAAG4N,CAAK,GAAoB5O,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACwQ,EAAYvP,EAAIG,EAAQqP,EAAU1J,IAAc,CAC7J,UACA,IAAM2J,EAAW7Q,EAAM,aAAaoB,EAAG,EAAGG,CAAM,EAAGH,EAAG,CAAC,EACjDuE,EAAW,aAAaiL,EAAU1M,EAAU,EAC5C,EAAIlC,GAAI2D,CAAQ,EAChBmL,EAAI5O,GAAIyD,CAAQ,EAChBsE,EAAS3J,GAAMN,EAAMe,GAAI8P,EAAU7Q,EAAM,EAAG,aAAa8Q,EAAG,EAAE,CAAC,CAAC,EAAG/P,GAAI8P,EAAU7Q,EAAM8Q,EAAG,CAAC,CAAC,CAAC,EAAE,IAAI5J,CAAS,CAAC,EAAE,IAAIlH,EAAM,GAAI,EAAE,CAAC,EAChI+Q,EAAahQ,GAAIgP,EAAMY,EAAW,EAAGA,EAAW,EAAGA,EAAW,CAAC,EAAGZ,EAAM,KAAM,KAAM,IAAI,CAAC,EACzF9E,EAAU,aAAa,aAAa8F,EAAY,EAAE,EAAG,GAAG,EACxD1J,EAAOC,GAAO2C,CAAM,EACpB+G,EAAa,aAAa,EAAGjK,GAAW,aAAakE,EAASwF,EAAU,EAAG,aAAaxF,EAASwF,EAAU,EAAGpJ,CAAI,CAAC,EACzH,OAAO0H,EAAM,aAAa4B,EAAW,EAAGK,CAAU,EAAG,aAAaL,EAAW,EAAGK,CAAU,EAAG,aAAaL,EAAW,EAAGK,CAAU,EAAG,aAAaL,EAAW,EAAGK,CAAU,CAAC,CAC5K,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,WAAY,CACZ,EACA,UACA,CAAC,IAAK,CACL,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,WAAY,CACZ,EACA,UACA,CAAC,IAAK,GAAG,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,WAAW,CACb,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,KAAK,CAAC,CACxB,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,CACD,CACD,EAAG,CACF,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CA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,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAM9F,EACjB,UAAW,IAAM8D,CAClB,CACD,CAAC,GAAK5P,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8R,IAAc/R,EAAgB,GAAG,CACtCF,EACAA,EACAmB,CACD,EAAGnB,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAI8Q,EAASxG,IAAc,CACxI,UACA,OAAOrL,GAAML,EAAM,aAAa,aAAaoB,EAAG,EAAG8Q,EAAQ,CAAC,EAAGxG,CAAS,EAAG,aAAa,aAAatK,EAAG,EAAG8Q,EAAQ,CAAC,EAAGxG,CAAS,CAAC,CAAC,CACnI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,YACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,IACA,WACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,IACA,WACD,CAAC,CACF,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,YAAa,IAAMrL,GACnB,UAAW,IAAML,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC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C,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CAAC,MAAO,KAAK,CACd,CACD,EACA,CACC,GACA,MACA,CACC,EACA,kBACA,CAAC,MAAO,KAAK,CACd,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,CACD,EACA,CACC,GACA,KACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,OAAO,EACX,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,MAAM,EACV,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,OAAO,EACX,CACC,EACA,MACA,MACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,KAAK,EACT,CACC,EACA,MACA,MACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,OAAO,EACX,CACC,EACA,MACA,MACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,QAAQ,EACZ,CACC,EACA,MACA,MACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,CAAC,EAAG,OAAO,EACX,CACC,EACA,MACA,MACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,SACA,SACA,SACA,IACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMrT,GACnB,gBAAmB,IAAMkS,GACzB,QAAS,IAAMkB,EACf,aAAc,IAAM3S,EAC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ACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,YACA,CAAC,QAAS,CAAC,EAAG,GAAG,CAAC,CACnB,EACA,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,YACA,CAAC,QAAS,CAAC,EAAG,GAAG,CAAC,CACnB,EACA,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,EACA,KACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,WACA,CAAC,MAAO,KAAK,CACd,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,aACA,CACC,SACA,KACA,CACC,EACA,MACA,MACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,EACP,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,KACD,CACD,EACA,CACC,GACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,CACC,EACA,OACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,OACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CACC,GACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,IACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,KACD,CACD,EACA,CACC,GACA,CACC,EACA,MACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,CACC,EACA,QACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CACD,EACA,CACC,GACA,CACC,EACA,MACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,EACA,CACC,EACA,QACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,CACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,CAAC,GAAI,QAAQ,CACd,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMP,GACnB,QAAS,IAAMvT,EACf,QAAS,IAAMsS,EACf,aAAc,IAAM3S,EACpB,WAAY,IAAMiK,EACnB,CACD,CAAC,GAAK5K,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0V,IAAsB3V,EAAgB,GAAG,CAC9C6O,EACAA,EACA5N,CACD,EAAG4N,CAAK,GAAoB5O,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8O,EAAQC,EAAQ4G,IAAiB,CAC9I,UACA,IAAMC,EAAM9J,EAAI8D,EAAMd,EAAO,EAAGA,EAAO,EAAGA,EAAO,CAAC,EAAGc,EAAMb,EAAO,EAAGA,EAAO,EAAGA,EAAO,CAAC,EAAGa,EAAM+F,CAAY,CAAC,EACvG,EAAI7J,EAAIgD,EAAO,EAAGC,EAAO,EAAG4G,CAAY,EAC9C,OAAO/G,EAAMgH,EAAI,EAAGA,EAAI,EAAGA,EAAI,EAAG,CAAC,CACpC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CAAC,cAAc,CAChB,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,cACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM9J,EACjB,UAAW,IAAM8D,EACjB,UAAW,IAAMhB,CAClB,CACD,CAAC,GAAK5O,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6V,IAAsB9V,EAAgB,GAAG,CAAC6O,EAAO5N,CAAG,EAAG4N,CAAK,GAAoB5O,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8V,EAAaH,IAAiB,CACrM,UACA,IAAMC,EAAMhG,EAAMkG,EAAY,EAAGA,EAAY,EAAGA,EAAY,CAAC,EACvDC,EAAMjK,EAAI8J,EAAI,IAAI,EAAE,EAAGjJ,GAAIiJ,EAAI,IAAI,GAAG,EAAGhG,EAAM,EAAG,EAAG,CAAC,CAAC,EAAGA,EAAM+F,CAAY,CAAC,EACnF,OAAO/G,EAAMmH,EAAI,EAAGA,EAAI,EAAGA,EAAI,EAAGD,EAAY,CAAC,CAChD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,aACT,EAAG,CACF,KAAQ,IACR,KAAQ,cACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,cACA,GACD,EACA,CACC,EACA,cACA,GACD,EACA,CACC,EACA,cACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EAAG,CACF,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,OACA,SACA,CACC,EACA,UACA,CAAC,cAAc,CAChB,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,cACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMlG,EACjB,UAAW,IAAMjD,GACjB,UAAW,IAAMb,EACjB,UAAW,IAAM8C,CAClB,CACD,CAAC,GAAK5O,EAAE,GAAG,CAAC,CAAC,CAAC,EACd,SAASgW,GAAYC,EAAMC,EAAQ,CAClC,OAAO,OAAOD,GAAS,WAAaA,EAAKC,CAAM,EAAIC,GAAUF,EAAMC,CAAM,CAC1E,CACA,SAASE,GAAOC,EAAO,CACtB,IAAMC,EAAwB,IAAI,QAClC,OAAQJ,GAA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CA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,MACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,MACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,MAAM,EACV,CA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ACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,MACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,MACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CACC,EACA,YACA,CACC,KACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,EACA,cACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CACC,EACA,YACA,CACC,KACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,EACA,cACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,CACC,EACA,SACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,EACA,IACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,QAAQ,CACV,EAAG,CACF,EACA,UACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,SACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,aACA,CACC,EACA,SACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,aACA,CACC,KACA,aACA,CACC,EACA,SACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMH,GACnB,YAAa,IAAMlB,GACnB,QAAS,IAAMa,EACf,UAAW,IAAMhB,EACjB,UAAa,IAAMF,GACnB,UAAW,IAAMM,GACjB,IAAO,IAAM2B,GACb,UAAW,IAAME,GACjB,UAAW,IAAMW,EACjB,YAAa,IAAMd,EACnB,UAAW,IAAMoB,EACjB,UAAW,IAAMb,EACjB,aAAc,IAAMe,EACpB,UAAW,IAAMhB,EAClB,CACD,CAAC,GAAKnC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,GAAGS,CAAI,GAAGI,CAAM,EAAE,EACxCD,GAAc,IAAIF,EAAKI,CAAK,EACrBA,CACR,CACA,IAAIF,GAAgC,IAAI,IAClCwC,IAAa,CAClB,GAAI,EACJ,GAAI,EACJ,UAAW,EACX,SAAU,EACV,UAAW,CACZ,EACMC,IAAe,CACpB,UAAW,EACX,UAAW,EACX,UAAW,CACZ,EACMC,GAAuBxD,EAAgB,GAAG,CAC/CiB,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBf,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsB,EAAIC,EAAIe,EAAQiB,IAAS,CACpI,UACA,IAAMC,EAAWlB,IAAW,EACtBmB,EAAMN,EAAO7B,EAAIoC,GAAKpC,CAAE,EAAGkC,CAAQ,EACnCG,EAAMR,EAAO5B,EAAImC,GAAKnC,CAAE,EAAGiC,CAAQ,EACrCI,EAAMH,EACV,OAAAG,EAAMT,EAAOS,EAAKD,EAAKJ,IAAS,CAAC,EACjCK,EAAMT,EAAOS,EAAK,aAAaD,EAAKF,CAAG,EAAGF,IAAS,CAAC,EACpDK,EAAMT,EAAOS,EAAK,aAAaH,EAAKE,CAAG,EAAGJ,IAAS,CAAC,EACpDK,EAAMT,EAAOS,EAAK,aAAaH,EAAKE,CAAG,EAAGJ,IAAS,CAAC,EAC7CK,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,SACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,WACA,CAAC,IAAI,CACN,EACA,UACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,KACA,CACC,EACA,WACA,CAAC,IAAI,CACN,EACA,UACD,CACD,CACD,EACA,CACC,GACA,MACA,KACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,aACA,CACC,MACA,MACA,CACC,EACA,OACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,aACA,CACC,MACA,CACC,EACA,MACA,IACA,KACD,EACA,CACC,EACA,OACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,aACA,CACC,MACA,CACC,EACA,MACA,IACA,KACD,EACA,CACC,EACA,OACA,MACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,aACA,CACC,MACA,CACC,EACA,MACA,IACA,K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CA,WACA,CAAC,UAAU,CACZ,CACD,EAAG,CAAC,GAAI,CACP,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,SAAY,IAAMG,GAClB,UAAW,IAAM1E,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0E,GAAwB5E,EAAgB,GAAG,CAChDC,EACAA,EACAgB,EACAA,CACD,EAAGhB,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsE,EAAIC,EAAUI,EAAOzD,IAAS,CAC3I,UACA,IAAMsD,EAAS,aAAaD,EAAS,EAAGA,EAAS,CAAC,EAClD,OAAOxE,EAAM,aAAauE,EAAG,EAAGE,CAAM,EAAGF,EAAG,CAAC,EAAE,IAAIM,GAAID,CAAK,CAAC,EAAE,IAAIzD,CAAI,CACxE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,OAAO,CACT,CAAC,CACF,EACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMnB,EACjB,UAAW,IAAM6E,EAClB,CACD,CAAC,GAAK5E,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6E,GAAwB/E,EAAgB,GAAG,CAChDC,EACAA,EACAgB,CACD,EAAGhB,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsE,EAAIC,EAAUO,IAAU,CACrI,UACA,IAAMN,EAASC,GAASF,CAAQ,EAC1BQ,EAAW,aAAaD,EAAOE,EAAU,EACzCC,EAAOjD,GAAI+C,CAAQ,EACnBG,EAAO/E,GAAI4E,CAAQ,EACnBI,EAAK,aAAa,aAAab,EAAG,EAAGE,CAAM,EAAG,aAAaA,EAAQ,EAAE,CAAC,EACtEY,EAAK,aAAad,EAAG,EAAG,EAAE,EAChC,OAAOvE,EAAM,aAAa,aAAaoF,EAAIF,CAAI,EAAG,aAAaG,EAAIF,CAAI,CAAC,EAAG,aAAa,aAAaC,EAAI,CAACD,CAAI,EAAG,aAAaE,EAAIH,CAAI,CAAC,CAAC,CACzI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CAC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EAAMgB,EAAUE,EAAUI,EAAOC,EAAOvE,EAAI,CAAC,EAAG0E,EAAMP,CAAK,CAAC,CACpE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,cACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,GACD,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,aACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,QACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,aACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,MACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,aACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,WAAW,CACb,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,GACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,YACA,GACD,EACA,IACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,CACC,EACA,gBACA,GACD,CACD,EAAG,CACF,EACA,gBACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,cAAe,eAAe,CAChC,EACA,IACA,KACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,cAAe,SAAS,CAC1B,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,cACA,CACC,EACA,YACA,CACC,WACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,IACD,CAAC,CACF,EACA,OACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,MAAM,EACV,UACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,CACC,CACC,EACA,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EAAI8E,EAAa,IAAI,CAAC,EAAG/B,EAAM,aAAa+B,EAAaJ,CAAQ,EAAG,EAAG,CAAC,CAAC,CACtG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,KACA,WACA,QACA,MACA,CACC,EACA,UACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,WACA,IACA,KACD,EACA,IACA,WACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,WACA,IACA,YACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,WAAW,CACb,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,MACA,IACA,GACD,EACA,CACC,IACA,KACA,KACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,OACA,CACC,EACA,KACA,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,OACD,CAAC,CACF,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,OACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,OACA,IACA,WACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,IACA,cACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,YACA,CACC,EACA,YACA,IACA,UACD,EACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,IACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,IACA,CACC,EACA,OACA,IACA,eACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,uBACA,CACC,aACA,SACA,YACA,YACA,WACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,MACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,IACA,SACD,CACD,EACA,CACC,EACA,aACA,IACA,CACC,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,cACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,cACA,IACA,QACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,cAAe,CAAC,EAAG,QAAQ,CAAC,CAC9B,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,cACA,IACA,UACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,eAAgB,OAAO,CACzB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAmB,IAAMjD,GACzB,UAAW,IAAMzB,EACjB,UAAW,IAAMJ,EACjB,QAAS,IAAMlB,EACf,IAAO,IAAMsG,GACb,QAAS,IAAMI,EACf,YAAa,IAAMC,GACnB,UAAW,IAAMnC,GACjB,UAAW,IAAM6C,EACjB,iBAAkB,IAAM1C,GACxB,YAAa,IAAMgD,GACnB,qBAAwB,IAAMD,GAC9B,YAAa,IAAMrD,EACnB,UAAW,IAAMrB,CAClB,CACD,CAAC,GAAK/C,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4H,GAAe/H,EAAgB,GAAG,CACvCC,EACAC,EACAA,EACAA,EACAA,E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A,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,eACA,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,OACA,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,eACA,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,eACA,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,eACA,IACA,cACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,OACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,KACD,EACA,IACA,CACC,EACA,IACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,KACD,EACA,IACA,CACC,EACA,IACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,KACD,EACA,IACA,CACC,EACA,IACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,IACA,KACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,OACA,OACA,OACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMG,GACpB,UAAW,IAAME,GACjB,UAAW,IAAME,GACjB,MAAS,IAAMK,GACf,UAAW,IAAMf,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0B,IAAa7B,EAAgB,GAAG,CAACC,EAAOC,CAAG,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAO0B,IAAc,CACnL,UACA,IAAMC,EAAMC,EAAM5B,EAAM,EAAGA,EAAM,EAAGA,EAAM,CAAC,EACrC6B,EAAYC,GAAIH,EAAKC,EAAM,MAAO,MAAO,KAAK,CAAC,EAC/CG,EAAYC,EAAIJ,EAAMC,EAAWA,EAAWA,CAAS,EAAGF,EAAKC,EAAMF,CAAS,CAAC,EACnF,OAAO7B,EAAMkC,EAAU,EAAGA,EAAU,EAAGA,EAAU,EAAG/B,EAAM,CAAC,CAC5D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,EAAG,CACF,KAAQ,IACR,KAAQ,WACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,MAAO,CACP,EACA,UACA,CACC,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,CACb,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,YACA,YACA,WACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CACC,OACA,MACA,CACC,EACA,UACA,CAAC,WAAW,CACb,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,YACA,GACD,EACA,CACC,EACA,YACA,GACD,EACA,CACC,EACA,YACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM4B,EACjB,UAAW,IAAME,GACjB,UAAW,IAAME,EACjB,UAAW,IAAMnC,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkC,IAAarC,EAAgB,GAAG,CAACC,EAAOC,CAAG,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAOkC,IAAe,CACpL,UACA,IAAM,EAAIlC,EAAM,EACVuB,EAAIvB,EAAM,EACVwB,EAAIxB,EAAM,EACVmC,EAAU,aAAa,aAAa,aAAa,EAAGZ,CAAC,EAAGC,CAAC,EAAG,CAAC,EAC7DY,EAAKC,EAAI,EAAGA,EAAId,EAAGC,CAAC,CAAC,EACrBc,EAAM,aAAa,aAAa,aAAaF,EAAID,CAAO,EAAGD,CAAU,EAAG,EAAE,EAC1EK,EAAUP,EAAIJ,EAAM,EAAGL,EAAGC,CAAC,EAAGI,EAAMQ,EAAIA,EAAIA,CAAE,EAAGR,EAAMU,CAAG,CAAC,EACjE,OAAOzC,EAAM0C,EAAQ,EAAGA,EAAQ,EAAGA,EAAQ,EAAGvC,EAAM,CAAC,CACtD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,EAAG,CACF,KAAQ,IACR,KAAQ,YACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,UACA,CAAC,IAAK,GAAG,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,SACD,EACA,IACA,YACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,MACA,CACC,EACA,UACA,CACC,KACA,KACA,IACD,CACD,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,GACD,EACA,CACC,EACA,UACA,GACD,EACA,CACC,EACA,UACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMqC,EACjB,UAAW,IAAMT,EACjB,UAAW,IAAMI,EACjB,UAAW,IAAMnC,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRyC,IAAuB5C,EAAgB,GAAG,CAC/CC,EACAC,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAOyC,EAAYC,IAAgB,CAChJ,UACA,IAAMC,EAAW,aAAaD,EAAa,CAAC,EACtCE,EAAOhB,EAAM,GAAI,GAAI,EAAE,EAC7B,OAAO/B,EAAMG,EAAM,IAAI,IAAI4C,CAAI,EAAE,IAAID,CAAQ,EAAE,IAAIC,CAAI,EAAE,IAAIhB,EAAMa,EAAYA,EAAYA,CAAU,CAAC,EAAGzC,EAAM,CAAC,CACjH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,cACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,KACD,EACA,CAAC,MAAM,CACR,EACA,KACD,EACA,CAAC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GAAK,CAACC,EAAOkD,EAAWC,IAAa,CAC5I,UACA,IAAMxB,EAAMC,EAAM5B,EAAM,EAAGA,EAAM,EAAGA,EAAM,CAAC,EACrC6B,EAAYC,GAAIH,EAAKC,EAAM,KAAM,KAAM,IAAI,CAAC,EAC5CwB,EAASpB,EAAIL,EAAK0B,EAAO1B,EAAKC,EAAM,aAAa,EAAG5B,EAAM,CAAC,EAAG,aAAa,EAAGA,EAAM,CAAC,EAAG,aAAa,EAAGA,EAAM,CAAC,CAAC,EAAG6B,EAAYqB,CAAS,EAAGtB,EAAMuB,CAAQ,CAAC,EAChK,OAAOtD,EAAMuD,EAAO,EAAGA,EAAO,EAAGA,EAAO,EAAGpD,EAAM,CAAC,CACnD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,MAAO,CACP,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CACC,MACA,WACA,CACC,EACA,YACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,MACA,YACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM4B,EACjB,UAAW,IAAME,GACjB,aAAc,IAAMuB,EACpB,UAAW,IAAMrB,EACjB,UAAW,IAAMnC,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuD,IAAc1D,EAAgB,GAAG,CAACC,EAAOC,CAAG,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAOuD,IAAU,CAChL,UACA,IAAMC,EAAIC,EAAMF,EAAOzD,EAAI,CAAC,EAAGA,EAAI,EAAE,CAAC,EACtC,OAAOD,EAAM,aAAa6D,GAAM,aAAa1D,EAAM,EAAGwD,CAAC,CAAC,EAAGA,CAAC,EAAG,aAAaE,GAAM,aAAa1D,EAAM,EAAGwD,CAAC,CAAC,EAAGA,CAAC,EAAG,aAAaE,GAAM,aAAa1D,EAAM,EAAGwD,CAAC,CAAC,EAAGA,CAAC,EAAGxD,EAAM,CAAC,CAC3K,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,EAAG,CACF,KAAQ,IACR,KAAQ,OACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,YACA,CACC,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,IAAI,CAAC,CACX,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,GACD,CAAC,CACF,EACA,IACA,GACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,IACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMyD,EACnB,QAAS,IAAM3D,EACf,YAAa,IAAM4D,GACnB,UAAW,IAAM7D,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4D,IAAY/D,EAAgB,GAAG,CACpCC,EACAA,EACAC,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAO4D,EAAWC,IAAW,CAC1I,UACA,IAAMC,EAAS9B,EAAIJ,EAAM5B,EAAM,EAAGA,EAAM,EAAGA,EAAM,CAAC,EAAG4B,EAAMgC,EAAU,EAAGA,EAAU,EAAGA,EAAU,CAAC,EAAGhC,EAAMiC,CAAM,CAAC,EAChH,OAAOhE,EAAMiE,EAAO,EAAGA,EAAO,EAAGA,EAAO,EAAG9D,EAAM,CAAC,CACnD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,MACA,CACC,EACA,UACA,CACC,CACC,EACA,YACA,GACD,EACA,CACC,EACA,YACA,GACD,EACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM4B,EACjB,UAAW,IAAMI,EACjB,UAAW,IAAMnC,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgE,IAAmBnE,EAAgB,GAAG,CAC3CC,EACAA,EACAC,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAO4D,EAAWC,IAAW,CAC1I,UACA,IAAMlC,EAAMC,EAAM5B,EAAM,EAAGA,EAAM,EAAGA,EAAM,CAAC,EACrC8D,EAAS9B,EAAIL,EAAKC,EAAMgC,EAAU,EAAGA,EAAU,EAAGA,EAAU,CAAC,EAAGhC,EAAMiC,CAAM,CAAC,EAC7EG,EAAmBpC,EAAM,KAAM,KAAM,IAAI,EACzCqC,EAAcnC,GAAIH,EAAKqC,CAAgB,EACvCE,EAAYpC,GAAIgC,EAAQE,CAAgB,EACxCZ,EAASU,EAAO,IAAI,aAAaG,EAAa5B,EAAI6B,EAAW,IAAI,CAAC,CAAC,EACzE,OAAOrE,EAAMuD,EAAO,EAAGA,EAAO,EAAGA,EAAO,EAAGpD,EAAM,CAAC,CACnD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,MACA,CACC,EACA,UACA,CACC,CACC,EACA,YACA,GACD,EACA,CACC,EACA,YACA,GACD,EACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,CACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,MAAO,kBAAkB,CAC3B,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,SAAU,kBAAkB,CAC9B,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,cACA,IACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,QAAQ,CAAC,CAC5B,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM4B,EACjB,UAAW,IAAMI,EACjB,UAAW,IAAMF,GACjB,UAAW,IAAMO,EACjB,UAAW,IAAMxC,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoE,IAAWvE,EAAgB,GAAG,CAACC,EAAOC,CAAG,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAOoE,IAAU,CAC3K,UACA,IAAMvC,EAAYC,GAAI9B,EAAM,IAAK4B,EAAM,KAAM,KAAM,IAAI,CAAC,EACxD,OAAOyC,GAAW,aAAaD,EAAO,EAAE,EAAG,aAAaA,EAAO,EAAE,EAAGvC,CAAS,CAC9E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,EAAG,CACF,KAAQ,IACR,KAAQ,OACT,CAAC,EACD,KAAQ,CAAC,EA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CC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,QACA,QACA,OACD,CACD,CAAC,CACF,EACA,KACD,EACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,KAAK,CACP,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,SACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMA,EACjB,OAAU,IAAMnC,GAChB,UAAW,IAAMY,GACjB,YAAa,IAAMoD,CACpB,CACD,CAAC,GAAK1D,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsF,IAAyBzF,EAAgB,GAAG,CAACE,EAAKA,CAAG,EAAGwF,CAAK,GAAoBvF,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC,EAAGgF,IAAU,CACrL,UACA,IAAMQ,EAAMC,GAAM,aAAa,EAAGT,CAAK,CAAC,EAClCU,EAAK,aAAaF,EAAK,CAAC,EAC9B,OAAOD,EAAME,GAAMC,CAAE,EAAG/B,GAAM+B,CAAE,CAAC,CAClC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,O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,aAAaJ,EAAOE,CAAU,EAAG,aAAavD,EAAU,EAAE,CAAC,EAC/F,OAAOtD,EAAMG,EAAM,IAAI,IAAI4G,CAAc,EAAG5G,EAAM,CAAC,CACpD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,WAAY,CACZ,EACA,WACA,IACA,CAAC,EAAG,WAAW,CAChB,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,KACD,EAAG,CACF,EACA,UACA,CACC,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,CACb,CACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,YACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,IACA,CAAC,EAAG,UAAU,CACf,EAAG,MAAM,CACV,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,QACA,IACA,YACD,EACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,KACD,EACA,CAAC,gBAAgB,CAClB,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,eAAgB,CAChB,EACA,QACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMuG,GAChB,UAAW,IAAMjB,EACjB,YAAa,IAAM7B,EACnB,UAAW,IAAM3B,GACjB,UAAW,IAAMF,EACjB,UAAW,IAAM+E,GACjB,UAAW,IAAM9G,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8G,GAAkBjH,EAAgB,GAAG,CAC1CE,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+G,EAAaC,EAAQC,EAAWC,EAAUC,EAAOC,IAAa,CACzK,UACA,IAAMC,EAAKT,GAAItD,EAAOyD,EAAa,aAAa,EAAGA,CAAW,EAAGK,EAAW,EAAE,EAAGD,CAAK,EAChFG,EAAc,aAAa,aAAaD,EAAIL,CAAM,EAAG,EAAE,EACvDO,EAAKjF,EAAIkF,GAAOF,CAAW,EAAG,IAAI,EAClCG,EAAmBC,EAAI,aAAajC,GAAM,aAAa6B,EAAa,EAAE,CAAC,EAAG,EAAE,CAAC,EAC7EK,EAAiB,aAAaF,EAAkBF,CAAE,EAClDK,EAAmB,aAAa,aAAaV,EAAU,GAAG,EAAG,GAAG,EAChEW,EAAY,aAAaZ,EAAW,aAAa,EAAGW,CAAgB,CAAC,EAC3E,OAAO,aAAa,EAAGtD,GAAWuD,EAAWZ,EAAWU,CAAc,CAAC,CACxE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,gBACA,CACC,EACA,aACA,CACC,cACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,aACD,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,gBAAiB,OAAO,CAC1B,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,KACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,aAAa,CACf,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,cACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,mBACA,IACA,IACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,kBACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,YACA,YACA,gBACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMrE,EACpB,UAAW,IAAMsD,GACjB,UAAW,IAAMtE,EACjB,aAAc,IAAMkF,GACpB,UAAW,IAAME,EACjB,YAAa,IAAMjC,GACnB,iBAAkB,IAAMnB,EACzB,CACD,CAAC,GAAKtE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR8H,IAAmBjI,EAAgB,GAAG,CAC3CC,EACAC,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAO+G,EAAQC,EAAWC,EAAUC,EAAOC,IAAa,CACnK,UACA,OAAON,GAAgBiB,GAAW9H,EAAM,GAAG,EAAG+G,EAAQC,EAAWC,EAAUC,EAAOC,CAAQ,CAC3F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,kBACA,CACC,CACC,EACA,aACA,CAAC,CACA,EACA,QACA,KACD,CAAC,CACF,EACA,SACA,YACA,WACA,QACA,QACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,gBAAmB,IAAMN,GACzB,WAAc,IAAMiB,EACrB,CACD,CAAC,GAAK/H,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgI,IAAoBnI,EAAgB,GAAG,CAC5CC,EACAC,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAO+G,EAAQC,EAAWC,EAAUC,EAAOC,IAAa,CACnK,UACA,OAAON,GAAgB7G,EAAM,EAAG+G,EAAQC,EAAWC,EAAUC,EAAOC,CAAQ,CAC7E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,kBACA,CACC,CACC,EACA,QACA,GACD,EACA,SACA,YACA,WACA,QACA,QACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,gBAAmB,IAAMN,EAAgB,CACvD,CAAC,GAAK9G,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiI,IAAiBpI,EAAgB,GAAG,CACzCC,EACAA,EACAC,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkI,EAAIC,EAAMC,IAAS,CAChI,UACA,IAAMxG,EAAMK,EAAIJ,EAAMqG,EAAG,EAAGA,EAAG,EAAGA,EAAG,CAAC,EAAGrG,EAAMsG,EAAK,EAAGA,EAAK,EAAGA,EAAK,CAAC,EAAGtG,EAAMuG,CAAI,CAAC,EAC7EC,EAAQpG,EAAIiG,EAAG,EAAGC,EAAK,EAAGC,CAAI,EACpC,OAAOtI,EAAM8B,EAAI,EAAGA,EAAI,EAAGA,EAAI,EAAGyG,CAAK,CACxC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,EACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CAAC,MAAM,CACR,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC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AAa,GAAI,aAAaG,EAAI,EAAG1M,EAAIsM,CAAO,CAAC,CAAC,EAAGtM,EAAIwM,CAAS,CAAC,CAAC,CAC9N,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,uBACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,QACA,KACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,YACA,CAAC,OAAO,CACT,EACA,IACA,IACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,CAAC,MAAM,CACR,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,aAAa,CACf,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,IAAK,GAAG,CACV,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,uBAAwB,IAAMG,GAC9B,YAAa,IAAMhJ,EACnB,UAAW,IAAM7B,EACjB,QAAS,IAAM9B,EACf,QAAW,IAAMsM,EACjB,YAAa,IAAM1I,GACnB,KAAQ,IAAMyI,EACd,YAAe,IAAME,EACrB,UAAa,IAAMC,EACnB,UAAW,IAAMhH,CAClB,CACD,CAAC,GAAKvF,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,YAAY,CACnC,CACA,SAAS4M,IAAoBR,EAAM,CAClC,IAAMC,EAAUD,EAAO,EACvB,OAAOvM,EAAgB,GAAG,CACzBC,EACAA,EACAA,EACAC,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAO4M,EAAOC,EAAO1J,IAAa,CAC/I,UACA,IAAMqJ,EAAMC,GAAahJ,EAAMzD,EAAM,IAAK4B,EAAM,EAAG,EAAG,CAAC,EAAGA,EAAM,EAAG,EAAG,CAAC,CAAC,CAAC,EACnE8K,EAAQ,aAAaF,EAAI,EAAG1M,EAAIsM,CAAO,CAAC,EACxCU,EAAI,aAAaJ,EAAOhJ,GAAMgJ,CAAK,CAAC,EACpCK,EAASC,GAAahL,EAAI4K,EAAM,IAAKC,EAAM,IAAKjL,EAAMkL,EAAGA,EAAGA,CAAC,CAAC,CAAC,EAC/DnL,EAAMK,EAAIhC,EAAM,IAAK+M,EAAQnL,EAAMuB,EAAUA,EAAUA,CAAQ,CAAC,EACtE,OAAOtD,EAAM8B,EAAI,EAAGA,EAAI,EAAGA,EAAI,EAAG3B,EAAM,CAAC,CAC1C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,uBACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,QACA,KACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,QACA,CAAC,SAAS,CACX,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,YACA,CAAC,OAAO,CACT,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,uBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,QACA,KACD,EACA,CACC,EACA,QACA,KACD,EACA,CACC,EACA,UACA,CACC,IACA,IACA,GACD,CACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,KACD,EACA,SACA,CACC,EACA,UACA,CACC,WACA,WACA,UACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,uBAAwB,IAAMyM,GAC9B,YAAa,IAAMhJ,EACnB,UAAW,IAAM7B,EACjB,QAAS,IAAM9B,EACf,QAAW,IAAMsM,EACjB,YAAa,IAAM1I,GACnB,uBAAwB,IAAMsJ,GAC9B,UAAW,IAAMhL,EACjB,UAAW,IAAMnC,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,CACtC,CACA,IAAIkN,GAAkC,IAAI,IAC1C,SAASC,IAAef,EAAM,CAC7B,IAAIgB,EAAMF,GAAgB,IAAId,CAAI,EAClC,OAAKgB,IACJA,EAAM,CACL,GAAIjB,IAAiBC,CAAI,EACzB,MAAOQ,IAAoBR,CAAI,CAChC,EACAc,GAAgB,IAAId,EAAMgB,CAAG,GAEvBA,CACR,CACA,SAASC,GAAczE,EAAO,CAC7B,IAAMwE,EAAMD,IAAevE,EAAM,IAAI,EACrC,MAAO,CAAC3I,EAAOmJ,IAAW,CACzB,GAAM,CAAE,WAAAD,EAAY,SAAAmE,EAAU,kBAAAC,EAAmB,qBAAAC,EAAsB,UAAAC,CAAU,EAAIrE,EAC/EsE,EAAMvE,EAAWP,EAAM,OAAO,IAAI,GAAKA,EAAM,SAC7C+E,EAASJ,EAAkB,CAChC,MAAO3E,EAAM,KAAOA,EAAM,KAC1B,OAAQA,EAAM,KACd,OAAQ,aACR,KAAMA,EAAM,OAAO8E,CAAG,EACtB,MAAO,GAAG9E,EAAM,KAAK,IAAI8E,CAAG,EAC7B,CAAC,EACDD,EAAU,IAAME,EAAO,QAAQ,CAAC,EAChC,IAAMC,EAASJ,EAAqB,IAAMG,EAAO,OAAO,EAClDd,EAAQe,EAAO,OAAO5D,EAAKoD,EAAI,GAAI,eAAgB,CAACnN,EAAOmK,GAAO,CAAC,CAAC,CAAC,EAAG,aAAa,EACrF0C,EAAQc,EAAO,OAAO5D,EAAKoD,EAAI,GAAI,eAAgB,CAACnN,EAAOmK,GAAO,CAAC,CAAC,CAAC,EAAG,aAAa,EAC3F,OAAOJ,EAAKoD,EAAI,MAAO,gBAAiB,CACvCnN,EACA4M,EACAC,EACAQ,EAAS1E,EAAM,SAAS,IAAI,CAC7B,CAAC,CACF,CACD,CC/hHA,IAAMiF,GAAgBC,EAAgB,GAAG,CACxCC,EACAC,EACAD,EACAC,CACD,EAAGC,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAQC,EAAOC,EAAIC,IAAW,CAC3I,UACA,IAAMC,EAAoBR,EAAM,aAAaM,EAAG,EAAGC,CAAM,EAAGD,EAAG,CAAC,EAC1DG,EAAYT,EAAM,aAAaI,EAAO,EAAGG,CAAM,EAAG,aAAa,EAAGH,EAAO,CAAC,CAAC,EAC3EM,EAAQF,EAAkB,IAAIC,CAAS,EACvCE,EAAW,aAAaN,EAAOO,EAAU,EACzCC,EAAgBb,EAAMc,GAAIH,CAAQ,EAAGI,GAAIJ,CAAQ,CAAC,EAClDK,EAAahB,EAAM,aAAaa,EAAc,EAAG,EAAE,EAAGA,EAAc,CAAC,EACrEI,EAAiBC,GAAIR,EAAOM,CAAU,EACtCG,EAAiBT,EAAM,IAAIM,EAAW,IAAI,aAAaC,EAAgB,CAAC,CAAC,CAAC,EAC1EG,EAAaX,EAAU,IAAIU,CAAc,EACzCE,EAAkBrB,EAAM,aAAaoB,EAAW,EAAGb,CAAM,EAAGa,EAAW,CAAC,EACxEE,EAAeC,GAAK,EAAGN,CAAc,EAC3C,OAAOf,EAAMmB,EAAgB,EAAGA,EAAgB,EAAGC,CAAY,CAChE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,oBACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,UAAU,CACZ,EAAG,CACF,EACA,UACA,CAAC,UAAU,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,gBACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CACF,EACA,gBACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,UACA,CAAC,QAAS,YAAY,CACvB,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,CACA,EACA,iBACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,gBAAgB,CAClB,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,aACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,gBAAgB,CAC5B,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,kBACA,GACD,EACA,CACC,EACA,kBACA,GACD,EACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtB,EACjB,WAAc,IAAMY,GACpB,UAAW,IAAME,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMG,GACjB,WAAY,IAAMK,GAClB,UAAW,IAAMrB,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqB,GAASzB,EAAgB,GAAG,CACjCC,EACAC,EACAA,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAImB,EAAOC,IAAU,CAClI,UACA,OAAO1B,EAAM2B,EAAOrB,EAAG,EAAG,aAAa,EAAGA,EAAG,CAAC,EAAGmB,EAAQ,CAAC,EAAGE,EAAOrB,EAAG,EAAG,aAAa,EAAGA,EAAG,CAAC,EAAGoB,EAAQ,CAAC,CAAC,CAC5G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,IAAK,GAAG,CACV,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMC,EACpB,UAAW,IAAM3B,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACVyB,GAAW,EACXC,GAAQ,IACNC,GAAY/B,EAAgB,GAAG,CACpCE,EACAA,EACAA,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC4B,EAAUC,EAAS3B,EAAOC,EAAIC,IAAW,CACtJ,UACA,IAAMI,EAAW,aAAaN,EAAOO,EAAU,EACzCqB,EAAMjC,EAAMc,GAAIH,CAAQ,EAAGI,GAAIJ,CAAQ,CAAC,EACxCuB,EAAOlC,EAAM,aAAaiC,EAAI,EAAG,EAAE,EAAGA,EAAI,CAAC,EAC3CE,EAAInC,EAAM,aAAa,aAAaM,EAAG,EAAG,EAAE,EAAGC,CAAM,EAAG,aAAaD,EAAG,EAAG,EAAE,CAAC,EAC9E8B,EAAUlB,GAAIiB,EAAGF,CAAG,EACpBI,EAAUnB,GAAIiB,EAAGD,CAAI,EACrBI,EAAQC,EAAI,aAAa,aAAa,aAAaC,EAAIP,EAAI,CAAC,EAAG1B,CAAM,EAAGiC,EAAIP,EAAI,CAAC,CAAC,EAAG,EAAE,EAAG,IAAI,EAC9FQ,EAAW,aAAaL,EAASE,CAAK,EACtCI,EAAI,aAAaX,EAAUF,EAAK,EAChCc,EAAI,aAAaC,EAAMZ,EAAS,EAAG,CAAC,EAAG,EAAE,EACzCa,EAAQ,aAAa,EAAGF,CAAC,EACzBG,EAAIN,EAAIC,CAAQ,EAChBM,EAAMpB,EAAO1B,EAAI,EAAE,EAAGA,EAAI,CAAC,EAAGwC,GAAY,CAAC,EAC3CO,EAAK,aAAaN,EAAGI,CAAC,EACtBG,EAAO,aAAa,aAAa,aAAa,aAAarB,GAAUA,EAAQ,EAAGiB,CAAK,EAAGA,CAAK,EAAG,aAAa,aAAa,aAAa,EAAGG,CAAE,EAAGpB,EAAQ,EAAG,aAAakB,EAAGH,CAAC,CAAC,CAAC,EAC7KO,EAAWV,EAAIQ,CAAE,EAAI,KACrBG,EAAQxB,EAAO,aAAaqB,EAAI,CAAC,EAAG/C,EAAI,CAAC,EAAGiD,CAAQ,EACpDE,EAAMzB,EAAO,aAAa,aAAa0B,GAAKd,EAAIU,EAAM,CAAC,CAAC,EAAG,aAAarB,GAAUiB,CAAK,CAAC,EAAGM,CAAK,EAAG,aAAa,aAAaL,EAAGH,CAAC,EAAGE,CAAK,EAAGK,CAAQ,EACpJI,EAAI3B,EAAO1B,EAAI,CAAC,EAAGsC,EAAIa,EAAK,CAAC,EAAGH,GAAQ,CAAC,EACzCM,EAAS,aAAaR,EAAK,aAAaJ,EAAG,aAAaW,EAAGT,CAAK,CAAC,CAAC,EAClEW,EAASV,GAAKH,EACdc,EAAK9B,EAAO4B,EAAQd,EAAUe,CAAM,EACpCE,EAAI/B,EAAO,aAAa,aAAae,EAAGY,CAAC,EAAGA,CAAC,EAAGrD,EAAI,CAAC,EAAGuD,CAAM,EAC9DG,EAAO,aAAa,aAAatB,EAAS,aAAaT,GAAU8B,CAAC,CAAC,EAAG9B,EAAQ,EAC9EgC,EAAO3B,EAAI,IAAI,aAAawB,EAAInB,CAAK,CAAC,EAAE,IAAIJ,EAAK,IAAIyB,CAAI,CAAC,EAChE,OAAO3D,EAAM,aAAa,aAAa4D,EAAK,EAAGrD,CAAM,EAAG,EAAE,EAAG,aAAaqD,EAAK,EAAG,EAAE,CAAC,CACtF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,UAAU,CACZ,EAAG,CACF,EACA,UACA,CAAC,UAAU,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,IAAK,KAAK,CACZ,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,IAAK,MAAM,CACb,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,EACA,IACA,QACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,IACA,OACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,IACA,OACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,CACC,UACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,WACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,IACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,IACA,UACD,EACA,IACA,OACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,EACA,IACA,UACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,SAAS,CACd,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,CAAC,CACF,EACA,IACA,CACC,EACA,WACA,IACA,OACD,CACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,QACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,OACD,EACA,UACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,MAAO,CAAC,EAAG,GAAG,CAAC,CACjB,EACA,CACC,EACA,OACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,KACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,SACA,WACA,QACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,QACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,WACA,IACA,GACD,CACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,KACA,IACA,OACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMhD,GACpB,UAAW,IAAMZ,EACjB,UAAW,IAAMc,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMG,GACjB,UAAW,IAAMqB,EACjB,UAAW,IAAMC,EACjB,MAAS,IAAMX,GACf,YAAa,IAAMe,EACnB,aAAc,IAAMjB,EACpB,QAAS,IAAM1B,EACf,SAAY,IAAM2B,GAClB,WAAY,IAAMyB,EACnB,CACD,CAAC,GAAKlD,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0D,GAAU9D,EAAgB,GAAG,CAClCC,EACAC,EACAA,EACAA,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAQ2B,EAAU+B,EAAQ9B,EAAS1B,EAAIC,IAAW,CAC/J,UACA,IAAMC,EAAoBR,EAAM,aAAaM,EAAG,EAAGC,CAAM,EAAGD,EAAG,CAAC,EAC1DG,EAAYT,EAAM,aAAaI,EAAO,EAAGG,CAAM,EAAG,aAAa,EAAGH,EAAO,CAAC,CAAC,EAC3EM,EAAQF,EAAkB,IAAIC,CAAS,EACvCsD,EAAWC,GAAOtD,CAAK,EACvBuD,EAAe,aAAaH,EAAQ,EAAE,EACtCI,EAAc,aAAaD,EAAc1B,EAAI,aAAa,aAAa,EAAGP,CAAO,EAAG,IAAI,EAAG,CAAC,CAAC,EAC7FmC,EAAgB,aAAa,EAAGC,GAAWF,EAAaD,EAAcF,CAAQ,CAAC,EAC/EM,EAAiB,aAAaN,EAAUE,CAAY,EACpDK,EAAS,aAAaD,EAAgBA,CAAc,EACpDE,EAAmBhC,EAAI,EAAG,aAAa,EAAG+B,CAAM,CAAC,EACjDE,EAAe,aAAaL,EAAeI,CAAgB,EAC3DE,EAAc,aAAa1C,EAAU,EAAE,EACvC2C,EAAqB,aAAaD,EAAaD,CAAY,EAC3DG,EAAc,aAAa,EAAGD,CAAkB,EAChDE,EAAclE,EAAM,IAAIiE,CAAW,EACnCE,EAAWpE,EAAU,IAAImE,CAAW,EAC1C,OAAO5E,EAAM,aAAa6E,EAAS,EAAGtE,CAAM,EAAGsE,EAAS,CAAC,CAC1D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,oBACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,eACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,eACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,SACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,cACA,eACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,WACA,IACA,cACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,iBACA,IACA,gBACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,gBACA,IACA,kBACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,WACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,cACA,IACA,cACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,oBACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,aAAa,CACf,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,WACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM7E,EACjB,aAAc,IAAMgE,GACpB,UAAW,IAAMzB,EACjB,iBAAkB,IAAM6B,EACzB,CACD,CAAC,GAAKjE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2E,GAAU/E,EAAgB,GAAG,CAClCC,EACAC,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAQ2E,EAAWzE,EAAIC,IAAW,CAC/I,UACA,IAAME,EAAYT,EAAMI,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EACrDM,EAAQJ,EAAG,IAAIG,CAAS,EACxBuE,EAAMhF,EAAM,aAAaU,EAAM,EAAGH,CAAM,EAAGG,EAAM,CAAC,EAClDL,EAAQ,aAAa0E,EAAWf,GAAOgB,CAAG,CAAC,EAC3CC,EAAOnE,GAAIT,CAAK,EAChB6E,EAAOnE,GAAIV,CAAK,EAChB8E,EAAW,aAAa,aAAaF,EAAMD,EAAI,CAAC,EAAG,aAAaE,EAAMF,EAAI,CAAC,CAAC,EAC5EI,EAAW,aAAa,aAAaF,EAAMF,EAAI,CAAC,EAAG,aAAaC,EAAMD,EAAI,CAAC,CAAC,EAClF,OAAOhF,EAAM,aAAa,aAAamF,EAAU5E,CAAM,EAAGE,EAAU,CAAC,EAAG,aAAa2E,EAAU3E,EAAU,CAAC,CAAC,CAC5G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,QACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,IACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,IACA,QACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EAAG,CACF,EACA,WACA,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMT,EACjB,aAAc,IAAMgE,GACpB,UAAW,IAAMlD,GACjB,UAAW,IAAMC,EAClB,CACD,CAAC,GAAKZ,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkF,GAAiBtF,EAAgB,GAAG,CACzCC,EACAC,EACAA,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAQkF,EAAUjF,EAAOC,EAAIC,IAAW,CACrJ,UACA,IAAMC,EAAoBR,EAAM,aAAaM,EAAG,EAAGC,CAAM,EAAGD,EAAG,CAAC,EAC1DG,EAAYT,EAAM,aAAaI,EAAO,EAAGG,CAAM,EAAG,aAAa,EAAGH,EAAO,CAAC,CAAC,EAC3EM,EAAQF,EAAkB,IAAIC,CAAS,EACvCqD,EAASE,GAAOtD,CAAK,EACrB6E,EAAeC,GAAM9E,EAAM,EAAGA,EAAM,CAAC,EACrC+E,EAAe,aAAaF,EAAc,aAAalF,EAAOO,EAAU,CAAC,EACzE8E,EAAe,aAAaC,GAAKL,CAAQ,EACzCM,EAAS,aAAaF,EAAc,CAAC,EACrCG,EAAe,aAAaJ,EAAc,aAAaG,EAAQE,GAAM,aAAaL,EAAcG,CAAM,CAAC,CAAC,CAAC,EACzGG,EAAapE,EAAOkE,EAAc,aAAaD,EAAQC,CAAY,EAAGA,EAAeH,CAAY,EACjGM,EAAgB,aAAalF,GAAIiF,CAAU,EAAGjC,CAAM,EACpDmC,EAAgB,aAAalF,GAAIgF,CAAU,EAAGjC,CAAM,EACpDoC,EAAkBzF,EAAU,IAAIT,EAAMgG,EAAeC,CAAa,CAAC,EACzE,OAAOjG,EAAM,aAAakG,EAAgB,EAAG3F,CAAM,EAAG2F,EAAgB,CAAC,CACxE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,oBACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,eACA,CACC,EACA,YACA,CAAC,CACA,EACA,QACA,GACD,EAAG,CACF,EACA,QACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,eACA,IACA,CACC,EACA,QACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,MACA,IACA,UACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,eACA,CACC,EACA,eACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,eACA,IACA,QACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,aACA,CACC,eACA,CACC,EACA,SACA,IACA,cACD,EACA,CACC,EACA,eACA,IACA,cACD,CACD,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,UACA,CAAC,YAAY,CACd,EACA,IACA,QACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,UACA,CAAC,YAAY,CACd,EACA,IACA,QACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,gBAAiB,eAAe,CAClC,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,kBACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,kBACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMlG,EACjB,aAAc,IAAMgE,GACpB,YAAa,IAAMwB,GACnB,WAAc,IAAM5E,GACpB,IAAO,IAAM+E,GACb,YAAa,IAAMG,GACnB,aAAc,IAAMnE,EACpB,UAAW,IAAMb,GACjB,UAAW,IAAMC,EAClB,CACD,CAAC,GAAKZ,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgG,GAAYpG,EAAgB,GAAG,CACpCC,EACAC,EACAA,EACAA,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAQ2B,EAAU1B,EAAO2B,EAAS1B,EAAIC,IAAW,CAC9J,UACA,IAAMC,EAAoBR,EAAM,aAAaM,EAAG,EAAGC,CAAM,EAAGD,EAAG,CAAC,EAC1DG,EAAYT,EAAM,aAAaI,EAAO,EAAGG,CAAM,EAAG,aAAa,EAAGH,EAAO,CAAC,CAAC,EAC3EM,EAAQF,EAAkB,IAAIC,CAAS,EACvCE,EAAW,aAAaN,EAAOO,EAAU,EACzCwF,EAAkBpG,EAAMc,GAAIH,CAAQ,EAAGI,GAAIJ,CAAQ,CAAC,EACpD0F,EAAanF,GAAIR,EAAO0F,CAAe,EACvCE,EAAWF,EAAgB,IAAIC,CAAU,EACzCE,EAAgB7F,EAAM,IAAI4F,CAAQ,EAClCE,EAAkBC,EAAI,KAAM,GAAIzE,CAAO,EACvC0E,EAAa9D,EAAM,aAAayD,EAAYG,CAAe,EAAG,EAAG,CAAC,EAClEG,EAAiB,aAAa5E,EAAU,GAAG,EAC3C6E,EAAgB,aAAa,EAAG,aAAaD,EAAgBD,CAAU,CAAC,EACxEG,EAAkB,aAAaR,EAAYO,CAAa,EACxDE,EAAiBV,EAAgB,IAAIS,CAAe,EAAE,IAAIN,CAAa,EACvEQ,EAActG,EAAU,IAAIqG,CAAc,EAChD,OAAO9G,EAAM,aAAa+G,EAAY,EAAGxG,CAAM,EAAGwG,EAAY,CAAC,CAChE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,oBACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,UAAU,CACZ,EAAG,CACF,EACA,UACA,CAAC,UAAU,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,QAAS,iBAAiB,CAC5B,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,kBACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,IAAI,EACR,SACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CACC,CACC,EACA,aACA,IACA,iBACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,aACA,IACA,eACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,kBACA,KACD,EACA,CAAC,iBAAiB,CACnB,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,gBACA,KACD,EACA,CAAC,eAAe,CACjB,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,gBAAgB,CAClB,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,cACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,cACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM/G,EACjB,WAAc,IAAMY,GACpB,UAAW,IAAME,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMG,GACjB,UAAW,IAAMuF,EACjB,YAAa,IAAM7D,CACpB,CACD,CAAC,GAAKzC,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6G,GAAYjH,EAAgB,GAAG,CACpCC,EACAC,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIC,EAAQF,EAAO4G,EAAWC,IAAM,CAC/I,UACA,IAAMC,EAAa7G,EAAG,IAAIN,EAAM,GAAI,EAAE,CAAC,EACjCQ,EAAoBR,EAAM,aAAamH,EAAW,EAAG5G,CAAM,EAAG4G,EAAW,CAAC,EAC1ExG,EAAW,aAAaN,EAAOO,EAAU,EACzCqE,EAAOnE,GAAIH,CAAQ,EACnBuE,EAAOnE,GAAIJ,CAAQ,EACnByE,EAAW,aAAa,aAAa5E,EAAkB,EAAG0E,CAAI,EAAG,aAAa1E,EAAkB,EAAGyE,CAAI,CAAC,EAC9G,OAAO,aAAa,aAAa,aAAa,aAAaG,EAAU,EAAE,EAAG6B,CAAS,EAAGtB,EAAG,EAAGuB,CAAC,CAC9F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,KAAK,CAAC,CACxB,CAAC,CACF,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,aACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,WACD,EACA,IACA,KACD,EACA,IACA,GACD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T,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,KACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,QACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,IAAO,IAAMkF,GACb,GAAM,IAAM+C,GACZ,UAAW,IAAM5H,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMf,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACV6I,GAAM,KACJC,GAAmBlJ,EAAgB,GAAG,CAACE,EAAKA,CAAG,EAAGA,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+I,EAAGC,IAAO,CAC1K,UACA,OAAO,aAAaD,EAAGvH,EAAOwH,EAAIH,GAAKxG,EAAI2G,CAAE,EAAIH,EAAG,CAAC,CACtD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,IACA,IACA,CACC,EACA,aACA,CACC,KACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,KACD,CACD,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,aAAc,IAAMrH,EACpB,IAAO,IAAMqH,GACb,UAAW,IAAMxG,CAClB,CACD,CAAC,GAAKrC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiJ,GAAerJ,EAAgB,GAAG,CACvCC,EACAA,EACAA,CACD,EAAGC,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgC,EAAGkH,EAAG3G,IAAM,CACvH,UACA,IAAM4G,EAAM,aAAa5G,EAAE,EAAG2G,EAAE,CAAC,EAC3BE,EAAM,aAAa7G,EAAE,EAAG2G,EAAE,CAAC,EAC3BG,EAAM,aAAarH,EAAE,EAAGkH,EAAE,CAAC,EAC3BI,EAAM,aAAatH,EAAE,EAAGkH,EAAE,CAAC,EACjC,OAAO,aAAa,aAAaC,EAAKG,CAAG,EAAG,aAAaF,EAAKC,CAAG,CAAC,CACnE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,MACA,IA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EAAE,EAAG,IAAI,EAChE,OAAOE,EAAK,IAAIlI,EAAK,IAAImI,CAAK,CAAC,CAChC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EAAG,IAAI,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,KAAK,CACT,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,IAAI,CACN,EAAG,KAAK,CACT,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,CAAC,SAAS,CACX,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,OAC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,CACpB,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,GACD,CACD,CAAC,CACF,EACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,GACD,CACD,CAAC,CACF,EACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,kBACA,CACC,KACA,KACA,KACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,kBACA,CACC,KACA,KACA,KACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,kBACA,CACC,KACA,KACA,KACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,kBACA,CACC,KACA,KACA,KACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,mBACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EAAG,MAAM,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,mBACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EAAG,MAAM,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,mBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,IACA,KACD,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,KACA,CACC,EACA,mBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,IACD,CACD,EACA,IACA,KACD,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,CACF,EACA,MACA,IACA,KACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,KACA,KACA,OACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMtN,EACjB,UAAW,IAAMyG,EACjB,gBAAmB,IAAM8D,GACzB,iBAAoB,IAAMtB,GAC1B,WAAY,IAAM1H,GAClB,QAAS,IAAMtB,EACf,UAAW,IAAMC,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoN,GAAgBxN,EAAgB,GAAG,CACxCC,EACAC,EACAA,EACAA,EACAA,EACAD,EACAA,CACD,EAAGA,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAQoN,EAAKC,EAAMC,EAAKC,EAAMC,EAAQtN,IAAO,CAC1J,UACA,IAAMG,EAAYT,EAAMI,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EACrDyN,EAAI,aAAa,aAAavN,EAAG,EAAGG,EAAU,CAAC,EAAGkN,CAAI,EACtDG,EAAI,aAAa,aAAaxN,EAAG,EAAGG,EAAU,CAAC,EAAGkN,CAAI,EACtDI,EAAS,aAAaP,EAAK5M,EAAU,EACrCoN,EAAU,aAAaP,EAAM7M,EAAU,EACvCqN,EAAS,aAAaP,EAAK9M,EAAU,EACrCsN,EAASpN,GAAIiN,CAAM,EACnBI,EAASpN,GAAIgN,CAAM,EACnBK,EAAUtN,GAAIkN,CAAO,EACrBK,EAAUtN,GAAIiN,CAAO,EACrBM,EAAoB,aAAaC,GAAI,aAAaN,EAAQ,EAAE,CAAC,EAAG,CAAC,EACjEO,EAAiBjM,EAAI,aAAa2L,EAAQ,aAAa,aAAaC,EAAQN,CAAC,EAAGS,CAAiB,CAAC,EAAG,IAAI,EACzGG,EAAY,aAAaZ,EAAGW,CAAc,EAC1CE,EAAY,aAAa,aAAaZ,EAAGI,CAAM,EAAGM,CAAc,EAChEG,EAAkBpM,EAAI,aAAa6L,EAAS,aAAa,aAAaC,EAASK,CAAS,EAAGJ,CAAiB,CAAC,EAAG,IAAI,EACpHM,EAAS,aAAa,aAAaH,EAAWL,CAAO,EAAGO,CAAe,EACvEE,EAAS,aAAaH,EAAWC,CAAe,EAChDG,EAAY9O,EAAM4N,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EAC3D,OAAO5N,EAAM4O,EAAQC,CAAM,EAAE,IAAIpO,CAAS,EAAE,IAAIqO,CAAS,EAAE,IAAI9O,EAAM,GAAI,EAAE,CAAC,CAC7E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,IACA,YACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,OACA,IACA,YACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,IACA,YACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,aACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,SACA,IACA,GACD,EACA,IACA,mBACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,OAAO,CAAC,CAC5B,CACD,EACA,CACC,GACA,YACA,CACC,EACA,IACA,IACA,gBACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,IACA,IACA,QACD,EACA,IACA,gBACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,UACA,IACA,WACD,EACA,IACA,mBACD,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,UACA,CAAC,cAAe,CAAC,EAAG,OAAO,CAAC,CAC7B,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,YACA,IACA,SACD,EACA,IACA,iBACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,IACA,iBACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,SAAU,QAAQ,CACpB,EACA,KACD,EACA,CAAC,WAAW,CACb,EACA,KACD,EACA,CAAC,WAAW,CACb,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,KAAK,CAAC,CACxB,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMA,EACjB,WAAc,IAAMY,GACpB,UAAW,IAAME,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMwN,GACjB,UAAW,IAAMhM,CAClB,CACD,CAAC,GAAKpC,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4O,GAAahP,EAAgB,GAAG,CACrCC,EACAC,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIC,EAAQH,EAAQC,IAAU,CAC3I,UACA,IAAMI,EAAYT,EAAMI,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EACrD4O,EAAK,aAAa,aAAa1O,EAAG,EAAGG,EAAU,CAAC,EAAGF,CAAM,EACzD0O,EAAK,aAAa3O,EAAG,EAAGG,EAAU,CAAC,EACnCwE,EAAOnE,GAAIT,CAAK,EAChB6E,EAAOnE,GAAIV,CAAK,EAChB6O,EAAO,aAAa,aAAaF,EAAI/J,CAAI,EAAG,aAAagK,EAAI/J,CAAI,CAAC,EAClEiK,EAAO,aAAa,aAAaH,EAAI9J,CAAI,EAAG,aAAa+J,EAAIhK,CAAI,CAAC,EACxE,OAAOjF,EAAM,aAAa,aAAakP,EAAM3O,CAAM,EAAGE,EAAU,CAAC,EAAG,aAAa0O,EAAM1O,EAAU,CAAC,CAAC,CACpG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,QACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EAAG,CACF,EACA,OACA,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMT,EACjB,UAAW,IAAMc,GACjB,UAAW,IAAMC,EAClB,CACD,CAAC,GAAKZ,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiP,GAAmBrP,EAAgB,GAAG,CAC3CC,EACAC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAQ2E,EAAWsK,EAAOC,EAAYC,EAAMC,EAAiBC,EAAUnP,EAAIC,IAAW,CACnM,UACA,IAAME,EAAYT,EAAMI,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EACrDsP,EAAO1L,GAAOhE,EAAM,aAAa,aAAaM,EAAG,EAAGG,EAAU,CAAC,EAAGF,CAAM,EAAG,aAAaD,EAAG,EAAGG,EAAU,CAAC,CAAC,CAAC,EAC3GkP,EAAY,aAAaD,EAAML,CAAK,EACpCO,EAAY9J,GAAM6J,CAAS,EAC3BE,EAAWhI,GAAM8H,CAAS,EAC1BG,EAAW,aAAa/K,EAAWnE,EAAU,EAC7CmP,EAAa,aAAaR,EAAM,IAAI,EACpCS,EAAU,aAAaC,GAAgB,aAAaL,EAAWG,CAAU,CAAC,EAAGD,CAAQ,EACrFI,EAAU,aAAaD,GAAgB,aAAa,aAAaL,EAAW,CAAC,EAAGG,CAAU,CAAC,EAAGD,CAAQ,EACtGK,EAAa1J,EAAI,EAAGwJ,GAAgB,aAAaL,EAAW,IAAI,CAAC,EAAGJ,CAAe,EACnFY,EAAa3J,EAAI,EAAGwJ,GAAgB,aAAa,aAAaL,EAAW,CAAC,EAAG,IAAI,CAAC,EAAGJ,CAAe,EACpGa,EAAQ,aAAa,aAAaZ,EAAU,GAAG,EAAGU,CAAU,EAC5DG,EAAQ,aAAa,aAAab,EAAU,GAAG,EAAGW,CAAU,EAC5DG,EAAS,aAAaP,EAASK,CAAK,EACpCG,EAAS,aAAaN,EAASI,CAAK,EACpCG,EAAU,aAAa,aAAaD,EAAQD,CAAM,EAAG7H,EAAE,EACvDgI,EAAO,aAAa,aAAaD,EAAS,aAAa9K,GAAKG,GAAM,aAAa2K,EAAS9K,EAAG,CAAC,CAAC,CAAC,EAAG+C,EAAE,EACnGiI,EAAW,aAAa,aAAarB,EAAY,EAAE,EAAG,IAAI,EAC1DsB,EAAQxM,GAAW,aAAa,GAAIuM,CAAQ,EAAG,aAAa,GAAIA,CAAQ,EAAGd,CAAQ,EACzF,OAAOd,GAAWzO,EAAIC,EAAQH,EAAQ,aAAamQ,EAAQ,aAAaG,EAAME,CAAK,CAAC,CAAC,CACtF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,iBACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,IACA,YACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,YACA,IACA,YACD,CAAC,CACF,EACA,IACA,UACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,YACD,CAAC,CACF,EACA,IACA,UACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CACC,EACA,kBACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,iBACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,iBACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,YACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,YACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,IACA,OACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,IACA,OACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,KACD,CAAC,CACF,CACD,CACD,EA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T,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,gBACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,SACD,CACD,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,QAAQ,CACV,EAAG,CACF,EACA,UACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,gBACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,QAAQ,CACV,EAAG,CACF,EACA,UACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,gBACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,QAAQ,CACV,EAAG,CACF,EACA,UACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CAAC,EAAG,MAAM,CAAC,CACb,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,cAAc,CAChB,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,eACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,UACD,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,UACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMjS,EACjB,cAAiB,IAAMmR,GACvB,UAAW,IAAMjR,EACjB,OAAU,IAAMkR,GAChB,UAAW,IAAMtQ,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMwB,EACjB,aAAc,IAAMyB,EACrB,CACD,CAAC,GAAK7D,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+R,GAAcnS,EAAgB,GAAG,CACtCC,EACAC,EACAA,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIC,EAAQ4R,EAAUC,EAAYC,IAAa,CAC5J,UACA,IAAMhJ,EAAI,aAAa8I,EAAUvR,EAAU,EACrCqB,EAAMjC,EAAMc,GAAIuI,CAAC,EAAGtI,GAAIsI,CAAC,CAAC,EAC1BlH,EAAInC,EAAM,aAAa,aAAaM,EAAG,EAAG,EAAE,EAAGC,CAAM,EAAG,aAAaD,EAAG,EAAG,EAAE,CAAC,EAC9EgS,EAAOpR,GAAIiB,EAAGF,CAAG,EACjBsQ,EAAM,aAAa,GAAI,aAAa,aAAahS,EAAQiC,EAAIP,EAAI,CAAC,CAAC,EAAGO,EAAIP,EAAI,CAAC,CAAC,CAAC,EACjFiF,EAAI,aAAa,aAAaoL,EAAM,aAAa,EAAGC,CAAG,CAAC,EAAG,EAAE,EAC7DC,EAAM1M,GAAM,aAAaoB,EAAG3E,EAAI6P,EAAY,CAAC,CAAC,CAAC,EAC/CK,EAAS,aAAa,aAAa5K,GAAM,aAAa2K,EAAK,EAAE,CAAC,EAAG,CAAC,EAAG,CAAC,EACtEtQ,EAAOlC,EAAM,CAACiC,EAAI,EAAGA,EAAI,CAAC,EAC1ByQ,EAAU,aAAa,GAAI,aAAa,aAAanS,EAAQiC,EAAIP,EAAI,CAAC,CAAC,EAAGO,EAAIP,EAAI,CAAC,CAAC,CAAC,EACrF0Q,EAAQ,aAAa,aAAaN,EAAU,aAAa,KAAMK,CAAO,CAAC,EAAGD,CAAM,EAChFG,EAAIzQ,EAAE,IAAID,EAAK,IAAIyQ,CAAK,CAAC,EAC/B,OAAO3S,EAAM,aAAa,aAAa4S,EAAE,EAAGrS,CAAM,EAAG,EAAE,EAAG,aAAaqS,EAAE,EAAG,EAAE,CAAC,CAChF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,GAAG,CACL,EAAG,CACF,EACA,UACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,IAAK,KAAK,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,GAAG,CAAC,CACxB,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,SACD,CACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,OAAO,CACT,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMhS,GACpB,UAAW,IAAMZ,EACjB,UAAW,IAAMc,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMG,GACjB,UAAW,IAAMsB,EACjB,YAAa,IAAMsD,GACnB,UAAW,IAAMvD,EACjB,YAAa,IAAMsF,EACpB,CACD,CAAC,GAAK1H,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0S,GAAc9S,EAAgB,GAAG,CACtCC,EACAC,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIC,EAAQF,EAAOuN,IAAW,CAC3I,UACA,IAAMjN,EAAW,aAAaN,EAAOO,EAAU,EACzCqE,EAAOnE,GAAIH,CAAQ,EACnBuE,EAAOnE,GAAIJ,CAAQ,EACnBmS,EAAK,aAAaxS,EAAG,EAAGC,CAAM,EAC9BwS,EAAKzS,EAAG,EACR0S,EAAK,aAAaF,EAAI,aAAavS,EAAQ,EAAE,CAAC,EAC9C0S,EAAK,aAAaF,EAAI,EAAE,EACxBG,EAAa,aAAa,aAAaF,EAAI/N,CAAI,EAAG,aAAagO,EAAI/N,CAAI,CAAC,EACxEiO,EAAa,aAAa,aAAa,aAAaH,EAAI9N,CAAI,EAAG,EAAE,EAAG,aAAa+N,EAAIhO,CAAI,CAAC,EAC1FmO,EAAS,aAAaD,EAAYvF,CAAM,EACxCyF,EAAM,aAAa,aAAaH,EAAYjO,CAAI,EAAG,aAAamO,EAAQlO,CAAI,CAAC,EAC7EoO,EAAM,aAAa,aAAaJ,EAAYhO,CAAI,EAAG,aAAakO,EAAQnO,CAAI,CAAC,EACnF,OAAOjF,EAAM,aAAa,aAAaqT,EAAK9S,CAAM,EAAG,EAAE,EAAG,aAAa+S,EAAK,EAAE,CAAC,CAChF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,aACA,IACA,MACD,EACA,IACA,CACC,EACA,SACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,aACA,IACA,MACD,EACA,IACA,CACC,EACA,SACA,IACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAM1S,GACpB,UAAW,IAAME,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMf,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoT,GAAaxT,EAAgB,GAAG,CACrCE,EACAA,EACAA,EACAA,EACAA,EACAD,EACAC,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACqT,EAAOnT,EAAO0E,EAAWwK,EAAME,EAAUnP,EAAIC,IAAW,CACrK,UACA,IAAMI,EAAW,aAAaN,EAAOO,EAAU,EACzCqE,EAAOnE,GAAIH,CAAQ,EACnBuE,EAAOnE,GAAIJ,CAAQ,EACnB8S,EAAclR,EAAIhC,EAAQ,CAAC,EAC3BuS,EAAK,aAAaxS,EAAG,EAAGC,CAAM,EAC9BwS,EAAKzS,EAAG,EACR0S,EAAK,aAAaF,EAAI,aAAavS,EAAQ,EAAE,CAAC,EAC9C0S,EAAK,aAAaF,EAAI,EAAE,EACxBG,EAAa,aAAa,aAAaF,EAAI/N,CAAI,EAAG,aAAagO,EAAI/N,CAAI,CAAC,EACxEwO,EAAW5N,GAAM,aAAa,aAAaoN,EAAYM,CAAK,EAAGC,CAAW,CAAC,EAC3E1D,EAAa,aAAaR,EAAM,IAAI,EACpCoE,EAAe1D,GAAgB,aAAayD,EAAU3D,CAAU,CAAC,EACjE6D,EAAW3D,GAAgB,aAAa,aAAayD,EAAU3D,CAAU,EAAG,IAAI,CAAC,EACjF8D,EAAa,aAAa,aAAapE,EAAUmE,CAAQ,EAAG,EAAE,EACpE,OAAOf,GAAYvS,EAAIC,EAAQF,EAAO,aAAa,aAAasT,EAAcE,CAAU,EAAG9O,CAAS,CAAC,CACtG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,aACA,IACA,OACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,eACA,CACC,EACA,kBACA,CAAC,CACA,EACA,WACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,WACA,IACA,YACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,WACA,IACA,UACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,eACA,IACA,YACD,EACA,IACA,WACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,cACA,CACC,KACA,SACA,QACA,QACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMnE,GACpB,UAAW,IAAME,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMwB,EACjB,YAAa,IAAMuD,GACnB,gBAAmB,IAAMmK,GACzB,YAAe,IAAM4C,EACtB,CACD,CAAC,GAAK1S,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2T,GAAe/T,EAAgB,GAAG,CACvCC,EACAC,EACAA,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIyT,EAAUxT,IAAW,CACtI,UACA,IAAMyT,EAASzT,EAAS,EAClB0T,EAAS1R,EAAIZ,EAAO,aAAaoS,EAAUxT,CAAM,EAAGwT,EAAUC,CAAM,EAAG,CAAC,EACxEE,EAAS3R,EAAIZ,EAAOoS,EAAU,aAAaA,EAAUxT,CAAM,EAAGyT,CAAM,EAAG,CAAC,EACxEG,EAAarO,GAAM,aAAaxF,EAAG,EAAG2T,CAAM,CAAC,EAC7CG,EAAatO,GAAM,aAAaxF,EAAG,EAAG4T,CAAM,CAAC,EACnD,OAAOlU,EAAM,aAAa,aAAamU,EAAY,EAAE,EAAGF,CAAM,EAAG,aAAa,aAAaG,EAAY,EAAE,EAAGF,CAAM,CAAC,CACpH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CACC,CACC,EACA,WACA,IACA,QACD,EACA,WACA,QACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CACC,WACA,CACC,EACA,WACA,IACA,QACD,EACA,QACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM3R,EACjB,aAAc,IAAMZ,EACpB,YAAa,IAAMmE,GACnB,UAAW,IAAM9F,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkU,GAAsBtU,EAAgB,GAAG,CAACC,EAAOA,CAAK,EAAGA,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIgU,IAAS,CACtL,UAEA,IAA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D,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,QACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,QACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM1M,EACjB,UAAW,IAAMvC,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2U,GAAsB/U,EAAgB,GAAG,CAC9CC,EACA4U,EACA3U,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBG,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIuU,EAAKtU,EAAQoK,EAAQwH,IAAa,CACnJ,UACA,IAAM9I,EAAI9G,EAAIsS,EAAI,EAAG,IAAI,EACnBE,EAAM7T,GAAIhB,EAAM,aAAa2U,EAAI,EAAGxL,CAAC,EAAG,aAAawL,EAAI,EAAGxL,CAAC,EAAG,aAAawL,EAAI,EAAGxL,CAAC,CAAC,EAAGnJ,EAAM,MAAO,MAAO,KAAK,CAAC,EACnH8U,EAAS,aAAa,aAAa,aAAa,aAAaD,EAAK,EAAE,EAAG,CAAC,EAAGF,EAAI,CAAC,EAAGlK,CAAM,EACzFhK,EAAW,aAAawR,EAAUvR,EAAU,EAC5CoO,EAAK,aAAa,aAAagG,EAAQlU,GAAIH,CAAQ,CAAC,EAAGJ,CAAM,EAC7D0O,EAAK,aAAa+F,EAAQjU,GAAIJ,CAAQ,CAAC,EAC7C,OAAOX,EAAM,aAAaM,EAAG,EAAG0O,CAAE,EAAG,aAAa1O,EAAG,EAAG2O,CAAE,CAAC,CAC5D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,GACD,CACD,CACD,EAAG,CACF,EACA,UACA,CACC,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,CACb,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,UAA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CA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,cACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACA,UACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,IACA,CACC,EACA,YACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,SACA,IACA,WACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,UAAU,CACZ,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,SAAS,CACX,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,QACA,QACA,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,CAAC,SAAS,CACX,EACA,IACA,CACC,EACA,UACA,CAAC,UAAW,UAAU,CACvB,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,OAAO,CAAC,CAC3B,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,YACD,EACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,MACD,EACA,IACA,QACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,QACA,IACA,YACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,QACD,EAAG,CACF,EACA,OACA,IACA,MACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CAAC,CAAC,IAAK,CACN,YAAe,cACf,OAAU,SACV,MAAS,OACV,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,GAAM,IAAM3N,GACZ,UAAW,IAAM5H,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAMf,EACjB,YAAa,IAAM6H,GACnB,UAAW,IAAMtF,EACjB,UAAW,IAAMC,EACjB,UAAW,IAAMiE,EACjB,WAAY,IAAM6D,GAClB,UAAW,IAAMgM,GACjB,WAAc,IAAMrB,EACrB,CACD,CAAC,GAAK9U,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwW,GAAiB5W,EAAgB,GAAG,CACzCE,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkW,EAAOO,EAAe7R,EAAWqQ,IAAa,CACzJ,UACA,IAAMyB,EAAUC,GAAI,aAAaT,EAAOA,CAAK,EAAG,CAAC,EAC3CU,EAAK1T,GAAK,aAAa,EAAGwT,CAAO,CAAC,EAClCG,EAAO,aAAa,aAAaJ,EAAelO,EAAE,EAAG,GAAG,EACxDuO,EAAKlW,GAAIiW,CAAI,EACbE,EAAKpW,GAAIkW,CAAI,EACbG,EAAQ5U,EAAI,aAAa,aAAa8T,EAAOY,CAAE,EAAG,aAAaF,EAAIG,CAAE,CAAC,EAAG,CAAC,EAC1EE,EAAYC,GAAK,aAAa,EAAG,aAAajC,EAAU,CAAC,CAAC,CAAC,EAC3DkC,EAAUhB,GAAI,aAAa,EAAGS,CAAE,EAAG,CAAC,EACpCQ,EAAa,aAAa,IAAK,aAAa,IAAKD,CAAO,CAAC,EAC/D,OAAO,aAAa,aAAahB,GAAIa,EAAOC,CAAS,EAAGG,CAAU,EAAGxS,CAAS,CAC/E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,OACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,SACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,gBACA,IACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,SACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,QAAS,WAAW,CACtB,EACA,IACA,YACD,EACA,IACA,WACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM+R,GACjB,WAAY,IAAMzT,GAClB,GAAM,IAAMqF,GACZ,UAAW,IAAM3H,GACjB,UAAW,IAAMD,GACjB,UAAW,IAAMyB,EACjB,WAAY,IAAM8U,GAClB,UAAW,IAAMf,EAClB,CACD,CAAC,GAAKnW,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqX,IAAgC,WAAW,uBAA0BnO,GAAMA,IAAI6L,GAAO,CAC3F,OAAQlV,EACR,MAAOC,EACP,eAAgBA,EAChB,aAAcA,EACd,UAAWA,EACX,UAAWA,EACX,UAAWA,EACX,SAAUA,CACX,CAAC,EAAG,cAAc,EACZwX,GAAe1X,EAAgB,GAAG,CACvCC,EACAC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGuX,EAAY,GAAoBrX,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACG,EAAIC,EAAQmX,EAASC,EAASC,EAAMC,EAAMlN,EAAQ7G,IAAW,CACjL,UACA,IAAMgU,EAAK9X,EAAM,aAAaM,EAAG,EAAGC,CAAM,EAAGD,EAAG,CAAC,EAC3CyX,EAAU/X,EAAM,aAAa0X,EAASnX,CAAM,EAAGoX,CAAO,EACtDK,EAAUhY,EAAM,aAAa4X,EAAMrX,CAAM,EAAGsX,CAAI,EAAE,IAAIE,CAAO,EAC7DE,EAAIjU,GAAOgU,CAAO,EAClBE,EAAOF,EAAQ,IAAI,aAAa,EAAGC,CAAC,CAAC,EACrC/Q,EAAIhG,GAAI4W,EAAG,IAAIC,CAAO,EAAGG,CAAI,EAC7BC,EAAO,aAAaxN,EAAQsN,CAAC,EAC7BG,EAAQD,EACRE,EAAI9V,EAAI,aAAauB,EAAQmU,CAAC,EAAG,IAAI,EACrCK,EAAW,aAAaH,EAAME,CAAC,EAC/BE,EAAI,aAAa,aAAarR,EAAGkR,CAAK,EAAGC,CAAC,EAC1C7P,EAAQgQ,GAAK5V,EAAM2V,EAAG,EAAG,CAAC,CAAC,EAC3BE,EAAS,aAAalX,GAAK,EAAGgX,CAAC,EAAGhX,GAAKgX,EAAG,CAAC,CAAC,EAC5CG,EAAQnX,GAAKiH,EAAO8P,CAAQ,EAC5BK,EAAQ,aAAaR,EAAM,aAAaE,EAAG7P,CAAK,CAAC,EACjDoQ,EAAUd,EAAG,IAAII,EAAK,IAAI,aAAaS,EAAOzR,CAAC,CAAC,CAAC,EACjD2R,EAAS7Y,EAAM,aAAa4Y,EAAQ,EAAGrY,CAAM,EAAGqY,EAAQ,CAAC,EACzDE,EAAe,aAAa,aAAa,aAAavX,GAAK,EAAGsX,EAAO,CAAC,EAAGtX,GAAKsX,EAAO,EAAG,CAAC,CAAC,EAAGtX,GAAK,EAAGsX,EAAO,CAAC,CAAC,EAAGtX,GAAKsX,EAAO,EAAG,CAAC,CAAC,EAClIE,EAAW,aAAa,EAAGjY,GAAI8B,EAAM0V,EAAU,EAAGU,EAAO,CAAC,CAAC,EAC3DC,EAAY,aAAaZ,EAAGU,CAAQ,EACpCG,EAAY3W,EAAI,aAAa8V,EAAG,aAAaY,EAAW,EAAE,CAAC,EAAG,IAAI,EAClEE,EAAiB,aAAajS,EAAGkR,CAAK,EACtCgB,EAAY7W,EAAI,aAAa0W,EAAW,GAAG,EAAG,IAAI,EACxD,OAAOzB,GAAa,CACnB,OAAAqB,EACA,MAAArQ,EACA,eAAA2Q,EACA,aAAc,aAAaf,EAAOlR,CAAC,EACnC,UAAAgS,EACA,UAAAE,EACA,UAAWhV,GAAW,aAAagU,EAAO,KAAK,EAAG,aAAaA,EAAO,KAAK,EAAGlR,CAAC,EAC/E,SAAU,aAAa,aAAauR,EAAQC,CAAK,EAAGI,CAAY,CACjE,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,IACA,QACD,EAAG,SAAS,CACb,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,QACD,EAAG,MAAM,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,SAAS,CACX,EAAG,MAAM,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,SACA,IACA,GACD,CACD,EACA,CACC,GACA,QACA,MACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,IACA,GACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,WACA,CACC,EACA,OACA,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,OACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,GAAG,CACf,EACA,IACA,CACC,EACA,WACA,CAAC,IAAK,CAAC,EAAG,GAAG,CAAC,CACf,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,CAAC,QAAS,UAAU,CACrB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,QACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,SACA,GACD,CAAC,CACF,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,CACV,EACA,SACA,GACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,WACA,CAAC,EAAG,GAAG,EACP,SACD,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,IACA,IACA,UACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,IACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,eACA,CACC,EACA,QACA,IACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,iBACA,CACC,CACC,EACA,QACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,QAAQ,CACb,EACA,GACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,SACA,IACA,OACD,EACA,IACA,cACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,eACA,CAAC,CAAC,IAAK,CACN,OAAU,SACV,MAA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CAAO,EAAG,aAAaC,EAASA,CAAO,CAAC,EACtFE,EAAc,aAAa,EAAGtX,GAAW,IAAK,EAAGqX,CAAQ,CAAC,EAC1D/X,EAAIL,GAAKd,EAAItC,EAAI,CAAC,EAAG,aAAa,EAAGwb,CAAQ,CAAC,CAAC,EAC/CE,EAAc,aAAa,EAAG,aAAajY,EAAGwX,CAAK,CAAC,EACpDtM,EAAS,aAAa,aAAa,aAAa2M,EAASI,CAAW,EAAG7X,CAAM,EAAG,CAAC,EACjF+K,EAAS,aAAa,aAAa,aAAa2M,EAASG,CAAW,EAAG7X,CAAM,EAAG,CAAC,EACjF8X,EAAe,aAAa,aAAahN,EAAQrO,CAAM,EAAG4a,CAAO,EACjEU,EAAe,aAAahN,EAAQuM,CAAO,EAC3CU,EAASC,GAAU7b,EAAMqb,EAASC,EAAS9X,CAAC,CAAC,EACnD,OAAOqX,GAAY,CAClB,GAAI/a,EAAM4b,EAAcC,CAAY,EACpC,SAAUH,EACV,OAAAI,CACD,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,QACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,IACA,SACD,EACA,IACA,CACC,EACA,UACA,IACA,SACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,UACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,IACA,aACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,IACA,aACD,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,SACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,UACA,UACA,GACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,cACA,CAAC,CAAC,IAAK,CACN,GAAM,CACL,EACA,UACA,CAAC,eAAgB,cAAc,CAChC,EACA,SAAY,cACZ,OAAU,QACX,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,iBAAkB,IAAM1X,GACxB,WAAY,IAAMf,GAClB,UAAW,IAAMd,EACjB,QAAS,IAAMtC,EACf,gBAAiB,IAAM8b,GACvB,UAAW,IAAM7b,EACjB,YAAe,IAAM6a,GACrB,UAAW,IAAM/a,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6b,GAAWjc,EAAgB,GAAG,CACnCG,EACAF,EACAC,EACAA,CACD,EAAGA,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC2b,EAAQG,EAAUlX,EAAWqQ,IAAa,CACrJ,UACA,IAAM8G,EAAUhc,EAAM,EAAG,EAAG,CAAC,EACvBic,EAAe,aAAa,EAAG,aAAa,EAAG,aAAa,EAAG/G,CAAQ,CAAC,CAAC,EACzEkC,EAAUhB,GAAI,aAAa,EAAG/T,EAAIrB,GAAI4a,EAAQI,CAAO,EAAGjc,EAAI,CAAC,CAAC,CAAC,EAAGkc,CAAY,EAC9EC,EAAc,aAAa,aAAaH,EAAS,EAAG,EAAE,EAAG,CAAC,EAC1DI,EAAc,aAAa,aAAa,aAAa,EAAGJ,EAAS,CAAC,EAAG,EAAE,EAAG,CAAC,EAC3EK,EAAYP,GAAU/b,EAAM,aAAa8b,EAAO,EAAG,IAAI,EAAG,aAAaA,EAAO,EAAG,IAAI,CAAC,CAAC,EACvFS,EAAeR,GAAU/b,EAAM,aAAaoc,EAAa,IAAI,EAAG,aAAaC,EAAa,IAAI,CAAC,CAAC,EAChGG,EAAkBlG,GAAI/T,EAAItC,EAAI,CAAC,EAAGiB,GAAIob,EAAWC,CAAY,CAAC,EAAGtc,EAAI,CAAC,CAAC,EAC7E,OAAO,aAAa,aAAa,aAAaqX,EAASkF,CAAe,EAAGzX,CAAS,EAAG,CAAC,CACvF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,SAAU,SAAS,CACrB,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EAAG,cAAc,CAClB,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,YACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,QAAQ,CACb,EAAG,CACF,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CAAC,EAAG,QAAQ,CACb,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,CAAC,EAAG,QAAQ,CACb,EAAG,CACF,EACA,cACA,IACA,CAAC,EAAG,QAAQ,CACb,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,CACF,EACA,UACA,CAAC,YAAa,cAAc,CAC7B,CAAC,CACF,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,UACA,CAAC,iBAAkB,CAClB,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,IACA,iBACD,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM7E,EACjB,UAAW,IAAMoW,GACjB,UAAW,IAAM/T,EACjB,UAAW,IAAMrB,GACjB,QAAS,IAAMjB,EACf,gBAAiB,IAAM8b,GACvB,UAAW,IAAM/b,CAClB,CACD,CAAC,GAAKG,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsc,GAAe1c,EAAgB,GAAG,CACvC6U,EACA1U,EACAD,EACAA,CACD,EAAG2U,CAAK,GAAoBzU,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACuc,EAAUC,EAAYC,EAAKC,IAAa,CACrJ,UACA,OAAOjI,EAAM,aAAa8H,EAAS,EAAG,aAAaC,EAAW,EAAGC,CAAG,CAAC,EAAG,aAAaF,EAAS,EAAG,aAAaC,EAAW,EAAGC,CAAG,CAAC,EAAG,aAAaF,EAAS,EAAG,aAAaC,EAAW,EAAGC,CAAG,CAAC,EAAG,aAAaF,EAAS,EAAGG,CAAQ,CAAC,CACjO,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,UACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,IACA,IACA,IACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,UAAW,IAAMjI,CAAM,CACrC,CAAC,GAAKzU,EAAE,GAAG,CAAC,CAAC,CAAC,EACd,SAAS2c,GAAaC,EAAQzc,EAAIsN,EAAQ,CACzC,IAAMoP,EAAKD,EAAOzc,EAAG,IAAIsN,CAAM,CAAC,EAC1BqP,EAAKF,EAAOzc,CAAE,EACd4c,EAAKH,EAAOzc,EAAG,IAAIsN,EAAO,IAAI,EAAE,CAAC,CAAC,EACxC,OAAOuP,GAAKH,EAAG,OAAO,GAAG,EAAGC,EAAG,OAAO,GAAG,EAAGC,EAAG,OAAO,GAAG,EAAGD,EAAG,OAAO,GAAG,CAAC,CAC3E,CACA,SAASG,GAAeL,EAAQzc,EAAI+c,EAAU,CAC7C,OAAIA,IAAa,EAAUN,EAAOzc,CAAE,EAAE,IAAIgd,EAAKC,GAAqB,sBAAuB,CAACjd,CAAE,CAAC,CAAC,EACrEyc,EAAvBM,IAAa,EAAiBC,EAAKE,GAAc,eAAgB,CAACld,CAAE,CAAC,EACrE+c,IAAa,EAAiBC,EAAKG,GAAY,aAAc,CAACnd,CAAE,CAAC,EACvDgd,EAAKI,GAAa,cAAe,CAACpd,CAAE,CAAC,CAFuB,CAG3E,CClhVA,IAAIqd,GAAaC,GACbC,GAAsB,GACpBC,GAAwB,KAE9B,IAAIC,GAAwB,GACxBC,GAAsB,cACtBC,GAAgB,cACdC,GAAkB,cACxB,SAASC,IAAkBC,EAAY,CACtC,IAAMC,EAAQD,EAAa,EACrBE,EAAOF,EAAa,EAAI,EACxBG,EAAU,CAAC,EACbC,EAAM,EACV,QAASC,EAAI,CAACL,EAAYK,GAAKL,EAAYK,IAAK,CAC/C,IAAMC,EAAI,KAAK,IAAI,EAAED,EAAIA,IAAM,EAAIJ,EAAQA,EAAM,EACjDE,EAAQ,KAAKG,CAAC,EACdF,GAAOE,CACR,CACA,QAASD,EAAI,EAAGA,EAAIH,EAAMG,IAAKF,EAAQE,CAAC,GAAKD,EAC7C,OAAOD,CACR,CACA,SAASI,GAAsBP,EAAYC,EAAO,CACjD,IAAMC,EAAOF,EAAa,EAAI,EACxBQ,EAAa,KAAK,IAAI,EAAG,KAAK,IAAIR,EAAY,KAAK,KAAKC,EAAQ,CAAC,CAAC,CAAC,EACnEE,EAAU,IAAI,MAAMD,CAAI,EAAE,KAAK,CAAC,EAClCO,EAAQ,EACZ,QAAS,EAAI,CAACT,EAAY,GAAKA,EAAY,IAAK,GAAI,KAAK,IAAI,CAAC,GAAKQ,EAAY,CAC9E,IAAMF,EAAI,KAAK,IAAI,EAAE,EAAI,IAAM,EAAIL,EAAQA,EAAM,EACjDE,EAAQ,EAAIH,CAAU,EAAIM,EAC1BG,GAASH,CACV,CACA,QAAS,EAAI,EAAG,EAAIJ,EAAM,IAAKC,EAAQ,CAAC,GAAKM,EAC7C,MAAO,CACN,QAAAN,EACA,WAAAK,CACD,CACD,CACA,SAASE,KAAe,CACvB,OAAOC,GAAO,CACb,WAAYC,EACZ,WAAYC,EACZ,YAAaA,CACd,CAAC,CACF,CACA,SAASC,KAAe,CACvB,OAAOH,GAAO,CAAE,WAAYC,CAAI,CAAC,CAClC,CACA,SAASG,IAAoBf,EAAYgB,EAAcC,EAAe,CACrE,IAAMC,EAAclB,EAAa,EAAI,EAC/BmB,EAAcnB,EACdoB,EAAUV,IAAa,EACvBW,EAAUP,IAAa,EACvBQ,GAA2B,WAAW,uBAA0BC,GAAMA,IAAIC,EAAgB,gBAAgB,CAC/G,MAAO,CAAE,QAASC,GAAUZ,CAAG,CAAE,EACjC,aAAc,CAAE,eAAgBa,GAAiB9B,GAAqB,YAAY,CAAE,EACpF,QAAS,CACR,QAAS+B,GAAQd,EAAKK,CAAW,EACjC,OAAQ,UACT,EACA,OAAQ,CAAE,QAASE,CAAQ,CAC5B,CAAC,EAAG,SAAS,EACPQ,GAA2B,WAAW,uBAA0BL,GAAMA,IAAIC,EAAgB,gBAAgB,CAC/G,IAAK,CAAE,eAAgBE,GAAiB9B,GAAqB,WAAW,CAAE,EAC1E,OAAQ,CAAE,eAAgB8B,GAAiB7B,GAAe,YAAY,CAAE,EACxE,QAAS,CACR,QAAS8B,GAAQd,EAAKK,CAAW,EACjC,OAAQ,UACT,EACA,OAAQ,CAAE,QAASG,CAAQ,CAC5B,CAAC,EAAG,SAAS,EACb,MAAO,CACN,QAAAC,EACA,QAAAM,EACA,QAASJ,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACtJ,UACA,IAAMC,EAAIX,EAAQ,EAAE,OACdY,EAAU,aAAa,aAAa,aAAa,aAAarB,EAAIkB,CAAE,EAAG,EAAE,EAAGE,EAAE,UAAU,EAAGjB,CAAY,EAAG,EAAE,EAC5GmB,EAAU,aAAa,aAAa,aAAa,aAAatB,EAAImB,CAAE,EAAG,EAAE,EAAGC,EAAE,WAAW,EAAGhB,CAAa,EAAG,EAAE,EAC9GmB,EAAWxB,EAAI,aAAaqB,EAAE,WAAY,CAAC,CAAC,EAC5CI,EAAWzB,EAAI,aAAaqB,EAAE,YAAa,CAAC,CAAC,EAC7CK,EAAW1B,EAAI2B,GAAML,CAAO,CAAC,EAC7BM,EAAWC,EAAM7B,EAAI2B,GAAMJ,CAAO,CAAC,EAAG,EAAGE,CAAQ,EACjDK,EAAKT,EAAE,WACPU,EAAQ,aAAa,aAAaD,EAAI,CAAC,EAAG,CAAC,EAC7CtC,EAAMwC,EAAM,EAAG,EAAG,EAAG,CAAC,EAC1B,QAASvC,EAAI,EAAGA,EAAIsC,EAAOtC,IAAK,CAC/B,IAAMwC,EAAM,aAAaxC,EAAGqC,CAAE,EACxBI,EAAUL,EAAM,aAAaH,EAAUO,CAAG,EAAG,EAAGT,CAAQ,EACxDW,EAAQC,GAAY1B,EAAQ,EAAE,MAAO2B,GAAMpB,EAAIiB,CAAO,EAAGjB,EAAIW,CAAQ,CAAC,EAAG,CAAC,EAChFpC,EAAMA,EAAI,IAAI2C,EAAM,IAAIzB,EAAQ,EAAE,QAAQ,aAAauB,EAAK1B,CAAW,CAAC,CAAC,CAAC,CAC3E,CACA+B,GAAa5B,EAAQ,EAAE,aAAc2B,GAAMlB,EAAIC,CAAE,EAAG5B,CAAG,CACxD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,eACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,YACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,WACA,IACA,KACD,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,SAAS,CACX,EAAG,CACF,EACA,QACA,CAAC,UAAU,CACZ,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,cACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,KACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAW,IAAMkB,EACjB,QAAS,IAAMT,EACf,aAAgB,IAAMG,EACtB,cAAiB,IAAMC,EACvB,QAAS,IAAML,EACf,YAAa,IAAM2B,GACnB,YAAa,IAAME,EACnB,UAAW,IAAMG,EACjB,kBAAmB,IAAMI,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMpB,EACf,YAAe,IAAMV,EACrB,mBAAoB,IAAM+B,EAC3B,CACD,CAAC,GAAKpB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,EACrC,QAASN,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACtJ,UACA,IAAMmB,EAAKvB,EAAQ,EAAE,OAAO,WACtBe,EAAQ,aAAa,aAAaQ,EAAI,CAAC,EAAG,CAAC,EAC3CC,EAAMxC,EAAIoB,CAAE,EACd5B,EAAMwC,EAAM,EAAG,EAAG,EAAG,CAAC,EAC1B,QAASvC,EAAI,EAAGA,EAAIsC,EAAOtC,IAAK,CAC/B,IAAMwC,EAAM,aAAaxC,EAAG8C,CAAE,EACxBE,EAAUZ,EAAM,aAAaW,EAAKP,CAAG,EAAG,EAAG,aAAa5B,EAAe,CAAC,CAAC,EACzE8B,EAAQC,GAAYpB,EAAQ,EAAE,IAAKqB,GAAMlB,EAAIF,EAAIwB,CAAO,CAAC,CAAC,EAChEjD,EAAMA,EAAI,IAAI2C,EAAM,IAAInB,EAAQ,EAAE,QAAQ,aAAaiB,EAAK1B,CAAW,CAAC,CAAC,CAAC,CAC3E,CACA+B,GAAatB,EAAQ,EAAE,OAAQqB,GAAMlB,EAAIC,CAAE,EAAG5B,CAAG,CAClD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,QACD,EACA,YACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,MACA,IACA,KACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,gBACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,KACD,EAAG,CACF,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,SAAS,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,KACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAW,IAAMwB,EACjB,QAAS,IAAMhB,EACf,UAAW,IAAMgC,EACjB,YAAa,IAAMH,EACnB,cAAiB,IAAMxB,EACvB,kBAAmB,IAAM+B,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMpB,EACf,YAAe,IAAMV,EACrB,mBAAoB,IAAM+B,EAC3B,CACD,CAAC,GAAKpB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,EACrC,QAAAV,EACA,QAAAC,E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AG,EAAG,EAAG,CAAC,EAC1B,QAASvC,EAAI,CAACc,EAAad,GAAKc,EAAad,IAAK,CACjD,IAAMgG,EAAS,aAAa,aAAa,aAAaxF,EAAIR,CAAC,EAAG8F,CAAO,EAAGH,CAAO,EAAGC,CAAU,EACtFnD,EAAUL,EAAM7B,EAAI2B,GAAM,aAAaL,EAASmE,CAAM,CAAC,CAAC,EAAG,EAAGjE,CAAQ,EACtEW,EAAQC,GAAY1B,EAAQ,EAAE,MAAO2B,GAAMpB,EAAIiB,CAAO,EAAGjB,EAAIW,CAAQ,CAAC,EAAG,CAAC,EAChFpC,EAAMA,EAAI,IAAI2C,EAAM,IAAIzB,EAAQ,EAAE,QAAQ,aAAajB,EAAGc,CAAW,CAAC,CAAC,CAAC,CACzE,CACA+B,GAAa5B,EAAQ,EAAE,aAAc2B,GAAMlB,EAAIC,CAAE,EAAG5B,CAAG,CACxD,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,SACD,EAAG,CACF,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,EACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,eACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,aACA,IACA,uBACD,EACA,CAAC,EAAG,CACH,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,SAAS,CACX,EAAG,CACF,EACA,QACA,CAAC,UAAU,CACZ,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,cACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,OACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,GACA,UACA,CACC,IACA,aACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CAAC,EAAG,YAAY,EAChB,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,YAAY,CACjB,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,CACC,EACA,IACA,KACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,SACD,EACA,IACA,SACD,EACA,IACA,YACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,QACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,SAAS,CACX,EAAG,CACF,EACA,QACA,CAAC,UAAU,CACZ,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,SACD,EACA,CACC,EACA,IACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,cACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,KACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAW,IAAMkB,EACjB,kBAAmB,IAAM0B,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMpC,EACf,aAAgB,IAAMG,EACtB,cAAiB,IAAMC,EACvB,QAAS,IAAML,EACf,YAAa,IAAM6B,EACnB,YAAa,IAAMF,GACnB,sBAAyB,IAAM5C,GAC/B,QAAS,IAAMkC,EACf,mBAAoB,IAAMqB,GAC1B,WAAc,IAAM6C,EACpB,YAAa,IAAMK,GACnB,UAAW,IAAMxD,EACjB,YAAe,IAAMzB,EACrB,QAAW,IAAM6E,CAClB,CACD,CAAC,GAAKlE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,EACrC,QAASN,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACtJ,UACA,IAAMiE,EAAajD,GAAYpB,EAAQ,EAAE,QAASqB,GAAMlB,EAAIC,CAAE,CAAC,EAAE,EACjE,GAAIiE,EAAatG,GAAuB,CACvC,IAAMoD,EAAQC,GAAYpB,EAAQ,EAAE,IAAKqB,GAAMlB,EAAIC,CAAE,CAAC,EACtDkB,GAAatB,EAAQ,EAAE,OAAQqB,GAAMlB,EAAIC,CAAE,EAAGe,CAAK,CACpD,KAAO,CACN,IAAMuD,EAAK1F,EAAIoB,CAAE,EACXuE,EAAiB,aAAaN,EAAYrE,EAAQ,EAAE,OAAO,MAAM,EACjE4E,EAAUT,EAAa,aAAaK,GAAM,aAAa,WAAYA,GAAM,aAAa,aAAavF,EAAIkB,CAAE,EAAG,SAAS,EAAG,aAAalB,EAAImB,CAAE,EAAG,SAAS,CAAC,CAAC,CAAC,CAAC,EAAG,EAAE,EAAInB,EAAI,CAAC,EAC3KT,EAAMwC,EAAM,EAAG,EAAG,EAAG,CAAC,EAC1B,QAASvC,EAAI,CAACc,EAAad,GAAKc,EAAad,IAAK,CACjD,IAAMgG,EAAS,aAAa,aAAa,aAAaxF,EAAIR,CAAC,EAAGmG,CAAO,EAAGR,CAAO,EAAGO,CAAc,EAC1FlD,EAAUZ,EAAM,aAAa6D,EAAI1F,EAAI2B,GAAM8D,CAAM,CAAC,CAAC,EAAG,EAAG,aAAapF,EAAe,CAAC,CAAC,EACvF8B,EAAQC,GAAYpB,EAAQ,EAAE,IAAKqB,GAAMlB,EAAIF,EAAIwB,CAAO,CAAC,CAAC,EAChEjD,EAAMA,EAAI,IAAI2C,EAAM,IAAInB,EAAQ,EAAE,QAAQ,aAAavB,EAAGc,CAAW,CAAC,CAAC,CAAC,CACzE,CACA+B,GAAatB,EAAQ,EAAE,OAAQqB,GAAMlB,EAAIC,CAAE,EAAG5B,CAAG,CAClD,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,aACA,CACC,EACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,SACD,EAAG,CACF,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,EACA,GACD,CACD,EAAG,CACF,GACA,CACC,EACA,aACA,IACA,uBACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,QACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,KACD,EAAG,CACF,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EAAG,CACF,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,UACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,OACD,CACD,CAAC,CAAC,EACF,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,aACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,QACD,EACA,QACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,IACA,aACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CAAC,EAAG,YAAY,EAChB,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,YAAY,CACjB,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,CACC,EACA,IACA,KACA,aACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,SACD,EACA,IACA,SACD,EACA,IACA,gBACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,gBACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,KACD,EAAG,CACF,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,SAAS,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA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ACC,EACA,YACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,GACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,cACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,cACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,IACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,IACA,IACD,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,kBACA,CACC,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CAAC,EAAG,QAAQ,CAAC,CACf,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,KACD,EAAG,CACF,EACA,UACA,CACC,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,QAAQ,CACb,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,WACD,EACA,IACA,MACD,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,CAAC,YAAa,CACb,EACA,MACA,IACA,WACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,MAAO,CAAC,EAAG,QAAQ,CAAC,CACtB,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,KACD,EACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,CACC,EACA,SACA,GACD,EACA,IACA,MACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMrJ,EACf,UAAW,IAAMgC,EACjB,QAAS,IAAM/B,EACf,YAAa,IAAM4B,EACnB,kBAAmB,IAAMO,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMpB,EACf,UAAW,IAAMoG,GACjB,UAAW,IAAMC,EACjB,UAAW,IAAMQ,CAClB,CACD,CAAC,GAAK5G,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,sBAAsB,EACxCoI,GAAgB,cACpB,SAASC,GAAuBnJ,EAAcC,EAAemJ,EAAY,CACxE,IAAMC,GAA0B,WAAW,uBAA0B,GAAM,IAAI1J,GAAO,CACrF,UAAWE,EACX,KAAMA,EACN,GAAG6G,EACJ,CAAC,EAAG,QAAQ,EACN4C,GAA0B,WAAW,uBAA0B,GAAM,IAAI9I,EAAgB,gBAAgB,CAC9G,aAAc,CAAE,QAASC,GAAUZ,CAAG,CAAE,EACxC,UAAW,CAAE,eAAgBa,GAAiBwI,GAAe,YAAY,CAAE,EAC3E,QAAS,CAAE,eAAgBxI,GAAiB5B,GAAiB,YAAY,CAAE,EAC3E,OAAQ,CAAE,QAASuK,CAAO,CAC3B,CAAC,EAAG,QAAQ,EACZ,MAAO,CACN,OAAAC,EACA,OAAQ9I,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACrJ,UACA,IAAMC,EAAIqI,EAAO,EAAE,OACbC,EAASxB,GAAqBuB,EAAO,EAAE,aAAcvI,EAAIC,EAAIgH,EAAM/G,EAAE,WAAYA,EAAE,WAAW,EAAG+G,EAAMhI,EAAcC,CAAa,EAAGgB,EAAE,SAAS,EACtJiB,GAAaoH,EAAO,EAAE,UAAWrH,GAAMlB,EAAIC,CAAE,EAAGuI,CAAM,EACtDrH,GAAaoH,EAAO,EAAE,QAASrH,GAAMlB,EAAIC,CAAE,EAAGY,EAAMX,EAAE,KAAM,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,uBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,cACD,EACA,KACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,YACD,EAAG,CACF,EACA,IACA,aACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,eAAgB,eAAe,CACjC,EACA,CACC,EACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,QACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,MACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMqI,EAChB,qBAAwB,IAAMvB,GAC9B,UAAW,IAAMC,EACjB,aAAgB,IAAMhI,EACtB,cAAiB,IAAMC,EACvB,mBAAoB,IAAMiC,GAC1B,UAAW,IAAMD,GACjB,UAAW,IAAML,CAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAMsI,CAAU,EAChC,OAAAC,CACD,CACD,CACA,SAASG,IAA0BxJ,EAAcC,EAAemJ,EAAYtC,EAAS,CACpF,IAAMuC,GAA0B,WAAW,uBAA0B9I,GAAMA,IAAIZ,GAAO,CACrF,UAAWE,EACX,GAAG6G,GACH,GAAGC,EACJ,CAAC,EAAG,QAAQ,EACN2C,GAA0B,WAAW,uBAA0B/I,GAAMA,IAAIC,EAAgB,gBAAgB,CAC9G,aAAc,CAAE,QAASC,GAAUZ,CAAG,CAAE,EACxC,OAAQ,CAAE,QAASY,GAAUZ,CAAG,CAAE,EAClC,UAAW,CAAE,eAAgBa,GAAiBwI,GAAe,YAAY,CAAE,EAC3E,QAAS,CAAE,eAAgBxI,GAAiB5B,GAAiB,YAAY,CAAE,EAC3E,OAAQ,CAAE,QAASuK,CAAO,CAC3B,CAAC,EAAG,QAAQ,EACNI,EAAgB5C,GAAgBC,CAAO,EAC7C,MAAO,CACN,OAAAwC,EACA,OAAQ9I,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACrJ,UACA,IAAMC,EAAIqI,EAAO,EAAE,OACbjB,EAAKpH,EAAE,WACPqH,EAAKrH,EAAE,YACPsI,EAASxB,GAAqBuB,EAAO,EAAE,aAAcvI,EAAIC,EAAIgH,EAAMK,EAAIC,CAAE,EAAGN,EAAMhI,EAAcC,CAAa,EAAGgB,EAAE,SAAS,EACjIiB,GAAaoH,EAAO,EAAE,UAAWrH,GAAMlB,EAAIC,CAAE,EAAGuI,CAAM,EACtD,IAAMG,EAAI,aAAa,aAAa7J,EAAIkB,CAAE,EAAG,EAAE,EAAGf,CAAY,EACxDuE,EAAI,aAAa,aAAa1E,EAAImB,CAAE,EAAG,EAAE,EAAGf,CAAa,EACzD0J,EAAOlI,EAAM7B,EAAI2B,GAAM,aAAamI,EAAGrB,CAAE,CAAC,CAAC,EAAG,EAAGzI,EAAI,aAAayI,EAAI,CAAC,CAAC,CAAC,EACzEuB,EAAOnI,EAAM7B,EAAI2B,GAAM,aAAagD,EAAG+D,CAAE,CAAC,CAAC,EAAG,EAAG1I,EAAI,aAAa0I,EAAI,CAAC,CAAC,CAAC,EACzEuB,EAAS1C,GAAiBsC,EAAczH,GAAYsH,EAAO,EAAE,OAAQrH,GAAMpB,EAAI8I,CAAI,EAAG9I,EAAI+I,CAAI,CAAC,EAAG,CAAC,CAAC,EAAG3I,EAAE,SAAUA,EAAE,SAAUA,EAAE,UAAWA,EAAE,UAAWA,EAAE,KAAK,EACtKiB,GAAaoH,EAAO,EAAE,QAASrH,GAAMlB,EAAIC,CAAE,EAAGY,EAAMiI,EAAQ,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,YACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,IACA,aACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,uBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,cACD,EACA,KACA,KACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CAAC,eAAgB,eAAe,CACjC,EACA,CACC,EACA,IACA,WACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,WACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,IACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,QACA,CAAC,MAAM,CACR,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,mBACA,CACC,CACC,EACA,gBACA,CAAC,WAAW,CACb,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMP,EAChB,qBAAwB,IAAMvB,GAC9B,UAAW,IAAMC,EACjB,aAAgB,IAAMhI,EACtB,cAAiB,IAAMC,EACvB,mBAAoB,IAAMiC,GAC1B,UAAW,IAAMD,GACjB,QAAS,IAAMpC,EACf,YAAa,IAAM4B,EACnB,QAAS,IAAM7B,EACf,YA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AUA,EAAE,SAAUA,EAAE,UAAWA,EAAE,UAAWA,EAAE,KAAK,EAClK4I,EAAS,aAAa2D,EAAU,GAAG,EACzCtL,GAAaoH,EAAO,EAAE,QAASrH,GAAMlB,EAAIC,CAAE,EAAGY,EAAMiI,EAAQ,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,QACA,CAAC,MAAM,CACR,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,mBACA,CACC,CACC,EACA,gBACA,CAAC,QAAQ,CACV,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMP,EAChB,QAAS,IAAMzJ,EACf,aAAgB,IAAMG,EACtB,cAAiB,IAAMC,EACvB,YAAa,IAAMwB,EACnB,QAAS,IAAM7B,EACf,YAAa,IAAM2B,GACnB,kBAAmB,IAAMS,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMpB,EACf,iBAAoB,IAAMsG,GAC1B,cAAiB,IAAMsC,EACvB,mBAAoB,IAAMvH,GAC1B,UAAW,IAAMN,CAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,aAAa,EACnC,OAAAuI,CACD,CACD,CACA,IAAMoE,GAAqBjN,EAAgB,GAAG,CAC7CoB,EACAA,EACA/B,EACAA,EACAA,CACD,EAAG+B,CAAK,GAAoBd,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgM,EAAOD,EAASa,EAAcC,EAAgBC,IAAkB,CAC7K,UACA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,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACrJ,UACA,IAAMC,EAAIqI,EAAO,EAAE,OACbI,EAAI,aAAa,aAAa7J,EAAIkB,CAAE,EAAG,EAAE,EAAGf,CAAY,EACxDuE,EAAI,aAAa,aAAa1E,EAAImB,CAAE,EAAG,EAAE,EAAGf,CAAa,EACzDmP,EAAahB,GAAsBnN,EAAE,MAAOA,EAAE,QAASA,EAAE,QAASA,EAAE,QAAS+G,EAAM0B,EAAGnF,CAAC,EAAGtD,EAAE,MAAM,EAClG4I,EAAS,aAAauF,EAAYnO,EAAE,SAAS,EACnDiB,GAAaoH,EAAO,EAAE,QAASrH,GAAMlB,EAAIC,CAAE,EAAGY,EAAMiI,EAAQ,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,wBACA,CACC,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,IACA,CACC,EACA,IACA,WACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMP,EAChB,QAAS,IAAMzJ,EACf,aAAgB,IAAMG,EACtB,cAAiB,IAAMC,EACvB,sBAAyB,IAAMmO,GAC/B,UAAW,IAAMpG,EACjB,mBAAoB,IAAM9F,GAC1B,UAAW,IAAMD,GACjB,UAAW,IAAML,CAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,4BAA4B,EAClD,OAAAuI,CACD,CACD,CACA,SAASgG,GAAiCrP,EAAcC,EAAe6G,EAAS,CAC/E,IAAMuC,EAAS6F,IAAyB,EAClC5F,GAA0B,WAAW,uBAA0B/I,GAAMA,IAAIC,EAAgB,gBAAgB,CAC9G,OAAQ,CAAE,QAASC,GAAUZ,CAAG,CAAE,EAClC,QAAS,CAAE,eAAgBa,GAAiB5B,GAAiB,YAAY,CAAE,EAC3E,OAAQ,CAAE,QAASuK,CAAO,CAC3B,CAAC,EAAG,QAAQ,EACNI,EAAgB5C,GAAgBC,CAAO,EAC7C,MAAO,CACN,OAAAwC,EACA,OAAQ9I,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACrJ,UACA,IAAMC,EAAIqI,EAAO,EAAE,OACb,EAAI,aAAa,aAAazJ,EAAIkB,CAAE,EAAG,EAAE,EAAGf,CAAY,EACxDuE,EAAI,aAAa,aAAa1E,EAAImB,CAAE,EAAG,EAAE,EAAGf,CAAa,EACzDmP,EAAahB,GAAsBnN,EAAE,MAAOA,EAAE,QAASA,EAAE,QAASA,EAAE,QAAS+G,EAAM,EAAGzD,CAAC,EAAGtD,EAAE,MAAM,EAClG0I,EAAOlI,EAAM7B,EAAI2B,GAAM,aAAa,EAAGN,EAAE,UAAU,CAAC,CAAC,EAAG,EAAGrB,EAAI,aAAaqB,EAAE,WAAY,CAAC,CAAC,CAAC,EAC7F2I,EAAOnI,EAAM7B,EAAI2B,GAAM,aAAagD,EAAGtD,EAAE,WAAW,CAAC,CAAC,EAAG,EAAGrB,EAAI,aAAaqB,EAAE,YAAa,CAAC,CAAC,CAAC,EAC/FuM,EAAWrG,GAAiBsC,EAAczH,GAAYsH,EAAO,EAAE,OAAQrH,GAAMpB,EAAI8I,CAAI,EAAG9I,EAAI+I,CAAI,CAAC,EAAG,CAAC,CAAC,EAAG3I,EAAE,SAAUA,EAAE,SAAUA,EAAE,UAAWA,EAAE,UAAWA,EAAE,KAAK,EAClK4I,EAAS,aAAauF,EAAY,aAAa5B,EAAU,GAAG,CAAC,EACnEtL,GAAaoH,EAAO,EAAE,QAASrH,GAAMlB,EAAIC,CAAE,EAAGY,EAAMiI,EAAQ,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,wBACA,CACC,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,QACA,CAAC,MAAM,CACR,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,mBACA,CACC,CACC,EACA,gBACA,CAAC,QAAQ,CACV,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,IACA,CACC,EACA,WACA,IACA,qBACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMP,EAChB,QAAS,IAAMzJ,EACf,aAAgB,IAAMG,EACtB,cAAiB,IAAMC,EACvB,sBAAyB,IAAMmO,GAC/B,UAAW,IAAMpG,EACjB,YAAa,IAAMvG,EACnB,QAAS,IAAM7B,EACf,YAAa,IAAM2B,GACnB,kBAAmB,IAAMS,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMpB,EACf,iBAAoB,IAAMsG,GAC1B,cAAiB,IAAMsC,EACvB,oBAAuB,IAAM,IAC7B,mBAAoB,IAAMvH,GAC1B,UAAW,IAAMN,CAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oCAAoC,EAC1D,OAAAuI,CACD,CACD,CACA,IAAMiG,GAAsB9O,EAAgB,GAAG,CAC9CX,EACAmI,EACAnI,EACAA,EACAmI,EACAnI,CACD,EAAGA,CAAG,GAAoBiB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACuN,EAAUkB,EAAQtE,EAAOuD,EAASC,EAAIvE,IAAW,CAC5J,UACA,IAAMwE,EAAW,aAAaL,EAAUM,EAAU,EAC5Ca,EAAaxH,EAAM,aAAa8G,GAAIJ,CAAQ,EAAG,EAAE,EAAGG,GAAIH,CAAQ,CAAC,EACjEK,EAAY/G,EAAMuH,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EACrDE,EAAahB,EAAG,IAAIM,CAAS,EAC7BW,EAAeC,EAAI1I,GAAIe,EAAM,aAAayH,EAAW,EAAGvF,CAAM,EAAGuF,EAAW,CAAC,EAAGD,CAAU,CAAC,EAC3FI,EAAa,aAAa3E,EAAO,EAAE,EACzC,OAAO+D,GAAWY,EAAY,aAAaA,EAAYpB,CAAO,EAAGkB,CAAY,CAC9E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CACF,EACA,UACA,CAAC,UAAU,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,aACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,oBAAqB,YAAY,CACnC,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,iBACA,CACC,aACA,CACC,EACA,aACA,IACA,SACD,EACA,cACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMf,GACpB,UAAW,IAAM3G,EACjB,UAAW,IAAM8G,GACjB,UAAW,IAAMD,GACjB,UAAW,IAAMc,EACjB,UAAW,IAAM1I,GACjB,iBAAkB,IAAM+H,EACzB,CACD,CAAC,GAAKlO,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,qBAAqB,EAC3C,SAAS+O,KAAsB,CAC9B,OAAOlQ,GAAO,CACb,MAAOE,EACP,QAASA,EACT,QAASA,EACT,MAAOA,EACP,QAASA,EACT,OAAQA,EACR,UAAWA,CACZ,CAAC,CACF,CACA,SAASiQ,KAAyB,CACjC,OAAOnQ,GAAO,CACb,MAAOE,EACP,QAASA,EACT,QAASA,EACT,MAAOA,EACP,QAASA,EACT,OAAQA,EACR,GAAG6G,GACH,GAAGC,EACJ,CAAC,CACF,CACA,SAASoJ,GAAwB/P,EAAcC,EAAe,CAC7D,IAAMoJ,EAASwG,IAAoB,EAC7BvG,GAA0B,WAAW,uBAA0B/I,GAAMA,IAAIC,EAAgB,gBAAgB,CAC9G,QAAS,CAAE,eAAgBE,GAAiB5B,GAAiB,YAAY,CAAE,EAC3E,OAAQ,CAAE,QAASuK,CAAO,CAC3B,CAAC,EAAG,QAAQ,EACZ,MAAO,CACN,OAAAC,EACA,OAAQ9I,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACrJ,UACA,IAAMC,EAAIqI,EAAO,EAAE,OACbI,EAAI,aAAa,aAAa7J,EAAIkB,CAAE,EAAG,EAAE,EAAGf,CAAY,EACxDuE,EAAI,aAAa,aAAa1E,EAAImB,CAAE,EAAG,EAAE,EAAGf,CAAa,EACzDmP,EAAaE,GAAoBrO,EAAE,MAAO+G,EAAM/G,EAAE,QAASA,EAAE,OAAO,EAAGA,EAAE,MAAOA,EAAE,QAAS+G,EAAM0B,EAAGnF,CAAC,EAAGtD,EAAE,MAAM,EAChH4I,EAAS,aAAauF,EAAYnO,EAAE,SAAS,EACnDiB,GAAaoH,EAAO,EAAE,QAASrH,GAAMlB,EAAIC,CAAE,EAAGY,EAAMiI,EAAQ,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,sBACA,CACC,CACC,EACA,IACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,SACD,EAAG,CACF,EACA,IACA,SACD,CAAC,CACF,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,IACA,CACC,EACA,IACA,WACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMP,EAChB,QAAS,IAAMzJ,EACf,aAAgB,IAAMG,EACtB,cAAiB,IAAMC,EACvB,oBAAuB,IAAMqP,GAC7B,UAAW,IAAMtH,EACjB,mBAAoB,IAAM9F,GAC1B,UAAW,IAAMD,GACjB,UAAW,IAAML,CAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,sBAAsB,EAC5C,OAAAuI,CACD,CACD,CACA,SAAS2G,GAA2BhQ,EAAcC,EAAe6G,EAAS,CACzE,IAAMuC,EAASyG,IAAuB,EAChCxG,GAA0B,WAAW,uBAA0B/I,GAAMA,IAAIC,EAAgB,gBAAgB,CAC9G,OAAQ,CAAE,QAASC,GAAUZ,CAAG,CAAE,EAClC,QAAS,CAAE,eAAgBa,GAAiB5B,GAAiB,YAAY,CAAE,EAC3E,OAAQ,CAAE,QAASuK,CAAO,CAC3B,CAAC,EAAG,QAAQ,EACNI,EAAgB5C,GAAgBC,CAAO,EAC7C,MAAO,CACN,OAAAwC,EACA,OAAQ9I,EAAgB,GAAG,CAACK,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACrJ,UACA,IAAMC,EAAIqI,EAAO,EAAE,OACb,EAAI,aAAa,aAAazJ,EAAIkB,CAAE,EAAG,EAAE,EAAGf,CAAY,EACxDuE,EAAI,aAAa,aAAa1E,EAAImB,CAAE,EAAG,EAAE,EAAGf,CAAa,EACzDmP,EAAaE,GAAoBrO,EAAE,MAAO+G,EAAM/G,EAAE,QAASA,EAAE,OAAO,EAAGA,EAAE,MAAOA,EAAE,QAAS+G,EAAM,EAAGzD,CAAC,EAAGtD,EAAE,MAAM,EAChH0I,EAAOlI,EAAM7B,EAAI2B,GAAM,aAAa,EAAGN,EAAE,UAAU,CAAC,CAAC,EAAG,EAAGrB,EAAI,aAAaqB,EAAE,WAAY,CAAC,CAAC,CAAC,EAC7F2I,EAAOnI,EAAM7B,EAAI2B,GAAM,aAAagD,EAAGtD,EAAE,WAAW,CAAC,CAAC,EAAG,EAAGrB,EAAI,aAAaqB,EAAE,YAAa,CAAC,CAAC,CAAC,EAC/FuM,EAAWrG,GAAiBsC,EAAczH,GAAYsH,EAAO,EAAE,OAAQrH,GAAMpB,EAAI8I,CAAI,EAAG9I,EAAI+I,CAAI,CAAC,EAAG,CAAC,CAAC,EAAG3I,EAAE,SAAUA,EAAE,SAAUA,EAAE,UAAWA,EAAE,UAAWA,EAAE,KAAK,EAClK4I,EAAS,aAAauF,EAAY,aAAa5B,EAAU,GAAG,CAAC,EACnEtL,GAAaoH,EAAO,EAAE,QAASrH,GAAMlB,EAAIC,CAAE,EAAGY,EAAMiI,EAAQ,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,sBACA,CACC,CACC,EACA,IACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,SACD,EAAG,CACF,EACA,IACA,SACD,CAAC,CACF,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,EACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,QACA,CAAC,MAAM,CACR,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,mBACA,CACC,CACC,EACA,gBACA,CAAC,QAAQ,CACV,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,IACA,CACC,EACA,WACA,IACA,qBACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMP,EAChB,QAAS,IAAMzJ,EACf,aAAgB,IAAMG,EACtB,cAAiB,IAAMC,EACvB,oBAAuB,IAAMqP,GAC7B,UAAW,IAAMtH,EACjB,YAAa,IAAMvG,EACnB,QAAS,IAAM7B,EACf,YAAa,IAAM2B,GACnB,kBAAmB,IAAMS,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMpB,EACf,iBAAoB,IAAMsG,GAC1B,cAAiB,IAAMsC,EACvB,oBAAuB,IAAM,IAC7B,mBAAoB,IAAMvH,GAC1B,UAAW,IAAMN,CAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,8BAA8B,EACpD,OAAAuI,CACD,CACD,CACA,IAAM4G,GAAczP,EAAgB,GAAG,CACtCoB,EACAA,EACA/B,CACD,EAAG+B,CAAK,GAAoBd,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoP,EAAUC,EAAO/C,IAAc,CAC5I,UACA,IAAMgD,EAAaF,EAAS,IAAI,IAAIC,EAAM,IAAI,IAAI/C,CAAS,CAAC,EACtDiD,EAAY5O,EAAM,aAAa0O,EAAM,EAAG/C,CA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EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,eACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,oBACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,OACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,IACA,eACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,IACA,oBACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,iBACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,MACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,QACD,EAAG,CACF,EACA,KACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,MACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,MACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,OACA,CACC,EACA,OACA,GACD,EACA,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,uBACA,CACC,OACA,YACA,OACA,CACC,EACA,MACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,EACA,aACA,IACA,CACC,EACA,aACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,QAAQ,CAAC,CACvB,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,aACA,IACA,MACD,CAAC,CACF,CACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMzC,EAChB,QAAS,IAAMxB,EACf,aAAgB,IAAMkB,EACtB,cAAiB,IAAMC,EACvB,QAAS,IAAMiB,EACf,mBAAsB,IAAME,GAC5B,YAAa,IAAME,EACnB,YAAa,IAAMC,GACnB,kBAAmB,IAAMG,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMjB,EACf,mBAAoB,IAAMkB,GAC1B,UAAW,IAAMjC,EACjB,KAAQ,IAAMO,EACd,UAAW,IAAMoC,EACjB,qBAAwB,IAAMpD,GAC9B,UAAW,IAAM8D,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H,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,aACD,CACD,EACA,IACA,eACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,YACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,CACC,EACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,cACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,IACA,aACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,QACA,CAAC,MAAM,CACR,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,mBACA,CACC,CACC,EACA,gBACA,CAAC,WAAW,CACb,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,IACA,oBACD,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,oBACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,SAAS,CACX,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,OACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,IACA,eACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,IACA,oBACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,iBACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,MACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,MACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,QACD,EAAG,CACF,EACA,KACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,MACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,MACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,OACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,OACA,CACC,EACA,OACA,GACD,EACA,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,uBACA,CACC,OACA,YACA,OACA,CACC,EACA,MACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,EACA,aACA,IACA,CACC,EACA,aACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,QAAQ,CAAC,CACvB,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,MAAM,CACR,EAAG,CACF,EACA,aACA,IACA,MACD,CAAC,CACF,CACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMzC,EAChB,QAAS,IAAMxB,EACf,aAAgB,IAAMkB,EACtB,cAAiB,IAAMC,EACvB,QAAS,IAAMiB,EACf,YAAa,IAAMI,EACnB,YAAa,IAAMC,GACnB,kBAAmB,IAAMG,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMjB,EACf,iBAAoB,IAAMgD,GAC1B,cAAiB,IAAMP,EACvB,mBAAsB,IAAM,GAC5B,mBAAsB,IAAM/B,GAC5B,mBAAoB,IAAMQ,GAC1B,UAAW,IAAMjC,EACjB,KAAQ,IAAMO,EACd,UAAW,IAAMoC,EACjB,qBAAwB,IAAMpD,GAC9B,UAAW,IAAM8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CAAI,CAAC,EAC1E,OAAOtB,EAAM,aAAa,aAAa4B,EAAMnB,CAAM,EAAGU,EAAU,CAAC,EAAG,aAAaU,EAAMV,EAAU,CAAC,CAAC,CACpG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,WACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,IACA,QACD,CACD,EACA,CACC,GACA,MACA,OACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,MACA,IACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,QACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EAAG,CACF,EACA,OACA,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMnB,EACjB,UAAW,IAAMW,GACjB,UAAW,IAAME,EAClB,CACD,CAAC,GAAKX,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4B,IAAmB/B,EAAgB,GAAG,CAC3CC,EACAC,EACAD,EACAC,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACe,EAAQZ,EAAWF,EAAIM,EAAQS,IAAa,CACzJ,UACA,IAAMC,EAAYnB,EAAMiB,EAAO,EAAG,aAAa,EAAGA,EAAO,CAAC,CAAC,EACrDc,EAAS,aAAa1B,EAAW,GAAG,EACpC2B,EAAQ,aAAa,EAAG,aAAaD,EAAQ,aAAab,EAAU,EAAE,CAAC,CAAC,EACxEe,EAAS,aAAa9B,EAAG,EAAGgB,EAAU,CAAC,EACvCe,EAAS,aAAa/B,EAAG,EAAGgB,EAAU,CAAC,EACvCgB,EAAO,aAAaF,EAAQxB,CAAM,EAClC2B,EAAOF,EACPG,EAAe,aAAaF,EAAMH,CAAK,EACvCM,EAAe,aAAaF,EAAMJ,CAAK,EAC7C,OAAOhC,EAAM,aAAa,aAAaqC,EAAc5B,CAAM,EAAGU,EAAU,CAAC,EAAG,aAAamB,EAAcnB,EAAU,CAAC,CAAC,CACpH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,SACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,QACD,EACA,CACC,GACA,eACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,eACA,IACA,QACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EAAG,CACF,EACA,eACA,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAE,UAAW,IAAMnB,CAAM,CACrC,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACd,SAASqC,GAAiBC,EAAMC,EAAMC,EAAQ,CAC7C,GAAM,CAAE,MAAAC,EAAO,OAAAC,EAAQ,GAAAzC,EAAI,OAAAM,EAAQ,aAAAoC,CAAa,EAAIJ,EACpD,OAAOK,GAAkB,CACxB,QAASlD,IACT,SAAU4C,IAAS,SAAYO,GAAMC,EAAKlD,IAAoB,qBAAsB,CACnFK,EACAwC,EACAC,EACAC,EACAI,GAAOF,EAAI,GAAK,EAAE,CACnB,CAAC,EAAIP,IAAS,QAAWO,GAAMC,EAAKhC,IAAqB,sBAAuB,CAC/E2B,EACAC,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ACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,EACA,IACA,MACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,MACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMtE,GACpB,UAAW,IAAMmB,GACjB,UAAW,IAAMF,GACjB,UAAW,IAAMX,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+D,IAAkBlE,EAAgB,GAAG,CAC1CC,EACAA,EACAC,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIG,EAAU4D,EAAYH,EAAIC,IAAO,CAClJ,UACA,OAAOhE,EAAM,aAAaG,EAAG,EAAG,aAAa,aAAa4D,EAAIG,CAAU,EAAG5D,EAAS,CAAC,CAAC,EAAG,aAAaH,EAAG,EAAG,aAAa,aAAa6D,EAAIE,CAAU,EAAG5D,EAAS,CAAC,CAAC,CAAC,CACpK,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,YACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,YACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAMN,CAAM,CACrC,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiE,GAAsBpE,EAAgB,GAAG,CAC9CqE,EACAA,EACAnE,EACAA,CACD,EAAGmE,CAAK,GAAoBlE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmE,EAAeC,EAAaC,EAAaC,IAAW,CACjK,UACA,IAAMC,EAAYC,EAAMJ,EAAY,EAAGA,EAAY,EAAGA,EAAY,CAAC,EAC7DK,EAAU,aAAaL,EAAY,EAAGC,CAAW,EACjDK,EAAUC,EAAM,aAAaF,EAASN,EAAc,CAAC,EAAG,EAAG,CAAC,EAC5DS,EAAYL,EAAU,IAAIH,EAAY,CAAC,EAAE,IAAIM,CAAO,EACpDG,EAAkBN,EAAU,IAAIH,EAAY,CAAC,EAAE,IAAIC,CAAW,EAC9DS,EAAgB,aAAa,EAAGX,EAAc,CAAC,EAC/CY,EAAYP,EAAML,EAAc,EAAGA,EAAc,EAAGA,EAAc,CAAC,EAAE,IAAIU,EAAgB,IAAIC,CAAa,CAAC,EAC3GE,EAAUC,EAAI,aAAad,EAAc,EAAG,aAAaM,EAASK,CAAa,CAAC,EAAGX,EAAc,CAAC,EAClGe,EAASZ,EAAS,GAClBa,EAAMC,EAAOL,EAAWH,EAAWM,CAAM,EACzCG,EAAID,EAAOJ,EAASN,EAASQ,CAAM,EACzC,OAAOhB,EAAMiB,EAAI,EAAGA,EAAI,EAAGA,EAAI,EAAGE,CAAC,CACpC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CACC,CACC,EACA,cACA,GACD,EACA,CACC,EACA,cACA,GACD,EACA,CACC,EACA,cACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,IACA,CACC,EACA,gBACA,GACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,CACA,EACA,cACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,CACA,EACA,cACA,GACD,CAAC,CACF,EACA,KACD,EACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,gBACA,GACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,gBACA,GACD,EACA,CACC,EACA,gBACA,GACD,EACA,CACC,EACA,gBACA,GACD,CACD,CACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,kBACA,KACD,EACA,CAAC,eAAe,CACjB,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,gBACA,GACD,EACA,IACA,CACC,EACA,UACA,IACA,eACD,CACD,EAAG,CACF,EACA,gBACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,YACA,YACA,QACD,CACD,CACD,EACA,CACC,GACA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AAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,SACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,KACD,EACA,CAAC,cAAc,CAChB,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,KACD,EACA,CAAC,gBAAgB,CAClB,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,KACD,EACA,CAAC,gBAAgB,CAClB,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,gBAAgB,CAClB,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,KACD,EACA,CAAC,gBAAgB,CAClB,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,GACD,EACA,CA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ACA,CACC,EACA,KACA,GACD,EACA,IACA,aACD,CAAC,CACF,EACA,IACA,aACD,EAAG,CACF,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,aACD,CAAC,CACF,EACA,IACA,aACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,aACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,aACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,YACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,EACA,IACA,UACD,EACA,IACA,cACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,EACA,IACA,UACD,EACA,IACA,cACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,EACA,IACA,cACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,C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A,EACA,aACA,CACC,CACC,EACA,gBACA,IACA,QACD,EACA,gBACA,QACD,CACD,EAAG,CACF,EACA,aACA,CACC,gBACA,CACC,EACA,gBACA,IACA,QACD,EACA,QACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,kBACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,iBAAiB,CACnB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,iBAAiB,CACnB,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,oBACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,QACD,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,MACD,EACA,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,WAAY,UAAU,CACxB,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,QACD,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,YACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,WAAW,CACb,CAAC,CACF,EACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,KACD,EACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,oBACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,KAAK,CAAC,CACxB,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CACC,EACA,aACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CACC,EACA,aACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,IACA,CACC,EACA,kBACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,UACA,CAAC,kBAAmB,CAAC,EAAG,GAAG,CAAC,CAC7B,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,YACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,mBACA,IACA,kBACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EAC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,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CAAC,EAAG,SAAS,CACd,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CAAC,EAAG,SAAS,CACd,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CAAC,EAAG,SAAS,CACd,EACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,SACD,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,WACD,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,UACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM9D,GACnB,UAAW,IAAMtG,GACjB,UAAW,IAAM6D,CAClB,CACD,CAAC,GAAKxE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgL,GAAgBnL,EAAgB,GAAG,CACxC2E,EACA1E,EACAC,EACAA,EACAA,CACD,EAAGyE,CAAK,GAAoBxE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+J,EAAO9J,EAAIM,EAAQ0K,EAAgBC,IAAsB,CACtK,UACA,IAAMC,EAAalL,EAAG,IAAIH,EAAM,GAAI,EAAE,CAAC,EACjCsL,EAAmB5D,GAAO1H,EAAM,aAAaqL,EAAW,EAAG5K,CAAM,EAAG4K,EAAW,CAAC,CAAC,EACjFE,EAAY,aAAa,EAAG,aAAaJ,EAAgB,EAAE,CAAC,EAC5DK,EAAY,aAAaD,EAAW,EAAE,EACtCE,EAAWC,EAAI,EAAG,aAAa,EAAGC,GAAWJ,EAAWC,EAAWF,CAAgB,CAAC,EAAGF,CAAiB,EAC9G,OAAOnB,EAAM,IAAIwB,CAAQ,CAC1B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,mBACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,aACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,KAAK,CAAC,CACxB,CAAC,CACF,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,aACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,aACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,aACA,CAAC,mBAAmB,CACrB,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,YACA,YACA,kBACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,gBACA,mBACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,UAAU,CACZ,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMzL,EACjB,aAAc,IAAM0H,GACpB,iBAAkB,IAAMiE,GACxB,UAAW,IAAMD,CAClB,CACD,CAAC,GAAKxL,EAAE,GAAG,CAAC,CAAC,CAAC,EACV0L,GAAc,IACdC,GAAS9L,EAAgB,GAAG,CAACC,CAAK,EAAGC,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM4L,GAAM,CACvJ,UACA,OAAOC,GAAOD,CAAC,CAChB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,eACA,CAAC,GAAG,CACL,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,eAAgB,IAAMC,EAAO,CAC3C,CAAC,GAAK7L,EAAE,GAAG,CAAC,CAAC,CAAC,EACV8L,GAAgBjM,EAAgB,GAAG,CAACC,CAAK,EAAGC,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM4L,GAAM,CAC9J,UACA,IAAM/I,EAAIkE,GAAM6E,CAAC,EACXG,EAAI9E,GAAM2E,CAAC,EACXI,EAAID,EAAE,IAAIA,CAAC,EAAE,IAAIjM,EAAM,EAAG,CAAC,EAAE,IAAIiM,EAAE,IAAI,CAAC,CAAC,CAAC,EAC1C,EAAIJ,GAAO9I,CAAC,EACZoJ,EAAIN,GAAO9I,EAAE,IAAI/C,EAAM,EAAG,CAAC,CAAC,CAAC,EAC7BoM,EAAIP,GAAO9I,EAAE,IAAI/C,EAAM,EAAG,CAAC,CAAC,CAAC,EAC7BqM,EAAKR,GAAO9I,EAAE,IAAI/C,EAAM,EAAG,CAAC,CAAC,CAAC,EACpC,OAAO0L,EAAIA,EAAI,EAAGS,EAAGD,EAAE,CAAC,EAAGR,EAAIU,EAAGC,EAAIH,EAAE,CAAC,EAAGA,EAAE,CAAC,CAChD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,CAAC,EAAG,GAAG,CAAC,CACpB,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,CACC,IACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,IACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMjF,GACnB,YAAa,IAAME,GACnB,UAAW,IAAMnH,EACjB,OAAU,IAAM6L,GAChB,UAAW,IAAMH,CAClB,CACD,CAAC,GAAKxL,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoM,GAAYvM,EAAgB,GAAG,CAACE,CAAG,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM,GAAM,CAC1J,UACA,OAAOyL,GAAW,IAAK,GAAIK,GAAchM,EAAM,aAAa,EAAG,EAAE,EAAG,CAAC,CAAC,CAAC,CACxE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,EACT,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,iBAAkB,IAAM2L,GACxB,cAAiB,IAAMK,GACvB,UAAW,IAAMhM,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqM,GAAYxM,EAAgB,GAAG,CACpCE,EACAA,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmK,EAAKmC,EAAGC,EAAeC,IAAU,CAC9I,UACA,IAAMC,EAAS1F,GAAM,aAAaoD,EAAKuB,EAAW,CAAC,EAC7CgB,EAAK,aAAa,aAAab,GAAO/L,EAAM2M,EAAQH,CAAC,CAAC,EAAG,EAAE,EAAG,CAAC,EAC/DK,EAAK,aAAa,aAAad,GAAO/L,EAAM2M,EAAQ,aAAaH,EAAG,KAAK,CAAC,CAAC,EAAG,EAAE,EAAG,CAAC,EACpFM,EAAW,aAAa,IAAK,aAAaJ,EAAO,GAAG,CAAC,EACrDK,EAAkB,aAAa,aAAa,aAAaH,EAAIH,CAAa,EAAG,IAAI,EAAGK,CAAQ,EAClG,OAAO9M,EAAM,aAAa,aAAa,aAAa6M,EAAIJ,CAAa,EAAG,IAAI,EAAGK,CAAQ,EAAGC,CAAe,CAC1G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,CACA,EACA,MACA,IACA,aACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CAAC,SAAU,GAAG,CACf,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CAAC,SAAU,CACV,EACA,IACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,eACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,UACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,eACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,UACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,gB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CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,IACA,gBACA,OACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,GACD,EACA,IACA,SACA,OACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,CACC,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CACD,EACA,IACA,CACC,EACA,cACA,CACC,CACC,EACA,KACA,GACD,EACA,IACA,QACD,CACD,CACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAM1B,GACnB,UAAa,IAAMC,GACnB,WAAc,IAAMgB,GACpB,SAAY,IAAMP,GAClB,YAAe,IAAMI,GACrB,UAAW,IAAMhJ,CAClB,CACD,CAAC,GAAKlE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+N,GAAYlO,EAAgB,GAAG,CACpCC,EACAC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,E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CX,EACA,IACA,CAAC,EAAG,qBAAqB,CAC1B,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,qBAAqB,CAC1B,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,oBAAoB,CACzB,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,qBAAqB,CAC1B,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,qBAAqB,CAC1B,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,qBAAqB,CAC1B,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,OAAO,CACX,EACA,IACA,CAAC,EAAG,oBAAoB,CACzB,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,E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,CACC,GACA,WACA,CACC,EACA,SACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,WACA,IACA,UACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,SACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,IAAI,CACT,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,WACA,IACA,UACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,WACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,WACA,CAAC,YAAa,WAAW,CAC1B,CACD,EACA,CACC,GACA,eACA,CACC,EACA,WACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,WAAW,CACf,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,eACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,WACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMgP,GAChB,WAAY,IAAMU,GAClB,YAAa,IAAMlL,CACpB,CACD,CAAC,GAAK3E,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+P,GAAalQ,EAAgB,GAAG,CACrCE,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGyE,CAAK,GAAoBxE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgQ,EAAOC,EAAOC,EAAWC,EAAYC,EAAYC,EAAYC,EAAWC,IAAmB,CACxM,UACA,IAAMC,EAAO,aAAa,aAAaR,EAAOE,CAAS,EAAG,aAAaD,EAAOE,CAAU,CAAC,EACnFM,EAAWtB,GAAOqB,CAAI,EACtBE,EAASb,GAAK,aAAa,EAAG,aAAaU,EAAgBH,CAAU,CAAC,EAAGK,CAAQ,EACvF,OAAOjM,EAAM,aAAa,aAAa,aAAa2K,GAAO,aAAaqB,EAAMH,CAAU,CAAC,EAAG,EAAE,EAAGC,CAAS,EAAGI,CAAM,EAAGA,EAAQF,CAAI,CACnI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,CACC,EACA,QACA,IACA,WACD,EACA,IACA,CACC,EACA,QACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,SACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,IACA,YACD,CACD,EAAG,UAAU,CACd,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,OACA,IACA,YACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,WACD,EACA,IACA,QACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,WACA,SACA,MACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMrB,GAChB,WAAY,IAAMU,GAClB,UAAW,IAAMrL,CAClB,CACD,CAAC,GAAKxE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2Q,GAAa9Q,EAAgB,GAAG,CACrCE,EACAA,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC4Q,EAAMC,EAAQxB,E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,CACX,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,SACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,cACA,CACC,EACA,SACA,CAAC,CACA,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,eACA,IACA,gBACD,CACD,EAAG,aAAa,CACjB,EACA,IACA,aACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,eACA,IACA,gBACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EAAG,aAAa,CACjB,EACA,IACA,aACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,cACA,GACD,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,cACA,GACD,CACD,EACA,eACD,CACD,EAAG,CACF,EACA,UACA,CACC,CACC,EACA,cACA,GACD,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,cACA,GACD,CACD,EACA,eACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,OAAU,IAAMtC,GAChB,WAAY,IAAMU,GAClB,UAAW,IAAM/P,EACjB,UAAW,IAAM0L,CAClB,CACD,CAAC,GAAKxL,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0R,IAA8B,WAAW,uBAA0BrM,GAAMA,IAAIsM,GAAO,CACzF,WAAY7R,EACZ,OAAQC,EACR,SAAUA,EACV,OAAQA,EACR,UAAWA,EACX,SAAUA,EACV,UAAWA,EACX,WAAYA,CACb,CAAC,EAAG,YAAY,EACV6R,GAAa/R,EAAgB,GAAG,CACrCC,EACAC,EACAA,EACAA,EACAA,EACAA,CACD,EAAG2R,EAAU,GAAoB1R,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIwN,EAAMtN,EAAWuN,EAAOmE,EAAcT,IAAiB,CAC7K,UACA,IAAM9E,EAAI,aAAamB,EAAMC,CAAK,EAC5B2B,EAAYtI,GAAM,aAAauF,EAAG,GAAG,CAAC,EACtCgD,EAAYvI,GAAM,aAAauF,EAAG,EAAE,CAAC,EACrCiE,EAAiBnB,GAAWC,EAAWC,EAAWnP,CAAS,EAC3D0Q,EAAS9J,GAAM,aAAa9G,EAAG,EAAG4R,CAAY,CAAC,EAC/CC,EAAQ/B,GAAWc,EAAQxB,EAAW,IAAK,KAAM,GAAI,GAAI,IAAKkB,CAAc,EAC5EwB,EAAQhC,GAAWhJ,GAAM,aAAa9G,EAAG,EAAG,aAAa4R,EAAc,CAAC,CAAC,CAAC,EAAGvC,EAAW,IAAK,KAAM,GAAI,GAAI,IAAKiB,CAAc,EAC9HyB,EAAQjC,GAAWhJ,GAAM,aAAa9G,EAAG,EAAG,aAAa4R,EAAc,CAAC,CAAC,CAAC,EAAGvC,EAAW,IAAK,MAAO,GAAI,IAAK,IAAKiB,CAAc,EAChIK,EAAO7J,GAAM,aAAa9G,EAAG,EAAG,CAAC,CAAC,EAClCgS,EAAQtB,GAAWC,EAAMC,EAAQxB,EAAWkB,CAAc,EAC1D2B,EAAiB,aAAa,aAAa,aAAaJ,EAAM,EAAGC,EAAM,CAAC,EAAGC,EAAM,CAAC,EAAGC,EAAM,CAAC,EAC5FE,EAAa,aAAa,aAAaL,EAAM,EAAG,aAAa3C,GAAO,aAAa2C,EAAM,EAAG,GAAG,CAAC,EAAG,EAAE,CAAC,EAAG,IAAI,EAC3GM,EAAanB,GAAYnR,EAAM6E,EAAM,aAAa1E,EAAG,EAAG,aAAaiS,EAAgB3B,CAAc,CAAC,EAAG,EAAG,CAAC,EAAG5L,EAAM,aAAa1E,EAAG,EAAG,aAAakS,EAAY5B,CAAc,CAAC,EAAG,EAAG,CAAC,CAAC,EAAGK,EAAMC,EAAQxB,EAAWyC,EAAM,EAAGV,EAAcb,CAAc,EACxP8B,EAAS,aAAa9B,EAAgB,aAAalJ,EAAI6K,CAAc,EAAG,CAAC,CAAC,EAC1EI,EAAgB3N,EAAM,aAAa,aAAamN,EAAM,EAAGC,EAAM,CAAC,EAAGC,EAAM,CAAC,EAAG,EAAG,CAAC,EACvF,OAAON,GAAW,CACjB,WAAAU,EACA,OAAAC,EACA,SAAU9B,EACV,OAAAM,EACA,UAAAxB,EACA,SAAUyC,EAAM,EAChB,UAAWG,EAAM,EACjB,WAAYK,CACb,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,aACA,CACC,YACA,YACA,WACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,cACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,SACA,YACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,IAAI,EACR,CAAC,EAAG,MAAM,EACV,gBACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,SACA,YACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,IAAI,EACR,CAAC,EAAG,MAAM,EACV,gBACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,SACA,YACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,MAAM,EACV,gBACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,OACA,SACA,YACA,gBACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,iBACA,IACA,gBACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CACF,EACA,YACA,CACC,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,aACA,IACA,gBACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,cACA,CACC,cACA,OACA,SACA,YACA,CACC,EACA,QACA,GACD,EACA,eACA,gBACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,iBACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,gBAAgB,CAClB,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CAAC,CAAC,IAAK,CACN,WAAc,aACd,OAAU,SACV,SAAY,iBACZ,OAAU,SACV,UAAa,YACb,SAAY,CACX,EACA,QACA,GACD,EACA,UAAa,CACZ,EACA,QACA,GACD,EACA,WAAc,eACf,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMvL,GACnB,WAAc,IAAMqI,GACpB,WAAc,IAAMW,GACpB,WAAc,IAAMY,GACpB,OAAU,IAAMxB,GAChB,UAAW,IAAMrP,EACjB,YAAa,IAAM6E,EACnB,YAAe,IAAMsM,GACrB,UAAW,IAAM5J,EACjB,WAAc,IAAMqK,EACrB,CACD,CAAC,GAAK1R,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuS,GAAiB1S,EAAgB,GAAG,CACzCC,EACAC,EACAA,CACD,EAAGmE,CAAK,GAAoBlE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoS,EAAYI,EAAUH,IAAW,CAC9I,UACA,IAAMI,EAAY,aAAa,aAAaD,EAAU,IAAI,EAAGH,CAAM,EAC7DK,EAAO/N,EAAM,aAAayN,EAAW,EAAGK,CAAS,EAAG,EAAG,CAAC,EACxDE,EAAQhO,EAAM,aAAayN,EAAW,EAAGK,CAAS,EAAG,EAAG,CAAC,EAC/D,OAAOvO,EAAMwO,EAAMN,EAAW,EAAGO,EAAOP,EAAW,CAAC,CACrD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,WACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,WACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,OACA,CACC,EACA,aACA,GACD,EACA,QACA,CACC,EACA,aACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMzN,EACnB,UAAW,IAAMT,CAClB,CACD,CAAC,GAAKlE,EAAE,GAAG,CAAC,CAAC,CAAC,EACR4S,GAAgB/S,EAAgB,GAAG,CACxCqE,EACApE,EACAC,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGmE,CAAK,GAAoBlE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+J,EAAO9J,EAAI4Q,EAAQxB,EAAWwD,EAAaC,EAAUC,EAAUC,IAAc,CAC1L,UACA,IAAMpC,EAAO7J,GAAM,aAAa9G,EAAG,EAAG,CAAC,CAAC,EAClC6Q,EAAY,aAAa,aAAa,aAAaF,EAAM,GAAG,EAAG,aAAaC,EAAQ,GAAG,CAAC,EAAG,aAAaxB,EAAW,IAAI,CAAC,EACxH4D,EAAgB9D,GAAO,aAAa2B,EAAW,GAAG,CAAC,EACnDoC,EAAY/D,GAAO,aAAa,aAAa0B,EAAQ,aAAaxB,EAAW,IAAI,CAAC,EAAG,GAAG,CAAC,EACzF8D,EAAOlM,GAAM,aAAa,aAAahH,EAAG,EAAG,CAAC,EAAG,aAAaiT,EAAW,CAAC,CAAC,CAAC,EAC5EE,EAAWrM,GAAM,aAAaoM,EAAM,CAAC,CAAC,EACtCE,EAAa7O,EAAM,aAAa,aAAa,EAAGqL,GAAK,EAAGuD,CAAQ,CAAC,EAAG,aAAavD,GAAK,EAAGuD,CAAQ,EAAG,aAAa,EAAGvD,GAAK,EAAGuD,CAAQ,CAAC,CAAC,CAAC,EAAG,aAAa,EAAGvD,GAAK,EAAGuD,CAAQ,CAAC,EAAG,aAAa,EAAGvD,GAAK,GAAI5I,GAAM,aAAamM,EAAU,EAAE,CAAC,CAAC,CAAC,CAAC,EAC1OE,EAAWrM,GAAM,aAAa,aAAakI,GAAO,aAAa0B,EAAQ,EAAE,CAAC,EAAG,EAAE,EAAG,aAAaxB,EAAW,GAAG,CAAC,CAAC,EAC/GkE,EAAM,aAAaD,EAAU,CAAC,EAC9BE,EAAYhI,EAAIhH,EAAMG,EAAM,aAAa0C,EAAI,aAAakM,EAAK,CAAC,CAAC,EAAG,CAAC,EAAG,EAAG,CAAC,EAAG5O,EAAM,aAAa,EAAG0C,EAAI,aAAakM,EAAK,CAAC,CAAC,CAAC,EAAG,EAAG,CAAC,EAAG5O,EAAM,aAAa,EAAG0C,EAAI,aAAakM,EAAK,CAAC,CAAC,CAAC,EAAG,EAAG,CAAC,CAAC,EAAE,IAAI,GAAG,EAAGF,EAAY7O,EAAMqL,GAAK,GAAIoD,CAAa,CAAC,CAAC,EACrPQ,EAAmB,aAAa,aAAa,aAAaV,EAAUC,CAAS,EAAGH,CAAW,EAAGC,CAAQ,EACtGY,EAAWlI,EAAIzB,EAAM,IAAKyJ,EAAU,IAAIzJ,EAAM,CAAC,EAAGvF,EAAMiP,CAAgB,CAAC,EAC/E,OAAOvP,EAAMwP,EAAS,EAAGA,EAAS,EAAGA,EAAS,EAAG3J,EAAM,CAAC,CACzD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,SACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,CACA,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,UAAU,CACtB,CACD,EACA,IACA,CACC,EACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,UAAU,CACtB,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,UAAU,CACtB,CACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,UAAU,CACtB,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,KAAK,EAAG,CACZ,EACA,YACA,CAAC,CACA,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,OACA,OACA,MACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,SACA,CAAC,CACA,EACA,SACA,IACA,CAAC,EAAG,IAAI,CACT,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CACC,aACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CAAC,EAAG,KAAK,EAAG,eAAe,CAC7B,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,IACA,WACD,EACA,IACA,aACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,KACD,EACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,CACA,EACA,QACA,GACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,kBAAkB,CACpB,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMhD,GACnB,OAAU,IAAMoI,GAChB,YAAa,IAAMlI,GACnB,WAAY,IAAM4I,GAClB,UAAW,IAAMrL,EACjB,YAAa,IAAMG,EACnB,UAAW,IAAM0C,EACjB,UAAW,IAAMmE,EACjB,UAAW,IAAMtH,CAClB,CACD,CAAC,GAAKlE,EAAE,GAAG,CAAC,CAAC,CAAC,EA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CD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,KACD,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,IACA,IACA,KACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,EAAG,CACF,EACA,MACA,IACA,CACC,EACA,MACA,IACA,GACD,CACD,CAAC,CA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,aAAa9B,EAAMC,CAAK,EAC7B8B,GAAKR,EAAO,aAAa/C,GAAOZ,EAAMW,EAAIsD,GAAIpD,EAAI,CAAC,CAAC,EAAGF,EAAIuD,GAAIrD,EAAI,CAAC,CAAC,CAAC,CAAC,EAAGuD,GAAIzD,EAAIsD,GAAIC,EAAE,EAAGrD,EAAI,CAAC,CAAC,CAAC,EAAGkD,GAASD,IAAW,EAAE,EAC3HO,GAAU,aAAa,EAAG/C,EAAS,CAAC,EAC1C,OAAO,aAAa,EAAGgD,GAAW,CAACD,GAASA,GAASF,EAAE,CAAC,CACzD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,yBACA,CAAC,KAAM,UAAU,CAClB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,4BACA,CAAC,SAAU,QAAQ,CACpB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,4BACA,CAAC,SAAU,QAAQ,CACpB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,iBACA,CACC,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,IACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,aAAc,CACd,EACA,QACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,IACA,WACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,WACD,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,MACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,SACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,WACD,CACD,EAAG,CACF,EACA,QACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,IACA,OACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,CACA,EACA,IACA,IACA,QACD,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,QACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,WACD,EAAG,CACF,EACA,QACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,cACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,MACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,IACA,IACA,CACC,EACA,OACA,IACA,WACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,QACA,KACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,KACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,SACA,CACC,EACA,aACA,CACC,QACA,OACA,UACD,CACD,EACA,WACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,UACA,CACC,EACA,aACA,CACC,cACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,UACD,CACD,EACA,WACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,CACC,UACA,CACC,EACA,aACA,CACC,eACA,QACA,UACD,CACD,EACA,WACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,WACA,SACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,GAAG,CACL,EACA,IACA,SACD,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EAAG,MAAM,CACV,CAAC,CACF,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,GAAG,CACL,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,OACA,IACA,OACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EAAG,CACF,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EAAG,CACF,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,WACA,UACA,CACC,EACA,UACA,KACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,GACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,IACA,SACD,EACA,UACA,IACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAMnC,GACvB,yBAA0B,IAAME,GAChC,4BAA6B,IAAMC,GACnC,eAAkB,IAAMrC,GACxB,UAAW,IAAMa,EACjB,QAAS,IAAME,EACf,IAAO,IAAMhB,GACb,YAAa,IAAM8C,GACnB,YAAa,IAAM1B,EACnB,aAAc,IAAM0C,EACpB,aAAc,IAAM/C,GACpB,UAAW,IAAMZ,EACjB,UAAW,IAAMgE,EACjB,UAAW,IAAMI,GACjB,iBAAkB,IAAME,EACzB,CACD,CAAC,GAAKpE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRqE,GAAexE,EAAgB,GAAG,CACvCC,EACAA,EACAa,EACAb,EACAa,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBX,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmB,EAAIC,EAAUkD,EAAOC,EAAUC,EAAWC,EAAWlD,EAAWmD,EAAUC,IAAa,CAClM,UACA,IAAMC,EAAWC,GAAoB1D,EAAIoD,EAAUnD,CAAQ,EACrD0D,EAAW,aAAaR,EAAOS,EAAU,EACzCC,EAAUC,GAAQL,EAAUM,GAAIJ,CAAQ,EAAGK,GAAIL,CAAQ,CAAC,EACxDM,EAAY,aAAa,aAAa,aAAaJ,EAAQ,EAAGR,CAAS,EAAGa,EAAG,EAAGV,CAAQ,EACxFW,EAAW,aAAaH,GAAIC,CAAS,EAAGX,CAAS,EACjDc,EAAmBzB,EAAI,aAAakB,EAAQ,EAAGM,CAAQ,CAAC,EACxDE,EAAgB,aAAajE,EAAW,EAAE,EAC1CkE,EAAe,aAAaf,EAAU,EAAE,EAC9C,OAAO,aAAa,EAAGN,GAAW,aAAaoB,EAAeC,CAAY,EAAG,aAAaD,EAAeC,CAAY,EAAGF,CAAgB,CAAC,CAC1I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,2BACA,CACC,KACA,WACA,UACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,IACA,YACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,UACA,CACC,EACA,eACA,CACC,WACA,WACA,UACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,WACD,EACA,IACA,KACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,WAAW,CACb,EACA,IACA,WACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,GACD,EACA,IACA,UACD,CAAC,CACF,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,eACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,gBACA,IACA,cACD,EACA,CACC,EACA,gBACA,IACA,cACD,EACA,kBACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,2BAA4B,IAAMV,GAClC,WAAc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C3B,WAAYC,GAAMD,EAAU,EAAGA,EAAU,CAAC,CAC3C,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,GACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,cACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,WACA,GACD,CACD,EAAG,CACF,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,YACA,CAAC,EAAG,GAAG,EACP,UACD,CACD,CACD,EACA,UACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,YACA,IACA,WACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,CACA,EACA,YACA,GACD,EAAG,CACF,EACA,YACA,GACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CAAC,CAAC,IAAK,CACN,OAAU,SACV,SAAY,WACZ,UAAa,YACb,WAAc,aACd,UAAa,YACb,WAAc,YACf,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAM3E,GACvB,UAAW,IAAMhC,EACjB,UAAW,IAAMqF,GACjB,UAAW,IAAM1E,EACjB,UAAW,IAAMqD,EACjB,UAAW,IAAMyC,EACjB,iBAAkB,IAAMnC,GACxB,aAAc,IAAM1D,GACpB,YAAa,IAAMgG,GACnB,WAAc,IAAMf,EACrB,CACD,CAAC,GAAK3F,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2G,GAAiB9G,EAAgB,GAAG,CACzCC,EACAa,EACAb,EACAA,EACAa,EACAA,EACAA,EACAA,EACAiG,EACAA,CACD,EAAG7G,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmB,EAAIU,EAAQoE,EAAUC,EAAWtF,EAAGiG,EAAaC,EAAaC,EAAUC,EAAMC,IAAS,CACpM,UACA,IAAMC,EAASF,EAAK,EACdG,EAAOH,EAAK,EACZI,EAASJ,EAAK,EACdK,EAASL,EAAK,EACdM,EAAIL,EAAK,EACTM,EAAIN,EAAK,EACT9G,EAAI8G,EAAK,EACTO,EAASP,EAAK,EACdQ,EAAWxB,EAAS,IAAIC,EAAU,IAAI,aAAa,aAAagB,EAAQL,CAAW,EAAG,CAAC,CAAC,CAAC,EACzFa,EAAOhH,GAAOZ,EAAM,aAAa,aAAaqB,EAAG,EAAGsG,EAAS,CAAC,EAAG5F,CAAM,EAAG,aAAaV,EAAG,EAAGsG,EAAS,CAAC,CAAC,CAAC,EACzGE,EAAKR,EACLS,EAAY,aAAa,EAAGxD,GAAW,aAAauD,EAAI,GAAG,EAAGA,EAAID,CAAI,CAAC,EACvEG,EAAY,aAAa,EAAGzD,GAAW,aAAauD,EAAI,GAAG,EAAG,aAAaA,EAAI,GAAG,EAAGD,CAAI,CAAC,EAC1FI,EAAQ,aAAaF,EAAW,aAAa,EAAG,aAAaC,EAAWR,CAAM,CAAC,CAAC,EAChFU,EAAW,aAAa,aAAa,aAAa5C,GAAI,aAAa,aAAavE,EAAG,GAAG,EAAG4G,CAAM,CAAC,EAAG,GAAG,EAAG,aAAarC,GAAI,aAAa,aAAavE,EAAG,GAAG,EAAG,aAAa4G,EAAQ,GAAG,CAAC,CAAC,EAAG,GAAG,CAAC,EAAG,GAAG,EACpMQ,EAAOC,GAAkBP,EAAM,aAAaC,EAAI,GAAG,EAAG,aAAa,aAAaA,EAAIb,CAAW,EAAG,GAAG,EAAG,aAAaa,EAAI,EAAE,CAAC,EAC5HO,EAAQF,EAAK,EACbG,EAAQH,EAAK,EACbI,EAAQJ,EAAK,EACbK,EAAa,aAAa,aAAajB,EAAQL,CAAQ,EAAGgB,CAAQ,EACxE,OAAOhI,EAAM,aAAa,aAAa,aAAa+H,EAAOR,CAAC,EAAG,aAAaY,EAAOpB,CAAW,CAAC,EAAGuB,CAAU,EAAG,aAAa,aAAa,aAAaP,EAAOP,CAAC,EAAG,aAAaY,EAAOrB,CAAW,CAAC,EAAGuB,CAAU,EAAG,aAAa,aAAa,aAAaP,EAAO3H,CAAC,EAAG,aAAaiI,EAAOtB,CAAW,CAAC,EAAGuB,CAAU,CAAC,CAClT,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,aACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,SAAS,CACX,CACD,EACA,CACC,GACA,KACA,MACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,KACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,MACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,aACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,KACA,IACA,aACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,YACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,gCACA,CACC,OACA,aACA,eACA,WACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,SACA,IACA,UACD,EACA,IACA,UACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,aACD,CACD,EACA,IACA,YACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,aACD,CACD,EACA,IACA,YACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,GACD,EACA,IACA,CACC,EACA,QACA,IACA,aACD,CACD,EACA,IACA,YACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMvI,EACjB,aAAc,IAAMY,GACpB,iBAAkB,IAAM0D,GACxB,UAAW,IAAMe,GACjB,gCAAiC,IAAM8C,GACvC,UAAW,IAAMlI,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsI,GAAYzI,EAAgB,GAAG,CACpCC,EACAa,EACAb,EACAa,EACAA,EACAA,EACAA,EACAA,CACD,EAAGZ,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmB,EAAIU,EAAQoE,EAAUrF,EAAG2H,EAASC,EAASC,EAAYC,IAAa,CACjL,UACA,IAAMC,EAAY7I,EAAM,aAAa,EAAGmG,EAAS,CAAC,EAAG,aAAa,EAAGA,EAAS,CAAC,CAAC,EAC1E2C,EAAc9I,EAAM,aAAa,aAAaqB,EAAG,EAAGwH,EAAU,CAAC,EAAG9G,CAAM,EAAG,aAAaV,EAAG,EAAGwH,EAAU,CAAC,CAAC,EAC1GE,EAAOZ,GAAkBvH,GAAOkI,CAAW,EAAGJ,EAAS,aAAa,aAAaA,EAASC,CAAU,EAAG,GAAG,EAAG,aAAa,aAAaC,EAAU,GAAG,EAAG,IAAI,CAAC,EAC5JI,EAAYpC,GAAMkC,EAAY,EAAGA,EAAY,CAAC,EAC9CG,EAAa,aAAa,aAAa5D,GAAI,aAAa,aAAa2D,EAAW,CAAC,EAAG,aAAalI,EAAG,EAAE,CAAC,CAAC,EAAG,GAAG,EAAG,GAAG,EAC1H,OAAOiI,EAAK,IAAIN,CAAO,EAAE,IAAIQ,CAAU,CACxC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,GACD,CACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,aACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,CACC,EACA,UACA,IACA,YACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,gCACA,CACC,gBACA,UACA,mBACA,WACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,CACA,EACA,cACA,GACD,EAAG,CACF,EACA,cACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,SAAS,CACX,EACA,KACD,EACA,CAAC,YAAY,CACd,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMjJ,EACjB,aAAc,IAAMY,GACpB,gCAAiC,IAAMuH,GACvC,YAAa,IAAMvB,GACnB,UAAW,IAAMvB,EAClB,CACD,CAAC,GAAKnF,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgJ,GAAiBnJ,EAAgB,GAAG,CACzCc,EACAb,EACAa,EACAA,EACAA,EACAA,EACAA,CACD,EAAGZ,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiJ,EAAY/C,EAAWrE,EAAQjB,EAAGsI,EAAWC,EAAcC,IAAiB,CACzL,UACA,IAAMC,EAAU3C,GAAMR,EAAU,EAAG,aAAaA,EAAU,EAAGrE,CAAM,CAAC,EAC9DyH,EAAW,aAAa,aAAaD,EAAS,EAAE,EAAG,aAAazI,EAAG,GAAG,CAAC,EACvE2I,EAAa,aAAaN,EAAYK,CAAQ,EAC9CE,EAAgBC,GAAoBF,EAAY,aAAaJ,EAAc,CAAC,EAAG,GAAG,EAClFO,EAAkB,aAAaD,GAAoB,aAAaF,EAAY,GAAG,EAAG,aAAaJ,EAAc,CAAC,EAAG,CAAC,EAAG,EAAE,EACvHQ,EAAa,aAAa,EAAG,aAAa,EAAG,aAAa,aAAaT,EAAWA,CAAS,EAAG,EAAE,CAAC,CAAC,EAClGU,EAAelE,GAAkB,aAAa,aAAa6D,EAAYlE,EAAG,EAAG,EAAE,CAAC,EACtF,OAAOkB,EAAIxG,EAAM,EAAG,IAAK,GAAG,EAAG6J,EAAc,GAAG,EAAE,IAAI,aAAa,aAAa,aAAaJ,EAAeE,CAAe,EAAGC,CAAU,EAAGP,CAAY,CAAC,CACzJ,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,CACA,EACA,YACA,GACD,EAAG,CACF,EACA,CACC,EACA,YACA,GACD,EACA,IACA,QACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,aACA,IACA,UACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,kCACA,CACC,aACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,kCACA,CACC,CACC,EACA,aACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,YACA,IACA,WACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,oBACA,CAAC,CACA,EACA,CACC,EACA,aACA,IACA,UACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,EACA,eACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,gBACA,IACA,iBACD,EACA,IACA,YACD,EACA,IACA,cACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM1C,GACnB,kCAAmC,IAAM+C,GACzC,kBAAqB,IAAM/D,GAC3B,SAAY,IAAML,GAClB,UAAW,IAAMkB,EACjB,UAAW,IAAMxG,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6J,GAAchK,EAAgB,GAAG,CACtCC,EACAA,EACAa,EACAA,CACD,EAAGZ,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmB,EAAI8E,EAAU6D,EAAWC,IAAc,CACpJ,UACA,IAAMC,EAAKlG,EAAI,aAAa3C,EAAG,EAAG8E,EAAS,CAAC,CAAC,EACvCgE,EAAKnG,EAAI,aAAa3C,EAAG,EAAG8E,EAAS,CAAC,CAAC,EACvCiE,EAAWC,GAAI,aAAa,aAAa,KAAMH,CAAE,EAAGA,CAAE,CAAC,EACvDI,EAAQ,aAAa,aAAa,aAAaN,EAAWA,CAAS,EAAG,GAAG,EAAG,IAAI,EAChFO,EAAUF,GAAI,aAAa,aAAa,aAAa,GAAIF,CAAE,EAAGA,CAAE,EAAG,aAAaG,EAAO,EAAE,CAAC,CAAC,EAC3FE,EAAUH,GAAI,aAAa,aAAa,aAAa,GAAIF,CAAE,EAAGA,CAAE,EAAGG,CAAK,CAAC,EACzEG,EAAUJ,GAAI,aAAa,aAAa,aAAa,GAAIF,CAAE,EAAGA,CAAE,EAAG,aAAaG,EAAO,GAAG,CAAC,CAAC,EAClG,OAAOrK,EAAM,aAAa,aAAamK,EAAUG,CAAO,EAAG,EAAE,EAAG,aAAa,aAAaH,EAAUI,CAAO,EAAG,GAAG,EAAG,aAAa,aAAaJ,EAAUK,CAAO,EAAG,EAAE,CAAC,EAAE,IAAIR,CAAS,CACrL,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,IACD,EACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,IACA,WACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,KACD,EACA,CAAC,WAAW,CACb,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMjG,EACjB,UAAW,IAAMqG,GACjB,UAAW,IAAMpK,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwK,GAAa3K,EAAgB,GAAG,CACrCc,EACAA,EACAA,CACD,EAAGZ,CAAK,GAAoBC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CX,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,GAAG,CACV,CAAC,CACF,CAAC,CACF,EAAG,CACF,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,MAAM,EAAG,CAAC,EAAG,MAAM,CAAC,CAC1B,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,GAAG,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,KAAK,CAAC,CACxB,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,GACD,CACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,GACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,OAAO,CACT,EACA,KACD,EACA,CAAC,OAAO,CACT,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMV,EACjB,gBAAiB,IAAMS,EACxB,CACD,CAAC,GAAKP,EAAE,GAAG,CAAC,CAAC,CAAC,EACRS,IAAkBZ,EAA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CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,MAAM,CACR,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,MAAM,CACR,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,MAAM,CACR,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,MAAM,CACR,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,QACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,aACA,CACC,SACA,QACA,CACC,EACA,SACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,QAAQ,CAClB,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,aACA,CACC,SACA,QACA,CACC,EACA,SACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,QAAQ,CAClB,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,aACA,CACC,SACA,QACA,CACC,EACA,SACA,IACA,MACD,CACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,QAAQ,CAClB,CACD,EACA,CACC,GACA,WACA,CACC,EACA,2BACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,QACA,OACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CACC,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,UAAU,CACZ,EACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,WAAW,CACb,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CACC,EACA,gBACA,GACD,EACA,CACC,EACA,gBACA,GACD,EACA,CACC,EACA,gBACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,UACA,SACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,CACD,CACD,EACA,CAAC,GAAI,UAAU,CAChB,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMb,EACjB,UAAW,IAAMD,EACjB,aAAc,IAAMkC,EACpB,UAAW,IAAMC,GACjB,2BAA4B,IAAME,GAClC,UAAW,IAAMG,CAClB,CACD,CAAC,GAAKvD,EAAE,GAAG,CAAC,CAAC,CAAC,EACVyD,GAAU,KAAK,IAAI,IAAI,EACvBC,GAAU,KAAK,IAAI,IAAI,EACvBC,GAAU,KAAK,IAAI,KAAK,EACxBC,GAAU,KAAK,IAAI,KAAK,EACxBC,GAAchE,EAAgB,GAAG,CAACC,CAAK,EAAGC,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8D,GAAM,CAC5J,UACA,OAAOC,GAAOD,CAAC,CAChB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,eACA,CAAC,GAAG,CACL,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,eAAgB,IAAMC,EAAO,CAC3C,CAAC,GAAK/D,EAAE,GAAG,CAAC,CAAC,CAAC,EACVgE,GAAcnE,EAAgB,GAAG,CAACC,CAAK,EAAGC,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM8D,GAAM,CAC5J,UACA,IAAMG,EAAIC,GAAMJ,CAAC,EACXK,EAAIC,GAAMN,CAAC,EACXO,EAAIF,EAAE,IAAIA,CAAC,EAAE,IAAIA,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,EACjC,EAAIN,GAAYI,CAAC,EACjBK,EAAIT,GAAY/D,EAAM,aAAamE,EAAE,EAAG,CAAC,EAAGA,EAAE,CAAC,CAAC,EAChDM,EAAIV,GAAY/D,EAAMmE,EAAE,EAAG,aAAaA,EAAE,EAAG,CAAC,CAAC,CAAC,EAChDO,EAAKX,GAAY/D,EAAM,aAAamE,EAAE,EAAG,CAAC,EAAG,aAAaA,EAAE,EAAG,CAAC,CAAC,CAAC,EACxE,OAAOV,EAAIA,EAAI,EAAGe,EAAGD,EAAE,CAAC,EAAGd,EAAIgB,EAAGC,EAAIH,EAAE,CAAC,EAAGA,EAAE,CAAC,CAChD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,KACD,EACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,IACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,cACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,cACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CACF,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,CACC,IACA,IACA,CACC,EACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC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AAaE,EAAME,GAAKN,EAAKH,CAAK,CAAC,CAC3C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,YACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,MAAM,EACV,IACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,IACA,CACC,EACA,WACA,CAAC,MAAO,OAAO,CAChB,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMM,EACjB,YAAa,IAAMrB,GACnB,iBAAkB,IAAMuB,GACxB,WAAY,IAAMC,EACnB,CACD,CAAC,GAAK5F,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6F,IAAoBhG,EAAgB,GAAG,CAC5CkB,EACAA,EACAjB,EACAA,EACAiB,EACAA,EACAA,EACAA,CACD,EAAGA,CAAK,GAAoBf,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8F,EAAQC,EAAQ9F,EAAIC,EAAU8F,EAAMC,EAAQC,EAAYC,IAAe,CACpL,UACA,IAAMC,EAAKN,EAAO,EACZzF,EAAIyF,EAAO,EACXO,EAAKP,EAAO,EACZQ,EAAIR,EAAO,EACXS,EAAIR,EAAO,EACXS,EAAKT,EAAO,EACZU,EAAKV,EAAO,EACZW,EAAKX,EAAO,EACZY,EAAYX,EAAK,EACjBY,EAAcZ,EAAK,EACnBa,EAAkBZ,EAAO,EACzBf,EAAae,EAAO,EACpBa,EAAUb,EAAO,EACjBnE,EAAQmE,EAAO,EACfc,EAAK,aAAa,aAAa,aAAa,aAAa,aAAa,CAACX,EAAI,aAAaE,EAAG,CAAC,CAAC,EAAGE,CAAE,EAAGH,CAAE,EAAG,aAAaE,EAAG,CAAC,CAAC,EAAGG,CAAE,EACjIM,EAAK,aAAa,aAAa,aAAa,aAAa,aAAa,CAACZ,EAAI,aAAa/F,EAAG,CAAC,CAAC,EAAGgG,CAAE,EAAGG,CAAE,EAAG,aAAaC,EAAI,CAAC,CAAC,EAAGC,CAAE,EAClIO,EAAUC,GAAK,aAAa,aAAaH,EAAIA,CAAE,EAAG,aAAaC,EAAIA,CAAE,CAAC,CAAC,EACvEG,EAAW5D,EAAIxD,EAAI,CAAC,EAAG,IAAK8G,CAAe,EAC3CO,EAAOzB,GAAW,aAAawB,EAAU,EAAE,EAAGA,EAAUF,CAAO,EAC/D9B,EAAQ,aAAa,EAAGwB,CAAS,EACjC1B,EAAIhF,EAAG,IAAIC,CAAQ,EACnBmH,EAAQ,aAAaC,EAAIA,EAAItC,GAAeC,EAAGC,EAAYC,EAAO1B,GAASC,GAAS,GAAG,EAAGsB,GAAeC,EAAGC,EAAYC,EAAOxB,GAASC,GAAS,EAAE,CAAC,EAAGoB,GAAeC,EAAGC,EAAYC,EAAO,EAAG,EAAG,GAAG,CAAC,EAAG2B,CAAO,EAChNS,EAAOhE,EAAI,aAAa,EAAGzB,CAAK,EAAG/B,EAAI,CAAC,EAAGiE,GAAYiB,EAAE,IAAI,EAAE,CAAC,CAAC,EACjEuC,EAAYC,EAAM,aAAaH,EAAIF,EAAMC,CAAK,EAAGE,CAAI,EAAG,EAAG,CAAC,EAC5DG,EAAa,aAAa,aAAa1D,GAAYiB,EAAE,IAAI,EAAE,CAAC,EAAG,EAAE,EAAG,GAAG,EAC7E,OAAOlE,EAAMwC,EAAI2C,EAAW,IAAI,IAAIwB,CAAU,EAAGvB,EAAW,IAAKnF,EAAMwG,CAAS,CAAC,EAAGZ,CAAW,CAChG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CAAC,EAAG,MAAM,EACV,iBACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,iBACA,CACC,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,WACA,SACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,WACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,iBACA,CACC,IACA,aACA,QACA,UACA,UACA,CAAC,EAAG,MAAM,CACX,CACD,EAAG,CACF,EACA,iBACA,CACC,IACA,aACA,QACA,UACA,UACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,EAAG,CACF,EACA,iBACA,CACC,IACA,aACA,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,SACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,cACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,UACA,CAAC,OAAQ,OAAO,CACjB,EACA,IACA,MACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,cACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,KACD,EACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,WACA,CACC,EACA,aACA,KACD,EACA,CACC,EACA,UACA,CAAC,WAAW,CACb,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,MAAO,aAAa,CACtB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAMM,GAClB,UAAW,IAAM3D,EACjB,QAAS,IAAMxD,EACf,iBAAkB,IAAM4F,GACxB,UAAW,IAAM2B,EACjB,eAAkB,IAAMtC,GACxB,QAAW,IAAMvB,GACjB,QAAW,IAAMC,GACjB,QAAW,IAAMC,GACjB,QAAW,IAAMC,GACjB,YAAe,IAAMI,GACrB,YAAa,IAAMyD,EACnB,UAAW,IAAMzG,EACjB,UAAW,IAAMD,CAClB,CACD,CAAC,GAAKf,EAAE,GAAG,CAAC,CAAC,CAAC,EACV2H,GAAmB,KACnBC,IAA6B,WAAW,uBAA0BC,GAAMA,IAAIC,GAAO,CACtF,WAAYhI,EACZ,OAAQA,EACR,UAAWC,CACZ,CAAC,EAAG,WAAW,EACTgI,IAAYlI,EAAgB,GAAG,CACpCC,EACAA,EACAC,EACAA,CACD,EAAG6H,EAAS,GAAoB5H,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,EAAU8H,EAAUC,IAAY,CACrJ,UACA,IAAMC,EAAc,aAAahI,EAAS,EAAGyH,EAAgB,EACvDQ,EAAoB,aAAaH,EAAUE,CAAW,EACtDE,EAAetI,EAAM,aAAaI,EAAS,EAAGiI,CAAiB,EAAG,aAAajI,EAAS,EAAGiI,CAAiB,CAAC,EAC7GE,EAAavI,EAAM,aAAaG,EAAG,EAAGmI,EAAa,CAAC,EAAG,aAAanI,EAAG,EAAGmI,EAAa,CAAC,CAAC,EACzFE,EAAapE,GAAMmE,CAAU,EAC7BE,EAAYnE,GAAMiE,CAAU,EAC5BG,EAAY,aAAaD,EAAU,EAAG,EAAE,EACxCE,EAAY,aAAaF,EAAU,EAAG,EAAE,EACxCG,EAAS5I,EAAM,aAAa,aAAa0I,EAAWP,CAAO,EAAG,EAAE,EAAG,aAAa,aAAaQ,EAAWR,CAAO,EAAG,EAAE,CAAC,EACrHU,EAAO,aAAaV,EAAS,EAAE,EAC/BW,EAAY3F,EAAOlD,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAG0F,EAAI+C,CAAS,EAAIG,GAAQlD,EAAIgD,CAAS,EAAIE,CAAI,EACvF,OAAOf,GAAU,CAChB,WAAY9H,EAAM,aAAa,aAAawI,EAAW,EAAG,EAAE,EAAGF,EAAa,CAAC,EAAG,aAAa,aAAaE,EAAW,EAAG,EAAE,EAAGF,EAAa,CAAC,CAAC,EAC5I,OAAAM,EACA,UAAAE,CACD,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,cACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,kBACD,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,WACA,IACA,aACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,WACA,GACD,EACA,IACA,mBACD,EAAG,CACF,EACA,CACC,EACA,WACA,GACD,EACA,IACA,mBACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,eACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,eACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,YACA,IACA,SACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,WAAW,CACb,EACA,IACA,MACD,EACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,WAAW,CACb,EACA,IACA,MACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,eACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,eACA,GACD,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CAAC,CAAC,IAAK,CACN,WAAc,aACd,OAAU,SACV,UAAa,WACd,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,iBAAoB,IAAMjB,GAC1B,UAAW,IAAM7H,EACjB,YAAa,IAAMoE,GACnB,YAAa,IAAME,GACnB,aAAc,IAAMnB,EACpB,QAAS,IAAMlD,EACf,UAAW,IAAM0F,EACjB,UAAa,IAAMmC,EACpB,CACD,CAAC,GAAK5H,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,WAAW,EAC3B6I,IAAehJ,EAAgB,GAAG,CACvCmB,EACAjB,EACAA,EACAA,EACAA,EACAD,CACD,EAAGA,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8I,EAASC,EAAOC,EAAWC,EAAWC,EAAYR,IAAW,CAC1K,UACA,IAAMS,EAAqBC,GAAIzE,GAAImE,EAAS9H,EAAM,KAAM,KAAM,IAAI,CAAC,EAAG+H,CAAK,EACrEM,EAAqB,aAAa,EAAGF,CAAkB,EACvDG,EAAY7B,EAAMvD,GAAM,aAAamF,EAAoBL,CAAS,CAAC,EAAG,EAAG,aAAaA,EAAW,CAAC,CAAC,EACnGO,EAAW,aAAaD,EAAW,aAAaL,EAAW/E,GAAM,aAAaoF,EAAWL,CAAS,CAAC,CAAC,CAAC,EACrGO,EAAWtF,GAAM,aAAaoF,EAAWL,CAAS,CAAC,EACnDQ,EAAgB,aAAa,aAAa,EAAGR,CAAS,EAAGC,CAAU,EACnEQ,EAAQ,aAAaH,EAAUE,CAAa,EAC5CE,EAAQ,aAAaH,EAAUC,CAAa,EAClD,OAAO3J,EAAM,aAAa4J,EAAO,aAAahB,EAAO,EAAGe,CAAa,CAAC,EAAG,aAAaE,EAAO,aAAajB,EAAO,EAAGe,CAAa,CAAC,CAAC,CACpI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,gBACA,CACC,EACA,UACA,CAAC,UAAW,CACX,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,UACA,CAAC,gBAAiB,OAAO,CAC1B,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,oBACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,qBACA,IACA,WACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CACC,CACC,EACA,YACA,CAAC,kBAAkB,CACpB,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,IACA,CACC,EACA,YACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,YACA,IACA,WACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CAAC,CACA,EACA,YACA,IACA,WACD,CAAC,CACF,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,WACD,EACA,IACA,YACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,IACA,eACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,IACA,eACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,eACD,CACD,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,eACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM9E,GACjB,UAAW,IAAM3D,EACjB,UAAW,IAAMoI,GACjB,YAAa,IAAM3B,EACnB,YAAa,IAAMvD,GACnB,UAAW,IAAMpE,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,cAAc,EAC9B4J,IAAe/J,EAAgB,GAAG,CACvCmB,EACAD,EACAhB,EACAA,EACAA,CACD,EAAGgB,CAAK,GAAoBf,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC6J,EAAUC,EAAWlB,EAAWmB,EAAgBC,IAAkB,CAC/K,UACA,IAAMC,EAAetF,GAAIkF,EAAU7I,EAAM,KAAM,KAAM,IAAI,CAAC,EAAI,GACxDkJ,EAAcJ,EAAU,EACxBK,EAAmBD,EAAcH,EACjCK,EAAcnH,EAAOlD,EAAI,CAAC,EAAGmK,EAAaF,EAAgB,EAAE,EAC5DK,EAAOJ,GAAgBrB,EAAY,IAAMuB,EACzCG,EAAarH,EAAOmH,EAAarK,EAAI,CAAC,EAAGsK,CAAI,EACnD,OAAOtJ,EAAM,aAAa8I,EAAS,EAAGC,EAAU,CAAC,EAAG,aAAaD,EAAS,EAAGC,EAAU,CAAC,EAAG,aAAaD,EAAS,EAAGC,EAAU,CAAC,EAAGQ,CAAU,CAC7I,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,iBACA,CACC,EACA,UACA,CAAC,WAAY,CACZ,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,eACA,CACC,EACA,iBACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,cACA,CACC,EACA,YACA,GACD,CACD,EACA,CACC,GACA,mBACA,CACC,EACA,cACA,IACA,gBACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,cACA,CACC,EACA,gBACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,eACA,KACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,KACA,kBACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,aACA,CACC,cACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,EACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM3F,GACjB,UAAW,IAAM3D,EACjB,aAAc,IAAMiC,EACpB,QAAS,IAAMlD,EACf,UAAW,IAAMgB,CAClB,CACD,CAAC,GAAKf,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,cAAc,EACpC,SAASuK,GAAOC,EAAO,CACtB,IAAMC,EAAwB,IAAI,QAClC,OAAQxE,GAAW,CA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ACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,YACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,cACA,IACA,gBACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,QAAQ,CACpB,EACA,IACA,CACC,EACA,WACA,CAAC,SAAU,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,CAAC,EAAG,GAAG,EAAG,QAAQ,CACpB,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,SAAU,CAAC,EAAG,GAAG,CAAC,CACpB,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,SACA,SACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM3O,EACjB,eAAkB,IAAMyN,GACxB,UAAW,IAAMY,GACjB,UAAW,IAAME,GACjB,WAAY,IAAMzI,GAClB,UAAW,IAAM5E,CAClB,CACD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AAGvE,CAAC,CAClE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,GACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,WACD,EACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,QACD,CACD,CACD,EACA,IACA,QACD,EACA,IACA,aACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CAAC,EAAG,MAAM,EACV,CACC,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,iBACA,CACC,CACC,EACA,MACA,IACA,IACD,EACA,CACC,EACA,MACA,IACA,IACD,EACA,GACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAM6E,GACpB,YAAa,IAAME,GACnB,OAAU,IAAMhB,GAChB,UAAW,IAAMP,GACjB,UAAW,IAAM5K,EACjB,YAAa,IAAMkE,EACnB,iBAAkB,IAAM9B,EACzB,CACD,C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CA,CACC,GACA,YACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,CACD,CACD,EAAG,CACF,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,UACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,KACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,sBACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,sBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,EACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,MAAM,EAAG,CAAC,EAAG,MAAM,CAAC,CAC1B,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,KACD,EACA,CAAC,CACA,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,YACA,IACA,QACD,EACA,IACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,GAAG,CAAC,CACvB,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,SACA,IACA,OACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,QACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CAAC,CACF,CACD,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,cACA,CACC,IACA,KACA,YACA,cACA,QACA,IACD,CACD,CACD,CAAC,CAAC,EACF,CACC,GACA,CACC,EACA,QACA,MACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,aACA,CACC,IACA,WACA,YACA,cACA,QACA,IACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,cACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,SACA,IACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,cACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,SACA,IACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CACR,EACA,UACA,CAAC,OAAQ,MAAM,CAChB,CAAC,CACF,CACD,CACD,CAAC,EACD,CAAC,EAAG,CAAC,CACJ,EACA,QACA,IACA,CACC,EACA,aACA,CACC,IACA,WACA,YACA,cACA,QACA,IACD,CACD,CACD,CAAC,CAAC,CACH,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,OACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,CACC,EACA,MACA,GACD,EACA,OACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMpM,GACjB,UAAW,IAAM3D,EACjB,YAAa,IAAMyG,EACnB,UAAW,IAAM3H,EACjB,sBAAuB,IAAM0Q,GAC7B,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CA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,MACA,IACA,OACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMZ,GACpB,UAAW,IAAMsB,GACjB,UAAW,IAAME,GACjB,UAAW,IAAMhB,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRZ,GAAWS,EAAgB,GAAG,CACnCC,EACAC,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACI,EAAIa,EAAIC,IAAO,CAC5H,UACA,OAAOpB,EAAM,aAAaM,EAAG,EAAGa,CAAE,EAAG,aAAab,EAAG,EAAGc,CAAE,CAAC,CAC5D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAMpB,CAAM,CACrC,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRjB,GAAgBc,EAAgB,GAAG,CACxCE,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmB,EAAQC,EAAMC,IAAS,CACpI,UAEA,OAAOvB,EAAM,aAAa,aAAasB,EAAMD,CAAM,EAAG,GAAG,EAAG,aAAa,aAAaE,EAAMF,CAAM,EAAG,GAAG,CAAC,CAC1G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,MACA,CAAC,EAAG,MAAM,CACX,EAAG,CAAC,GAAI,CACP,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,QACD,EACA,IACA,KACD,EAAG,CACF,EACA,CACC,EACA,OACA,IACA,QACD,EACA,IACA,KACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAMrB,CAAM,CACrC,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRf,GAAoBY,EAAgB,GAAG,CAC5CE,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsB,EAAKC,EAAWC,IAAe,CAC1I,UACA,IAAMC,EAAiBC,EAAI,aAAaH,EAAW,EAAE,EAAG,IAAI,EACtDI,EAAYC,EAAM,aAAa,aAAaN,EAAK,EAAE,EAAGG,CAAc,EAAG,EAAG,CAAC,EAC3EI,EAAMC,GAAW,EAAG,EAAGH,CAAS,EACtC,OAAOI,EAAO,aAAa,aAAa,EAAGJ,CAAS,EAAG,aAAa,EAAGA,CAAS,CAAC,EAAGE,EAAKL,EAAa,EAAE,CACzG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,iBACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,gBACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,WACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,WACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,WACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,OACA,MACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAME,EACjB,YAAa,IAAME,EACnB,iBAAkB,IAAME,GACxB,aAAc,IAAMC,CACrB,CACD,CAAC,GAAK/B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRvB,IAAgC,WAAW,uBAA0BuD,GAAMA,IAAIC,GAAO,CAC3F,OAAQnC,EACR,IAAKA,EACL,IAAKA,CACN,CAAC,EAAG,cAAc,EACZd,GAAea,EAAgB,GAAG,CACvCC,EACAA,EACAC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGtB,EAAY,GAAoBuB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACI,EAAIH,EAAQkB,EAAQjB,EAAOgC,EAAOC,EAAOC,EAAYC,EAAWd,EAAWe,EAAYjC,EAAQmB,IAAe,CAClO,UACA,IAAMe,EAAetD,GAAkB,aAAakC,EAAQjB,CAAK,EAAGqB,EAAWC,CAAU,EACnFgB,EAAY,aAAaJ,EAAY,GAAG,EACxCK,EAAWf,EAAIgB,GAAK,aAAa,aAAaR,EAAOA,CAAK,EAAG,aAAaC,EAAOA,CAAK,CAAC,CAAC,EAAG,IAAI,EAC/FQ,EAAaC,GAAI7C,EAAI,CAAC,EAAG,aAAa,GAAI0C,CAAQ,CAAC,EACnDI,EAAU,aAAa,aAAa,aAAa,aAAa,aAAaX,EAAOS,CAAU,EAAG,EAAE,EAAGH,CAAS,EAAGD,CAAY,EAAGlC,CAAM,EACrIyC,EAAU,aAAa,aAAa,aAAa,aAAaX,EAAOQ,CAAU,EAAG,EAAE,EAAGH,CAAS,EAAGD,CAAY,EAC/GjC,EAAUL,EAAO,EACjBM,EAAU,aAAa,EAAGN,EAAO,CAAC,EAClC8C,EAAU,aAAazC,EAAS,aAAa,aAAaF,EAAG,EAAGE,CAAO,EAAG+B,CAAS,CAAC,EACpFW,EAAU,aAAazC,EAAS,aAAa,aAAaH,EAAG,EAAGG,CAAO,EAAG8B,CAAS,CAAC,EACpFY,EAAQ,aAAaF,EAASF,CAAO,EACrCK,EAAQ,aAAaF,EAASF,CAAO,EACrCK,EAAW,aAAab,EAAY,GAAG,EACvCc,EAAU,aAAaP,EAASM,CAAQ,EACxCE,EAAU,aAAaP,EAASK,CAAQ,EAC9C,OAAO1E,GAAa,CACnB,OAAQqB,EAAMmD,EAAOC,CAAK,EAC1B,IAAKpD,EAAM,aAAamD,EAAOG,CAAO,EAAG,aAAaF,EAAOG,CAAO,CAAC,EACrE,IAAKvD,EAAM,aAAamD,EAAOG,CAAO,EAAG,aAAaF,EAAOG,CAAO,CAAC,CACtE,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,SACA,IACA,OACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,oBACA,CACC,MACA,YACA,YACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CACC,EACA,QACA,IACA,OACD,CACD,CAAC,CACF,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,CACF,EACA,CAAC,EAAG,IAAI,EACR,IACA,UACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,YACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,WACD,EACA,IACA,cACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,YACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,WACD,EACA,IACA,cACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,SACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,WACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,SACD,EACA,IACA,WACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,IACA,SACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,IACA,SACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,IACA,UACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,IACA,UACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,eACA,CAAC,CAAC,IAAK,CACN,OAAU,CACT,EACA,UACA,CAAC,QAAS,OAAO,CAClB,EACA,IAAO,CACN,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,SACD,EAAG,CACF,EACA,QACA,IACA,SACD,CAAC,CACF,EACA,IAAO,CACN,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,SACD,EAAG,CACF,EACA,QACA,IACA,SACD,CAAC,CACF,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,kBAAqB,IAAMpE,GAC3B,UAAW,IAAMyC,EACjB,WAAY,IAAMgB,GAClB,UAAW,IAAME,GACjB,QAAS,IAAM7C,EACf,aAAgB,IAAMtB,GACtB,UAAW,IAAMqB,CAClB,CACD,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRrB,GAAkBkB,EAAgB,GAAG,CAC1CC,EACAC,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsD,EAAcC,EAAMtC,EAAIC,IAAO,CAC5I,UACA,IAAMsC,EAAI,aAAaD,EAAM,CAAC,EAC9B,OAAOzD,EAAM,aAAa,aAAamB,EAAIqC,EAAa,CAAC,EAAGE,CAAC,EAAG,aAAa,aAAatC,EAAIoC,EAAa,CAAC,EAAGE,CAAC,CAAC,CAClH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CAAC,GAAI,CACP,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CACC,EACA,eACA,GACD,CACD,EACA,IACA,GACD,EAAG,CACF,EACA,CACC,EACA,KACA,IACA,CACC,EACA,eACA,GACD,CACD,EACA,IACA,GACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAE,UAAW,IAAM1D,CAAM,CACrC,CAAC,GAAKE,EAAE,GAAG,CAAC,CAAC,CAAC,EACRb,GAAYU,EAAgB,GAAG,CACpC4D,EACAA,EACA1D,EACAA,CACD,EAAG0D,CAAK,GAAoBzD,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC0D,EAAKC,EAAWC,EAAeC,IAAgB,CAC5J,UACA,IAAMC,EAAaL,EAAM,KAAM,KAAM,IAAI,EACnCM,EAAUC,GAAIN,EAAKI,CAAU,EAC7BG,EAASC,EAAIR,EAAKC,EAAWC,CAAa,EAC1CO,EAAYH,GAAIC,EAAQH,CAAU,EACxC,OAAOI,EAAID,EAAQA,EAAO,IAAI,aAAaF,EAASrC,EAAIyC,EAAW,IAAI,CAAC,CAAC,EAAGpC,EAAOhC,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAG8D,EAAc,EAAE,CAAC,CACrH,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,aACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,EACX,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,MAAO,YAAY,CACrB,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,MACA,YACA,eACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,SAAU,YAAY,CACxB,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,YAAa,CAAC,EAAG,QAAQ,CAAC,CAC5B,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,cACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,SACA,eACA,gBACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMJ,EACjB,UAAW,IAAMO,GACjB,UAAW,IAAME,EACjB,UAAW,IAAMxC,EACjB,aAAc,IAAMK,EACpB,QAAS,IAAMhC,CAChB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRpB,GAAuBiB,EAAgB,GAAG,CAC/CE,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsB,EAAK8C,EAAcC,EAAKnC,EAAOC,EAAOmC,EAAYC,IAAc,CAC3K,UACA,IAAMC,EAAQ9C,EAAI,aAAa0C,EAAc,EAAE,EAAG,IAAI,EAChDK,EAAK/C,EAAI,aAAa8C,EAAO,KAAK,EAAG,aAAaH,EAAK,GAAG,CAAC,EAC3DK,EAAW,aAAapD,EAAK+C,CAAG,EAChCM,EAAU,aAAa/C,EAAM,aAAa,aAAa8C,EAAU,EAAE,EAAGD,CAAE,EAAG,EAAG,CAAC,EAAG7C,EAAM,aAAa,aAAaN,EAAK,EAAE,EAAGmD,CAAE,EAAG,EAAG,CAAC,CAAC,EACtIG,EAAKhE,GAAI,aAAa0D,EAAYhF,EAAU,CAAC,EAC7CuF,EAAK/D,GAAI,aAAawD,EAAYhF,EAAU,CAAC,EAC7CwF,EAAiB,aAAa,aAAa5C,EAAO0C,CAAE,EAAG,aAAazC,EAAO0C,CAAE,CAAC,EAC9EE,EAAcnD,EAAM,aAAa,aAAakD,EAAgB,EAAE,EAAG,EAAE,EAAG,EAAG,CAAC,EAClF,OAAO,aAAa,aAAaH,EAASI,CAAW,EAAGR,CAAS,CAClE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,eACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,CAAC,EAAG,QAAQ,CACb,EAAG,CACF,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,QACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,iBACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,UACA,IACA,aACD,EACA,IACA,WACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM7C,EACjB,YAAa,IAAME,EACnB,UAAW,IAAMhB,GACjB,WAAc,IAAMtB,GACpB,UAAW,IAAMwB,EAClB,CACD,CAAC,GAAKd,EAAE,GAAG,CAAC,CAAC,CAAC,EACRd,GAAgBW,EAAgB,GAAG,CACxCE,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACkC,EAAOC,EAAOmC,EAAYC,EAAWS,EAAmBzC,IAAiB,CACpL,UACA,IAAMqC,EAAKhE,GAAI,aAAa0D,EAAYhF,EAAU,CAAC,EAC7CuF,EAAK/D,GAAI,aAAawD,EAAYhF,EAAU,CAAC,EAC7C2F,EAAKlF,EAAI,CAAC,EACVmF,EAAOxC,GAAK,aAAa,aAAa,aAAaR,EAAOA,CAAK,EAAG,aAAaC,EAAOA,CAAK,CAAC,EAAG,aAAa8C,EAAIA,CAAE,CAAC,CAAC,EACpHE,EAAK,aAAajD,EAAOgD,CAAI,EAC7BE,EAAK,aAAajD,EAAO+C,CAAI,EAC7BG,EAAM,aAAaJ,EAAIC,CAAI,EAC3BI,EAAQ,aAAa,aAAa,aAAaH,EAAI,aAAaP,EAAIrF,EAAc,CAAC,EAAG,aAAa6F,EAAI,aAAaP,EAAItF,EAAc,CAAC,CAAC,EAAG,aAAa8F,EAAK,aAAa,EAAG9F,EAAc,CAAC,CAAC,EAC7LgG,EAAYC,GAAK,aAAa,EAAG,aAAaR,EAAmB,CAAC,CAAC,CAAC,EAC1E,OAAO,aAAa,aAAaS,GAAI7D,EAAM0D,EAAO,EAAG,CAAC,EAAGC,CAAS,EAAGhB,CAAS,EAAGhC,CAAY,CAC9F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,mBACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CACC,EACA,QACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,MACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,gBACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,gBACD,CACD,CACD,EACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,gBACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,oBACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,WAAW,CACf,EACA,IACA,WACD,EACA,IACA,cACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM3B,GACjB,WAAc,IAAMtB,GACpB,UAAW,IAAMwB,GACjB,QAAS,IAAMf,EACf,WAAY,IAAM2C,GAClB,eAAkB,IAAMnD,GACxB,WAAY,IAAMiG,GAClB,UAAW,IAAMC,GACjB,YAAa,IAAM7D,CACpB,CACD,CAAC,GAAK5B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRlB,GAAkBe,EAAgB,GAAG,CAC1CE,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsB,EAAKY,EAAOC,EAAOuD,EAASC,EAAiBC,EAAKpE,IAAe,CAC5K,UACA,IAAMqE,EAAU,aAAa,aAAa3D,EAAOA,CAAK,EAAG,aAAaC,EAAOA,CAAK,CAAC,EAC7E2D,EAAU,aAAa,EAAGpD,GAAK,aAAamD,EAAS,CAAC,CAAC,CAAC,EACxDE,EAAW7B,EAAI,EAAG,IAAKtC,EAAM+D,EAAiB,EAAG,CAAC,CAAC,EACnDK,EAAS,aAAa,aAAa,aAAaP,GAAI,aAAa,EAAGK,CAAO,EAAGC,CAAQ,EAAGL,CAAO,EAAG,CAAC,EAAGE,CAAG,EAC1GK,EAAevE,EAAI,aAAaiE,EAAiB,GAAG,EAAG,IAAI,EAC3DO,EAAetE,EAAM,aAAa,aAAaN,EAAK,EAAE,EAAG2E,CAAY,EAAG,EAAG,CAAC,EAClF,OAAOlE,EAAO,aAAa,aAAa,aAAa,aAAa,EAAGmE,CAAY,EAAG,aAAa,EAAGA,CAAY,CAAC,EAAGR,CAAO,EAAGE,CAAG,EAAGI,EAAQxE,EAAa,EAAE,CAC5J,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,EACA,CACC,KAAQ,IACR,KAAQ,iBACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CACC,EACA,QACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,CACC,EACA,YACA,CACC,kBACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,SACD,EAAG,UAAU,CACd,EACA,IACA,SACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,KACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,kBACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,eACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,cACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,cACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,cACD,CACD,EACA,IACA,SACD,EACA,IACA,KACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,UACA,SACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAY,IAAMkB,GAClB,UAAW,IAAMwB,EACjB,YAAa,IAAMtC,EACnB,UAAW,IAAM6D,GACjB,UAAW,IAAM/D,EACjB,aAAc,IAAMK,CACrB,CACD,CAAC,GAAK/B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRnB,GAAiBgB,EAAgB,GAAG,CACzCsG,EACAA,EACApG,EACAA,EACAA,EACAA,EACAD,EACAC,EACAA,EACAA,EACA0D,EACA1D,EACAA,EACA0D,EACA1D,EACAA,EACA0D,EAC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CA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,CAAC,EAAG,SAAS,CACd,EAAG,CACF,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,oBACA,CACC,MACA,YACA,YACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,uBACA,CACC,MACA,eACA,MACA,QACA,QACA,aACA,WACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,GACD,EACA,CACC,EACA,UACA,GACD,EACA,CACC,EACA,UACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CACC,aACA,YACA,gBACA,wBACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,gBACA,CACC,QACA,QACA,aACA,YACA,oBACA,cACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,kBACA,CACC,MACA,QACA,QACA,UACA,kBACA,MACA,YACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,eACA,GACD,EACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,eACA,GACD,EACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,iBACA,GACD,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,eACA,GACD,EACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,OACA,OACA,OACA,MACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,KACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,YACA,WACA,YACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,aACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,IACA,aACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMxF,EACjB,YAAa,IAAME,EACnB,kBAAqB,IAAM3C,GAC3B,qBAAwB,IAAML,GAC9B,UAAW,IAAM6E,EACjB,UAAa,IAAMtE,GACnB,cAAiB,IAAMD,GACvB,gBAAmB,IAAMJ,GACzB,UAAW,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ACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,MACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,MACD,EACA,IACA,IACD,EACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMF,EACjB,aAAc,IAAMC,GACpB,UAAW,IAAME,GACjB,UAAW,IAAMV,EACjB,WAAY,IAAMW,EACnB,CACD,CAAC,GAAKhB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRR,GAAgBI,EAAgB,GAAG,CACxCG,EACAF,EACAC,CACD,EAAGC,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAOhB,EAAOiB,IAAe,CAC1I,UACA,OAAOnB,EAAMoB,EAAO,aAAaF,EAAM,EAAG,EAAE,EAAGhB,EAAM,EAAGiB,EAAa,EAAE,EAAGC,EAAO,aAAaF,EAAM,EAAG,EAAE,EAAGhB,EAAM,EAAGiB,EAAa,EAAE,CAAC,CACtI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CAAC,CACA,EACA,aACA,CACC,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EAAG,CACF,EACA,aACA,CACC,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAMnB,EACjB,aAAc,IAAMoB,CACrB,CACD,CAAC,GAAKnB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRT,GAAeK,EAAgB,GAAG,CAACE,EAAKA,CAAG,EAAGsB,EAAI,GAAoBpB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACqB,EAAKC,IAAQ,CAC1K,UACA,OAAOD,EAAM,aAAaC,EAAK,CAAC,CACjC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,KACT,EAAG,CACF,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CAAC,CACb,CAAC,GAAKtB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRX,GAAaO,EAAgB,GAAG,CACrCE,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACqB,EAAKE,EAAWD,EAAKE,IAAc,CAC9I,UACA,IAAMC,EAAIb,EAAM,aAAaW,EAAW,MAAM,EAAG,aAAaD,EAAKE,CAAS,CAAC,EAC7E,OAAOhB,EAAQ,aAAa,aAAaa,EAAK,EAAE,EAAGI,CAAC,EAAG,EAAG,CAAC,CAC5D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,SAAS,CACd,EAAG,CACF,EACA,MACA,IACA,WACD,CAAC,CACF,CACD,EAAG,CAAC,GAAI,CACP,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAMb,EACjB,YAAa,IAAMJ,CACpB,CACD,CAAC,GAAKR,EAAE,GAAG,CAAC,CAAC,CAAC,EACRP,GAAqBG,EAAgB,GAAG,CAC7CG,EACAD,EACAA,CACD,EAAGO,CAAK,GAAoBL,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC0B,EAAIC,EAAQC,IAAQ,CACjI,UACA,OAAOrB,GAAYF,EAAM,aAAa,aAAa,aAAaqB,EAAG,EAAG,EAAE,EAAGC,CAAM,EAAGC,CAAG,EAAG,aAAa,aAAaF,EAAG,EAAG,EAAE,EAAGE,CAAG,EAAG,CAAC,CAAC,CACxI,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,KACD,EACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,gBAAiB,IAAMrB,GACvB,UAAW,IAAMF,CAClB,CACD,CAAC,GAAKL,EAAE,GAAG,CAAC,CAAC,CAAC,EACRhB,IAAgC,WAAW,uBAA0B6C,GAAMA,IAAIC,GAAO,CAC3F,QAASzB,EACT,UAAWA,CACZ,CAAC,EAAG,cAAc,EACZf,GAA0BM,EAAgB,GAAG,CAACS,EAAOA,CAAK,EAAGrB,EAAY,GAAoBgB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+B,EAAQC,IAAQ,CACpM,UACA,IAAMC,EAAK1B,GAAYyB,EAAI,IAAID,EAAO,IAAIG,GAAMH,EAAQC,CAAG,CAAC,CAAC,CAAC,EAC9D,OAAOhD,GAAa,CACnB,QAASiD,EACT,UAAW5B,EAAM,aAAa,aAAa0B,EAAO,EAAGE,EAAG,CAAC,EAAG,aAAaF,EAAO,EAAGE,EAAG,CAAC,CAAC,EAAG,aAAa,aAAaF,EAAO,EAAGE,EAAG,CAAC,EAAG,aAAaF,EAAO,EAAGE,EAAG,CAAC,CAAC,EAAG,aAAa,aAAaF,EAAO,EAAGE,EAAG,CAAC,EAAG,aAAaF,EAAO,EAAGE,EAAG,CAAC,CAAC,CAAC,CAC9O,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,QACT,EAAG,CACF,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,SAAU,KAAK,CACjB,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,eACA,CAAC,CAAC,IAAK,CACN,QAAW,KACX,UAAa,IACd,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,gBAAiB,IAAM1B,GACvB,UAAW,IAAM2B,GACjB,UAAW,IAAM7B,EACjB,aAAgB,IAAMrB,EACvB,CACD,CAAC,GAAKgB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRf,IAAqC,WAAW,uBAA0B4C,GAAMA,IAAIC,GAAO,CAChG,OAAQzB,EACR,QAASA,EACT,MAAOA,EACP,KAAMA,EACN,WAAYP,EACZ,YAAaA,CACd,CAAC,EAAG,mBAAmB,EACjBH,GAA0BC,EAAgB,GAAG,CAACX,EAAiB,EAAGa,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMmC,GAAM,CACtL,UACA,IAAMC,EAAQ9C,GAAwB6C,EAAE,OAAQA,EAAE,OAAO,EACnDE,EAAI9B,GAAY4B,EAAE,MAAM,IAAIA,EAAE,IAAI,CAAC,EACnCG,EAAKJ,GAAMG,EAAGD,EAAM,OAAO,EAC3BG,EAAKL,GAAMG,EAAGD,EAAM,SAAS,EAC7BI,EAAKhC,EAAQiC,EAAIP,GAAMG,EAAGF,EAAE,MAAM,CAAC,EAAG,KAAM,CAAC,EAC7CO,EAAK9B,EAAMuB,EAAE,WAAY,IAAI,EAC7BQ,EAAK/B,EAAMuB,EAAE,YAAa,IAAI,EAC9BS,EAAO,aAAa,aAAa,aAAa,aAAaN,EAAII,CAAE,EAAG,aAAaJ,EAAII,CAAE,CAAC,EAAG,aAAa,aAAaH,EAAII,CAAE,EAAG,aAAaJ,EAAII,CAAE,CAAC,CAAC,EAAG,aAAa,aAAaH,EAAI,CAAC,EAAG,EAAE,CAAC,EACjM,OAAOK,GAAM,aAAaD,EAAM,EAAE,CAAC,CACpC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,0BACA,CAAC,CACA,EACA,IACA,QACD,EAAG,CACF,EACA,IACA,SACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,OACD,EACA,KACD,EACA,CAAC,CACA,EACA,IACA,MACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,QACA,SACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,IAAK,CACL,EACA,QACA,WACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,IAAK,CACL,EACA,IACA,QACD,CAAC,CACF,CAAC,CACF,EACA,CAAC,EAAG,QAAQ,EACZ,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,YACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,aACD,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,E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AC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,YACA,WACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMV,EACnB,aAAc,IAAMW,CACrB,CACD,CAAC,GAAKnB,EAAE,GAAG,CAAC,CAAC,CAAC,EACR+E,IAAgBnF,EAAgB,GAAG,CAACE,EAAKO,CAAK,EAAGA,CAAK,GAAoBL,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACgF,EAAWC,IAAW,CACvL,UACA,OAAO5E,EAAMwC,GAAM,aAAa,aAAamC,EAAWC,EAAO,CAAC,EAAG,EAAE,CAAC,EAAGpC,GAAM,aAAa,aAAamC,EAAWC,EAAO,CAAC,EAAG,EAAE,CAAC,EAAGpC,GAAM,aAAa,aAAamC,EAAWC,EAAO,CAAC,EAAG,EAAE,CAAC,CAAC,CAChM,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,WACT,EAAG,CACF,KAAQ,IACR,KAAQ,QACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAW,IAAM5E,EACjB,UAAW,IAAMwC,EAClB,CACD,CAAC,GAAK7C,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkF,IAAiBtF,EAAgB,GAAG,CAACG,EAAOD,CAAG,EAAGC,CAAK,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACmF,EAAWC,IAAU,CACvL,UACA,OAAOrF,EAAM,aAAasF,GAAM,aAAa,aAAa,aAAaF,EAAU,EAAG,GAAG,EAAG,aAAaC,EAAO,EAAE,CAAC,EAAG,GAAG,CAAC,EAAGnC,GAAI,aAAa,aAAa,aAAakC,EAAU,EAAG,GAAG,EAAG,aAAaC,EAAO,EAAE,CAAC,EAAG,GAAG,CAAC,CAAC,EAAG,aAAanC,GAAI,aAAa,aAAa,aAAakC,EAAU,EAAG,GAAG,EAAG,aAAaC,EAAO,EAAE,CAAC,EAAG,GAAG,CAAC,EAAGC,GAAM,aAAa,aAAa,aAAaF,EAAU,EAAG,GAAG,EAAG,aAAaC,EAAO,EAAE,CAAC,EAAG,GAAG,CAAC,CAAC,CAAC,CACxa,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,WACT,EAAG,CACF,KAAQ,IACR,KAAQ,OACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMC,GACjB,UAAW,IAAMpC,GACjB,UAAW,IAAMlD,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRsF,IAAiB1F,EAAgB,GAAG,CACzCE,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACuF,EAAIC,EAAIC,EAAMC,EAAMC,EAAQC,EAAOC,EAAQC,IAAY,CAClK,UACA,IAAMC,EAAK,aAAa,aAAaR,EAAIE,CAAI,EAAG,aAAaD,EAAIE,CAAI,CAAC,EAChEM,EAAK,aAAa,aAAaT,EAAIG,CAAI,EAAG,aAAaF,EAAIC,CAAI,CAAC,EAChE,EAAI1F,EAAMgG,EAAIC,CAAE,EAChBC,EAAM5C,GAAa,IAAK,IAAK2C,CAAE,EACjCE,EAAM,aAAa,aAAaD,EAAKA,CAAG,EAAGH,CAAO,EAChDK,EAAK,aAAaR,EAAQ,CAAC,EACjCO,EAAM,aAAaA,EAAK,aAAa,aAAa7C,GAAa8C,EAAI,aAAaA,EAAI,EAAE,EAAGtF,GAAS,EAAE,IAAId,EAAM,aAAa,EAAG6F,CAAK,EAAG,GAAG,CAAC,CAAC,CAAC,EAAG,GAAG,EAAGC,CAAM,CAAC,EAC5J,IAAMO,EAAK,aAAaT,EAAQ,IAAI,EACpCO,EAAM,aAAaA,EAAK,aAAa,aAAa7C,GAAa+C,EAAI,aAAaA,EAAI,EAAE,EAAGvF,GAAS,EAAE,IAAId,EAAM,aAAa,KAAM6F,CAAK,EAAG,GAAG,CAAC,CAAC,CAAC,EAAG,IAAI,EAAGC,CAAM,CAAC,EAChK,IAAMQ,EAAK,aAAaV,EAAQ,CAAC,EACjCO,EAAM,aAAaA,EAAK,aAAa,aAAa7C,GAAagD,EAAI,aAAaA,EAAI,EAAE,EAAGxF,GAAS,EAAE,IAAId,EAAM,aAAa,IAAK6F,CAAK,EAAG,EAAE,CAAC,CAAC,CAAC,EAAG,CAAC,EAAGC,CAAM,CAAC,EAC3J,IAAMS,EAAK,aAAaX,EAAQ,GAAG,EACnCO,EAAM,aAAaA,EAAK,aAAa,aAAa7C,GAAaiD,EAAI,aAAaA,EAAI,EAAE,EAAGzF,GAAS,EAAE,IAAId,EAAM,aAAa,GAAI6F,CAAK,EAAG,GAAG,CAAC,CAAC,CAAC,EAAG,EAAE,EAAGC,CAAM,CAAC,EAC5J,IAAMU,EAAK,aAAaZ,EAAQ,GAAG,EACnC,OAAAO,EAAM,aAAaA,EAAK,aAAa,aAAa7C,GAAakD,EAAI,aAAaA,EAAI,EAAE,EAAG1F,GAAS,EAAE,IAAId,EAAM,aAAa,KAAM6F,CAAK,EAAG,IAAI,CAAC,CAAC,CAAC,EAAG,GAAG,EAAGC,CAAM,CAAC,EACzJK,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CACC,EACA,KACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,iBACA,CACC,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,MAAM,EACV,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,CACC,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CAAC,CACF,CAAC,CACF,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,CACC,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,OACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CAAC,CACF,CAAC,CACF,CACD,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,CACC,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,MAAM,EACV,IACA,OACD,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CAAC,CACF,CAAC,CACF,CACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,CACC,KACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,OACD,EAAG,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,CAAC,CACF,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EAC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,CACZ,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,OACA,MACA,CAAC,IAAK,OAAO,CACd,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,GACD,CACD,EACA,CACC,GACA,CACC,EACA,OACA,MACA,CAAC,IAAK,MAAM,CACb,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,OACA,MACA,CAAC,IAAK,KAAK,CACZ,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,OACA,MACA,CAAC,IAAK,OAAO,CACd,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,OACA,MACA,CAAC,IAAK,MAAM,CACb,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,KACA,CACC,EACA,IACA,GACD,CACD,CACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,OAAO,CACb,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMH,EACjB,YAAa,IAAME,EACnB,QAAS,IAAMf,EACf,KAAQ,IAAMW,EACd,aAAc,IAAMM,CACrB,CACD,CAAC,GAAKV,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgBI,CAAI,EAAE,CAC7C,CACA,SAASO,IAAuBC,EAAS,CACxC,OAAOjB,EAAgB,GAAG,CAACkB,EAAKA,CAAG,CAAC,GAAoBb,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACc,EAAIC,IAAO,CACpJ,UACA,IAAMC,EAAUC,GAAkBvB,GAAc,EAAE,GAAG,EAC/CwB,EAAOzB,EAAIuB,EAAQ,CAAC,EACpBG,EAAO1B,EAAIuB,EAAQ,CAAC,EACpBI,EAAI3B,EAAIL,EAAS,EACjBiC,EAAK,aAAa,aAAa5B,EAAIqB,CAAE,EAAG,EAAE,EAAGM,CAAC,EAC9CE,EAAK,aAAa,aAAa7B,EAAIsB,CAAE,EAAG,EAAE,EAAGK,CAAC,EAC9C3I,EAAI,aAAa,IAAK2I,CAAC,EACzBX,EAAQhB,EAAI,CAAC,EACjB,QAAS9C,EAAK,EAAGA,EAAK,EAAGA,IAAM,QAASC,EAAK,EAAGA,EAAK,EAAGA,IAAM,CAC7D,IAAM2E,EAAI,aAAaF,EAAI,aAAa,aAAa,aAAa5B,EAAI7C,CAAE,EAAG,EAAE,EAAG,CAAC,EAAGnE,CAAC,CAAC,EAChFyB,EAAI,aAAaoH,EAAI,aAAa,aAAa,aAAa7B,EAAI9C,CAAE,EAAG,EAAE,EAAG,CAAC,EAAGlE,CAAC,CAAC,EAChF+I,EAAKX,EAAIL,EAAM,aAAae,EAAGL,CAAI,EAAGzB,EAAI,CAAC,EAAG,aAAayB,EAAM,CAAC,CAAC,CAAC,EACpEO,EAAKZ,EAAIL,EAAM,aAAatG,EAAGiH,CAAI,EAAG1B,EAAI,CAAC,EAAG,aAAa0B,EAAM,CAAC,CAAC,CAAC,EAC1EV,EAAQH,EAAIG,EAAOG,EAAQc,GAAYhC,GAAc,EAAE,IAAKiC,GAAMH,EAAIC,CAAE,EAAG,CAAC,CAAC,CAAC,CAC/E,CACAG,GAAalC,GAAc,EAAE,KAAMiC,GAAMb,EAAIC,CAAE,EAAGV,EAAMI,EAAO,EAAG,EAAG,CAAC,CAAC,CACxE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,UACA,CACC,EACA,wBACA,CAAC,CACA,EACA,CACC,EACA,gBACA,GACD,EACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,IACA,IACA,MACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,IACA,IACA,MACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,QAAS,CACT,EACA,UACA,CAAC,CACA,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,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H,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,OACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,IAAI,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,IAAI,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,aACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,OACA,GACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,EACA,OACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,aACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,WACD,EAAG,CAAC,EAAG,MAAM,CAAC,CACf,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,EAAG,SAAS,CACb,CACD,EACA,CACC,GACA,UACA,CACC,EACA,wBACA,CAAC,CACA,EACA,CACC,EACA,cACA,GACD,EACA,KACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,UACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,OAAO,EACX,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,QACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,IACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,IACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,OACA,IACA,MACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,OACA,IACA,MACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,IACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,IACA,IACA,OACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,CAAC,CACF,EACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,SAAU,CAAC,EAAG,OAAO,CAAC,CACxB,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,KACD,CACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,GACD,CACD,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CACC,GACA,SACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,MACD,EACA,CACC,GACA,QACA,MACD,EACA,CACC,GACA,SACA,CAAC,EAAG,CAAC,CACJ,EACA,QACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,OACA,IACA,MACD,CACD,CAAC,CAAC,CACH,EACA,CACC,EACA,aACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,QACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,IACA,QACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,MACD,EACA,CACC,GACA,OACA,MACD,EACA,CACC,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,WACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,KACA,IACA,WACD,EACA,CACC,IACA,KACA,IACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,UACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,OACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,CAAC,CACF,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,IACA,MACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,OACD,EACA,CAAC,EAAG,CACH,CACC,EACA,QACA,IACA,KACD,EACA,CACC,EACA,OACA,IACA,IACD,EACA,CACC,EACA,OACA,IACA,IACD,CACD,CAAC,CACF,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CACC,GACA,CACC,EACA,QACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CAAC,EAAG,CAAC,CACJ,EACA,QACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,CAAC,CAAC,EACF,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,EACA,IACA,QACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,IACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAK,CACP,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,IACA,IACD,EACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,CACF,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,SAAS,CAAC,CACxB,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,KACA,IACA,OACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,KACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,IACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,QACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,CACF,EACA,QACA,CAAC,GAAG,CACL,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,CACD,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,UAAW,CACX,EACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,GACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,WACD,CACD,CACD,CACD,CACD,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,cACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,cACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,UACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,cACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CAAC,EAAG,CACH,CACC,GACA,SACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,EACA,IACA,SACD,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,OACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,QAAQ,CACV,EACA,IACA,SACD,CACD,EACA,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,WACA,IACA,OACD,EACA,CACC,EACA,aACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,QACA,IACA,UACD,EACA,IACA,YACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,UACA,IACA,MACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,EACA,OACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,WACA,IACA,OACD,EACA,CACC,EACA,aACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,cACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,QACA,IACA,CACC,EACA,QACA,CAAC,aAAa,CACf,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,WAAW,CACb,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,CAAC,aAAa,CACf,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,SACA,MACD,EACA,CACC,GACA,SACA,MACD,EACA,CACC,GACA,SACA,MACD,EACA,CACC,GACA,SACA,MACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,WACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CAAC,CACF,EAAG,IAAI,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,UACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,SACA,IACA,aACD,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,UACA,CACC,IACA,CACC,EACA,UACA,CACC,OACA,OACA,QACA,KACD,CACD,EACA,SACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CAAC,CACF,EAAG,IAAI,CACR,EACA,GACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CAAC,CACF,EAAG,IAAI,CACR,EACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,CACV,EACA,UACA,CACC,OACA,CACC,EACA,IACA,GACD,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,CACV,EACA,UACA,CACC,OACA,CACC,EACA,IACA,GACD,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,CACV,EACA,UACA,CACC,OACA,CACC,EACA,IACA,GACD,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,SAAU,CACV,EACA,UACA,CACC,OACA,CACC,EACA,IACA,GACD,EACA,MACD,CACD,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,SACA,SACA,SACA,QACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,UAAU,CACZ,EAAG,IAAI,CACR,EACA,OACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,UAAU,CACZ,EAAG,IAAI,CACR,EACA,OACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,OACA,OACA,QACA,CACC,EACA,WACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,aACA,OACA,MACA,aACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,IAAI,CACR,EACA,SACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,IAAI,CACR,EACA,SACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,MACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,IAAI,CACR,EACA,SACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,cACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EAAG,IAAI,CACR,EACA,SACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,YAAe,IAAMlH,GACrB,QAAS,IAAML,EACf,kBAAmB,IAAMiC,GACzB,UAAW,IAAMC,GACjB,QAAS,IAAMd,EACf,UAAa,IAAMd,GACnB,UAAW,IAAMO,EACjB,wBAAyB,IAAMW,GAC/B,YAAa,IAAMT,EACnB,MAAS,IAAMC,EACf,aAAc,IAAMC,EACpB,UAAW,IAAM8C,GACjB,WAAY,IAAME,GAClB,UAAa,IAAMtE,GACnB,OAAU,IAAMC,GAChB,UAAW,IAAMa,GACjB,UAAW,IAAM0E,GACjB,UAAW,IAAMM,GACjB,QAAS,IAAMG,EACf,YAAa,IAAMY,GACnB,YAAe,IAAMjH,GACrB,UAAa,IAAMD,GACnB,UAAW,IAAM2H,EACjB,UAAW,IAAME,EACjB,UAAW,IAAMvG,EACjB,mBAAoB,IAAMuB,GAC1B,SAAY,IAAM3C,EACnB,CACD,CAAC,GAAKe,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgB,CACvC,CACA,S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CF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,IAAK,KAAK,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,GACD,CAAC,CACF,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,OACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMN,GACpB,UAAW,IAAML,EACjB,UAAW,IAAMO,GACjB,UAAW,IAAMC,GACjB,UAAW,IAAME,GACjB,UAAW,IAAME,CAClB,CACD,CAAC,GAAK5B,EAAE,GAAG,CAAC,CAAC,CAAC,EACR6B,IAAwB/B,EAAgB,GAAG,CAChDkB,EACAjB,EACAiB,CACD,EAAGjB,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAQY,IAAW,CAClI,UACA,IAAMC,EAAK,aAAaD,EAAO,EAAGZ,CAAM,EAClCc,EAAK,aAAa,EAAGF,EAAO,CAAC,EAC7BG,EAAOC,GAAOlB,EAAM,aAAa,aAAaC,EAAG,EAAGC,CAAM,EAAGa,CAAE,EAAG,aAAad,EAAG,EAAGe,CAAE,CAAC,CAAC,EACzFG,EAAUD,GAAOlB,EAAMR,EAAIuB,EAAI,aAAab,EAAQa,CAAE,CAAC,EAAGvB,EAAIwB,EAAI,aAAa,EAAGA,CAAE,CAAC,CAAC,CAAC,EAC7F,OAAO,aAAaC,EAAMzB,EAAI2B,EAAS,IAAI,CAAC,CAC7C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,IACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,SACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,UAAW,CAAC,EAAG,QAAQ,CAAC,CAC1B,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMnB,EACjB,aAAc,IAAMkB,GACpB,UAAW,IAAM1B,CAClB,CACD,CAAC,GAAKR,EAAE,GAAG,CAAC,CAAC,CAAC,EACRoC,IAAetC,EAAgB,GAAG,CACvCkB,EACAjB,EACAiB,EACAjB,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAQY,EAAQO,EAAUC,IAAS,CAClJ,UACA,IAAMC,EAAMvB,EAAM,aAAa,aAAaC,EAAG,EAAGa,EAAO,CAAC,EAAGZ,CAAM,EAAG,aAAaD,EAAG,EAAG,aAAa,EAAGa,EAAO,CAAC,CAAC,CAAC,EAC7GU,EAAMC,GAAMF,EAAI,EAAGA,EAAI,CAAC,EACxBG,EAAQ,aAAaL,EAAUhB,EAAU,EAC3CsB,EAAO,aAAa,aAAaH,EAAKE,CAAK,EAAGE,EAAM,EACxDD,EAAO,aAAaA,EAAME,GAAMF,CAAI,CAAC,EACrC,IAAMG,EAAW,aAAa,EAAGH,CAAI,EAC/BI,EAAY,aAAaC,GAAIL,EAAM,aAAa,EAAGA,CAAI,CAAC,EAAG,CAAC,EAC9D1C,EAAQK,EAAOqC,EAAMG,EAAUR,EAAO,EAAE,EAC5C,OAAArC,EAAQK,EAAOL,EAAO8C,EAAWT,EAAO,GAAG,EACpCrC,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,SACA,GACD,CACD,EACA,IACA,QACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,SACA,GACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,MACA,GACD,EAAG,CACF,EACA,MACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,IACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,IACA,OACD,EACA,IACA,QACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,YACA,CAAC,MAAM,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,MACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,UACA,CAAC,OAAQ,CACR,EACA,CAAC,EAAG,GAAG,EACP,IACA,MACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,OACA,WACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,aACA,CACC,QACA,YACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,OAAO,CACb,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMe,EACjB,YAAa,IAAMyB,GACnB,WAAc,IAAMpB,GACpB,OAAU,IAAMuB,GAChB,YAAa,IAAMC,GACnB,UAAW,IAAMG,GACjB,aAAc,IAAM1C,CACrB,CACD,CAAC,GAAKN,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiD,IAA4B,WAAW,uBAA0B7B,GAAMA,IAAI8B,GAAO,CACvF,KAAMlC,EACN,MAAOA,EACP,KAAMA,CACP,CAAC,EAAG,UAAU,EACRmC,GAAWrD,EAAgB,GAAG,CACnCkB,EACAjB,EACAA,CACD,EAAGkD,EAAQ,GAAoBjD,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAQkC,IAAS,CACrI,UACA,IAAMC,EAAQ,aAAa,EAAG7C,EAAI4C,EAAM,IAAI,CAAC,EACvCE,EAAQ9C,EAAI,aAAa6C,EAAOnC,CAAM,EAAG,CAAC,EAC1CqC,EAAK,aAAatC,EAAG,EAAGoC,CAAK,EAC7BG,EAAK,aAAavC,EAAG,EAAGqC,CAAK,EACnC,OAAOL,GAAS,CACf,KAAMjC,EAAM6B,GAAMU,CAAE,EAAGV,GAAMW,CAAE,CAAC,EAChC,MAAOxC,EAAMyC,GAAMF,CAAE,EAAGE,GAAMD,CAAE,CAAC,EACjC,KAAMxC,EAAMqC,EAAOC,CAAK,CACzB,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,OAAO,CAAC,CACtB,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,IACA,QACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,WACA,CAAC,CAAC,IAAK,CACN,KAAQ,CACP,EACA,UACA,CAAC,CACA,EACA,YACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,YACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,MAAS,CACR,EACA,UACA,CAAC,CACA,EACA,YACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,YACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,KAAQ,CACP,EACA,UACA,CAAC,QAAS,OAAO,CAClB,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM9C,EACjB,SAAY,IAAMyC,GAClB,UAAW,IAAMjC,EACjB,YAAa,IAAM6B,GACnB,YAAa,IAAMY,EACpB,CACD,CAAC,GAAKzD,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0D,IAAkB5D,EAAgB,GAAG,CAACC,CAAG,EAAGA,CAAG,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O,aAAa,aAAa,aAAaH,EAAE,KAAK,EAAGA,EAAE,KAAK,CAAC,EAAG,aAAaA,EAAE,KAAK,EAAGA,EAAE,KAAK,CAAC,CAAC,EAAG,EAAE,EAC9G,OAAOL,EAAM,aAAa,aAAa,GAAIO,CAAM,EAAG,aAAa,GAAIC,CAAI,CAAC,EAAG,EAAG,CAAC,CAClF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,WACA,CACC,KACA,SACA,MACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,GACD,CACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,QACD,EACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,MACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,SAAY,IAAMpB,GAClB,YAAa,IAAMM,GACnB,YAAa,IAAMM,CACpB,CACD,CAAC,GAAK/D,EAAE,GAAG,CAAC,CAAC,CAAC,EACRwE,IAAmB1E,EAAgB,GAAG,CAC3CkB,EACAjB,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAQkC,IAAS,CAChI,UACA,OAAOqB,GAAOtB,GAASlC,EAAIC,EAAQkC,CAAI,EAAE,IAAI,CAC9C,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,SACA,CAAC,CACA,EACA,CACC,EACA,WACA,CACC,KACA,SACA,MACD,CACD,EACA,MACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,OAAU,IAAMqB,GAChB,SAAY,IAAMtB,EACnB,CACD,CAAC,GAAKnD,EAAE,GAAG,CAAC,CAAC,CAAC,EACR0E,IAAmB5E,EAAgB,GAAG,CAC3CkB,EACAjB,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAIC,EAAQyD,EAAOC,IAAS,CACvI,UACA,IAAMC,EAAI7D,EAAM,aAAa,aAAa,aAAaC,EAAG,EAAGC,CAAM,EAAGyD,CAAK,EAAG,aAAaC,EAAM,IAAI,CAAC,EAAG,aAAa,aAAa3D,EAAG,EAAG0D,CAAK,EAAG,aAAaC,EAAM,GAAG,CAAC,CAAC,EACnKE,EAAKC,GAAcF,CAAC,EACpBG,EAAK,aAAaD,GAAc/D,EAAM,aAAa,aAAa,aAAa6D,EAAE,EAAG,CAAC,EAAG,IAAI,EAAG,aAAaD,EAAM,GAAG,CAAC,EAAG,aAAa,aAAaC,EAAE,EAAG,CAAC,EAAG,GAAG,CAAC,CAAC,EAAG,EAAE,EACpKI,EAAK,aAAaF,GAAc/D,EAAM,aAAa,aAAa6D,EAAE,EAAG,CAAC,EAAG,IAAI,EAAG,aAAa,aAAa,aAAaA,EAAE,EAAG,CAAC,EAAG,IAAI,EAAG,aAAaD,EAAM,GAAG,CAAC,CAAC,CAAC,EAAG,GAAG,EACtKd,EAAI,aAAa,aAAa,aAAagB,EAAIE,CAAE,EAAGC,CAAE,EAAG,IAAI,EACnE,OAAOlB,EAAM,aAAa,GAAI,aAAaD,EAAG,EAAE,CAAC,EAAG,EAAG,CAAC,CACzD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,QACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,gBACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,MAAM,CACX,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CAAC,CACF,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM9C,EACjB,cAAiB,IAAM+D,GACvB,YAAa,IAAMhB,CACpB,CACD,CAAC,GAAK/D,EAAE,GAAG,CAAC,CAAC,CAAC,EACVkF,GAAW,MAAMA,EAAS,CAC7B,YAAYC,EAAO,CAClB,KAAK,MAAQA,CACd,CACA,QAAS,CACR,OAAO,IAAID,GAAUE,GAAWC,EAAK3B,IAAiB,kBAAmB,CAAC,KAAK,MAAM0B,CAAM,CAAC,CAAC,CAAC,CAC/F,CACA,MAAMxB,EAAO,CACZ,OAAO,IAAIsB,GAAUE,GAAWC,EAAK1B,IAAW,YAAa,CAAC,KAAK,MAAMyB,CAAM,EAAGE,GAAW1B,EAAOwB,CAAM,CAAC,CAAC,CAAC,CAC9G,CACA,MAAMxB,EAAO,CACZ,OAAO,IAAI2B,IAAe,KAAM3B,CAAK,CACtC,CACD,EACI2B,IAAiB,cAAcL,EAAS,CAC3C,YAAYM,EAAM5B,E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AG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,KACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,KACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,KACA,WACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,YACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,EACA,IACA,GACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,GACD,EACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CACA,EACA,cACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,MACD,CACD,EACA,IACA,kBACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CAAC,OAAO,CACT,CAAC,CACF,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,MACD,EACA,IACA,GACD,CACD,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,MACA,IACA,OACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,aACA,GACD,EACA,KACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,IACA,GACD,CACD,CACD,EACA,IACA,MACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,UAAW,CACV,WAAc,IAAMd,EACpB,QAAS,IAAMN,EACf,UAAW,IAAML,EACjB,QAAS,IAAMC,EACf,MAAS,IAAMQ,EACf,YAAe,IAAMI,EACrB,YAAa,IAAMmB,EACnB,iBAAoB,IAAM1C,GAC1B,aAAc,IAAM2C,EACpB,YAAa,IAAMC,EACpB,CACD,CAAC,GAAKpB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,eAAe,CACtC,CACA,SAASqB,GAAoBC,EAAWC,EAAO,CAC9C,IAAMC,EAAYnC,EAAgB,GAAG,CACpCF,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBa,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyB,EAAIC,EAAIC,IAAO,CAC1H,UACA,IAAMrB,EAAKgB,EAAU,EAAE,IACjBf,EAAID,EAAG,MACTsB,EAAMzC,EAAI,CAAC,EACf,GAAIsC,GAAM,GAAKA,EAAKlB,GAAKmB,GAAM,GAAKA,EAAKnB,GAAKoB,GAAM,GAAKA,EAAKpB,EAAG,CAChE,IAAMJ,EAAKiB,GAAQ,aAAaK,EAAI,GAAG,CAAC,EAClCI,EAAQ,aAAaJ,EAAI,aAAatB,EAAI,CAAC,CAAC,EAC5C2B,EAAM,aAAavC,EAAIY,CAAE,EAAG,aAAa,aAAaZ,EAAImC,CAAE,EAAG,aAAanC,EAAIoC,CAAE,EAAGpC,EAAIgB,CAAC,CAAC,CAAC,EAAGhB,EAAIe,EAAG,KAAK,CAAC,CAAC,EAC7GK,EAAOW,EAAU,EAAE,IAAIQ,CAAG,EAChCF,EAAMzC,EAAI4C,GAAYpB,EAAM,aAAapB,EAAIsC,CAAK,EAAGtC,EAAI,CAAC,CAAC,EAAGA,EAAI,CAAC,CAAC,CAAC,CACtE,CACA,OAAOqC,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,KACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,OACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,KACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,KACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACA,CACC,EACA,KACA,IACA,GACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,CACD,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,OACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,KACD,EACA,KACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,kBACA,CACC,OACA,CACC,EACA,CACC,EACA,QACA,CAAC,KAAK,CACP,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,KAAK,CACX,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMN,EACnB,QAAS,IAAMnC,EACf,YAAa,IAAMiC,GACnB,QAAS,IAAM7B,EACf,kBAAmB,IAAMwC,EAC1B,CACD,CAAC,GAAK/B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRgC,EAAa3C,EAAgB,GAAG,CACrCF,EACAA,EACAA,CACD,EAAGD,CAAK,GAAoBc,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyB,EAAIC,EAAIC,IAAO,CAC5H,UACA,IAAMrB,EAAKgB,EAAU,EAAE,IACvB,OAAOpC,EAAM,aAAa,aAAa,aAAauC,EAAI,EAAE,EAAGnB,EAAG,SAAS,EAAGA,EAAG,UAAU,EAAG,aAAa,aAAa,aAAaoB,EAAI,EAAE,EAAGpB,EAAG,SAAS,EAAGA,EAAG,UAAU,EAAG,aAAa,aAAa,aAAaqB,EAAI,EAAE,EAAGrB,EAAG,SAAS,EAAGA,EAAG,UAAU,CAAC,CACzP,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,KACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,KACD,CACD,EAAG,CAAC,GAAI,CACP,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,WACD,CACD,EACA,IACA,CACC,EACA,KACA,YACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,WACD,CACD,EACA,IACA,CACC,EACA,KACA,YACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,WACD,CACD,EACA,IACA,CACC,EACA,KACA,YACD,CACD,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,UAAa,IAAMgB,EACnB,UAAW,IAAMpC,CAClB,CACD,CAAC,GAAKc,EAAE,GAAG,CAAC,CAAC,CAAC,EACRiC,EAAW5C,EAAgB,GAAG,CACnCF,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBa,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyB,EAAIC,EAAIC,IAAO,CAC1H,UACA,OAAOR,EAAShC,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGqC,EAAUC,EAAIC,EAAIC,CAAE,EAAI,EAAE,CAC3D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,CACD,EACA,KAAQ,CAAC,EAAG,CAAC,CAAC,GAAI,CACjB,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,YACA,CACC,KACA,KACA,IACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,aAAc,IAAMR,EACpB,QAAS,IAAMhC,EACf,UAAa,IAAMqC,CACpB,CACD,CAAC,GAAKxB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRkC,GAA0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CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,KACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,YACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,MACD,EACA,CACC,GACA,CACC,EACA,QACA,MACA,CAAC,IAAK,QAAQ,CACf,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,CACC,EACA,OACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,KACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,MAAM,CACR,CACD,CACD,EAAG,CACF,GACA,CACC,EACA,KACA,KACA,CACC,EACA,OACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CACF,EACA,IACA,IACA,IACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,MACA,KACA,MACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,OACA,KACA,CACC,EACA,OACA,IACA,CAAC,EAAG,QAAQ,CACb,CACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,QACA,MACA,CAAC,IAAK,SAAS,CAChB,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,OACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,MAAO,CACP,EACA,OACA,IACA,CAAC,EAAG,QAAQ,CACb,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,EACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,IACA,IACA,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CAAC,EAAE,CAAC,CAAC,C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,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,IACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,IACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,IACA,GACD,EACA,IACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,IACA,QACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,MACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,KAAK,CAAC,CACZ,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,UACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CACD,EAAG,CAAC,EAAG,KAAK,CAAC,CACd,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,KACA,KACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,UACA,CAAC,WAAY,OAAO,CACrB,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CAAC,CACJ,GACA,KACA,CACC,EACA,cACA,CACC,KACA,KACA,CACC,EACA,aACA,CACC,KACA,KACA,IACD,CACD,EACA,GACD,CACD,CACD,EAAG,CACF,GACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,CAAC,EAAE,CACJ,CAAC,CACF,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CACC,GACA,CACC,EACA,QACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,QACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,GACD,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,KAAM,CACN,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,EACA,IACA,IACD,CACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,MACA,IACA,KACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,MACA,IACA,KACD,EACA,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,CAAC,CACF,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,MACA,IACA,KACD,EACA,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CACH,CACC,EACA,IACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CACC,GACA,CACC,EACA,IACA,IACA,MACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,SACA,CAAC,CAAC,IAAK,CACN,IAAO,MACP,EAAK,OACL,GAAM,KACN,GAAM,KACN,GAAM,KACN,KAAQ,CACP,EACA,WACA,IACA,GACD,CACD,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAMa,EACnB,YAAa,IAAMF,GACnB,aAAc,IAAMD,EACpB,QAAS,IAAMhC,EACf,UAAW,IAAMkE,EACjB,UAAW,IAAMC,EACjB,WAAY,IAAMoC,GAClB,UAAa,IAAMlE,EACnB,UAAW,IAAMsC,GACjB,YAAe,IAAM3B,EACrB,WAAc,IAAMH,EACpB,OAAU,IAAMoC,CACjB,CACD,CAAC,GAAKpE,EAAE,GAAG,CAAC,CAAC,CAAC,CACf,CACD,CACA,IAAI6F,GAAU,IAAM3H,GAAoB,EAAI,IAAM,IAClD,SAAS4H,IAAsBxE,EAAWC,EAAO,CAChD,GAAM,CAAE,SAAAwE,CAAS,EAAI1E,GAAoBC,EAAWC,CAAK,EACnDyE,EAAM5H,GACN6H,EAAWJ,GAAQ,EACzB,OAAOxG,EAAgB,GAAG,CAACE,EAAKA,CAAG,CAAC,GAAoBS,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC,EAAGkG,IAAM,CAClJ,UACA,IAAM5F,EAAKgB,EAAU,EAAE,IACjB6E,EAAK,aAAa7F,EAAG,WAAY,EAAE,EACnC,EAAI,aAAa,aAAa,aAAa,aAAa,aAAanB,EAAI,CAAC,EAAG,EAAE,EAAGA,EAAI6G,CAAG,CAAC,EAAG,CAAC,EAAG,CAAC,EAAGG,CAAE,EACvG3F,EAAI,aAAa,aAAa,aAAa,aAAa,aAAarB,EAAI+G,CAAC,EAAG,EAAE,EAAG/G,EAAI6G,CAAG,CAAC,EAAG,CAAC,EAAG,CAAC,EAAGG,CAAE,EACvGC,EAAI9F,EAAG,SACPoE,EAAKpE,EAAG,QAAQ,IAAI,CAAC,EAAE,IAAIA,EAAG,QAAQ,IAAIE,CAAC,CAAC,EAAE,IAAI4F,EAAE,IAAID,CAAE,CAAC,EAC3D9D,EAAK+D,EAAE,IAAI,EAAE,EACfC,EAAQlH,EAAIR,EAAU,EACpB2H,EAAQ,aAAa,aAAa,EAAG,CAAC,EAAG,aAAa9F,EAAGA,CAAC,CAAC,EACjE,GAAI8F,EAAQ,aAAaH,EAAIA,CAAE,EAAG,CACjC,IAAMI,EAAOtD,GAAK,aAAa,aAAakD,EAAIA,CAAE,EAAGG,CAAK,CAAC,EACrD7B,EAAWJ,EAAInD,EAAQ,aAAa,aAAa,aAAaiF,EAAI,CAAC,EAAG7F,EAAG,SAAS,EAAG,CAAC,EAAGnB,EAAI,CAAC,EAAGA,EAAI8G,CAAQ,CAAC,CAAC,EAC/GO,EAAOtH,EAAM,MAAO,MAAO,KAAK,EAChCuH,EAAKV,EAASrB,EAAIrC,EAAI,aAAa8D,EAAII,CAAI,EAAG,aAAa,aAAaJ,EAAII,CAAI,EAAG,GAAG,EAAGC,EAAM/B,CAAQ,EACzGgC,EAAG,IAAM,KAAIJ,EAAQI,EAAG,EAC7B,CACAC,GAAapF,EAAU,EAAE,UAAWqF,GAAM,EAAGT,CAAC,EAAGU,EAAMP,EAAO,EAAG,EAAG,CAAC,CAAC,CACvE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,GACT,EAAG,CACF,KAAQ,IACR,KAAQ,GACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,YACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,SACD,EACA,KACD,EACA,CAAC,GAAG,CACL,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,SACD,EACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,QACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,KACA,WACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,WACA,CACC,KACA,KACA,CACC,EACA,KACA,IACA,MACD,EACA,CACC,EACA,CACC,EACA,KACA,IACA,MACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,OACA,UACD,CA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,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,CACC,MACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,EACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,CACC,MACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,EACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,CACC,MACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,EACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,CACC,EACA,kBACA,CACC,MACA,CACC,EACA,UACA,CAAC,MAAO,KAAK,CACd,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,EACA,IACA,KACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,CACC,EACA,UACA,CACC,MACA,MACA,IACD,CACD,EACA,IACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMpI,EACf,iBAAoB,IAAMf,GAC1B,YAAa,IAAMgD,GACnB,QAAS,IAAM7B,EACf,YAAa,IAAM2B,EACnB,aAAc,IAAMC,EACpB,kBAAmB,IAAM0G,GACzB,UAAW,IAAMlB,GACjB,UAAW,IAAMsB,CAClB,CACD,CAAC,GAAKjI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,EACpCkI,IAAoB7I,EAAgB,GAAG,CAC5CyH,GAAU3H,CAAG,EACbD,EACAA,EACAA,EACAA,EACAC,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBa,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+G,EAAKoB,EAAK/B,EAAGgC,EAAIC,EAAIC,EAAQC,EAAUC,IAAU,CAC5J,UACA,IAAMxC,EAAM7G,EAAIf,EAAgB,EAC1BqK,EAAa,aAAa,aA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EACA,SACA,IACA,CACC,EACA,UACA,CAAC,IAAK,GAAG,CACV,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,QACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,aACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,WACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,CAAC,EAAG,CAAC,CACJ,EACA,SACA,IACA,CACC,EACA,gBACA,CACC,MACA,KACA,KACA,KACD,CACD,CACD,CAAC,CAAC,EACF,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,WACA,IACA,UACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,SACA,IACA,GACD,EAAG,CACF,EACA,SACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,EACA,IACA,YACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,IACA,SACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,cACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,GACD,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,GACD,CACD,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,kBACA,CACC,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,GACD,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,KACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EAAG,CACF,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,CACC,GACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,aACA,CACC,EACA,MACA,IACA,OACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,YACD,EACA,IACA,GACD,EACA,IACA,YACD,EACA,CAAC,EAAG,GAAG,EACP,SACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,IAAI,CACT,CAAC,CACF,EACA,IACA,UACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,gBACA,CACC,MACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,GACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAI,CACN,EACA,IACA,GACD,CACD,EACA,KACD,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,SACA,IACA,CA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EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,EAAG,CAAC,EAAG,UAAU,CAAC,CACnB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,KAAK,CACd,EAAG,CACF,EACA,UACA,CAAC,MAAO,KAAK,CACd,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,MACA,KACA,MACD,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,MAAO,CACP,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,aAAc,IAAMrI,EACpB,QAAS,IAAMhC,EACf,UAAW,IAAMkE,EACjB,UAAW,IAAMC,EACjB,UAAW,IAAMQ,EAClB,CACD,CAAC,GAAK9D,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,aAAa,EAC7ByJ,IAAiBpK,EAAgB,GAAG,CACzCH,EACAA,EACAA,EACAC,CACD,EAAGA,CAAG,GAAoBa,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoC,EAAIC,EAAIC,EAAGE,IAAM,CAC5H,UACA,IAAMG,EAAKP,EAAG,IAAIE,CAAC,EACbM,EAAIC,GAAMF,EAAIN,CAAE,EAChBS,EAAK,aAAaD,GAAMF,EAAIA,CAAE,EAAG,aAAaH,EAAGA,CAAC,CAAC,EACnDO,EAAO,aAAa,aAAaH,EAAGA,CAAC,EAAGE,CAAE,EAC1CJ,EAAI,aAAa,aAAaE,EAAG,EAAE,EAAGK,GAAKI,EAAMN,EAAM,CAAC,CAAC,CAAC,EAC1DyG,EAAK,aAAarI,EAAShC,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAG4D,GAAQ,CAAC,EAAG5B,EAAShC,EAAI,CAAC,EAAGA,EAAI,CAAC,EAAGuD,GAAK,CAAC,CAAC,EAC7F,OAAOvB,EAAShC,EAAI,EAAE,EAAGuD,EAAG8G,EAAK,EAAE,CACpC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,IACA,GACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM3G,GACjB,WAAY,IAAMI,GAClB,UAAW,IAAMI,EACjB,aAAc,IAAMlC,EACpB,QAAS,IAAMhC,CAChB,CACD,CAAC,GAAKa,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgB,EAChC0J,IAAqBrK,EAAgB,GAAG,CAC7CH,EACAA,EACAA,EACAC,EACAA,CACD,EAAGA,CAAG,GAAoBa,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoC,EAAIC,EAAIC,EAAGE,EAAGwB,IAAM,CAC/H,UACA,IAAM2F,EAAOJ,GAAYnH,EAAIC,EAAIC,EAAGE,CAAC,EACjCE,EAAIvD,EAAI,EAAE,EACd,GAAIwK,GAAQ,EAAG,CACd,IAAI1F,EAAI0F,EACJlH,EAAMtD,EAAI,CAAC,EACf,QAAS+E,EAAI,EAAGA,EAAI,EAAGA,IAAK,CAC3B,IAAMlD,EAAKmD,GAAW/B,EAAG,IAAIC,EAAG,IAAI4B,CAAC,CAAC,EAAE,IAAI3B,CAAC,EAAGE,EAAGA,EAAGA,EAAGwB,CAAC,EAC1D,GAAIhD,EAAK,aAAawB,EAAG,IAAI,EAAG,CAC/BC,EAAMtD,EAAI,CAAC,EACX,KACD,CAEA,GADA8E,EAAI,aAAaA,EAAGjD,CAAE,EAClBiD,EAAI,aAAa0F,EAAM,aAAanH,EAAG,GAAG,CAAC,EAAG,KACnD,CACAE,EAAIvB,EAAShC,EAAI,EAAE,EAAG8E,EAAGxB,EAAM,EAAE,CAClC,CACA,OAAOC,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,cACA,CACC,KACA,KACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,OACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,MACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,EACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,IACA,IACA,IACA,IACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CAAC,EAAE,CAAC,CAAC,CACT,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,IACA,IACD,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,CACD,CAAC,CACF,EACA,CACC,EACA,IACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,CAAC,GAAI,GAAG,CACT,CAAC,CACF,EACA,UAAW,CACV,YAAe,IAAM6G,GACrB,QAAS,IAAMpK,EACf,WAAc,IAAMgF,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CACC,EACA,CACC,EACA,YACA,GACD,EACA,KACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,KACA,WACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,MACA,GACD,CACD,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,IACA,CACC,EACA,IACA,IACA,GACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,QACD,EACA,IACA,OACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,UACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,UACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,cACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,OACD,EAAG,CACF,EACA,KACA,OACD,CAAC,CACF,EACA,IACA,CACC,EACA,QACA,CAAC,CACA,EACA,KACA,WACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,CAAC,OAAO,CACT,EACA,IACA,QACD,EACA,IACA,OACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,aACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,CACC,EACA,QACA,IACA,CACC,EACA,SACA,IACA,QACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,WACA,CACC,KACA,KACA,SACA,OACA,OACA,UACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,KACA,GACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,EACA,MACA,IACA,KACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,MACA,KACA,KACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CAAC,CAAC,CACH,CAAC,CAAC,EACF,CAAC,EAAG,CAAC,CACJ,GACA,CACC,EACA,MACA,IACA,KACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,EACA,CACC,GACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,aACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,CACD,EACA,CACC,GACA,MACA,KACD,EACA,CACC,GACA,MACA,KACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,EACA,IACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,KACA,YACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,KACA,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,KACA,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,WACA,CACC,CACC,EACA,KACA,IACA,KACD,EACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,KACD,EACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,WACA,CACC,MACA,MACA,KACD,CACD,EACA,CACC,EACA,WACA,CACC,MACA,MACA,KACD,CACD,EACA,GACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CACC,EACA,WACA,CACC,MACA,MACA,KACD,CACD,EACA,CACC,EACA,WACA,CACC,MACA,MACA,KACD,CACD,EACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,MACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,UACA,CAAC,MAAO,CACP,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CAAC,CACF,CACD,CACD,EACA,CACC,EACA,WACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,OAAO,CACZ,EACA,IACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,aACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,CAAC,EACD,CAAC,EAAG,CAAC,CACJ,EACA,WACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,MACD,EACA,IACA,GACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,CACD,CAAC,CAAC,CACH,CACD,CAAC,CACF,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,WACA,UACA,aACA,OACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAa,IAAM/E,EACnB,WAAc,IAAMwI,EACpB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CD,EACA,MAAO,CACN,QAAS,EACT,YAAa,8CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,yCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,KACT,YAAa,6GACb,GAAI,CACH,KAAM,QACN,IAAK,KACL,IAAK,IACL,KAAM,KACN,MAAO,aACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,OACT,YAAa,GACb,YAAa,iFACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,eACP,MAAO,SACR,EACA,CACC,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,cACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,yGACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,4GACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,eACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,IACT,YAAa,8IACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,IACT,YAAa,sHACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,KACN,MAAO,QACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,QACT,YAAa,GACb,YAAa,+JACb,GAAI,CACH,KAAM,SACN,QAAS,CAAC,CACT,MAAO,QACP,MAAO,OACR,EAAG,CACF,MAAO,SACP,MAAO,MACR,CAAC,EACD,MAAO,OACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,mEACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,2FACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,SACT,YAAa,GACb,YAAa,0KACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,cACP,MAAO,OACR,CACD,EACA,MAAO,UACP,MAAO,QACR,CACD,EACA,eAAgB,CACf,QAAS,IACT,YAAa,mGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,QACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,oGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,OACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,kHACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,kBACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,UACT,UAAWF,GACX,YAAa,0BACb,GAAI,CACH,KAAM,QACN,MAAO,cACP,MAAO,OACR,CACD,EACA,eAAgB,CACf,QAAS,IACT,YAAa,4BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,kBACP,MAAO,OACR,CACD,EACA,aAAc,CACb,QAAS,UACT,UAAWA,GACX,YAAa,gFACb,GAAI,CACH,KAAM,QACN,MAAO,gBACP,MAAO,OACR,CACD,EACA,QA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CD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,cACA,IACA,CAAC,EAAG,OAAO,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,KAAK,EACT,eACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,iBACA,CACC,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,UACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMH,GACjB,UAAW,IAAMK,EACjB,iBAAkB,IAAMX,EACzB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EACRX,GAAWS,EAAgB,GAAG,CACnC+B,EACA9B,EACAA,EACAA,CACD,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8B,EAAOZ,EAAMa,EAAWC,IAAe,CAClJ,UACA,IAAMC,EAAS,aAAaH,EAAM,EAAG,EAAE,EACjCI,EAAYC,GAAM,aAAaL,EAAM,EAAG,EAAE,EAAGG,CAAM,EACnDG,EAAY,aAAa,aAAaF,EAAW,CAAC,EAAG,aAAahB,EAAMa,CAAS,CAAC,EACxF,OAAOH,EAAI,EAAG,aAAa,aAAaL,GAAIa,CAAS,EAAG,EAAE,EAAG,EAAE,EAAGJ,CAAU,CAC7E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CAAC,SAAU,QAAQ,CACpB,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,OACA,IACA,WACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,WAAW,CACb,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,WACA,YACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMG,GACnB,UAAW,IAAMZ,GACjB,UAAW,IAAMK,CAClB,CACD,CAAC,GAAK5B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRb,GAAgBW,EAAgB,GAAG,CACxCuC,EACAA,EACAA,EACAA,EACAA,EACAtC,EACA8B,EACA9B,EACA8B,EACA9B,EACAA,EACAA,EACAuC,EACAA,EACAvC,EACAuC,EACAvC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGsC,CAAK,GAAoBrC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACuC,EAAIC,EAAIC,EAAIC,EAAIC,EAAIC,EAAWd,EAAOe,EAAOC,EAAc5B,EAAMhB,EAAiBD,EAAe8C,EAAOC,EAAgBC,EAAgBC,EAAWC,EAAWC,EAAkB3C,EAAeD,EAAY6C,EAAYC,EAAmBC,EAAcpC,EAAcC,EAAeW,EAAWC,EAAY7B,IAAe,CACxa,UACA,IAAMqD,EAAYjB,EAAG,EACfkB,EAAWjB,EAAG,EACdkB,EAAUjB,EAAG,EACbkB,EAAQjB,EAAG,EACXkB,EAAUjB,EAAG,EACbkB,GAAM,aAAa,EAAGf,EAAa,CAAC,EACpCpC,GAAQL,EAAIG,EAAY,IAAI,EAC5BsD,GAASzD,EAAI,aAAawD,GAAKhB,CAAK,EAAG,IAAI,EAC3CkB,GAAQ,aAAa,aAAaN,EAAUC,CAAO,EAAG,aAAad,EAAW,CAAC,CAAC,EAChFoB,GAAQ,aAAa,aAAaL,EAAOC,CAAO,EAAG,aAAahB,EAAW,CAAC,CAAC,EAC7ErC,GAAMqB,EAAI4B,EAAW,aAAa,aAAa,aAAa,aAAa,aAAaA,EAAWC,CAAQ,EAAGC,CAAO,EAAGC,CAAK,EAAGC,CAAO,EAAG,CAAC,EAAG1D,CAAe,EAC3J+D,GAAQ3D,EAAOyD,GAAO,aAAavB,EAAG,EAAGC,EAAG,CAAC,EAAGtC,EAAa,EAAE,EAC/D+D,GAAQ5D,EAAO0D,GAAO,aAAatB,EAAG,EAAGC,EAAG,CAAC,EAAGxC,EAAa,EAAE,EAC/DgE,GAAU9D,EAAI+D,GAAK,aAAa,aAAaH,GAAOA,EAAK,EAAG,aAAaC,GAAOA,EAAK,CAAC,CAAC,EAAG,IAAI,EAC9FG,GAAM,aAAaJ,GAAOE,EAAO,EACjCG,GAAM,aAAaJ,GAAOC,EAAO,EACjCI,GAAcC,EAAM,aAAa,aAAajE,GAAK,EAAE,EAAGF,EAAIJ,EAAe,IAAI,CAAC,EAAG,EAAG,CAAC,EACvFwE,GAAcxD,GAAW,aAAahB,EAAe6D,EAAM,EAAG,aAAa7D,EAAe6D,EAAM,EAAG,aAAavD,GAAK,EAAE,CAAC,EACxHmE,GAAM,aAAaC,EAAI,aAAa,aAAanC,EAAG,EAAGC,EAAG,CAAC,EAAG,aAAaF,EAAG,EAAG,CAAC,CAAC,CAAC,EAAGoC,EAAI,aAAa,aAAajC,EAAG,EAAGC,EAAG,CAAC,EAAG,aAAaJ,EAAG,EAAG,CAAC,CAAC,CAAC,CAAC,EACzJqC,GAAW,aAAaD,EAAIV,EAAK,EAAGU,EAAIT,EAAK,CAAC,EAC9CW,GAAS,aAAaH,GAAK,aAAa,aAAaA,GAAK,aAAa9B,EAAW,EAAE,CAAC,EAAG,aAAagC,GAAU,GAAG,CAAC,CAAC,EACpHE,GAAe7D,GAAW,IAAK,IAAK4D,EAAM,EAC1CE,GAAYzE,EAAOiE,GAAaM,GAAQ1E,EAAa,EAAE,EACvD6E,GAAY1E,EAAOmE,GAAaK,GAAc3E,EAAa,EAAE,EAC7D8E,GAAYhE,GAAW6C,GAAQ,aAAaA,GAAQ,EAAE,EAAGvD,EAAG,EAC5D2E,GAAW,aAAaD,GAAWD,EAAS,EAC5CG,GAAIJ,GACJK,GAAYhB,GAAK/D,EAAI,aAAa8E,GAAG,aAAa,EAAGA,EAAC,CAAC,EAAG,CAAC,CAAC,EAC5DE,GAAY,aAAa,EAAGF,EAAC,EAC7BG,GAAK,aAAajB,GAAKgB,EAAS,EAChCE,GAAK,aAAajB,GAAKe,EAAS,EAChCG,GAAKJ,GACLK,GAAW,aAAapC,EAAY7D,EAAU,EAC9CkG,GAAKC,GAAIF,EAAQ,EACjBG,GAAKrE,GAAIkE,EAAQ,EACjBI,GAAM,aAAaH,GAAIhG,EAAc,EACrCoG,GAAM,aAAaF,GAAIlG,EAAc,EACrCqG,GAAMpG,GACNqG,GAAUxB,EAAM,aAAa,aAAa,aAAac,GAAIO,EAAG,EAAG,aAAaN,GAAIO,EAAG,CAAC,EAAG,aAAaN,GAAIO,EAAG,CAAC,EAAG,EAAG,CAAC,EACrHE,GAAQ,aAAa,aAAa,aAAaX,GAAI,aAAaO,GAAKhG,EAAU,CAAC,EAAG,aAAa0F,GAAI,aAAaO,GAAKjG,EAAU,CAAC,CAAC,EAAG,aAAa2F,GAAI,aAAa5F,GAAKC,EAAU,CAAC,CAAC,EACpLqG,GAAYC,GAAK,aAAa,EAAG,aAAa5C,EAAc,CAAC,CAAC,CAAC,EAC/D6C,GAAW,aAAaC,GAAI7B,EAAMyB,GAAO,EAAG,CAAC,EAAGC,EAAS,EAAG5C,CAAiB,EAC7EgD,GAAUjH,GAASyC,EAAOZ,EAAMa,EAAWC,CAAU,EACrDuE,GAAY3E,EAAImB,EAAOnB,EAAIoB,EAAgBD,EAAOiD,EAAO,EAAG/C,CAAc,EAC1EuD,GAAU,IACVC,GAAe,aAAarB,GAAW,GAAG,EAC1CsB,GAAYH,GAAU,IAAI,aAAa,aAAaC,GAAS,aAAaR,GAAS,GAAG,CAAC,EAAGS,EAAY,CAAC,EACvGE,GAAUrE,EAAM,aAAaoE,GAAU,EAAGN,EAAQ,EAAG,aAAaM,GAAU,EAAGN,EAAQ,EAAG,aAAaM,GAAU,EAAGN,EAAQ,CAAC,EAC7HQ,GAAc3F,GAAW,IAAK,EAAG8D,EAAS,EAC1C8B,GAAa,aAAa,aAAaD,GAAaxD,CAAgB,EAAGkD,EAAO,EAC9EQ,GAAalF,EAAI+E,GAAS/E,EAAImB,EAAOT,EAAM,EAAG,EAAG,CAAC,EAAG,GAAG,EAAGuE,EAAU,EAAE,IAAIjF,EAAI,EAAG0E,GAAS,EAAE,CAAC,EAC9FS,GAAazH,GAASiB,GAAKC,EAAYC,CAAa,EACpDuG,GAAe5H,GAAY8B,EAAMC,EAAcC,CAAa,EAC5D6F,GAAe,aAAa9D,EAAW6D,EAAY,EACnDE,GAAeJ,GAAW,IAAIG,EAAY,EAC1CE,GAAejE,EAAU,IAAI,aAAa6D,GAAYE,EAAY,CAAC,EACnEG,GAAS/E,EAAMT,EAAIuF,GAAa,EAAGD,GAAa,EAAGhC,EAAQ,EAAGtD,EAAIuF,GAAa,EAAGD,GAAa,EAAGhC,EAAQ,EAAGtD,EAAIuF,GAAa,EAAGD,GAAa,EAAGhC,EAAQ,EAAG7E,EAAI6E,GAAUV,EAAM,aAAauC,GAAY,EAAE,EAAG,EAAG,CAAC,CAAC,CAAC,EACpNM,GAAY,aAAa,aAAa,aAAa3G,GAAO,GAAG,EAAGoD,EAAM,EAAGlB,CAAS,EACxF,OAAOtC,EAAO8G,GAAQ/E,EAAM,EAAG,EAAG,EAAG,CAAC,EAAGmB,EAAY6D,EAAS,CAC/D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,iBACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,kBACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,mBACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,YACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,eACA,GACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,aAAc,CAAC,EAAG,OAAO,CAAC,CAC5B,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,OACD,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,IACA,SACD,EACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,QACA,IACA,SACD,EACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,IACA,UACD,EACA,IACA,SACD,EACA,IACA,OACD,EACA,IACA,SACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,YACA,cACA,iBACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,QACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,QACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CACC,EACA,QACA,IACA,OACD,CACD,CAAC,CACF,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,IACA,SACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,IACA,SACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,CACC,EACA,UACA,CAAC,gBAAiB,CAAC,EAAG,OAAO,CAAC,CAC/B,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,iBACA,CACC,CACC,EACA,gBACA,IACA,QACD,EACA,CACC,EACA,gBACA,IACA,QACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,OAAO,CACT,EACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,MAAM,EACV,QACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CACC,cACA,SACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,aACA,CACC,cACA,eACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,iBACA,CACC,SACA,CACC,EACA,SACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,IACA,WACD,CACD,EACA,CACC,GACA,IACA,WACD,EACA,CACC,GACA,YACA,CACC,EACA,WACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,WACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,IACA,WACD,CACD,EACA,CACC,GACA,KACA,WACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,IACA,YACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,gBACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,gBACD,CACD,EACA,CACC,GACA,MACA,MACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,YACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,YACD,CACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,YACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,WACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,eACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,WAAW,CACf,EACA,IACA,mBACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,WACA,CACC,QACA,OACA,YACA,YACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,iBACA,QACA,SACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CACC,QACA,UACA,gBACD,CACD,CACD,EACA,CACC,GACA,UACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,GACA,eACA,CACC,EACA,YACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,cACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,UACA,CACC,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,UACD,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,UACD,EACA,CACC,EACA,CACC,EACA,YACA,GACD,EACA,IACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,MAAM,EACV,CAAC,EAAG,GAAG,EACP,WACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,cACA,IACA,kBACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CACC,QACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CACC,UACA,aACA,YACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,eACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,UACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,WACA,CACC,MACA,aACA,eACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,cACA,CACC,OACA,eACA,eACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,YACA,IACA,cACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,cAAc,CAChB,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,CACA,EACA,aACA,IACA,cACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,CACC,EACA,eACA,GACD,EACA,CACC,EACA,eACA,GACD,EACA,UACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,CACC,EACA,eACA,GACD,EACA,CACC,EACA,eACA,GACD,EACA,UACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,CACC,EACA,eACA,GACD,EACA,CACC,EACA,eACA,GACD,EACA,UACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,YACA,CACC,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,WAAY,WAAW,CACzB,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,SACA,SACA,SACA,QACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,QACD,EACA,IACA,WACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,SACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,YACA,IACA,WACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMhH,EACjB,UAAW,IAAMuB,EACjB,aAAc,IAAMtB,EACpB,WAAY,IAAM8D,GAClB,YAAa,IAAMI,EACnB,iBAAkB,IAAMvD,GACxB,UAAW,IAAM0D,EACjB,WAAc,IAAMnF,GACpB,UAAW,IAAMmG,GACjB,UAAW,IAAMpE,GACjB,eAAkB,IAAM7B,GACxB,KAAQ,IAAMC,GACd,WAAc,IAAME,GACpB,IAAO,IAAMD,GACb,WAAY,IAAMuG,GAClB,UAAW,IAAME,GACjB,SAAY,IAAMhH,GAClB,UAAW,IAAMiD,EACjB,SAAY,IAAMhD,GAClB,YAAe,IAAMF,GACrB,UAAW,IAAMiD,CAClB,CACD,CAAC,GAAKrC,EAAE,GAAG,CAAC,CAAC,CAAC,EACd,SAASd,IAAkBoI,EAAQC,EAAYrG,EAAMsG,EAAS,CAC7D,GAAM,CAAE,SAAAC,EAAU,IAAAC,CAAI,EAAIJ,EACpBK,EAAcH,GAAS,aAAeD,EACtCK,EAAUC,GAAOL,GAAS,WAAa,EAAI,CAAC,EAC5C1F,EAAQgG,EAAKC,GAAY,aAAc,CAC5CN,EAAS,OACTA,EAAS,MACTA,EAAS,SACTC,EAAI,GACJA,EAAI,MACL,CAAC,EACK9E,EAAYkF,EAAKvI,GAAe,gBAAiB,CACtDkI,EAAS,cACTA,EAAS,gBACTG,CACD,CAAC,EACKI,EAASpF,EAAU,IAAI,EAAE,EAC/B,OAAOkF,EAAK3I,GAAe,gBAAiB,CAC3CoI,EAAWzF,CAAK,EAChB6F,EAAYG,EAAKG,GAAU,WAAY,CACtCnG,EACAc,EACAiF,GAAO,CAAC,CACT,CAAC,CAAC,EACFF,EAAYG,EAAKG,GAAU,WAAY,CACtCnG,EACAkG,EACAH,GAAO,CAAC,CACT,CAAC,CAAC,EACFF,EAAYG,EAAKG,GAAU,WAAY,CACtCnG,EACA+F,GAAO,CAAC,EACRjF,CACD,CAAC,CAAC,EACF+E,EAAYG,EAAKG,GAAU,WAAY,CACtCnG,EACA+F,GAAO,CAAC,EACRG,CACD,CAAC,CAAC,EACFpF,EACAd,EACA2F,EAAS,MACTC,EAAI,aACJxG,EACAuG,EAAS,gBACTA,EAAS,cACTA,EAAS,MAAM,OAAO,KAAK,EAC3BA,EAAS,eAAe,OAAO,KAAK,EACpCA,EAAS,eACTA,EAAS,UAAU,OAAO,KAAK,EAC/BA,EAAS,UACTA,EAAS,iBACTA,EAAS,cACTA,EAAS,WACTA,EAAS,WACTA,EAAS,kBACTA,EAAS,aACTA,EAAS,aACTA,EAAS,cACTA,EAAS,UACTA,EAAS,WACTG,CACD,CAAC,CACF,CACA,GAAI,CAAE,gBAAAM,GAAgB,EAAIlJ,IACtBmJ,IAAuB,KAAK,UAAU,CACzC,KAAM,YACN,OAAQ,GACT,CAAC,EACKC,GAAsBC,EAAU,CACrC,KAAM,OACN,KAAM,cACN,QAAS,SACT,uBAAwBC,GACxB,SAAU,gBACV,YAAa,qEACb,GAAGC,GAAc,CAChB,MAAO,YACP,QAAS,OACT,QAAS,CAACC,EAAOlB,IAAWY,IAAgBZ,EAAQkB,EAAM,QAASlB,EAAO,IAAI,KAAM,CACnF,WAAYkB,EAAM,WAClB,YAAaA,EAAM,WACpB,CAAC,CACF,CAAC,EACD,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,oCACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,6CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAAS,UACT,UAAWC,GACX,YAAa,0BACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,eAAgB,CACf,QAAS,UACT,UAAWA,GACX,YAAa,wDACb,GAAI,CACH,KAAM,QACN,MAAO,kBACP,MAAO,QACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,wDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,kCACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,cAAe,CACd,QAAS,GACT,UAAYC,GAAMA,EAAI,IACtB,YAAa,mGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,iBACP,MAAO,MACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,gCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,MACR,CACD,EACA,iBAAkB,CACjB,QAAS,GACT,YAAa,6EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,MACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,8BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,iBACP,MAAO,MACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,MACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,4EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,UACR,CACD,EACA,kBAAmB,CAClB,QAAS,GACT,YAAa,oDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,UACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,qEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,UACR,CACD,EACA,gBAAiB,CAChB,QAAS,IACT,YAAa,oEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,mBACP,MAAO,MACR,CACD,EACA,aAAc,CACb,QAAS,EACT,YAAa,0EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,SACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,6EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,sEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,MACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,gFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,MACR,CACD,EACA,MAAO,CACN,QAASR,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,Y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,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,gBACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,KACA,IACA,gBACD,CACD,EACA,CACC,GACA,MACA,MACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,CACC,EACA,KACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,QACA,IACA,KACD,EACA,IACA,gBACD,CACD,EACA,CACC,GACA,YACA,C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C,CACA,EACA,UACA,CAAC,OAAO,CACT,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CACC,QACA,QACA,WACA,YACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,eACA,CACC,QACA,QACA,WACA,YACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,UACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,OACD,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,CACC,EACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,OACD,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,aACA,IACA,YACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,iBACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,EACA,CACC,EACA,aACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CACC,YACA,YACA,WACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,aACD,CAAC,CACF,EACA,KACD,EACA,CAAC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EACA,CACC,GACA,UACA,CACC,EACA,YACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,MACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,UACA,WACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,OACA,KACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,OACA,YACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,qBACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CACC,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,UACA,GACD,EACA,CACC,EACA,UACA,GACD,EACA,SACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAMX,EACnB,UAAW,IAAML,EACjB,UAAW,IAAMO,EACjB,YAAa,IAAMC,GACnB,aAAc,IAAMG,EACpB,QAAS,IAAMb,EACf,UAAW,IAAMD,CAClB,CACD,CAAC,GAAKI,EAAE,GAAG,CAAC,CAAC,CAAC,EACRP,IAAyBK,EAAgB,GAAG,CACjDkB,EACApB,EACAA,EACAC,EACAA,EACAA,EACAA,CACD,EAAGmB,CAAK,GAAoBhB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiB,EAAcC,EAAQC,EAAIC,EAAKC,EAAWC,EAAUC,IAAa,CAC9K,UACA,IAAMC,EAAWC,GAAU7B,EAAM,GAAI,GAAI,GAAG,CAAC,EACvC8B,EAAUP,EAAG,IAAI,EAAE,EACnBQ,EAAUvB,EAAMwB,GAAIV,EAAQM,CAAQ,EAAG,EAAG,CAAC,EAC3CK,EAAUJ,GAAUD,EAAS,IAAIE,CAAO,CAAC,EACzCI,EAAU,aAAa,aAAaR,EAAU,GAAG,EAAG,CAAC,EACrDS,EAAW,aAAa,aAAaC,GAAI5B,EAAMwB,GAAIV,EAAQW,CAAO,EAAG,EAAG,CAAC,EAAGC,CAAO,EAAGR,CAAQ,EAAG,GAAG,EACpGW,EAAQ7B,EAAMwB,GAAIV,EAAQQ,CAAO,EAAG,EAAG,CAAC,EACxCQ,EAAU,aAAa,aAAaF,GAAI,aAAa,EAAGC,CAAK,EAAG,CAAC,EAAG,EAAE,EAAGX,CAAQ,EACjFa,EAAa/B,EAAMgC,EAAI,EAAG,aAAa,aAAa,aAAa,IAAK,aAAaT,EAAS,GAAG,CAAC,EAAGI,CAAQ,EAAGG,CAAO,EAAGX,CAAQ,EAAG,EAAG,CAAC,EACvIc,EAAajC,EAAMa,EAAa,IAAI,IAAIkB,CAAU,EAAGvC,EAAM,CAAC,EAAGA,EAAM,CAAC,CAAC,EACvE0C,EAAQ,aAAa,aAAalB,EAAKH,EAAa,CAAC,EAAGI,CAAS,EACvE,OAAOL,EAAMqB,EAAW,EAAGA,EAAW,EAAGA,EAAW,EAAGC,CAAK,CAC7D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,WACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,EACT,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,CAAC,SAAU,UAAU,CACtB,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,WACA,KACD,EACA,CAAC,SAAS,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,UACA,CAAC,SAAU,SAAS,CACrB,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,SAAS,CACb,EACA,IACA,UACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,CAAC,SAAU,SAAS,CACrB,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,UACD,CACD,EACA,CACC,GACA,UACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CACC,EACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,IACA,UACD,EACA,IACA,SACD,EACA,UACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CACC,MACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,eACA,KACD,EACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,aACA,CACC,EACA,YACA,CACC,MACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,eACA,GACD,CACD,EACA,IACA,WACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,aACA,GACD,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AAG,GAAG,EACP,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CACC,EACA,UACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,IACA,QACD,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EACA,CAAC,EAAG,KAAK,CACV,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,WACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,IACA,MACA,MACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,SACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EAAG,CAAC,EAAE,CAAC,CAAC,CACT,EACA,CACC,GACA,CACC,EACA,OACA,IACA,UACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,EACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,KAAM,UAAU,CAClB,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CAAC,EAAG,OAAO,CACZ,EACA,CACC,GACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,KACA,KACA,IACD,CACD,CAAC,CACF,EACA,MACA,MACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,KACA,KACA,IACD,CACD,CAAC,CACF,EACA,MACA,MACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,KACA,KACA,IACD,CACD,CAAC,CACF,EACA,MACA,MACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,MACA,CACC,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,CACC,KACA,KACA,IACD,CACD,CAAC,CACF,EACA,MACA,MACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,gBACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,KACD,EACA,CAAC,IAAI,CACN,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,KACD,EACA,CAAC,IAAI,CACN,CAAC,CACF,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,oBACA,CAAC,CAAC,IAAK,CACN,OAAU,SACV,OAAU,SACV,GAAM,KACN,IAAO,KACR,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMxB,EACjB,gBAAiB,IAAM6B,GACvB,QAAS,IAAM5B,EACf,SAAY,IAAM+C,EAClB,MAAS,IAAMH,EACf,IAAO,IAAMF,EACb,QAAW,IAAMI,EACjB,UAAW,IAAMiB,GACjB,SAAY,IAAMlB,EAClB,kBAAqB,IAAMpD,EAC5B,CACD,CAAC,GAAKU,EAAE,GAAG,CAAC,CAAC,CAAC,CACf,CACA,GAAI,CAAE,cAAAoE,IAAe,qBAAAC,IAAsB,wBAAAC,GAAwB,EAAIlF,IACnEmF,GAAMC,GACNC,GAAW,KAAK,GAAK,EAAI,GACzBC,IAAiB,KAAK,UAAU,CACnC,KAAM,SACN,MAAO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,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,cACT,EACA,CACC,KAAQ,IACR,KAAQ,iBACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,SACA,IACA,OACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,eACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,QACA,IACA,OACD,EACA,IACA,CACC,EACA,QACA,IACA,OACD,CACD,CAAC,CACF,EAAG,CAAC,EAAG,QAAQ,CAAC,CACjB,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,IACA,MACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CAAC,CACA,EACA,kBACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,QACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,UACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,WACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,MACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,KAAK,EACT,CACC,EACA,YACA,CACC,kBACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,SACD,EAAG,UAAU,CACd,EACA,IACA,KACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,UACA,SACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,aACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,CACC,EACA,KACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,WACA,IACA,QACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,IACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,YACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,IACA,CAAC,EAAG,IAAI,CACT,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,YACA,IACA,OACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,aACA,CACC,YACA,WACA,CACC,EACA,aACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,aACA,IACA,YACD,CACD,EACA,IACA,eACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,QAAS,KAAK,CAChB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMd,EACjB,WAAY,IAAME,GAClB,YAAa,IAAMI,EACnB,UAAW,IAAMK,EACjB,UAAW,IAAME,GACjB,aAAc,IAAME,EACpB,UAAW,IAAME,GACjB,WAAc,IAAMrC,GACpB,UAAW,IAAMuC,GACjB,OAAU,IAAMtC,GAChB,UAAW,IAAMG,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRP,GAAkBI,EAAgB,GAAG,CAACC,CAAG,EAAG2C,CAAK,GAAoBzC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAM0C,GAAU,CACtK,UACA,OAAOC,GAAcD,EAAO,EAAG,MAAO,KAAK,CA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B,eAAgBA,EAAM,cACvB,CAAC,CACF,CAAC,EACD,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,+BACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,wCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,mCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,8EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,MACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,uDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,MACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,iCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,MACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,8EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,MACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,0EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,MACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,iEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,MACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,gDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,MACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,6EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,MACR,CACD,EACA,KAAM,CACL,QAAS,UACT,YAAa,GACb,YAAa,6FACb,GAAI,CACH,KAAM,SACN,QAAS,CAAC,CACT,MAAO,UACP,MAAO,SACR,EAAG,CACF,MAAO,SACP,MAAO,QACR,CAAC,EACD,MAAO,OACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,gCACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,SACP,UAAW,CAAE,KAAM,QAAS,CAC7B,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,iCACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,SACP,UAAW,CAAE,KAAM,QAAS,CAC7B,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,gCACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,SACP,UAAW,CAAE,KAAM,QAAS,CAC7B,CACD,EACA,WAAY,CACX,QAAS,QACT,UAAWC,GACX,YAAa,GACb,YAAa,oDACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,SACP,UAAW,CAAE,KAAM,QAAS,CAC7B,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,gEACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAST,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,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AO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAMC,IAAO,CACjL,UACA,IAAMC,EAAS,aAAaF,EAAK,EAAGA,EAAK,CAAC,EACpCG,EAAiB,aAAaF,EAAG,EAAGA,EAAG,CAAC,EACxCU,EAAiBH,GAAIA,GAAI,aAAaL,EAAgBD,CAAM,EAAG,CAAC,EAAGM,GAAI,aAAaP,EAAG,EAAGD,EAAK,CAAC,EAAG,aAAaC,EAAG,EAAGD,EAAK,CAAC,CAAC,CAAC,EACpI,OAAOF,EAAM,aAAa,aAAaI,EAAQC,CAAc,EAAGQ,CAAc,EAAGA,CAAc,CAChG,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,MACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,KACA,GACD,CACD,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,iBACA,IACA,QACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,eACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CACC,EACA,OACA,GACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,UACA,CAAC,eAAgB,cAAc,CAChC,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,gBACD,EACA,IACA,gBACD,EAAG,gBAAgB,CACpB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMH,GACjB,UAAW,IAAMV,CAClB,CACD,CAAC,GAAK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CT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,YACA,CACC,EACA,aACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,GACD,CACD,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EAAG,CAAC,GAAI,CACP,EACA,UACA,CAAC,YAAa,CACb,EACA,KACA,GACD,CAAC,CACF,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,aAAc,IAAMM,EACpB,UAAW,IAAMvB,CAClB,CACD,CAAC,GAAKC,EAAE,GAAG,CAAC,CAAC,CAAC,EACRuB,IAAiBzB,EAAgB,GAAG,CAAC0B,EAAOzB,CAAK,EAAGyB,CAAK,GAAoBxB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyB,EAAOT,IAAO,CAClL,UACA,IAAMU,EAASC,GAAaC,EAAMH,EAAM,EAAGA,EAAM,EAAGA,EAAM,CAAC,CAAC,EACtDI,EAAcb,EAAG,EAAI,GAAKA,EAAG,EAAI,GAAKA,EAAG,EAAI,GAAKA,EAAG,EAAI,EACzDc,EAAQR,EAAOG,EAAM,EAAG,EAAGI,CAAW,EAC5C,OAAOL,EAAME,EAAO,EAAGA,EAAO,EAAGA,EAAO,EAAGI,CAAK,CACjD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,OACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CACC,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,EACA,CACC,EACA,QACA,GACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,KACA,CACC,EACA,CACC,EACA,KACA,GACD,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EACA,CACC,EACA,OACA,GACD,EACA,IACA,YACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,UACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,KACD,EACA,CAAC,YAAY,CACd,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,WACA,KACD,EACA,KACD,EACA,CAAC,eAAe,CACjB,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,WACA,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,eACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,WAAY,QAAQ,CACtB,CACD,EACA,CACC,GACA,cACA,CACC,EACA,WACA,CAAC,QAAS,KAAK,CAChB,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,WACA,YACA,CACC,EACA,UACA,CAAC,aAAa,CACf,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMG,EACjB,iBAAkB,IAAMK,GACxB,UAAW,IAAMV,EACjB,WAAY,IAAMc,GAClB,UAAW,IAAMD,CAClB,CACD,CAAC,GAAKhB,EAAE,GAAG,CAAC,CAAC,CAAC,EACVkB,GAAuB,GAC3B,SAASC,KAAsB,CAC9B,OAAOC,GAAO,CACb,OAAQrB,EACR,WAAYA,EACZ,aAAcA,CACf,CAAC,CACF,CACA,SAASsB,IAAwBC,EAAcC,EAAe,CAC7D,IAAMC,EAASL,IAAoB,EAC7BM,GAA0B,WAAW,uBAA0BC,GAAMA,IAAI7B,EAAgB,gBAAgB,CAC9G,QAAS,CAAE,eAAgB8B,GAAiBC,GAAiB,YAAY,CAAE,EAC3E,OAAQ,CAAE,QAASJ,CAAO,CAC3B,CAAC,EAAG,QAAQ,EACZ,MAAO,CACN,OAAAC,EACA,OAAQ5B,EAAgB,GAAG,CAACgC,EAAKA,CAAG,CAAC,GAAoB7B,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC8B,EAAIC,IAAO,CACrJ,UACA,IAAMC,EAAIP,EAAO,EAAE,OACbQ,EAAI,aAAa,aAAalC,EAAIgC,CAAE,EAAG,EAAE,EAAGR,CAAa,EACzDW,EAAoB1B,EAAI,aAAawB,EAAE,OAAQC,CAAC,EAAG,CAAC,EACpDE,EAAOtB,GAAW,EAAGmB,EAAE,aAAcE,CAAiB,EACtDE,EAAS,aAAa,aAAaJ,EAAE,WAAYG,CAAI,EAAGjB,EAAoB,EAClFmB,GAAaZ,EAAO,EAAE,QAASa,GAAMR,EAAIC,CAAE,EAAG5B,EAAMiC,EAAQ,EAAG,EAAG,CAAC,CAAC,CACrE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,eACD,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,QACD,EACA,IACA,GACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CACC,EACA,IACA,cACD,EACA,mBACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,IACA,MACD,EACA,IACA,sBACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD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A,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,OACA,KACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,QAAQ,CACV,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,UACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,OACA,GACD,CACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CACC,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,EACA,CACC,EACA,WACA,GACD,EACA,CACC,EACA,YACA,CACC,IACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,YAAa,IAAM6B,EACnB,UAAW,IAAMC,EACjB,UAAW,IAAMrD,CAClB,CACD,CAAC,GAAKH,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,kBAAkB,EACxC,SAAS2D,GAAcC,EAAO,CAC7B,MAAO,CACN,QAAU7O,GAAW,CACpB,GAAM,CAAE,YAAAkF,CAAY,EAAIlF,EACxB,OAAKkF,EAAY2J,EAAM,SAAS,IAAI,GAAK,KAAO,EAAU,KACnDjH,GAAiB5H,EAAQ,CAC/B,UAAW6O,EAAM,OACjB,aAAc,CAACC,EAAGC,IAAMC,GAAuBF,EAAGC,EAAGF,EAAM,WAAW,EACtE,UAAW,IAAMA,EAAM,UACvB,OAAQ,IAAM3J,EAAY2J,EAAM,OAAO,IAAI,GAAK,EACjD,CAAC,CACF,EACA,OAAQ,CAACV,EAAMc,EAAIjP,IAAW,CAC7B,IAAMkP,EAAUlP,EAAO,iBAAiB6O,EAAM,MAAM,EACpD,OAAOjO,EAAKsN,IAAkB,mBAAoB,CACjDC,EACAe,EAAUA,EAAQ,OAAOD,CAAE,EAAI9F,GAAK,2BAA2B,EAC/DvH,GAAKiN,EAAM,KAAK,CAAC,EAAGA,EAAM,KAAK,CAAC,EAAGA,EAAM,KAAK,CAAC,EAAG7O,EAAO,SAAS6O,EAAM,SAAS,IAAI,CAAC,CACvF,CAAC,CACF,CACD,CACD,CACA,IAAMM,IAASrE,EAAgB,GAAG,CACjCC,EACAC,EACAA,CACD,EAAGD,CAAK,GAAoBE,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACtB,EAAIlJ,EAAQuI,IAAM,CAC/H,UACA,IAAMoG,EAAM,aAAa3O,EAAQ,IAAI,EAC/B4O,EAAK,aAAa,aAAa,aAAaC,GAAI,aAAatG,EAAG,GAAG,CAAC,EAAG,EAAE,EAAG,aAAasG,GAAI,aAAa,aAAatG,EAAG,EAAE,EAAG,GAAG,CAAC,EAAG,EAAE,CAAC,EAAGoG,CAAG,EAC/IG,EAAK,aAAa,aAAa,aAAaD,GAAI,aAAa,aAAatG,EAAG,GAAG,EAAG,EAAE,CAAC,EAAG,EAAE,EAAG,aAAasG,GAAI,aAAatG,EAAG,GAAG,CAAC,EAAG,EAAE,CAAC,EAAGoG,CAAG,EAC/II,EAAM,aAAa,aAAaF,GAAI,aAAatG,EAAG,EAAE,CAAC,EAAGvI,CAAM,EAAG,IAAI,EACvE,EAAIgP,GAAID,CAAG,EACXE,EAAIJ,GAAIE,CAAG,EACXvC,EAAItD,EAAG,IAAIoB,EAAM,GAAI,EAAE,CAAC,EACxB4E,EAAK,aAAa,aAAa1C,EAAE,EAAG,CAAC,EAAG,aAAaA,EAAE,EAAGyC,CAAC,CAAC,EAC5DE,EAAK,aAAa,aAAa3C,EAAE,EAAGyC,CAAC,EAAG,aAAazC,EAAE,EAAG,CAAC,CAAC,EAClE,OAAOlC,EAAM,aAAa,aAAa4E,EAAI,EAAE,EAAGN,CAAE,EAAG,aAAa,aAAaO,EAAI,EAAE,EAAGL,CAAE,CAAC,CAC5F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,GACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,SACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,KAAK,EAAG,CAAC,EAAG,KAAK,CAAC,CACxB,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA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AGG,EAAI,UAAU,IAAIA,EAAI,UAAU,IAAIA,EAAI,OAAO,EAC1D,EACA,IAAK,IAAM,CACVD,EAAQ,EACRE,EAAK,OAAO,CACb,CACD,CAAC,EACMtB,EAAS,GACjB,EACIyB,GAAOC,GAAS,CACnB,SAAUC,EAAE,UAAU,EACtB,QAASA,EAAE,SAAS,CACrB,CAAC,EACGC,GAAOC,GAAW,CAAE,KAAAJ,EAAK,CAAC,EACxBN,GAAsBW,EAAU,CACrC,KAAM,QACN,KAAM,SACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,yCACb,YAAa,GACb,cAAe,GACf,YAAa,CACZ,WAAY,CACX,OAAQC,EACR,QAAS,CACV,EACA,YAAa,CACZ,OAAQA,EACR,QAAS,CACV,EACA,WAAY,CACX,OAAQA,EACR,QAAS,CACV,CACD,EACA,MAAO,CACN,WAAY,CACX,QAAS,YACT,YAAa,0GACb,GAAI,CACH,KAAM,OACN,MAAO,aACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,gHACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,iBACT,YAAa,6BACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,cACP,MAAO,aACR,EACA,CACC,MAAO,gBACP,MAAO,eACR,EACA,CACC,MAAO,cACP,MAAO,aACR,EACA,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,aACP,MAAO,YACR,EACA,CACC,MAAO,gBACP,MAAO,eACR,EACA,CACC,MAAO,iBACP,MAAO,gBACR,EACA,CACC,MAAO,qBACP,MAAO,oBACR,EACA,CACC,MAAO,eACP,MAAO,cACR,EACA,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,iBACP,MAAO,gBACR,EACA,CACC,MAAO,cACP,MAAO,aACR,EACA,CACC,MAAO,kBACP,MAAO,iBACR,EACA,CACC,MAAO,aACP,MAAO,YACR,EACA,CACC,MAAO,kBACP,MAAO,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AAa,iCACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,kCACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,4BACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,sDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,4BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,QACR,CACD,EACA,aAAc,CACb,QAAS,EACT,YAAa,GACb,YAAa,kCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,kBACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,iCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,qCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,aACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,IACT,YAAa,8BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,IACL,KAAM,EACN,MAAO,S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M,CACL,QAAS,GACT,YAAa,mBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,QACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,oEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,wEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,WACP,MAAO,QACR,CACD,EACA,mBAAoB,CACnB,QAAS,GACT,YAAa,yCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,sBACP,MAAO,WACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,8BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,WACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,8BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,WACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,8BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,WACR,CACD,EACA,eAAgB,CACf,QAAS,UACT,UAAWD,GACX,YAAa,kCACb,GAAI,CACH,KAAM,QACN,MAAO,kBACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,kBACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,WACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,mDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWE,GACX,YA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AAS,QACT,YAAa,GACb,YAAa,2IACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,IACT,YAAa,4BACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,IACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,sCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,OACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,8GACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,OACR,CACD,EACA,KAAM,CACL,QAAS,IACT,YAAa,qBACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,OACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,iGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,gEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,wGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,iEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,6GACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,IACL,KAAM,IACN,MAAO,aACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,QACT,YAAa,qCACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,UACP,MAAO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oBAAqB,sEACtB,CAAC,ECrCD,IAAIC,IAAuB,KAAK,UAAU,CACzC,KAAM,YACN,OAAQ,GACT,CAAC,EACGC,IAAmB,IACjBC,GAAsBC,EAAU,CACrC,KAAM,eACN,KAAM,cACN,QAAS,SACT,uBAAwBC,GACxB,SAAU,gBACV,YAAa,oOACb,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,qCACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,8CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,yCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,UACT,UAAWC,GACX,YAAa,qGACb,GAAI,CACH,KAAM,QACN,MAAO,cACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,oGACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,gHACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,yHACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,8FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,EACT,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D,MAAO,QACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,4EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,cACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,0CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,2HACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,oGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,cACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,kFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,8GACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,GAAGC,GAAgB,CAClB,YAAa,CACZ,QAAS,EACT,YAAa,kEACb,GAAI,CAAE,MAAO,SAAU,CACxB,EACA,YAAa,CAAE,GAAI,CAAE,MAAO,SAAU,CAAE,EACxC,WAAY,CACX,QAAS,IACT,YAAa,6DACb,GAAI,CAAE,MAAO,SAAU,CACxB,CACD,CAAC,EACD,WAAY,CACX,QAAS,IACT,YAAa,wHACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,KACL,IAAK,GACL,KAAM,KACN,MAAO,cACP,MAAO,SACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,iKACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,SACR,CACD,EACA,GAAGA,GAAgB,CAAE,aAAc,CAAE,GAAI,CAAE,MAAO,SAAU,CAAE,CA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AAQ,CAAE,KAAM,CACf,MAAO,SACP,OAAQ,QACT,CAAE,EACF,WAAY,CACX,OAAQ,CACP,QAAS,IACT,YAAa,qEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,sDACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,KACN,MAAO,YACP,MAAO,OACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,iEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,KACN,MAAO,WACP,MAAO,OACR,CACD,CACD,CACD,CACD,CAAC,ECpDD,IAAME,GAAsBC,EAAU,CACrC,KAAM,YACN,KAAM,SACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,8CACb,MAAO,CACN,UAAW,CACV,QAAS,IACT,YAAa,qDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,aACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,8BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,cACP,MAAO,QACR,CACD,EACA,kBAAmB,CAClB,QAAS,GACT,YAAa,mCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,qBACP,MAAO,QACR,CACD,EACA,kBAAmB,CAClB,QAAS,IACT,YAAa,oCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,IACL,KAAM,GACN,MAAO,qBACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,0BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,aACP,MAAO,aACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,8BACb,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b,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,uCACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,gDACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,UAAWC,GACX,YAAa,0CACb,YAAa,GACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,SACR,CACD,EACA,GAAGC,GAAgB,CAClB,WAAY,CACX,YAAa,oDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,MAAO,SACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,wEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,MAAO,SACR,CACD,CACD,CAAC,EACD,OAAQ,CACP,QAAS,EACT,YAAa,mFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,SACP,MAAO,SACR,CACD,EACA,GAAGA,GAAgB,CAClB,QAAS,CACR,QAAS,IACT,YAAa,yDACb,GAAI,CAAE,KAAM,OAAQ,CACrB,EACA,gBAAiB,CAChB,QAAS,EACT,GAAI,CACH,KAAM,QACN,IAAK,CACN,CACD,EACA,aAAc,GACd,aAAc,CACb,QAAS,EACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,SACR,CACD,CACD,CAAC,EACD,UAAW,CACV,QAAS,IACT,YAAa,oDACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,SACR,CACD,EACA,GAAGA,GAAgB,CAAE,WAAY,CAChC,QAAS,IACT,YAAa,mCACb,GAAI,CAAE,MAAO,UAAW,CACzB,CAAE,CAAC,EACH,WAAY,CACX,QAAS,GACT,YAAa,kEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,UACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,2DACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,qFACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWC,GACX,YAAa,0BACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,MACR,CACD,EACA,cAAe,CACd,QAAS,EACT,YAAa,yDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,iBACP,MAAO,MACR,CACD,EACA,uBAAwB,CACvB,QAAS,GACT,UAAWF,GACX,YAAa,4CACb,GAAI,CACH,KAAM,WACN,MAAO,sBACP,MAAO,MACR,CACD,EACA,MAAO,CACN,QAAStL,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,sCACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,uBACd,CACD,CACD,CAAC,ECpYD,IAAMyL,GAAsBC,EAAU,CACrC,KAAM,YACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,4DACb,iBAAkB,GAClB,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,GAAGC,GAAgB,EACnB,MAAO,CACN,QAAS,EACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,QACR,CACD,EACA,GAAGC,GAAe,EAClB,GAAGC,GAAe,CACnB,EACA,MAAOC,G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SACN,QAAS,SACT,SAAU,UACV,YAAa,iDACb,kBAAmB,GACnB,uBAAwB,CAAE,YAAa,IAAK,EAC5C,MAAO,CACN,QAAS,CACR,QAAS,SACT,UAAWP,IACX,YAAa,GACb,YAAa,8BACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,YACP,MAAO,QACR,EACA,CACC,MAAO,YACP,MAAO,QACR,EACA,CACC,MAAO,YACP,MAAO,QACR,EACA,CACC,MAAO,gBACP,MAAO,cACR,EACA,CACC,MAAO,aACP,MAAO,WACR,EACA,CACC,MAAO,cACP,MAAO,YACR,EACA,CACC,MAAO,kBACP,MAAO,gBACR,CACD,EACA,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,2BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,aACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,oCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,uFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,SACT,UAAWE,IACX,YAAa,GACb,YAAa,4BACb,GAAI,CACH,KAAM,SACN,QAAS,CAAC,CACT,MAAO,gBACP,MAAO,QACR,EAAG,CACF,MAAO,gBACP,MAAO,QACR,CAAC,EACD,MAAO,aACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,cACT,UAAWM,GACX,YAAa,2BACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,UAAW,CAAE,UAAW,QAAS,EACjC,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,4BACb,GAAI,CACH,KAAM,QACN,MAAO,cACP,UAAW,CAAE,UAAW,QAAS,EACjC,MAAO,QACR,CACD,CACD,EAC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M,IACN,MAAO,QACP,MAAO,QACR,CACD,EACA,aAAc,CACb,QAAS,IACT,YAAa,8DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,+EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,IACT,YAAa,4BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,iHACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,QACP,MAAO,WACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,yFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,iBACP,MAAO,WACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,6FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,iBACP,MAAO,WACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,uGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,WACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,0DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,WACR,CACD,EACA,eAAgB,CACf,QAAS,EACT,YAAa,0FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,aACR,CACD,CACD,EACA,GAAG6C,GAAS,CACX,OAAQzB,GACR,OAAQL,GACR,UAAWf,GACX,SAAU,CACT,QAASA,GACT,OAAQC,GACT,EACA,OAAQ,CACP,IAAK,SACL,KAAM,kBACN,KAAM,CAACC,GAAKA,EAAG,EACf,OAAQE,EACT,EACA,KAAM,CAAC,CAAE,YAAA0C,CAAY,IAAM,CAC1B,IAAMC,EAASf,GAAwBc,EAAY,OAAO,GAAK,KAAK,EACpE,MAAO,CACN,UAAW,CACV,KAAM,CACL,OAAQpB,IACR,QAAS,KACV,EACA,OAAQ,CACP,OAAQE,IACR,QAAS,QACV,EACA,MAAOmB,EAAO,MACd,QAASA,EAAO,OACjB,EACA,SAAU,OACV,QAAS,CACR,SACA,QACA,SACD,CACD,CACD,EACA,MAAO,CAACC,EAAK,CAAE,YAAAF,CAAY,IAAM,CAChC,IAAMG,EAAIC,GAAmBJ,CAAW,EACpCK,EAAY,EAChB,OAAQC,GAAgB,CACvB,GAAM,CAAE,GAAAC,EAAI,OAAAC,EAAQ,SAAAC,EAAU,SAAAC,CAAS,EAAIC,GAAeL,CAAW,EACrED,GAAaE,EACb,IAAMK,EAAU,KAAK,IAAIJ,EAAQ,GAAG,EAC9BK,EAAQX,EAAI,aAAaC,EAAE,QAAS,IAAI,CAAC,EACzCW,EAAUL,EAAWD,EACrBO,EAAUL,EACVM,EAAe,IACfC,EAAMjB,EAAY,eAAe,EACjCkB,EAAQ,KAAK,IAAI,KAAK,IAAIf,EAAE,eAAgB,GAAG,EAAG,EAAE,EAAG,CAAC,EAAI,EAAIgB,GACtE,OAAAjB,EAAI,YAAY,CACf,MAAO9B,EAAM6C,GAAK,GAAK,EAAGA,GAAK,GAAK,EAAGA,GAAK,GAAK,EAAGA,GAAK,GAAK,CAAC,EAC/D,MAAAJ,EACA,GAAAN,EACA,KAAMF,EACN,OAAAG,EACA,QAAAI,EACA,UAAW,KAAK,IAAI,KAAK,IAAIT,EAAE,QAAS,GAAG,EAAG,CAAC,EAAG,GAAG,EAAI1C,IAAa,IACtE,SAAU0C,EAAE,QAAS,EAAE,EAAI5C,GAAaQ,IACxC,SAAU,KAAK,IAAI,KAAK,IAAIoC,EAAE,gBAAiB,EAAE,EAAG,CAAC,EAAG,CAAC,EACzD,YAAa,KAAK,IAAI,KAAK,IAAIA,EAAE,gBAAiB,EAAE,EAAG,CAAC,EAAG,GAAG,EAAI5C,GAClE,WAAY,KAAK,IAAI,KAAK,IAAI4C,EAAE,aAAc,GAAG,EAAG,CAAC,EAAG,CAAC,EACzD,QAAS,KAAK,IAAI,KAAK,IAAIA,EAAE,UAAW,EAAE,EAAG,CAAC,EAAG,CAAC,EAClD,SAAU,KAAK,IAAI,KAAK,IAAIA,EAAE,WAAY,EAAE,EAAG,CAAC,EAAG,CAAC,EACpD,MAAAe,EACA,QAAAJ,EACA,QAAAC,EACA,YAAaC,EAAeA,EAC5B,YAAa,KAAK,IAAI,KAAK,IAAIb,EAAE,iBAAkB,CAAC,EAAG,CAAC,EAAG,CAAC,EAAItC,IAChE,QAASuD,GAAStD,IAAayC,CAAE,CAClC,CAAC,EACML,EAAI,MAAM,CAAE,MAAAW,CAAM,CAAC,CAC3B,CACD,EACA,SAAU,CACT,OAAQ,kBACR,SAAU,QACV,QAAS,CAACQ,EAAO,CAAE,UAAAC,CAAU,IAAMA,EAAYC,EAAK9B,IAAmB,oBAAqB,CAAC4B,EAAOC,CAAS,CAAC,EAAID,CACnH,CACD,CAAC,CACF,CAAC,ECtTD,IAAMG,GAAsBC,EAAU,CACrC,KAAM,QACN,KAAM,SACN,YAAa,sEACb,MAAO,CACN,SAAU,CAAC,CAAE,EAAAC,EAAG,EAAAC,CAAE,EAAGC,IAAMC,GAAOH,EAAGC,EAAGC,EAAE,QAAQ,EAAGA,EAAE,OAAO,EAAGA,EAAE,YAAY,CAAC,EAChF,iBAAkB,2BAClB,kBAAmB,gCACnB,OAAQ,CAAE,KAAM,CACf,MAAO,SACP,OAAQ,QACT,CAAE,EACF,WAAY,CACX,OAAQ,CACP,QAAS,GACT,YAAa,qCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,mBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,SACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,yFACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,IACL,KAAM,IACN,MAAO,cACP,MAAO,OACR,CACD,CACD,CACD,CACD,CAAC,EClDD,IAAME,GAAsBC,EAAU,CACrC,KAAM,YACN,KAAM,OACN,SAAU,cACV,YAAa,oDACb,uBAAwB,CAAE,YAAa,IAAK,EAC5C,aAAc,CAAE,MAAO,OAAQ,EAC/B,mBAAoB,CAAE,UAAW,gBAAiB,EAClD,MAAO,CACN,SAAU,CACT,QAAS,IACT,YAAa,mCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,6BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,oBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,WACR,CACD,EACA,eAAgB,CACf,QAAS,EACT,YAAa,qDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,kBACP,MAAO,WACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,yCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,SACT,YAAa,mEACb,UAAWC,GACX,YAAa,GACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,cACP,MAAO,aACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,OACP,MAAO,MACR,CACD,EACA,MAAO,QACP,MAAO,QACR,CACD,CACD,EACA,IAAKC,GAAU,CACd,SAAUC,EAAE,UAAU,EACtB,OAAQA,EAAE,QAAQ,EAClB,KAAMA,EAAE,MAAM,CACf,CAAC,CACF,CAAC,ECpGD,IAAIC,IAAU,EAAI,KAAK,GACnBC,GAAc,CAAC,CAClB,MAAO,EACP,QAAS,CAAC,CAAC,IAAK,GAAG,EAAG,CAAC,IAAK,GAAG,CAAC,EAChC,MAAO,GACR,EAAG,CACF,MAAO,IACP,QAAS,CAAC,CAAC,IAAK,GAAG,EAAG,CAAC,IAAK,GAAG,CAAC,EAChC,MAAO,EACR,CAAC,EACKC,GAAsBC,EAAU,CACrC,KAAM,kBACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,wDACb,iBAAkB,GAClB,aAAc,CAAE,MAAO,OAAQ,EAC/B,YAAa,CACZ,MAAO,CACN,OAAQC,EACR,QAAS,CACR,EACA,EACA,CACD,CACD,EACA,MAAO,CACN,OAAQA,EACR,QAAS,CACR,EACA,EACA,CACD,CACD,EACA,MAAO,CACN,OAAQA,EACR,QAAS,CACR,EACA,EACA,CACD,CACD,EACA,MAAO,CACN,OAAQA,EACR,QAAS,CACR,EACA,EACA,CACD,CACD,CACD,EACA,MAAO,CACN,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,wBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,uBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,yBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,wBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,QACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,kBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,+BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,aACP,M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SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,cACV,YAAa,yDACb,YAAa,GACb,MAAO,CACN,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,oBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,gEACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,6FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,8BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,0BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,+FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,SACP,MAAO,OACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,yKACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,OACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,kEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,mBACP,MAAO,aACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,kCACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,gBACP,MAAO,aACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,CACD,EACA,GAAGC,GAAS,IAAM,CACjB,IAAMC,EAAeC,IAAO,CAC3B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ACL,KAAM,IACN,MAAO,UACP,MAAO,YACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,qFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,YACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,qDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,YACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,4CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,+CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,mDACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,OACR,CACD,EACA,eAAgB,CACf,QAAS,EACT,YAAa,kDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,kBACP,MAAO,OACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,2DACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,mDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,SACR,CACD,EACA,QAAS,CACR,QAAS,IACT,YAAa,oCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,SACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,iCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,SACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,gDACb,GAAI,CACH,KAA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L,GAAMK,EAAI,CAAC,EAAI,SAChB,CAAC,CACF,CACA,IAAMG,GAAsBC,EAAU,CACrC,KAAM,MACN,KAAM,cACN,QAAS,SACT,uBAAwBC,GACxB,SAAU,gBACV,YAAa,6KACb,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,6BACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,sCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,iCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,UACT,UAAWC,GACX,YAAa,sDACb,GAAI,CACH,KAAM,QACN,MAAO,YACP,MAAO,KACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,iEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,KACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,yEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,KACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,mJACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,KACR,CACD,EACA,aAAc,CACb,QAAS,IACT,YAAa,qCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,KACN,MAAO,gBACP,MAAO,KACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,kCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,OACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,6CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,sFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,uEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,4DACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,GACL,KAAM,IACN,MAAO,YACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,6BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,UACR,CACD,EACA,QAAS,CACR,QAAS,EACT,YAAa,iEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,UACR,CACD,EACA,QAAS,CACR,QAAS,IACT,YAAa,oDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,0DACb,GAAI,CACH,KAAM,QACN,MAAO,kBACP,MAAO,UACR,CACD,EACA,QAAS,CACR,QAAS,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,kDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,yDACb,GAAI,CACH,KAA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AAaJ,EAAE,UAAWa,CAAS,EAAGb,EAAE,SAAS,EAAGA,EAAE,EAAE,EAAG,EAAE,CAAC,CAC5H,CACAG,EAAKY,EAAMZ,EAAI,GAAI,CAAC,EACpBC,EAAKW,EAAMX,EAAI,GAAI,CAAC,EACpBnB,GAAkB,EAAE,OAAOgB,CAAG,EAAIZ,EAAMc,EAAIC,EAAI,EAAG,CAAC,CACrD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,QACD,EACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,IACA,OACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,IACA,SACD,CACD,EACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,WACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,WACD,CAAC,CACF,CACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,CAAC,CACF,EACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CACC,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,YACA,CACC,KACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,QACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,kBAAqB,IAAMnB,GAC3B,QAAS,IAAMW,EACf,SAAY,IAAMD,EAClB,QAAS,IAAMJ,EACf,aAAc,IAAMiB,EACpB,UAAW,IAAMI,EACjB,UAAW,IAAME,GACjB,YAAa,IAAMC,EACnB,UAAW,IAAM1B,CAClB,CACD,CAAC,GAAKQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,CAC3C,CACA,SAASmB,IAAsBrB,EAAU,CACxC,OAAOR,EAAgB,GAAG,CAACS,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACpJ,UACA,IAAME,EAAM,aAAa,aAAaF,EAAIH,EAAID,CAAQ,CAAC,EAAGG,CAAE,EACtDI,EAAOV,GAAkB,EAAE,OAAOS,CAAG,EAC3CgB,GAAazB,GAAkB,EAAE,QAAS0B,GAAMpB,EAAIC,CAAE,EAAGV,EAAMa,EAAK,EAAGA,EAAK,EAAG,EAAG,CAAC,CAAC,CACrF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,UAAU,CACZ,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,QACD,EACA,KACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,oBACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMN,EACf,SAAY,IAAMD,EAClB,kBAAqB,IAAMH,GAC3B,mBAAoB,IAAMyB,GAC1B,UAAW,IAAMC,GACjB,UAAW,IAAM7B,CAClB,CACD,CAAC,GAAKQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,CAC3C,CACA,SAASsB,GAAkBC,EAAO,CACjC,MAAO,CAACC,EAAQC,IAAS,CACxB,GAAM,CAAE,YAAAC,EAAa,uBAAAC,EAAwB,UAAAC,CAAU,EAAIJ,EACrD1B,EAAWZ,GAAmBwC,EAAYH,EAAM,SAAS,IAAI,GAAK,EAAE,EACpEM,EAASC,GAAkBL,EAAMjC,EAAOP,EAAe,EACvD8C,GAA2B,WAAW,uBAA0B1C,GAAMA,IAAIoC,EAAK,cAAc,CAClG,KAAM,CAAC3B,EAAUA,CAAQ,EACzB,OAAQd,EACT,CAAC,EAAE,OAAO,UAAW,SAAS,EAAG,SAAS,EAC1C4C,EAAU,IAAMG,EAAQ,QAAQ,CAAC,EACjC,IAAMC,EAAeL,EAAuBI,CAAO,EAC7CE,GAAgC,WAAW,uBAA0B5C,GAAMA,IAAIoC,EAAK,cAAchC,GAAO,CAC9G,QAASC,EACT,QAASA,EACT,UAAWA,EACX,UAAWA,EACX,GAAIA,EACJ,MAAOA,EACP,UAAWA,EACX,OAAQA,EACR,OAAQA,CACT,CAAC,CAAC,EAAG,cAAc,EACbwC,EAAWC,GAAgBX,CAAM,EACjCY,EAAO,CAACtC,EAAUA,CAAQ,EAC1BuC,EAAexC,IAAsBC,CAAQ,EAC7CwC,EAAenB,IAAsBrB,CAAQ,EAC7CyC,EAAWd,EAAK,gBAAgBrC,GAAmB,CACxD,OAAAyC,EACA,OAAQI,EAAa,MACtB,CAAC,EACKO,EAAWf,EAAK,gBAAgB9B,GAAmB,CACxD,OAAAkC,EACA,QAAAE,CACD,CAAC,EACKU,EAASC,GAAqBjB,GAAwBzB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACxJ,UACAmC,EAAapC,EAAIC,CAAE,CACpB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,EACA,eACA,CAAC,KAAM,IAAI,CACZ,CAAC,CAAC,CACH,EACA,UAAW,CAAE,aAAgB,IAAMmC,CAAa,CACjD,CAAC,GAAKrC,EAAE,GAAG,CAAC,CAAC,EAAG,CACf,KAAAoC,EACA,UAAWG,CACZ,CAAC,EACKI,EAASD,GAAqBjB,GAAwBzB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACxJ,UACAoC,EAAarC,EAAIC,CAAE,CACpB,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,EACA,eACA,CAAC,KAAM,IAAI,CACZ,CAAC,CAAC,CACH,EACA,UAAW,CAAE,aAAgB,IAAMoC,CAAa,CACjD,CAAC,GAAKtC,EAAE,GAAG,CAAC,CAAC,EAAG,CACf,KAAAoC,EACA,UAAWI,CACZ,CAAC,EACGI,EAAQ,GACRC,EAAQ,GACRC,EAAa,EACbC,EAAa,EACbC,EAAK,GACLC,EAAK,GACLC,EAAS,GACb,MAAO,CACN,QAAS,CAAE,CAAC3B,EAAM,MAAM,EAAGS,CAAa,EACxC,QAAS,KACT,OAAQ,CACPmB,GAAG,KAAK,iBAAmBC,GAAM,CAChCJ,EAAKI,EAAE,YAAY,SAAS,GAAK,GACjCH,EAAKG,EAAE,YAAY,SAAS,GAAK,GACjC,IAAMC,EAAOD,EAAE,GAAK,GAAKJ,EAAKJ,GAASQ,EAAE,GAAK,EACxCE,EAAOF,EAAE,GAAK,GAAKH,EAAKJ,GAASO,EAAE,GAAK,EAC9CN,EAAaA,EAAa,IAAMO,EAAO,IACvCN,EAAaA,EAAa,IAAMO,EAAO,IACvCV,EAAQI,EACRH,EAAQI,EACRC,EAAS,KAAK,IAAIG,CAAI,EAAI,KAAK,IAAIC,CAAI,EAAI,GAC5C,CAAC,EACDH,GAAG,OAAO,CACT,WAAY,IAAMD,EAClB,SAAWE,GAAM,CAChB,IAAMG,EAAWH,EAAE,IAAI7B,EAAM,MAAM,KAAM,CAAC,EAC1C,OAAOgC,EAAW,EAAI,KAAK,IAAI,IAAK,KAAK,IAAI,IAAI,EAAI,KAAK,IAAI,KAAK,IAAI,KAAM,EAAIA,EAAW,IAAI,CAAC,EAAI,KAAK,EAAI,GAC/G,CACD,CAAC,EACDJ,GAAG,OAAO,cAAgBC,GAAM,CAC/B,IAAMI,EAAOtB,EAAS,KAAKkB,EAAE,WAAW,EACxCnB,EAAa,MAAM,CAClB,QAASe,EACT,QAASC,EACT,UAAWH,EACX,UAAWC,EACX,GAAIK,EAAE,GACN,MAAOA,EAAE,IAAI7B,EAAM,MAAM,KAAM,CAAC,EAChC,UAAW6B,EAAE,IAAI7B,EAAM,UAAU,KAAM,CAAC,EACxC,OAAQ6B,EAAE,IAAI7B,EAAM,OAAO,KAAM,CAAC,EAAI,IACtC,OAAQiC,EAAK,MAAQA,EAAK,MAC3B,CAAC,CACF,CAAC,EACDL,GAAG,KAAKV,CAAM,EACdU,GAAG,QAAQ,IAAMR,CAAM,CACxB,CACD,CACD,CACD,CACA,IAAIc,GAAe,GACfC,GAAgBD,GAAeA,GAC/BE,GAAcF,GAAe,EAC7BG,IAAiC,WAAW,uBAA0BvE,GAAMA,IAAIC,EAAgB,gBAAgB,CACnH,QAAS,CACR,QAASC,GAAQC,EAAOkE,EAAa,EACrC,OAAQ,UACT,EACA,SAAU,CACT,QAASnE,GAAQC,EAAOkE,EAAa,EACrC,OAAQ,SACT,EACA,OAAQ,CAAE,SAA0B,WAAW,uBAA0BrE,GAAMA,IAAII,GAAO,CACzF,QAASC,EACT,QAASA,EACT,KAAMA,EACN,KAAMA,EACN,aAAcA,EACd,GAAIA,EACJ,MAAOA,EACP,UAAWA,EACX,WAAYA,EACZ,OAAQA,EACR,OAAQA,CACT,CAAC,EAAG,SAAS,CAAE,CAChB,CAAC,EAAG,eAAe,EACfmE,IAAuC,WAAW,uBAA0BxE,GAAMA,IAAIC,EAAgB,gBAAgB,CACzH,OAAQ,CACP,QAASC,GAAQC,EAAOkE,EAAa,EACrC,OAAQ,UACT,EACA,QAAS,CAAE,eAAgB9D,GAAiBZ,GAAc,YAAY,CAAE,CACzE,CAAC,EAAG,qBAAqB,EACnB8E,GAAsBxE,EAAgB,GAAG,CAACS,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACzK,UACA,GAAID,EAAKF,EAAI,CAAC,GAAKE,EAAKF,EAAI4D,EAAW,GAAKzD,EAAKH,EAAI,CAAC,GAAKG,EAAKH,EAAI4D,EAAW,EAAG,CACjF,IAAMxD,EAAIyD,GAAc,EAAE,OACpBG,EAAKhE,EAAI0D,EAAY,EACrBrD,EAAM,aAAa,aAAaF,EAAI6D,CAAE,EAAG9D,CAAE,EAC3C+D,EAAUJ,GAAc,EAAE,QAAQxD,CAAG,EACrC6D,EAAQD,EAAQ,EAChBE,EAAQF,EAAQ,EAChBX,EAAOW,EAAQ,EACfV,EAAOU,EAAQ,EACfG,EAAKP,GAAc,EAAE,QAAQ,aAAaxD,EAAKL,EAAI,CAAC,CAAC,CAAC,EACtDqE,EAAKR,GAAc,EAAE,QAAQ,aAAaxD,EAAKL,EAAI,CAAC,CAAC,CAAC,EACtDsE,EAAKT,GAAc,EAAE,QAAQ,aAAaxD,EAAK2D,CAAE,CAAC,EAClDO,EAAKV,GAAc,EAAE,QAAQ,aAAaxD,EAAK2D,CAAE,CAAC,EAClDQ,EAAMX,GAAc,EAAE,QAAQ,aAAa,aAAaxD,EAAK2D,CAAE,EAAGhE,EAAI,CAAC,CAAC,CAAC,EACzEyE,EAAMZ,GAAc,EAAE,QAAQ,aAAa,aAAaxD,EAAK2D,CAAE,EAAGhE,EAAI,CAAC,CAAC,CAAC,EACzE0E,EAAMb,GAAc,EAAE,QAAQ,aAAa,aAAaxD,EAAK2D,CAAE,EAAGhE,EAAI,CAAC,CAAC,CAAC,EACzE2E,EAAMd,GAAc,EAAE,QAAQ,aAAa,aAAaxD,EAAK2D,CAAE,EAAGhE,EAAI,CAAC,CAAC,CAAC,EAC3E4E,EAAK,aAAaxE,EAAE,UAAW,aAAa,aAAa,aAAa,aAAagE,EAAG,EAAGF,CAAK,EAAG,aAAaG,EAAG,EAAGH,CAAK,CAAC,EAAG,aAAaI,EAAG,EAAGJ,CAAK,CAAC,EAAG,aAAaK,EAAG,EAAGL,CAAK,CAAC,CAAC,EACnLW,EAAK,aAAazE,EAAE,UAAW,aAAa,aAAa,aAAa,aAAagE,EAAG,EAAGD,CAAK,EAAG,aAAaE,EAAG,EAAGF,CAAK,CAAC,EAAG,aAAaG,EAAG,EAAGH,CAAK,CAAC,EAAG,aAAaI,EAAG,EAAGJ,CAAK,CAAC,CAAC,EACjLW,EAAS,aAAa1E,EAAE,UAAW,GAAG,EAC5CwE,EAAK,aAAaA,EAAI,aAAaE,EAAQ,aAAa,aAAa,aAAa,aAAaN,EAAI,EAAGN,CAAK,EAAG,aAAaO,EAAI,EAAGP,CAAK,CAAC,EAAG,aAAaQ,EAAI,EAAGR,CAAK,CAAC,EAAG,aAAaS,EAAI,EAAGT,CAAK,CAAC,CAAC,CAAC,EACpMW,EAAK,aAAaA,EAAI,aAAaC,EAAQ,aAAa,aAAa,aAAa,aAAaN,EAAI,EAAGL,CAAK,EAAG,aAAaM,EAAI,EAAGN,CAAK,CAAC,EAAG,aAAaO,EAAI,EAAGP,CAAK,CAAC,EAAG,aAAaQ,EAAI,EAAGR,CAAK,CAAC,CAAC,CAAC,EACpMS,EAAK,aAAaA,EAAI,aAAa,aAAaxE,EAAE,UAAW,EAAE,EAAG8D,CAAK,CAAC,EACxEW,EAAK,aAAaA,EAAI,aAAa,aAAazE,EAAE,UAAW,EAAE,EAAG+D,CAAK,CAAC,EACxE,IAAIY,EAAU,aAAa,aAAazB,EAAMlD,EAAE,UAAU,EAAG,aAAawE,EAAIxE,EAAE,KAAK,CAAC,EAClF4E,EAAU,aAAa,aAAazB,EAAMnD,EAAE,UAAU,EAAG,aAAayE,EAAIzE,EAAE,KAAK,CAAC,EACtF,GAAIA,EAAE,aAAe,IAAK,CACzB,IAAMK,EAAQ,aAAa,aAAad,EAAIO,CAAE,EAAG,EAAE,EAAGP,EAAI+D,EAAY,CAAC,EACjEhD,EAAQ,aAAa,aAAaf,EAAIQ,CAAE,EAAG,EAAE,EAAGR,EAAI+D,EAAY,CAAC,EACjE/C,EAAMC,EAAO,aAAaH,EAAOL,EAAE,OAAO,EAAG,aAAa,aAAaK,EAAOL,EAAE,OAAO,EAAGA,EAAE,MAAM,EAAGA,EAAE,QAAU,CAAC,EAClHS,EAAMD,EAAO,aAAa,aAAaF,EAAON,EAAE,OAAO,EAAGA,EAAE,MAAM,EAAG,aAAaM,EAAON,EAAE,OAAO,EAAGA,EAAE,QAAU,CAAC,EAClHU,EAAS,aAAa,aAAaH,EAAKA,CAAG,EAAG,aAAaE,EAAKA,CAAG,CAAC,EACpEoE,EAAkB,aAAa7E,EAAE,OAAQ,CAAC,EAChD,GAAIU,EAAS,aAAamE,EAAiBA,CAAe,EAAG,CAC5D,IAAMhE,EAAYC,GAAI,aAAa,aAAaJ,EAAQ,aAAaV,EAAE,OAAQA,EAAE,MAAM,CAAC,EAAG,EAAE,CAAC,EACxF8E,EAAW,aAAa,aAAa,aAAajE,EAAWb,EAAE,YAAY,EAAGA,EAAE,EAAE,EAAG,CAAC,EAC5F2E,EAAU,aAAaA,EAAS,aAAa3E,EAAE,KAAM8E,CAAQ,CAAC,EAC9DF,EAAU,aAAaA,EAAS,aAAa5E,EAAE,KAAM8E,CAAQ,CAAC,CAC/D,CACD,CACA,IAAMC,EAAWhE,EAAM,aAAa+C,EAAO,aAAaa,EAAS3E,EAAE,KAAK,CAAC,EAAG,IAAK,EAAE,EAC7EgF,EAAWjE,EAAM,aAAagD,EAAO,aAAaa,EAAS5E,EAAE,KAAK,CAAC,EAAG,IAAK,EAAE,EACnFyD,GAAc,EAAE,SAASxD,CAAG,EAAIZ,EAAM0F,EAAUC,EAAUL,EAASC,CAAO,CAC3E,CACD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,aAAa,CACf,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,KACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,aAAa,CACf,CACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,cAAc,CAChB,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,IACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,KACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,MACA,IACA,IACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,MACA,IACA,IACD,EACA,IACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,KACA,GACD,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CACD,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CACD,EACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,OACD,CACD,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,YACD,CACD,EACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,IACA,cACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CAAC,EAAG,CACH,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,cAAc,CAChB,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,QACA,CAAC,cAAc,CAChB,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,IACA,SACD,CACD,EACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,CACC,EACA,kBACA,IACA,iBACD,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,IACA,QACD,EACA,IACA,CACC,EACA,IACA,QACD,CACD,CACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,YACA,IACA,CACC,EACA,IACA,cACD,CACD,EACA,IACA,CACC,EACA,IACA,IACD,CACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,UACD,CACD,CACD,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,IACA,MACD,EACA,IACA,UACD,CACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,UACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,UACA,IACA,CACC,EACA,IACA,OACD,CACD,CACD,EACA,CACC,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,gBACA,GACD,EACA,UACD,EACA,KACD,EACA,IACA,CACC,EACA,UACA,CACC,WACA,WACA,UACA,SACD,CACD,CACD,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,UAAW,CACV,QAAS,IAAMhF,EACf,YAAe,IAAM4D,GACrB,cAAiB,IAAMC,GACvB,aAAgB,IAAMH,GACtB,QAAS,IAAM/D,EACf,aAAc,IAAMiB,EACpB,UAAW,IAAMM,GACjB,YAAa,IAAMC,EACnB,UAAW,IAAM1B,CAClB,CACD,CAAC,GAAKQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,mBAAmB,EACnCoF,GAA4B9F,EAAgB,GAAG,CAACS,EAAKA,CAAG,CAAC,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CAC/K,UACA,IAAME,EAAM,aAAa,aAAaF,EAAIH,EAAI0D,EAAY,CAAC,EAAGxD,CAAE,EAC1DI,EAAOwD,GAAoB,EAAE,OAAOzD,CAAG,EAC7CgB,GAAayC,GAAoB,EAAE,QAASxC,GAAMpB,EAAIC,CAAE,EAAGV,EAAMa,EAAK,EAAGA,EAAK,EAAG,EAAG,CAAC,CAAC,CACvF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,KACA,IACA,CACC,EACA,QACA,CAAC,cAAc,CAChB,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,CACC,EACA,sBACA,GACD,EACA,QACD,EACA,KACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,sBACA,GACD,EACA,SACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,QAAS,IAAMN,EACf,aAAgB,IAAM0D,GACtB,oBAAuB,IAAMI,GAC7B,mBAAoB,IAAMzC,GAC1B,UAAW,IAAMC,GACjB,UAAW,IAAM7B,CAClB,CACD,CAAC,GAAKQ,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,qBAAqB,EAC3C,SAASqF,GAAmB9D,EAAO,CAClC,MAAO,CAACC,EAAQC,IAAS,CACxB,GAAM,CAAE,uBAAAE,EAAwB,UAAAC,CAAU,EAAIJ,EACxC8D,EAAUxD,GAAkBL,EAAMjC,EAAOkE,EAAa,EACtD6B,EAAUzD,GAAkBL,EAAMjC,EAAOkE,EAAa,EACtD3B,GAA2B,WAAW,uBAA0B1C,GAAMA,IAAIoC,EAAK,cAAc,CAClG,KAAM,CAACgC,GAAcA,EAAY,EACjC,OAAQzE,EACT,CAAC,EAAE,OAAO,UAAW,SAAS,EAAG,SAAS,EAC1C4C,EAAU,IAAMG,EAAQ,QAAQ,CAAC,EACjC,IAAMC,EAAeL,EAAuBI,CAAO,EAC7CyD,GAAgC,WAAW,uBAA0BnG,GAAMA,IAAIoC,EAAK,cAAchC,GAAO,CAC9G,QAASC,EACT,QAASA,EACT,KAAMA,EACN,KAAMA,EACN,aAAcA,EACd,GAAIA,EACJ,MAAOA,EACP,UAAWA,EACX,WAAYA,EACZ,OAAQA,EACR,OAAQA,CACT,CAAC,CAAC,EAAG,cAAc,EACbwC,EAAWC,GAAgBX,CAAM,EACjCY,EAAO,CAACqB,GAAcA,EAAY,EAClCgC,EAAahE,EAAK,gBAAgBmC,GAAe,CACtD,QAAS0B,EACT,SAAUC,EACV,OAAQC,EAAa,MACtB,CAAC,EACKE,EAAajE,EAAK,gBAAgBmC,GAAe,CACtD,QAAS2B,EACT,SAAUD,EACV,OAAQE,EAAa,MACtB,CAAC,EACKG,EAASjD,GAAqBjB,GAAwBzB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACxJ,UACA4D,GAAoB7D,EAAIC,CAAE,CAC3B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,EACA,sBACA,CAAC,KAAM,IAAI,CACZ,CAAC,CAAC,CACH,EACA,UAAW,CAAE,oBAAuB,IAAM4D,EAAoB,CAC/D,CAAC,GAAK9D,EAAE,GAAG,CAAC,CAAC,EAAG,CAAE,KAAAoC,CAAK,CAAC,EAClBwD,EAAYnE,EAAK,gBAAgBoC,GAAqB,CAC3D,OAAQyB,EACR,QAAAvD,CACD,CAAC,EACKY,EAASD,GAAqBjB,GAAwBzB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACC,EAAIC,IAAO,CACxJ,UACAkF,GAA0BnF,EAAIC,CAAE,CACjC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,EACA,4BACA,CAAC,KAAM,IAAI,CACZ,CAAC,CAAC,CACH,EACA,UAAW,CAAE,0BAA6B,IAAMkF,EAA0B,CAC3E,CAAC,GAAKpF,EAAE,GAAG,CAAC,CAAC,EAAG,CACf,KAAAoC,EACA,UAAWwD,CACZ,CAAC,EACGhD,EAAQ,GACRC,EAAQ,GACRG,EAAK,GACLC,EAAK,GACL4C,EAAU,EACVC,EAAU,EACVC,EAAQ,EACRC,EAAe,EACnB,MAAO,CACN,QAAS,CAAE,CAACzE,EAAM,MAAM,EAAGS,CAAa,EACxC,QAAS,KACT,OAAQ,OACR,OAAQ,CACPmB,GAAG,KAAK,gBAAkBC,GAAM,CAC/BJ,EAAKI,EAAE,YAAY,SAAS,GAAK,GACjCH,EAAKG,EAAE,YAAY,SAAS,GAAK,GACjCyC,GAAW7C,EAAKJ,GAASQ,EAAE,GAC3B0C,GAAW7C,EAAKJ,GAASO,EAAE,GAC3B2C,EAAQ,KAAK,KAAKF,EAAUA,EAAUC,EAAUA,CAAO,EACvDE,EAAe,KAAK,IAAID,EAAO,CAAC,EAChCnD,EAAQI,EACRH,EAAQI,CACT,CAAC,EACDE,GAAG,OAAO,CACT,WAAY,IAAM6C,EAAe,IACjC,SAAW5C,GAAM,CAChB,IAAM6C,EAAU7C,EAAE,IAAI7B,EAAM,QAAQ,KAAM,CAAC,EAC3C,OAAO0E,EAAU,EAAI,KAAK,IAAI,IAAK,IAAMA,CAAO,EAAI,GACrD,CACD,CAAC,EACD9C,GAAG,OAAO,kBAAoBC,GAAM,CACnC,IAAMI,EAAOtB,EAAS,KAAKkB,EAAE,WAAW,EAClC6C,EAAU7C,EAAE,IAAI7B,EAAM,QAAQ,KAAM,CAAC,EACrC2E,EAAQ9C,EAAE,GAAK,EACrBoC,EAAa,MAAM,CAClB,QAASxC,EACT,QAASC,EACT,KAAM8C,EAAQ,IAAMF,EAAUE,EAAQ,EACtC,KAAMA,EAAQ,IAAMD,EAAUC,EAAQ,EACtC,aAAAC,EACA,GAAI5C,EAAE,GACN,MAAA8C,EACA,UAAW9C,EAAE,IAAI7B,EAAM,UAAU,KAAM,CAAC,EACxC,WAAY,KAAK,IAAI,EAAG,KAAK,IAAI,EAAG,EAAI0E,EAAUC,CAAK,CAAC,EACxD,OAAQ9C,EAAE,IAAI7B,EAAM,OAAO,KAAM,CAAC,EAAI,IACtC,OAAQiC,EAAK,MAAQA,EAAK,MAC3B,CAAC,CACF,CAAC,EACDL,GAAG,KAAKwC,EAAO,KAAKF,CAAU,CAAC,EAC/BtC,GAAG,KAAKwC,EAAO,KAAKD,CAAU,CAAC,EAC/BvC,GAAG,QAAQ,IAAMR,CAAM,CACxB,CACD,CACD,CACD,CC5xEA,IAAMwD,GAAsBC,EAAU,CACrC,KAAM,iBACN,KAAM,OACN,SAAU,cACV,YAAa,2DACb,uBAAwB,CAAE,YAAa,IAAK,EAC5C,YAAa,GACb,MAAO,CACN,UAAW,CACV,QAAS,EACT,YAAa,oCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,YACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,6CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,kCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,SACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,UAAWC,GAAc,CAACC,EAAMC,IAASC,GAAmBF,CAAI,IAAME,GAAmBD,CAAI,CAAC,EAC9F,YAAa,6DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,QACR,CACD,EACA,MAAOE,GAAgB,UAAW,kEAAkE,CACrG,EACA,GAAGC,GAAQC,GAAkB,CAC5B,SAAUC,EAAE,UAAU,EACtB,MAAOA,EAAE,OAAO,EAChB,UAAWA,EAAE,WAAW,EACxB,OAAQA,EAAE,QAAQ,EAClB,OAAQ,cACT,CAAC,CAAC,EACF,IAAKC,GAAiB,CACrB,SAAUD,EAAE,UAAU,EACtB,OAAQ,cACT,CAAC,EACD,oBAAqB,CAAC,CAAE,eAAAE,CAAe,IAAM,CAACA,GAAgB,YAC/D,CAAC,EC3ED,IAAMC,GAAsBC,EAAU,CACrC,KAAM,QACN,KAAM,aACN,QAAS,SACT,SAAU,YACV,YAAa,qIACb,cAAe,GACf,uBAAwB,CACvB,YAAa,KACb,oBAAqB,EACtB,EACA,MAAO,CAAC,EACR,IAAK,CAAE,SAAU,CAAC,CAAE,UAAAC,CAAU,IACtBA,GAAaC,EACnB,CACH,CAAC,ECbD,IAAIC,IAAkBC,GAAUA,IAAU,OAAS,EAAI,EACnDC,IAAWC,GAAQA,IAAQ,QAAUA,IAAQ,EAAI,OAAS,UACxDC,GAAsBC,EAAU,CACrC,KAAM,WACN,KAAM,SACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,sDACb,kBAAmB,GACnB,MAAO,CACN,MAAO,CACN,QAAS,UACT,UAAWL,IACX,YAAa,GACb,YAAa,2BACb,GAAI,CACH,KAAM,SACN,QAAS,CAAC,CACT,MAAO,SACP,MAAO,SACR,EAAG,CACF,MAAO,aACP,MAAO,MACR,CAAC,EACD,MAAO,QACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,iCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,GACT,UAAWM,GACX,YAAa,6CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,QACP,MAAO,SACP,UAAW,CAAE,MAAO,SAAU,CAC/B,CACD,EACA,UAAW,CACV,QAAS,GACT,UAAWA,GACX,YAAa,+CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,aACP,MAAO,eACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,aAAc,CACb,QAAS,GACT,UAAWA,GACX,YAAa,kDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,gBACP,MAAO,eACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,YAAa,CACZ,QAAS,EACT,UAAWA,GACX,YAAa,iDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,eACP,MAAO,eACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,WAAY,CACX,QAAS,GACT,UAAWA,GACX,YAAa,gDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,eACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,mJACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,KACN,MAAO,WACP,MAAO,SACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,cAAe,CACd,QAAS,EACT,UAAWA,GACX,YAAa,uFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,iBACP,MAAO,SACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,WAAY,CACX,QAAS,UACT,UAAWC,GACX,YAAa,iDACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,iBACb,GAAI,CACH,KAAM,QACN,MAAO,OACP,MAAO,OACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,aAAc,CACb,QAAS,UACT,UAAWA,GACX,YAAa,oBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,OACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,YAAa,CACZ,QAAS,UACT,UAAWA,GACX,YAAa,mBACb,GAAI,CACH,KAAM,QACN,MAAO,SACP,MAAO,OACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,WAAY,CACX,QAAS,UACT,UAAWA,GACX,YAAa,wBACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,CACD,EACA,OAAQC,GAASC,EAAE,OAAO,EAAGP,IAAS,CACrC,QAASQ,GAAU,CAClB,MAAOD,EAAE,OAAO,EAChB,UAAWA,EAAE,WAAW,CACzB,CAAC,EACD,KAAME,GAAU,CACf,MAAOF,EAAE,YAAY,EACrB,UAAWA,EAAE,WAAW,EACxB,SAAUA,EAAE,UAAU,EACtB,cAAeA,EAAE,eAAe,EAChC,OAAQ,CACE,CACR,QAAS,OACT,YAAaA,EAAE,WAAW,EAC1B,IAAKA,EAAE,WAAW,CACnB,EACS,CACR,QAAS,UACT,YAAaA,EAAE,cAAc,EAC7B,IAAKA,EAAE,cAAc,CACtB,EACS,CACR,QAAS,SACT,YAAaA,EAAE,aAAa,EAC5B,IAAKA,EAAE,aAAa,CACrB,EACS,CACR,QAAS,QACT,YAAaA,EAAE,YAAY,EAC3B,IAAKA,EAAE,YAAY,CACpB,CACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,ECrOD,IAAMG,GAAsBC,EAAU,CACrC,KAAM,QACN,KAAM,QACN,YAAa,mCACb,MAAO,CACN,SAAU,CAAC,CAAE,EAAAC,EAAG,EAAAC,CAAE,EAAGC,IAAMC,GAAMH,EAAGC,EAAGC,EAAE,QAAQ,CAAC,EAClD,iBAAkB,0BAClB,kBAAmB,+BACnB,OAAQ,CAAE,KAAM,CACf,MAAO,SACP,OAAQ,QACT,CAAE,EACF,WAAY,CAAE,OAAQ,CACrB,QAAS,IACT,YAAa,iCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,OACR,CACD,CAAE,CACH,CACD,CAAC,ECpBD,IAAIE,IAAuB,KAAK,UAAU,CACzC,KAAM,YACN,OAAQ,GACT,CAAC,EACGC,IAAgB,CACnB,CACC,MAAO,UACP,SAAU,CACX,EACA,CACC,MAAO,UACP,SAAU,EACX,EACA,CACC,MAAO,UACP,SAAU,GACX,EACA,CACC,MAAO,UACP,SAAU,EACX,EACA,CACC,MAAO,UACP,SAAU,EACX,EACA,CACC,MAAO,UACP,SAAU,CACX,CACD,EACIC,GAAgB,CAACC,EAAGC,EAAGC,EAAIC,IAAU,CACxC,IAAMC,EAAOC,GAAI,IAAK,GAAIH,CAAE,EACtBI,EAAMC,GAAIC,GAAWC,EAAIC,EAAIT,EAAG,CAAC,EAAGS,EAAIC,GAAMR,CAAK,EAAG,IAAI,CAAC,EAAGM,EAAIC,EAAIR,EAAI,CAAC,EAAGQ,EAAIC,GAAMR,CAAK,EAAG,GAAG,CAAC,CAAC,EAAG,EAAE,EAC1GS,EAAOC,EAAMJ,EAAIF,GAAIP,EAAGI,CAAI,EAAGM,EAAIJ,EAAK,GAAG,CAAC,EAAG,MAAM,EAC3D,OAAOQ,GAAMJ,EAAIK,GAAIC,GAAIN,EAAIA,EAAIE,EAAMA,CAAI,EAAG,EAAE,EAAG,KAAK,CAAC,EAAGF,EAAIO,GAAW,EAAG,IAAKf,CAAE,EAAGK,GAAI,EAAGU,GAAW,IAAK,EAAGf,CAAE,CAAC,CAAC,CAAC,EAAG,EAAG,CAAC,CAC/H,EACMgB,GAAsBC,EAAU,CACrC,KAAM,UACN,KAAM,cACN,QAAS,SACT,uBAAwBC,GACxB,SAAU,gBACV,YAAa,0FACb,aAAc,CAAE,MAAO,OAAQ,EAC/B,GAAGC,GAAc,CAChB,QAAS,SACT,QAAS,CAACC,EAAOC,IAAW,CAC3B,GAAM,CAAE,SAAAC,EAAU,WAAAC,CAAW,EAAIF,EAC3BG,EAAIC,GAAaJ,CAAM,EACvBK,EAAMf,EAAMS,EAAM,MAAO,KAAK,EAC9BO,EAAMC,GAAIN,EAAS,MAAO,IAAI,EAC9BO,EAAIlB,EAAMG,GAAIM,EAAM,MAAM,OAAO,GAAG,EAAGO,CAAG,EAAG,GAAG,EAChDG,EAASnB,EAAMN,GAAI,EAAGU,GAAW,MAAO,KAAMc,CAAC,CAAC,EAAG,QAAQ,EAC3DE,EAASC,GAAeV,EAAS,MAAO,QAAQ,EAChDW,EAAMtB,EAAMN,GAAIqB,EAAI,OAAO,IAAI,EAAGQ,GAAK,GAAI,EAAE,CAAC,EAAG,KAAK,EACtDpC,EAAIa,EAAMwB,GAAIF,EAAKF,EAAO,OAAO,EAAG,GAAG,EACvChC,EAAIY,EAAMH,EAAI2B,GAAIF,EAAKF,EAAO,IAAI,EAAG,EAAE,EAAG,GAAG,EAC7CK,EAAQzB,EAAMN,GAAIG,EAAI,GAAIgB,CAAC,EAAG,EAAE,EAAG,OAAO,EAC5Ca,EAAQ9B,EAAI,GAAIC,EAAI,GAAIK,GAAIC,GAAIN,EAAIoB,GAAIpB,EAAIqB,EAAG,EAAE,EAAG,CAAC,EAAG,EAAE,EAAG,GAAG,CAAC,CAAC,CAAC,EACvEQ,EAAQ1B,EAAMR,GAAIkC,EAAO,EAAGxC,GAAcC,EAAGC,EAAGuC,GAAMF,CAAK,EAAG,CAAC,CAAC,EAAG,QAAQ,EAC3EC,EAAQ1B,EAAMR,GAAIkC,EAAO,EAAGxC,GAAcC,EAAGC,EAAGuC,GAAM/B,EAAI6B,EAAO,EAAI,CAAC,CAAC,EAAG,CAAC,CAAC,EAAG,QAAQ,EACvFC,EAAQ1B,EAAMR,GAAIkC,EAAO,EAAGxC,GAAcC,EAAGC,EAAGuC,GAAM/B,EAAI6B,EAAO,EAAI,CAAC,CAAC,EAAG,CAAC,CAAC,EAAG,QAAQ,EACvFC,EAAQ7B,EAAI6B,EAAO7B,EAAI,EAAGc,EAAS,SAAS,CAAC,EAC7Ce,EAAQ9B,EAAI8B,EAAO7B,EAAIA,EAAIc,EAAS,QAAS,CAAC,EAAGT,GAAIC,GAAIN,EAAI+B,GAAIV,CAAC,EAAG,EAAE,EAAG,GAAG,CAAC,CAAC,CAAC,EAChFQ,EAAQ7B,EAAIgC,GAAIH,EAAO,CAAC,EAAGP,CAAM,EACjCO,EAAQ1B,EAAM8B,GAAIb,GAAIS,EAAO,CAAC,EAAG,GAAG,EAAG,OAAO,EAC9C,IAAMK,EAAY7B,GAAIC,GAAIN,EAAIoB,GAAIC,EAAG,CAAC,EAAG,EAAE,EAAGtB,EAAI,IAAKC,EAAI,IAAKc,EAAS,SAAS,CAAC,CAAC,CAAC,EAC/EqB,EAAKL,GAAMjC,GAAIG,EAAI4B,EAAO,CAAC,EAAG,EAAE,CAAC,EACjCQ,EAAKjC,EAAM2B,GAAMjC,GAAIG,EAAIV,EAAG,GAAG,EAAG6C,CAAE,CAAC,EAAG,IAAI,EAC5CE,EAAetC,EAAI,GAAIC,EAAIO,GAAW,GAAI,IAAK6B,CAAE,EAAGvC,GAAI,EAAGU,GAAW,IAAK,EAAG6B,CAAE,CAAC,CAAC,CAAC,EACnFE,EAAQnC,EAAMH,EAAIA,EAAIA,EAAIA,EAAIA,EAAIA,EAAI,GAAIiC,GAAIC,EAAW,EAAE,CAAC,EAAGG,CAAY,EAAG,CAAC,EAAGvB,EAAS,SAAS,EAAGA,EAAS,SAAS,EAAGjB,GAAI,EAAGyB,CAAM,CAAC,EAAG,OAAO,EACtJiB,EAAOnC,GAAML,EAAI8B,EAAOS,CAAK,EAAG,EAAG,CAAC,EAClCE,EAAYrC,EAAMH,EAAIA,EAAIA,EAAIO,GAAW,KAAM,GAAIW,EAAI,OAAO,GAAG,CAAC,EAAGrB,GAAI,EAAGU,GAAW,GAAI,KAAMW,EAAI,OAAO,GAAG,CAAC,CAAC,CAAC,EAAGX,GAAW,KAAM,GAAIW,EAAI,OAAO,GAAG,CAAC,CAAC,EAAGrB,GAAI,EAAGU,GAAW,GAAI,KAAMW,EAAI,OAAO,GAAG,CAAC,CAAC,CAAC,EAAG,WAAW,EAC9NqB,EAAOvC,EAAIuC,EAAMC,CAAS,EAC1BD,EAAOxC,EAAIwC,EAAMvC,EAAI,KAAMH,GAAI4C,GAAUzC,EAAIkB,EAAI,OAAO,GAAG,EAAG,KAAK,EAAGlB,EAAIkB,EAAI,OAAO,GAAG,EAAG,KAAK,CAAC,EAAG,EAAE,CAAC,CAAC,EACxGqB,EAAOpC,EAAMC,GAAMmC,EAAM,EAAG,CAAC,EAAG,MAAM,EACtC,IAAMG,EAAW1C,EAAII,GAAML,EAAIuB,EAAQgB,CAAK,EAAG,EAAG,CAAC,EAAGE,CAAS,EACzDG,EAAiB5B,EAAW,YAAc,EAC1C6B,EAAY7B,EAAW,WAAa,EACtC8B,EACAD,EAAY,EAAGC,EAAOC,GAAqBP,EAAM,CACpD,YAAazB,EAAS,YACtB,eAAgBA,EAAS,eACzB,qBAAsBA,EAAS,qBAC/B,UAAWA,EAAS,SACrB,EAAG6B,CAAc,EACZE,EAAOE,EAAKC,GAAkBL,CAAc,GAAKM,GAAiB,YAAa,CACnFnC,EAAS,OACTA,EAAS,OACTyB,CACD,CAAC,EACD,IAAMW,EAAQ/C,EAAM0C,EAAM,MAAM,EAChC,OAAOM,GAAK/C,GAAM8C,EAAM,OAAO,KAAK,EAAGE,GAAK,EAAG,EAAG,CAAC,EAAGA,GAAK,EAAG,EAAG,CAAC,CAAC,EAAGpD,EAAIkD,EAAM,OAAO,GAAG,EAAGR,CAAQ,CAAC,CACvG,CACD,CAAC,EACD,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWW,GACX,YAAa,uCACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,gDACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,mDACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,kDACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,MAAO,CACN,GAAGC,GAAqB,EACxB,QAASnE,GACV,EACA,WAAY,CACX,QAAS,QACT,UAAWoE,GACX,YAAa,GACb,YAAa,8CACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,uCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,MACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,uCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,MACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,6CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,MACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,8CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,QACP,MAAO,MACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,uCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,MACR,CACD,EACA,MAAO,CACN,QAAStE,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,sCACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,uBACd,CACD,CACD,CAAC,ECvQD,IAAIuE,GAAQC,GAAS,CACpB,MAAOC,GAAU,CAChB,MAAOC,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,EACtB,WAAY,WACb,CAAC,EACD,UAAWA,EAAE,WAAW,EACxB,SAAUA,EAAE,UAAU,EACtB,UAAWA,EAAE,WAAW,CACzB,CAAC,EACKC,GAAsBC,EAAU,CACrC,KAAM,UACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,mCACb,iBAAkB,GAClB,MAAO,CACN,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,kBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,kBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,qDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,kCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,YACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,UAA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QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,wCACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,iDACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,4CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAAS,UACT,UAAWC,GACX,YAAa,8FACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,uFACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,aAAc,CACb,QAAS,IACT,YAAa,iFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,OACR,CACD,EACA,KAAM,CACL,QAAS,IACT,YAAa,kIACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,yHACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,gJACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,4FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,gBACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,yFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,WACR,CACD,EACA,cAAe,CACd,QAAS,IACT,YAAa,0DACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,IACL,KAAM,EACN,MAAO,iBACP,MAAO,WACR,CACD,EACA,cAAe,CACd,QAAS,EACT,YAAa,iEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,iBACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,8EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,WACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,uFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,cACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,mGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,cACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,2EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,cACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,6EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAASlF,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,gHACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,4HACd,CACD,CACD,CAAC,ECrUD,IAAImF,IAAuB,KAAK,UAAU,CACzC,KAAM,YACN,OAAQ,GACT,CAAC,EACGC,IAAQ,EAAI,EACZC,IAAW,EAAI,EACfC,GAAU,KAAK,IAAI,IAAM,KAAK,GAAK,G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AAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,IACA,CACC,EACA,CACC,EACA,2BACA,GACD,EACA,QACD,CACD,EAAG,CAAC,GAAI,CACP,EACA,CACC,EACA,QACA,CACC,KACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,YACD,EACA,CACC,EACA,IACA,cACD,EACA,CACC,EACA,IACA,YACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,UACD,EACA,CACC,EACA,IACA,YACD,CACD,CACD,EACA,GACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,yBAA4B,IAAMpB,GAClC,MAAS,IAAMkB,CAChB,CACD,CAAC,GAAKX,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,yBAAyB,CAChD,CACA,IAAMc,IAAWpB,EAAgB,GAAG,CAACP,CAAK,EAAGG,CAAG,GAAoBU,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMK,GAAO,CAC5J,UACA,IAAMU,EAASC,GAAmBrB,GAAoB,EAAE,UAAWA,GAAoB,EAAE,KAAMU,EAAIf,EAAI,CAAC,CAAC,EAAE,EACrG2B,EAASb,GAAaC,CAAE,EAC9B,OAAON,GAAKmB,EAAOH,EAAQb,EAAMe,EAAQ,aAAaF,EAAQE,CAAM,CAAC,EAAGA,EAAS,CAAC,CAAC,CACpF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,SACA,CACC,EACA,CACC,EACA,yBACA,CACC,CACC,EACA,CACC,EACA,sBACA,GACD,EACA,WACD,EACA,CACC,EACA,CACC,EACA,sBACA,GACD,EACA,MACD,EACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,EACA,GACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,eACA,CAAC,IAAI,CACN,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,CAAC,CACA,EACA,aACA,CACC,SACA,CACC,EACA,UACA,CAAC,SAAU,CACV,EACA,SACA,IACA,QACD,CAAC,CACF,EACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,yBAA0B,IAAMD,GAChC,oBAAuB,IAAMrB,GAC7B,QAAS,IAAML,EACf,aAAgB,IAAMc,GACtB,KAAQ,IAAML,GACd,aAAc,IAAMmB,EACpB,UAAW,IAAMhB,CAClB,CACD,CAAC,GAAKF,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,oBAAoB,EACpCmB,IAAkBzB,EAAgB,GAAG,CAACP,CAAK,EAAGG,CAAG,GAAoBU,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMK,GAAO,CACnK,UACA,IAAMQ,EAAIhB,GAAsB,EAAE,OAC5BuB,EAAKb,EAAMF,EAAG,EAAGQ,EAAE,UAAW,aAAaA,EAAE,UAAWA,EAAE,OAAO,CAAC,EAClEQ,EAAKd,EAAMF,EAAG,EAAGQ,EAAE,UAAW,aAAaA,EAAE,UAAWA,EAAE,OAAO,CAAC,EAClES,EAAUd,GAAOrB,EAAM,aAAakB,EAAG,EAAGe,CAAE,EAAG,aAAaf,EAAG,EAAGgB,CAAE,CAAC,CAAC,EACtEE,EAAS,aAAaf,GAAOrB,EAAM,aAAakB,EAAG,EAAG,EAAE,EAAG,aAAaA,EAAG,EAAG,EAAE,CAAC,CAAC,EAAGQ,EAAE,QAAQ,EAC/FW,EAAMrC,EAAM,aAAa,aAAaiC,EAAIP,EAAE,SAAS,EAAGA,EAAE,OAAO,EAAG,aAAa,aAAaQ,EAAIR,EAAE,SAAS,EAAGA,EAAE,OAAO,CAAC,EAC1HY,EAAMT,GAAmBnB,GAAsB,EAAE,cAAeA,GAAsB,EAAE,KAAM2B,EAAKlC,EAAI,CAAC,CAAC,EACzGoC,EAAW,aAAaD,EAAI,EAAGA,EAAI,CAAC,EAC1C,OAAO1B,GAAKmB,EAAOQ,EAAUxB,EAAMA,EAAMoB,EAASC,CAAM,EAAG,aAAaG,EAAUJ,CAAO,CAAC,EAAGA,EAAU,CAAC,CAAC,CAC1G,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,wBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,GACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,aACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,KACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,UACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,EAAG,CACF,EACA,CACC,EACA,KACA,IACA,CACC,EACA,IACA,WACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,yBACA,CACC,CACC,EACA,CACC,EACA,wBACA,GACD,EACA,eACD,EACA,CACC,EACA,CACC,EACA,wBACA,GACD,EACA,MACD,EACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CACC,EACA,MACA,GACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,UAAW,QAAQ,CACrB,EAAG,CACF,EACA,WACA,IACA,SACD,CAAC,CACF,CACD,EACA,CAAC,GAAI,CACJ,EACA,OACA,CAAC,CACA,EACA,aACA,CACC,WACA,SACA,CACC,EACA,UACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,sBAAyB,IAAMzB,GAC/B,YAAa,IAAMU,EACnB,aAAc,IAAMC,GACpB,UAAW,IAAMrB,EACjB,yBAA0B,IAAM6B,GAChC,QAAS,IAAM1B,EACf,UAAW,IAAMY,EACjB,KAAQ,IAAMH,GACd,aAAc,IAAMmB,CACrB,CACD,CAAC,GAAKlB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,2BAA2B,EAC3C2B,IAAoC,WAAW,uBAA0B1C,GAAMA,IAAIC,GAAO,CAC/F,UAAWI,EACX,UAAWA,EACX,QAASA,EACT,QAASA,EACT,YAAaA,EACb,SAAUA,EACV,IAAKA,EACL,KAAMA,CACP,CAAC,EAAG,kBAAkB,EAChBsC,IAAwC,WAAW,uBAA0B3C,GAAMA,IAAIS,EAAgB,gBAAgB,CAC5H,OAAQ,CAAE,QAASiC,EAAiB,EACpC,SAAU,CACT,QAAS/B,GAAUN,CAAG,EACtB,WAAY,oBACb,EACA,IAAKC,EACN,CAAC,EAAG,sBAAsB,EACpBsC,IAAwC,WAAW,uBAA0B5C,GAAMA,IAAIS,EAAgB,gBAAgB,CAC5H,OAAQ,CAAE,QAASiC,EAAiB,EACpC,IAAK,CAAE,QAAS/B,GAAUN,CAAG,CAAE,EAC/B,IAAKC,EACN,CAAC,EAAG,sBAAsB,EACtB,CAAE,mBAAAuC,EAAmB,EAAIC,GAA0B,EACnDC,GAAmBtC,EAAgB,GAAG,CAACJ,EAAKA,CAAG,EAAGA,CAAG,GAAoBU,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACiC,EAAIC,IAAO,CACzK,UACA,IAAMrB,EAAIe,GAAqB,EAAE,OAC3B3B,EAAI6B,GAAmB3C,EAAM,aAAa0B,EAAE,UAAW,aAAa,aAAa,aAAaoB,EAAI,EAAE,EAAGpB,EAAE,GAAG,EAAGA,EAAE,OAAO,CAAC,EAAG,aAAaA,EAAE,UAAW,aAAa,aAAa,aAAaqB,EAAI,EAAE,EAAGrB,EAAE,GAAG,EAAGA,EAAE,OAAO,CAAC,CAAC,EAAGe,GAAqB,EAAE,SAAUf,EAAE,UAAWA,EAAE,UAAWA,EAAE,QAASA,EAAE,QAASA,EAAE,YAAaA,EAAE,QAAQ,EAAE,EAC9U,OAAOK,EAAO5B,EAAI,CAAC,EAAGA,EAAI,EAAE,EAAGW,EAAI,CAAC,CACrC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,qBACA,CACC,KACA,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,UACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,WACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,SACD,EACA,CACC,EACA,IACA,aACD,EACA,CACC,EACA,IACA,UACD,CACD,CACD,EACA,GACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,qBAAwB,IAAM2B,GAC9B,UAAW,IAAMzC,EACjB,mBAAsB,IAAM2C,GAC5B,aAAc,IAAMZ,EACpB,QAAS,IAAM5B,CAChB,CACD,CAAC,GAAKU,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,kBAAkB,EAClCmC,IAAuBzC,EAAgB,GAAG,CAAC0C,EAAKA,CAAG,CAAC,GAAoBpC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoB,EAAIC,IAAO,CAC1K,UACA,IAAMR,EAAIe,GAAqB,EAAE,OAC3BS,EAAK/C,EAAI8B,CAAE,EACXkB,EAAKhD,EAAI+B,CAAE,EACXkB,EAAKP,GAAiBK,EAAIC,CAAE,EAC5BE,EAAO,aAAa3B,EAAE,IAAK,CAAC,EAC5B4B,EAAKT,GAAiB9B,EAAM,aAAamC,EAAI,CAAC,EAAG,CAAC,EAAGC,CAAE,EACvDI,EAAKV,GAAiB7B,GAAI,aAAakC,EAAI,CAAC,EAAGG,CAAI,EAAGF,CAAE,EACxDK,EAAKX,GAAiBK,EAAInC,EAAM,aAAaoC,EAAI,CAAC,EAAG,CAAC,CAAC,EACvDM,EAAKZ,GAAiBK,EAAIlC,GAAI,aAAamC,EAAI,CAAC,EAAGE,CAAI,CAAC,EACxDK,EAAWJ,IAAOF,GAAMG,IAAOH,GAAMI,IAAOJ,GAAMK,IAAOL,EACzDO,EAAK,aAAajC,EAAE,UAAW,aAAa,aAAa,aAAawB,EAAI,EAAE,EAAGxB,EAAE,GAAG,EAAGA,EAAE,OAAO,CAAC,EACjGkC,EAAK,aAAalC,EAAE,UAAW,aAAa,aAAa,aAAayB,EAAI,EAAE,EAAGzB,EAAE,GAAG,EAAGA,EAAE,OAAO,CAAC,EACjGmC,EAAO9B,EAAO7B,EAAM,GAAI,GAAI,IAAKkD,CAAE,EAAGlD,EAAMyD,EAAIC,EAAI,EAAGR,CAAE,EAAGM,CAAQ,EAC1EI,GAAarB,GAAqB,EAAE,IAAKsB,GAAM9B,EAAIC,CAAE,EAAG2B,CAAI,CAC7D,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,mBACA,CAAC,KAAM,IAAI,CACZ,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,mBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EAAG,IAAI,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,mBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,MAAM,CACV,EAAG,IAAI,CACR,CACD,EACA,CACC,GACA,KACA,CACC,EACA,mBACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,mBACA,CAAC,KAAM,CACN,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CAAC,EAAG,GAAG,CACR,EAAG,MAAM,CACV,CAAC,CACF,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,MACA,IACD,EACA,KACA,CACC,EACA,KACA,MACA,IACD,CACD,EACA,KACA,CACC,EACA,KACA,MACA,IACD,CACD,EACA,KACA,CACC,EACA,KACA,MACA,IACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,OAAO,EACX,IACD,CACD,EACA,CACC,EACA,UACA,CACC,KACA,KACA,CAAC,EAAG,GAAG,EACP,IACD,CACD,EACA,UACD,CACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,MACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,qBAAwB,IAAMpB,GAC9B,QAAS,IAAMtC,EACf,iBAAoB,IAAM0C,GAC1B,UAAW,IAAM9B,EACjB,UAAW,IAAMC,GACjB,aAAc,IAAMe,EACpB,UAAW,IAAM7B,EACjB,mBAAoB,IAAM4D,GAC1B,UAAW,IAAMC,EAClB,CACD,CAAC,GAAKlD,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgB,EAChCmD,GAAuBzD,EAAgB,GAAG,CAAC0C,EAAKA,CAAG,CAAC,GAAoBpC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoB,EAAIC,IAAO,CAC1K,UACA,IAAMR,EAAIgB,GAAqB,EAAE,OAC3BI,EAAK3C,EAAI8B,CAAE,EACXc,EAAK5C,EAAI+B,CAAE,EACX+B,EAAOjE,EAAM,aAAa0B,EAAE,UAAW,aAAa,aAAa,aAAaoB,EAAI,EAAE,EAAGpB,EAAE,GAAG,EAAGA,EAAE,OAAO,CAAC,EAAG,aAAaA,EAAE,UAAW,aAAa,aAAa,aAAaqB,EAAI,EAAE,EAAGrB,EAAE,GAAG,EAAGA,EAAE,OAAO,CAAC,CAAC,EACzMwC,EAAOC,GAAYzB,GAAqB,EAAE,IAAKqB,GAAM9B,EAAIC,CAAE,EAAG,CAAC,EACjEkC,EAAOlE,EAAMgE,CAAI,EACfb,EAAO,aAAa3B,EAAE,IAAK,CAAC,EAClC,QAAS2C,EAAI,GAAIA,GAAK,EAAGA,IAAK,QAASC,EAAI,GAAIA,GAAK,EAAGA,IAAK,CAC3D,IAAMC,EAAKnD,EAAM,aAAa0B,EAAI,aAAa3C,EAAImE,CAAC,EAAG5C,EAAE,IAAI,CAAC,EAAG,EAAG2B,CAAI,EAClEmB,EAAKpD,EAAM,aAAa2B,EAAI,aAAa5C,EAAIkE,CAAC,EAAG3C,EAAE,IAAI,CAAC,EAAG,EAAG2B,CAAI,EAClEoB,EAAIN,GAAYzB,GAAqB,EAAE,IAAKqB,GAAMd,EAAIsB,CAAE,EAAGtB,EAAIuB,CAAE,CAAC,EAAG,CAAC,EAC5E,GAAIC,EAAE,GAAK,EAAG,CACb,IAAMC,EAAOrD,GAAOoD,EAAE,GAAG,IAAIR,CAAI,CAAC,EAC9BS,EAAON,EAAK,IAAGA,EAAOlE,EAAMuE,EAAE,EAAGA,EAAE,EAAGC,EAAMN,EAAK,CAAC,EACvD,CACD,CACAN,GAAapB,GAAqB,EAAE,IAAKqB,GAAM9B,EAAIC,CAAE,EAAGhC,EAAMkE,EAAK,EAAGA,EAAK,EAAGA,EAAK,EAAGF,EAAK,CAAC,CAAC,CAC9F,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,IAAI,CACN,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,EAAG,CACF,EACA,CACC,EACA,IACA,WACD,EACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,EACA,IACA,CACC,EACA,IACA,SACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CAAC,CACJ,GACA,CACC,GACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,MACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,CAAC,IAAI,CACN,EAAG,CACF,EACA,QACA,CAAC,IAAI,CACN,CAAC,CACF,EACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,EACA,CACC,EACA,IACA,GACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CAAC,CACJ,GACA,OACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,IACA,IACD,EACA,KACD,EACA,CAAC,MAAM,CACR,CAAC,CACF,CACD,EAAG,CACF,GACA,CACC,EACA,OACA,IACA,CACC,EACA,OACA,GACD,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,OACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,OACA,CACC,EACA,OACA,GACD,CACD,CACD,CACD,CAAC,CAAC,CACH,CAAC,CAAC,CACH,CACD,CAAC,CACF,CAAC,CAAC,CACH,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,uBACA,GACD,EACA,KACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,EACA,CACC,EACA,OACA,GACD,CACD,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,qBAAwB,IAAMxB,GAC9B,QAAS,IAAMvC,EACf,UAAW,IAAMH,EACjB,kBAAmB,IAAMmE,GACzB,UAAW,IAAMJ,GACjB,UAAW,IAAM7D,EACjB,YAAa,IAAMkB,EACnB,QAAS,IAAM6B,EACf,aAAc,IAAM5B,GACpB,mBAAoB,IAAMyC,EAC3B,CACD,CAAC,GAAKjD,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,gBAAgB,EACtC,SAAS8D,GAAsBC,EAAQC,EAASC,EAAM,CACrD,GAAM,CAAE,MAAAC,EAAO,YAAAC,EAAa,WAAAC,CAAW,EAAIH,EACrCI,EAAW,EACXC,EAAUH,EAAc,EACxBI,EAAa,KAAK,IAAIJ,EAAa,CAAC,EACpCK,EAAMT,EACNU,EAAa/E,EAAgB,GAAG,CACrCP,EACAA,EACAG,EACAA,CACD,EAAGA,CAAG,GAAoBU,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC0E,EAAMC,EAAQC,EAAKC,IAAS,CACvI,UACA,IAAMC,EAAMH,EAAO,IAAID,CAAI,EACrBK,EAAMvE,GAAOsE,CAAG,EAChBE,EAAMF,EAAI,IAAI5E,EAAM6E,EAAK,IAAI,CAAC,EAChCE,EAAM3F,EAAI,CAAC,EACX4F,EAAI,aAAaN,EAAK,CAAC,EAC3B,QAAS,EAAI,EAAG,EAAIL,GACf,EAAAW,GAAKH,GADsB,IAAK,CAEpC,IAAMI,EAAKnB,EAAQU,EAAK,IAAIM,EAAI,IAAIE,CAAC,CAAC,CAAC,EAEvC,GADAD,EAAM9E,GAAI8E,EAAK1E,EAAM,aAAa4E,EAAIjF,EAAM,aAAagF,EAAGL,CAAI,EAAGD,CAAG,CAAC,EAAG,EAAG,CAAC,CAAC,EAC3EK,GAAO,EAAG,MACdC,EAAI,aAAaA,EAAGhF,EAAMiF,EAAIP,CAAG,CAAC,CACnC,CACA,OAAOK,CACR,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,KACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,MACA,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CAAC,EAAG,QAAQ,CAAC,CACtB,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,YACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,CACC,EACA,IACA,KACA,KACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MA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G,EAAG,CAAC,EAAG,EAAG,CAAC,EACtDgD,EAAMzH,GAAID,EAAMmG,EAAI,IAAIxF,EAAE,IAAI,EAAGyF,EAAM,EAAG,EAAG,CAAC,CAAC,EAAGA,EAAMxG,GAAKA,GAAKA,EAAG,CAAC,EAC5EmD,GAAauB,EAAI,EAAE,OAAQtB,GAAM9B,EAAIC,CAAE,EAAGhC,EAAMuI,EAAI,IAAI,aAAaH,EAAME,CAAC,CAAC,EAAGA,CAAC,CAAC,CACnF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,QACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,KACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CACC,EACA,IACA,KACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,aACA,CACC,CACC,EACA,IACA,QACD,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,IACA,UACD,EACA,KACA,CACC,EACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,MACA,GACD,EACA,QACD,EACA,CACC,EACA,UACA,CAAC,KAAM,IAAI,CACZ,EACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,EAAG,CAAC,EAAE,CAAC,CAAC,CACT,EACA,CACC,GACA,IACA,CACC,EACA,UACA,CAAC,OAAO,CACT,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CAAC,EAAG,GAAG,CAAC,CACjB,CAAC,CACF,CAAC,CACF,EACA,IACA,IACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,KAAK,CACjB,CAAC,CACF,CAAC,CACF,EACA,IACA,IACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CACN,EACA,KACA,IACA,CAAC,EAAG,UAAU,CACf,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,EACA,IACA,IACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,IACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,GAAG,CACL,EAAG,KAAK,CACT,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,IACA,UACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,CAAC,EAAG,YAAY,EAChB,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,YAAY,CACjB,EACA,IACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,YAAY,CACjB,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,MACA,IACA,CACC,EACA,CACC,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,cAAc,CACnB,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,MACD,CAAC,CACF,CACD,EACA,CACC,GACA,UACA,CACC,EACA,MACA,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,aACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,YACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,MACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,GAAG,CACL,EACA,IACA,GACD,EACA,IACA,SACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,KAAK,CACP,EAAG,CACF,EACA,UACA,CAAC,KAAK,CACP,CAAC,CACF,CACD,EACA,CACC,GACA,IACA,OACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,EACA,KACA,IACA,KACD,EACA,CAAC,EAAG,CAAC,CACJ,EACA,OACA,IACA,IACD,EAAG,CAAC,EAAE,CAAC,CAAC,CACT,EACA,CACC,EACA,IACA,KACA,CACC,EACA,UACA,CAAC,KAAM,KAAK,CACb,CACD,EACA,CACC,GACA,CACC,EACA,IACA,IACA,MACD,EACA,CAAC,EAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CACX,CACD,CAAC,CACF,EACA,CACC,GACA,CACC,EACA,OACA,IACA,KACD,EACA,CAAC,EAAG,CACH,CACC,GACA,MACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,MAAO,CAAC,EAAG,GAAG,CAAC,CACjB,CAAC,CACF,CAAC,CACF,EACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,CAAC,EAAG,GAAG,EAAG,KAAK,CACjB,CAAC,CACF,CAAC,CACF,EACA,IACA,MACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,KAAM,CACN,EACA,KACA,IACA,CAAC,EAAG,UAAU,CACf,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,GAAG,CAAC,CAClB,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,CACA,EACA,MACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,YACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,UACD,EACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,IACA,YACD,EACA,GACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,KACA,IACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,UACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CAAC,KAAK,CACP,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,OAAQ,CAAC,EAAG,QAAQ,CAAC,CACvB,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,IAAK,MAAM,CACb,EACA,IACA,CACC,EACA,IACA,MACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,MACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,CACH,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,IACA,YACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,SACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,IACA,IACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CAAC,EAAG,CAAC,CACJ,EACA,SACA,IACA,CACC,EACA,SACA,IACA,CACC,EACA,aACA,CACC,aACA,UACA,MACA,CACC,EACA,IACA,gBACD,CACD,CACD,CACD,CACD,CAAC,CAAC,CACH,EACA,CACC,EACA,MACA,IACA,CACC,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,SACA,IACA,CACC,EACA,KACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CAAC,CACF,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,CACC,EACA,IACA,OACD,EACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,CACC,EACA,IACA,OACD,EACA,CACC,EACA,UACA,CAAC,KAAM,CAAC,EAAG,GAAG,CAAC,CAChB,CACD,CACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,KACA,IACA,KACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,MACA,KACD,EACA,CAAC,CACA,EACA,IACA,MACD,CAAC,CACF,EAAG,CACF,EACA,UACA,CACC,CAAC,EAAG,GAAG,EACP,CA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,EACA,CACC,GACA,OACA,CACC,EACA,kBACA,CACC,CACC,EACA,CACC,EACA,mBACA,GACD,EACA,MACD,EACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,mBACA,GACD,EACA,QACD,EACA,QACD,CACD,EACA,CACC,EACA,mBACA,CACC,CACC,EACA,CACC,EACA,mBACA,GACD,EACA,KACD,EACA,KACA,CACC,EACA,aACA,CACC,CACC,EACA,CACC,EACA,OACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,CACC,EACA,IACA,KACD,EACA,CAAC,MAAM,CACR,EACA,KACD,EACA,CAAC,GAAG,CACL,CAAC,CACF,EACA,IACA,CACC,EACA,IACA,KACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,CACD,CACD,CACD,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMpF,GACjB,kBAAmB,IAAMI,GACzB,iBAAoB,IAAM4E,GAC1B,mBAAoB,IAAMjF,GAC1B,aAAc,IAAM/B,CACrB,CACD,CAAC,GAAKlB,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,sBAAsB,EACtCuI,IAA8B,WAAW,uBAA0BtJ,GAAMA,IAAIS,EAAgB,gBAAgB,CAClH,IAAK,CAAE,QAASE,GAAUN,CAAG,CAAE,EAC/B,IAAKC,EACN,CAAC,EAAG,YAAY,EACViJ,IAAa9I,EAAgB,GAAG,CAAC0C,EAAKA,CAAG,CAAC,GAAoBpC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoB,EAAIC,IAAO,CAChK,UACA,IAAM+G,EAAKlF,GAAM9B,EAAIC,CAAE,EACvB4B,GAAasF,GAAW,EAAE,IAAKH,EAAI9E,GAAYiF,GAAW,EAAE,IAAKH,EAAI,CAAC,CAAC,CACxE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,IACT,CAAC,EACD,KAAQ,CAAC,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KAAM,QACN,QAAS,UACT,MAAO,QACP,YAAa,6BACd,EACA,UAAW,CACV,KAAM,SACN,QAAS,EACT,MAAO,YACP,IAAK,EACL,IAAK,EACL,KAAM,IACN,YAAa,iFACd,CACD,CACD,EAAG,CACF,QAASD,IACT,YAAa,+FACb,MAAO,SACP,MAAO,QACR,CAAC,EACD,YAAa,CACZ,QAAS,GACT,YAAa,kIACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,yGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,6HACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,MACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,6FACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,MACR,CACD,EACA,KAAM,CACL,QAAS,GACT,YAAa,4FACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,MACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,GACb,UAAWqE,GACX,YAAa,yHACb,GAAI,CACH,KAAM,WACN,MAAO,UACP,MAAO,MACR,CACD,EACA,eAAgB,CACf,QAAS,IACT,YAAa,6DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,kBACP,MAAO,MACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWC,GACX,YAAa,yGACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,MACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,mGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,MACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,qFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,KACL,IAAK,GACL,KAAM,KACN,MAAO,cACP,MAAO,MACR,CACD,EACA,GAAGC,GAAgB,CAAE,aAAc,CAAE,GAAI,CAAE,MAAO,MAAO,CAAE,CAAE,CAAC,EAC9D,MAAO,CACN,QAASxE,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,sCACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,uBACd,CACD,EACA,GAAGqB,IACH,QAAUxG,GAAWJ,GAAgB,CACpC,GAAGqG,GAAejG,EAAO,UAAU,EACnC,GAAGuG,EACJ,CAAC,EAAE,QAAQvG,CAAM,CAClB,CAAC,ECzlID,IAAI4J,GAAQC,GAAa,CACxB,MAAOC,GAAU,CAChB,MAAOC,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,EACtB,WAAY,WACb,CAAC,EACD,UAAWA,EAAE,WAAW,EACxB,SAAUA,EAAE,UAAU,CACvB,CAAC,EACGC,IAAYC,GAAW,CAC1B,KAAMF,EAAE,QAAQ,EAChB,OAAQA,EAAE,QAAQ,EAClB,KAAMG,GAAMN,GAAM,OAAQG,EAAE,gBAAgB,CAAC,EAC7C,MAAOA,EAAE,YAAY,CACtB,CAAC,EACKI,GAAsBC,EAAU,CACrC,KAAM,iBACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,iFACb,iBAAkB,GAClB,MAAO,CACN,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,kBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,qDACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,+BACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,kDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,kDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,YACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,UAAWC,GACX,YAAa,oCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,wDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,eAAgB,CACf,QAAS,EACT,YAAa,sFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,CACD,EACA,MAAOC,GAAOC,GAAMR,GAAMS,GAAMX,GAAS,EAAGJ,GAAM,IAAI,EAAGe,GAAMZ,EAAE,WAAW,CAAC,EAAGH,GAAM,IAAI,CAAC,CAC5F,CAAC,ECpID,IAAMgB,GAAsBC,EAAU,CACrC,KAAM,eACN,KAAM,OACN,SAAU,cACV,YAAa,6DACb,uBAAwB,CAAE,YAAa,IAAK,EAC5C,MAAO,CACN,OAAQC,GAAiB,6CAA6C,EACtE,SAAU,CACT,QAAS,EACT,YAAa,gDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,sDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,MAAOC,GAAgB,SAAU,kEAAkE,CACpG,EACA,IAAKC,GAAa,CACjB,OAAQC,EAAE,QAAQ,EAClB,SAAUA,EAAE,UAAU,EACtB,MAAOA,EAAE,OAAO,CACjB,CAAC,EACD,oBAAqB,+DACtB,CAAC,ECvCD,IAAMC,GAAsBC,EAAU,CACrC,KAAM,YACN,KAAM,UACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,gLACb,YAAa,GACb,cAAe,GACf,MAAO,CACN,SAAU,CACT,QAAS,GACT,YAAa,mCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,SACT,YAAa,GACb,YAAa,8BACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,aACP,MAAO,QACR,EACA,CACC,MAAO,WACP,MAAO,MACR,EACA,CACC,MAAO,eACP,MAAO,OACR,EACA,CACC,MAAO,MACP,MAAO,KACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,OACP,MAAO,MACR,CACD,EACA,MAAO,SACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,qFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,IACN,MAAO,YACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,sIACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,UACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,qDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,qGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,WACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,+DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,gCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,cACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,0BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,UACT,UAAWC,GACX,YAAa,uBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,cAAe,CACd,QAAS,UACT,UAAWA,GACX,YAAa,0BACb,GAAI,CACH,KAAM,QACN,MAAO,YACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,YACT,UAAWA,GACX,YAAa,qBACb,GAAI,CACH,KAAM,QACN,MAAO,OACP,MAAO,QACR,CACD,CACD,EACA,QAAUC,GAAWC,GAAwB,CAC5C,KAAM,OAAOD,EAAO,WAAW,QAAW,SAAWA,EAAO,WAAW,OAAS,SAChF,SAAU,WACV,QAAS,UACT,UAAW,YACX,SAAU,WACV,SAAU,UACX,CAAC,EAAEA,CAAM,EACT,IAAK,CAAE,SAAUE,GAAiB,CACjC,SAAUC,EAAE,UAAU,EACtB,MAAOA,EAAE,OAAO,EAChB,WAAYA,EAAE,YAAY,EAC1B,UAAWA,EAAE,WAAW,EACxB,YAAaA,EAAE,aAAa,EAC5B,cAAeA,EAAE,eAAe,EAChC,UAAWA,EAAE,WAAW,CACzB,CAAC,CAAE,CACJ,CAAC,EC9LD,IAAMC,GAAsBC,EAAU,CACrC,KAAM,iBACN,KAAM,SACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,8GACb,YAAa,GACb,cAAe,GACf,MAAO,CACN,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,kHACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,oFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,UAAWC,GACX,YAAa,qCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,iGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,uEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,mFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,qHACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,YACR,CACD,EACA,gBAAiB,CAChB,QAAS,EACT,YAAa,yIACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,YACR,CACD,EACA,gBAAiB,CAChB,QAAS,GACT,YAAa,6EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,MACP,MAAO,YACR,CACD,E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,YAAa,CACZ,QAAS,GACT,YAAa,wDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,aACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,gEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,aACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,0BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,aACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,oEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,aACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,0CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,aACR,CACD,EACA,mBAAoB,CACnB,QAAS,GACT,YAAa,mEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,gBAAiB,CAChB,QAAS,EACT,YAAa,8DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,SACP,MAAO,SACR,CACD,EACA,gBAAiB,CAChB,QAAS,IACT,YAAa,mDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,SACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,6CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,SACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,+DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,8BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,SACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,uGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,uDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,WACR,CACD,CACD,EACA,MAAQC,GAAW,CAClB,IAAMC,EAAQC,GAAQC,GAAW,CAChC,SAAUC,EAAE,eAAe,EAC3B,UAAWA,EAAE,WAAW,EACxB,SAAUA,EAAE,UAAU,CACvB,CAAC,EAAEJ,CAAM,EAAG,OAAO,EACbK,EAAQC,GAAU,CACvB,UAAWF,EAAE,gBAAgB,EAC7B,OAAQA,EAAE,aAAa,EACvB,OAAQA,EAAE,aAAa,CACxB,CAAC,EACD,OAAOG,GAAeC,GAASA,GAASH,EAAMJ,EAAO,CACpD,IACA,GACA,GACA,EACD,EAAG,CACF,EACA,IACA,GACA,CACD,EAAGD,CAAM,EAAGK,EAAMJ,EAAO,CACxB,GACA,IACA,IACA,GACD,EAAG,CACF,EACA,IACA,IACA,IACD,EAAGD,CAAM,EAAGK,EAAMJ,EAAO,CACxB,GACA,IACA,IACA,GACD,EAAG,CACF,IACA,IACA,EACA,IACD,EAAGD,CAAM,EAAGK,EAAMJ,EAAO,CACxB,IACA,IACA,IACA,GACD,EAAG,CACF,IACA,EACA,GACA,IACD,EAAGD,CAAM,EAAGK,EAAMJ,EAAO,CACxB,IACA,IACA,GACA,CACD,EAAG,CACF,EACA,GACA,IACA,IACD,EAAGD,CAAM,EAAGK,EAAMJ,EAAO,CACxB,KACA,GACA,IACA,EACD,EAAG,CACF,IACA,IACA,EACA,KACD,EAAGD,CAAM,EAAGK,EAAMJ,EAAO,CACxB,KACA,IACA,GACA,GACD,EAAG,CACF,EACA,IACA,GACA,KACD,EAAGD,CAAM,CAAC,EAAGS,GAAU,CACtB,UAAWL,EAAE,eAAe,EAC5B,OAAQA,EAAE,YAAY,EACtB,OAAQA,EAAE,YAAY,EACtB,SAAUA,EAAE,cAAc,CAC3B,CAAC,EAAEH,EAAOD,CAAM,EAAGU,GAAe,CACjC,UAAWN,EAAE,oBAAoB,EACjC,OAAQA,EAAE,iBAAiB,CAC5B,CAAC,EAAEH,EAAOD,CAAM,EAAGW,GAAY,CAC9B,UAAWP,EAAE,iBAAiB,EAC9B,OAAQA,EAAE,cAAc,CACzB,CAAC,EAAEH,EAAOD,CAAM,EAAGY,GAAW,CAC7B,UAAWR,EAAE,gBAAgB,EAC7B,KAAMA,EAAE,WAAW,CACpB,CAAC,EAAEH,EAAOD,CAAM,EAAGa,GAAU,CAAE,UAAWT,EAAE,WAAW,CAAE,CAAC,EAAEH,EAAOD,CAAM,CAAC,EAAGC,CAAK,CACnF,CACD,CAAC,ECzTD,IAAIa,GAASC,GACTC,GAAqB,IACnBC,IAAiBC,EAAgB,GAAG,CAACC,CAAG,EAAGA,CAAG,GAAoBC,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAMC,GAAa,CACtK,UACA,IAAMC,EAAO,aAAa,IAAKD,CAAQ,EACjCE,EAAQC,GAAIC,EAAIC,GAAI,aAAaJ,EAAMR,EAAM,CAAC,CAAC,EAAG,EAAE,EACpDa,EAASH,GAAIC,EAAIC,GAAI,aAAa,aAAaJ,EAAM,GAAG,EAAGR,EAAM,CAAC,CAAC,EAAG,EAAE,EAC9E,OAAOc,EAAM,aAAaL,EAAO,aAAa,GAAII,CAAM,CAAC,EAAG,EAAG,CAAC,CACjE,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,UACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,UACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,OACA,IACA,QACD,CAAC,CACF,CAAC,CACF,EAAG,CAAC,EAAG,IAAI,CAAC,CACb,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,EACA,IACA,QACD,CAAC,CACF,CAAC,CACF,EAAG,CAAC,EAAG,IAAI,CAAC,CACb,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CACC,CACC,EACA,QACA,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,QACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMH,GACjB,UAAW,IAAMC,EACjB,UAAW,IAAMC,GACjB,OAAU,IAAMZ,GAChB,YAAa,IAAMc,CACpB,CACD,CAAC,GAAKR,EAAE,GAAG,CAAC,CAAC,CAAC,EACRS,IAAeX,EAAgB,GAAG,CACvCC,EACAW,EACAA,EACAX,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGW,CAAK,GAAoBV,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACW,EAAUC,EAAOC,EAAUC,EAAOC,EAAWC,EAAUC,EAAWC,EAAUjB,EAAUkB,EAAOC,IAAS,CACnN,UACA,IAAMC,EAAI,aAAa,aAAapB,EAAU,GAAG,EAAG,GAAG,EACjDqB,EAAKC,EAAI,aAAa,aAAa,GAAIR,CAAS,EAAGnB,EAAkB,EAAG,IAAI,EAC5E4B,EAAKnB,EAAI,aAAa,aAAaM,EAAUY,EAAIT,EAAO,IAAI,CAAC,EAAGW,EAAIH,EAAIvB,EAAI,CAAC,EAAGiB,CAAQ,CAAC,CAAC,EAC1FU,EAAWD,EAAIH,EAAI,aAAa,EAAGA,CAAE,EAAGN,CAAQ,EAChDW,EAAK,aAAa,EAAG,aAAad,EAAS,EAAGU,EAAIT,EAAO,IAAI,CAAC,CAAC,EAC/Dc,EAAKC,GAAIJ,EAAIC,EAAU,aAAaA,EAAU,EAAE,EAAGV,CAAQ,EAAG,aAAaU,EAAUC,CAAE,CAAC,EACxFG,EAAKP,EAAIE,EAAIC,EAAU,aAAaA,EAAU,EAAE,EAAGV,CAAQ,EAAG,aAAaU,EAAUC,CAAE,CAAC,EAC1FI,EAAS,aAAa,EAAGC,GAAWJ,EAAIE,EAAIN,CAAE,CAAC,EACnDO,EAAS3B,GAAII,EAAMuB,EAAQ,EAAG,CAAC,EAAG,aAAa,EAAGf,CAAQ,CAAC,EAC3D,IAAMiB,EAAMvB,EAAM,aAAaE,EAAM,EAAG,EAAE,EAAG,aAAaA,EAAM,EAAG,EAAE,CAAC,EAAE,IAAI,aAAa,GAAI,aAAa,IAAKK,CAAS,CAAC,CAAC,EACpHiB,EAAQ,aAAa,GAAIb,CAAC,EAC1Bc,EAAKC,GAAQ1B,EAAM,aAAa,aAAauB,EAAI,EAAG,GAAG,EAAGC,CAAK,EAAG,aAAa,aAAaD,EAAI,EAAG,GAAG,EAAGC,CAAK,CAAC,CAAC,EAChHG,EAAKD,GAAQ1B,EAAM,aAAa,aAAauB,EAAI,EAAG,GAAG,EAAGC,CAAK,EAAG,aAAa,aAAaD,EAAI,EAAG,GAAG,EAAGC,CAAK,CAAC,CAAC,EAClHI,EAAQ,aAAa9B,EAAM,aAAa,EAAG2B,CAAE,EAAG,EAAG,CAAC,EAAGE,CAAE,EACvDE,EAAU/B,EAAM,aAAac,EAAI,EAAE,EAAG,GAAI,EAAE,EAC5CkB,EAAYpC,GAAII,EAAM,aAAa,EAAGwB,GAAW,aAAaO,EAAS,EAAE,EAAG,aAAaA,EAASZ,CAAE,EAAGH,CAAE,CAAC,EAAG,EAAG,CAAC,EAAG,CAAC,EAC3Hc,EAAQ,aAAaA,EAAOE,CAAS,EACrCF,EAAQ,aAAa,aAAa,aAAa,GAAIA,CAAK,EAAGA,CAAK,EAAG,aAAa,aAAa,GAAIpB,CAAQ,EAAGA,CAAQ,CAAC,EACrHoB,EAAQ,aAAaA,EAAOb,EAAI1B,EAAI,CAAC,EAAGqB,EAAMD,CAAK,CAAC,EACpDY,EAASvB,EAAM,aAAauB,EAAQvB,EAAM8B,EAAO,EAAG,CAAC,CAAC,EAAG,EAAG,CAAC,EAC7D,IAAMG,EAAU,aAAaC,GAAM,aAAa9B,EAAM,EAAG,EAAE,EAAG,aAAaA,EAAM,EAAG,EAAE,CAAC,EAAGlB,EAAM,EAChG,OAAOgB,EAAMqB,EAAQU,CAAO,CAC7B,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,WACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,UACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,WACD,EACA,IACA,oBACD,EAAG,CAAC,EAAG,OAAO,CAAC,CAChB,CACD,EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,WACA,IACA,CACC,EACA,UACA,CAAC,QAAS,CAAC,EAAG,OAAO,CAAC,CACvB,CACD,EACA,IACA,CACC,EACA,UACA,CACC,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,WACA,CACC,EACA,UACA,CACC,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,EACA,UACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,WACA,GACD,EACA,IACA,CACC,EACA,UACA,CAAC,QAAS,CAAC,EAAG,OAAO,CAAC,CACvB,CACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,WACA,CACC,EACA,WACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,UACD,CACD,EAAG,CACF,EACA,WACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,UACA,CAAC,CACA,EACA,UACA,CACC,WACA,CACC,EACA,WACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,UACD,CACD,EAAG,CACF,EACA,WACA,IACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,KACA,KACA,IACD,CACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,SACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CACF,EACA,CAAC,EAAG,GAAG,EACP,IACA,UACD,CAAC,CACF,CACD,EACA,CACC,GACA,MACA,CACC,EACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,WACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,GACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,gBACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,EAAG,CACF,EACA,CACC,EACA,CACC,EACA,MACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,OACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,IACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,IACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,KACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,CAAC,EAAG,KAAK,EACT,CAAC,EAAG,KAAK,CACV,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,CACC,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CACC,EACA,UACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,EACA,UACA,IACA,IACD,EACA,IACD,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,WACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,CAAC,EAAG,IAAI,EACR,IACA,OACD,EACA,IACA,OACD,EACA,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,UACD,EACA,IACA,UACD,CACD,CACD,EACA,CACC,EACA,QACA,IACA,CACC,EACA,QACA,IACA,CACC,EACA,UACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,OACA,OACD,CACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,YACA,CACC,CACC,EACA,SACA,IACA,CACC,EACA,YACA,CACC,QACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,CACC,EACA,YACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,EAAG,CACF,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,EACA,IACA,QACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,SAAU,SAAS,CACrB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMlB,EACjB,mBAAsB,IAAM3B,GAC5B,UAAW,IAAM6B,EACjB,QAAS,IAAM1B,EACf,UAAW,IAAMM,EACjB,UAAW,IAAMwB,GACjB,iBAAkB,IAAMG,GACxB,UAAW,IAAM5B,GACjB,YAAa,IAAMI,EACnB,UAAW,IAAME,EACjB,gBAAiB,IAAM0B,GACvB,YAAa,IAAMM,GACnB,OAAU,IAAMhD,EACjB,CACD,CAAC,GAAKM,EAAE,GAAG,CAAC,CAAC,CAAC,EACR2C,IAAkB7C,EAAgB,GAAG,CAC1CC,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,EACAA,CACD,EAAGW,CAAK,GAAoBV,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACyC,EAASV,EAAQ9B,EAAUmB,EAAMwB,EAAQC,EAAU1B,EAAO2B,EAAW9B,EAAU+B,EAAMC,IAAc,CAChN,UACA,IAAM3B,EAAI,aAAa,aA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ACA,WACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,GAAG,CACL,CACD,EACA,CACC,GACA,OACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,KACA,IACA,QACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,eACA,CAAC,CACA,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,KACA,IACA,CAAC,EAAG,IAAI,CACT,EACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,EAAG,CACF,EACA,CACC,EACA,CAAC,EAAG,IAAI,EACR,IACA,WACD,EACA,IACA,CACC,EACA,OACA,IACA,CAAC,EAAG,MAAM,CACX,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,WACD,CACD,CAAC,CACF,EACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,WACD,CACD,CACD,CAAC,CACF,CACD,CAAC,CACF,CACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,aACA,CACC,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,QACA,CAAC,CACA,EACA,IACA,CAAC,EAAG,GAAG,CACR,CAAC,CACF,EACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,cACA,IACA,GACD,EACA,IACA,CACC,EACA,CACC,EACA,UACA,GACD,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,KACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,YACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,CAAC,CACA,EACA,YACA,IACA,CAAC,EAAG,KAAK,CACV,CAAC,CACF,CACD,CACD,CAAC,CACF,EACA,IACA,CAAC,EAAG,KAAK,CACV,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,WACD,CACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CAAC,CACA,EACA,IACA,IACA,CACC,EACA,KACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,WACD,CACD,CACD,CACD,CAAC,CACF,CACD,EACA,CACC,GACA,OACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,CACC,EACA,aACA,CACC,SACA,SACA,UACD,CACD,CACD,CACD,CACD,EACA,CACC,GACA,UACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,OACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CACC,OACA,OACA,SACD,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,YACA,CAAC,CACA,EACA,UACA,IACA,OACD,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,UACD,EACA,IACA,UACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,MAAM,EACV,IACA,CACC,EACA,UACA,GACD,CACD,CACD,CACD,EACA,CACC,EACA,KACA,IACA,CACC,EACA,UACA,CACC,KACA,CAAC,EAAG,KAAK,EACT,SACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,iBACA,CACC,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,IACD,EACA,CAAC,EAAG,KAAK,EACT,KACD,CACD,EACA,IACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,KAAK,EACT,CACC,EACA,CAAC,EAAG,KAAK,EACT,IACA,IACD,EACA,KACD,CACD,CACD,CACD,CACD,EACA,CACC,EACA,SACA,IACA,CACC,EACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,CACC,EACA,SACA,IACA,MACD,EACA,IACA,QACD,EACA,IACA,cACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,EACA,IACA,MACD,CACD,EACA,CACC,EACA,UACA,IACA,CACC,EACA,UACA,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA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CA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,EACA,CACC,GACA,IACA,CACC,EACA,OACA,IACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,KACA,GACD,EACA,IACA,MACD,EAAG,CAAC,EAAG,SAAS,CAAC,CAClB,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,UACA,CACC,CACC,EACA,UACA,CAAC,CACA,EACA,KACA,KACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,CACC,EACA,UACA,CAAC,CACA,EACA,QACA,KACD,EAAG,CAAC,EAAG,GAAG,CAAC,CACZ,EACA,GACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,KACA,IACD,CACD,EACA,IACA,MACD,CACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,CACC,EACA,QACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,CAAC,CACF,CAAC,CACF,CACD,EACA,CACC,GACA,KACA,CACC,EACA,CACC,EACA,KACA,IACD,EACA,IACA,CACC,EACA,CACC,EACA,QACA,GACD,EACA,IACA,CACC,EACA,UACA,GACD,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,gBACA,CAAC,CAAC,IAAK,CACN,IAAO,CACN,EACA,QACA,KACD,EACA,EAAK,CACJ,EACA,CACC,EACA,KACA,GACD,EACA,IACA,MACD,EACA,GAAM,KACN,GAAM,KACN,GAAM,IACP,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMJ,EACjB,QAAW,IAAMyD,EACjB,UAAW,IAAMG,EACjB,cAAiB,IAAMX,EACxB,CACD,CAAC,GAAKxE,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,sBAAsB+E,CAAI,EAAE,CACnD,CACA,SAASY,IAAsBZ,EAAM,CACpC,IAAIa,EAAKf,GAAc,IAAIE,CAAI,EAC/B,OAAKa,IACJA,EAAKd,IAAYC,CAAI,EACrBF,GAAc,IAAIE,EAAMa,CAAE,GAEpBA,CACR,CACA,IAAMC,IAAe/F,EAAgB,GAAG,CAACgG,GAAQX,EAAO,CAAC,EAAGpF,CAAG,EAAGoF,CAAK,GAAoBnF,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC+F,EAAQC,IAAQ,CAC5L,UACA,IAAMC,EAAIF,EAAOG,EAAIF,CAAG,CAAC,EACzB,OAAOb,EAAMc,EAAE,EAAGA,EAAE,EAAGA,EAAE,EAAGA,EAAE,CAAC,CAChC,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,QACT,EAAG,CACF,KAAQ,IACR,KAAQ,KACT,CAAC,EACD,KAAQ,CAAC,EAAG,CAAC,CACZ,GACA,IACA,CACC,EACA,SACA,CACC,EACA,QACA,CAAC,KAAK,CACP,CACD,CACD,EAAG,CAAC,GAAI,CACP,EACA,UACA,CACC,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,EACA,CACC,EACA,IACA,GACD,CACD,CACD,CAAC,CAAC,CAAC,CACJ,EACA,UAAW,CACV,QAAS,IAAMC,EACf,UAAW,IAAMf,CAClB,CACD,CAAC,GAAKnF,EAAE,GAAG,CAAC,CAAC,CAAC,EACRmG,IAAkBrG,EAAgB,GAAG,CAAC0E,GAAezE,CAAG,EAAGoF,CAAK,GAAoBnF,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACoF,EAAIgB,IAAU,CACzL,UACA,IAAMC,EAAI,aAAaD,EAAO,CAAC,EACzBE,EAAS7E,EAAI2D,EAAG,IAAI,IAAIA,EAAG,EAAE,EAAGA,EAAG,GAAIT,EAAM0B,CAAC,CAAC,EAC/CE,EAAS/F,EAAMiB,EAAI2D,EAAG,GAAIA,EAAG,GAAIiB,CAAC,EAAG,EAAG,CAAC,EAC/C,OAAOlB,EAAM3E,EAAM8F,EAAO,IAAI/E,EAAIgF,EAAQ,IAAI,CAAC,EAAG5B,EAAM,CAAC,EAAGA,EAAM,CAAC,CAAC,EAAG4B,CAAM,CAC9E,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CAAC,CACV,KAAQ,IACR,KAAQ,IACT,EAAG,CACF,KAAQ,IACR,KAAQ,OACT,CAAC,EACD,KAAQ,CAAC,EAAG,CACX,CACC,GACA,IACA,CACC,EACA,QACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EACA,CACC,GACA,eACA,CACC,EACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,KACA,IACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,UACA,CACC,eACA,CACC,EACA,KACA,IACD,EACA,CACC,EACA,UACA,CAAC,GAAG,CACL,CACD,CACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,YACA,CACC,CACC,EACA,UACA,CACC,CACC,EACA,KACA,IACD,EACA,CACC,EACA,KACA,IACD,EACA,GACD,CACD,EACA,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,YACA,CACC,CACC,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,SAAU,CAAC,EAAG,QAAQ,CAAC,CACzB,CAAC,CACF,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,EACA,CACC,EACA,UACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,CACD,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,WAAY,QAAQ,CACtB,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAM9E,EACjB,UAAW,IAAMkD,EACjB,YAAa,IAAMnE,EACnB,UAAW,IAAMe,EACjB,UAAW,IAAM4D,CAClB,CACD,CAAC,GAAKnF,EAAE,GAAG,CAAC,CAAC,CAAC,EACVwG,IAAuB,KAAK,UAAU,CACzC,KAAM,YACN,OAAQ,GACT,CAAC,EACGC,IAAgB,CACnB,CACC,MAAO,UACP,SAAU,CACX,EACA,CACC,MAAO,UACP,SAAU,EACX,EACA,CACC,MAAO,UACP,SAAU,CACX,CACD,EACMC,GAAsBC,EAAU,CACrC,KAAM,YACN,KAAM,cACN,QAAS,SACT,uBAAwBC,GACxB,SAAU,gBACV,YAAa,uGACb,aAAc,CAAE,MAAO,OAAQ,EAC/B,GAAGC,GAAc,CAChB,MAAO,YACP,QAAS,SACT,QAAS,CAACC,EAAOC,IAAW,CAC3B,GAAM,CAAE,SAAAC,EAAU,WAAAC,CAAW,EAAIF,EAC3B1F,EAAI6F,GAAaH,CAAM,EACvB3F,EAAO+F,GAAQC,EAAKvH,IAAgB,iBAAkB,CAACwB,CAAC,CAAC,EAAG,MAAM,EAClEgG,EAAQD,EAAK3G,IAAc,eAAgB,CAChDqG,EAAM,MAAM,OAAO,GAAG,EACtBA,EAAM,MACNC,EAAO,IAAI,aACXC,EAAS,MACTA,EAAS,UACTA,EAAS,SACTA,EAAS,UACTA,EAAS,MACT3F,EACA2F,EAAS,MACT5F,CACD,CAAC,EACKW,EAASsF,EAAM,OAAO,GAAG,EACzB5E,EAAU4E,EAAM,OAAO,GAAG,EAC1BC,EAAYL,EAAW,WAAa,EACpCM,EAAaD,EAAY,EAAI,KAAK,IAAIA,EAAW,CAAC,EAAI,EACtDE,EAAe7B,IAAsBsB,EAAW,YAAc,CAAC,EAC/DQ,EAAYzB,GAAQoB,EAAKzE,IAAiB,kBAAmB,CAClEF,EACAV,EACAV,EACAD,EACA4F,EAAS,MACTA,EAAS,SACTA,EAAS,MACTA,EAAS,UACTA,EAAS,SACTA,EAAS,KACTU,GAAO1B,CAAG,CACX,CAAC,EACK2B,EAAY3B,GAAQsB,EAAY,EAAIF,EAAKvB,IAAc,eAAgB,CAACmB,EAAS,YAAaU,GAAO1B,CAAG,CAAC,CAAC,EAAIA,IAAQ,EAAIgB,EAAS,OAASA,EAAS,OACvJY,EAAQR,EAAKxC,IAAmB,oBAAqB,CAAC,CAAC,EAC3D,QAASiD,EAAI,EAAGA,EAAIN,EAAYM,IAAKD,EAAQR,EAAKI,EAAc,qBAAsB,CACrFI,EACAD,EAASE,CAAC,EACVJ,EAASI,CAAC,CACX,CAAC,EACD,OAAOT,EAAKjB,IAAiB,kBAAmB,CAACyB,EAAOZ,EAAS,KAAK,CAAC,CACxE,CACD,CAAC,EACD,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWc,GACX,YAAa,+BACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,mCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,iEACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,kEACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,MAAO,CACN,GAAGC,GAAqB,EACxB,QAASvB,GACV,EACA,WAAY,CACX,QAAS,SACT,UAAWwB,GACX,YAAa,GACb,YAAa,0CACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,2BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,gEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,2CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,kFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,EACN,MAAO,QACP,MAAO,OACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,kCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,2EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,iDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,6BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,6BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,WACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,iEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAS1B,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAA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K,GAAK,EACzDG,GAAc,CAAC,CAClB,MAAO,SACP,MAAO,QACR,EAAG,CACF,MAAO,UACP,MAAO,SACR,CAAC,EACKC,GAAsBC,EAAU,CACrC,KAAM,OACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,SACV,YAAa,qGACb,iBAAkB,GAClB,MAAO,CACN,MAAO,CACN,QAAS,UACT,UAAWC,GACX,YAAa,wBACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,8BACb,GAAI,CACH,KAAM,WACN,MAAO,UACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWA,GACX,YAAa,4BACb,GAAI,CACH,KAAM,WACN,MAAO,UACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,2EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,KACN,MAAO,YACP,MAAO,SACP,YAAa,eACd,CACD,EACA,MAAO,CACN,QAAS,QACT,UAAWR,IACX,YAAa,0GACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,QACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,8CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,KACN,MAAO,cACP,MAAO,QACP,YAAa,gBACb,UAAW,CAAE,MAAO,QAAS,CAC9B,CACD,EACA,UAAW,CACV,QAAS,KACT,YAAa,sDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,KACN,MAAO,aACP,MAA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ACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,8CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,yCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,UACT,UAAWC,GACX,YAAa,2CACb,GAAI,CACH,KAAM,QACN,MAAO,cACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,8GACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,2FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,aACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,oEACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,IACT,YAAa,oEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,QACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,yEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,QACR,CACD,EACA,GAAGC,GAAgB,CAClB,YAAa,CACZ,QAAS,IACT,YAAa,uFACb,GAAI,CAAE,MAAO,SAAU,CACxB,EACA,YAAa,CAAE,GAAI,CAAE,MAAO,SAAU,CAAE,CACzC,CAAC,EACD,UAAW,CACV,QAAS,GACT,YAAa,sFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,GAAGA,GAAgB,CAClB,WAAY,CACX,YAAa,sDACb,GAAI,CAAE,MAAO,SAAU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M,QACN,IAAK,IACL,IAAK,KACL,KAAM,IACN,MAAO,QACP,MAAO,SACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,sBACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,SACR,CACD,EACA,gBAAiB,CAChB,QAAS,SACT,YAAa,4GACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,aACP,MAAO,YACR,EACA,CACC,MAAO,WACP,MAAO,UACR,CACD,EACA,MAAO,mBACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,SACT,YAAa,6JACb,GAAI,CACH,KAAM,SACN,QAAS,CAAC,CACT,MAAO,SACP,MAAO,QACR,EAAG,CACF,MAAO,SACP,MAAO,QACR,CAAC,EACD,MAAO,aACP,MAAO,OACR,CACD,EACA,SAAU,CACT,QAAS,IACT,YAAa,kGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,6GACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,wHACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,OACR,CACD,CACD,EACA,GAAGC,GAAS,CACX,OAAQ7B,GACR,OAAQL,GACR,UAAWf,GACX,SAAU,CACT,QAASA,GACT,OAAQ,GACT,EACA,OAAQ,CACP,IAAK,SACL,KAAM,iBACN,KAAM,CAACC,GAAKA,EAAG,EACf,OAAQE,EACT,EACA,KAAM,CAAC,CAAE,YAAA+C,CAAY,IAAM,CAC1B,IAAMC,EAASjB,GAAcgB,EAAY,OAAO,GAAK,SAAUA,EAAY,YAAY,GAAK,CAAC,EAC7F,MAAO,CACN,UAAW,CACV,KAAM,CACL,OAAQxB,IACR,QAAS,KACV,EACA,OAAQ,CACP,OAAQK,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YAAa,8BACb,GAAI,CACH,KAAM,WACN,MAAO,aACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWD,GACX,YAAa,2BACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,8BACb,GAAI,CACH,KAAM,WACN,MAAO,aACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWD,GACX,YAAa,2BACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,8BACb,GAAI,CACH,KAAM,WACN,MAAO,aACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWD,GACX,YAAa,2BACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,8BACb,GAAI,CACH,KAAM,WACN,MAAO,aACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWD,GACX,YAAa,2BACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,8BACb,GAAI,CACH,KAAM,WACN,MAAO,aACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,sCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,QACR,CACD,CACD,EACA,MAAOC,GAAmB,CACzB,OAAQ,CACP,CACC,MAAOC,EAAE,QAAQ,EACjB,SAA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CP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,kFACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,QACT,UAAWC,GACX,YAAa,GACb,YAAa,6DACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,QAAS,CACR,QAAS,EACT,YAAa,8FACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,uHACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,IACT,YAAa,kHACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,qEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,gGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,wCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,yGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,IACT,YAAa,4EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,mEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,QAAS,CACR,QAAS,IACT,YAAa,qEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,OACR,CACD,EACA,GAAGC,GAAgB,CAClB,WAAY,CAAE,YAAa,2EAA4E,EACvG,YAAa,CACZ,QAAS,GACT,YAAa,0EACd,EACA,UAAW,CACV,QAAS,KACT,YAAa,qCACb,GAAI,CAAE,MAAO,OAAQ,CACtB,EACA,kBAAmB,CAAE,GAAI,CAAE,MAAO,OAAQ,CAAE,EAC5C,WAAY,CAAE,YAAa,6DAA8D,EACzF,aAAc,EACf,CAAC,EACD,MAAO,CACN,QAAS,GACT,YAAa,8EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAShH,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,sCACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,uBACd,CACD,CACD,CAAC,ECjnBD,IAAMiH,GAAsBC,EAAU,CACrC,KAAM,gBACN,KAAM,SACN,QAAS,YACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,cACV,YAAa,6DACb,MAAO,CACN,SAAU,CACT,QAAS,GACT,YAAa,gFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,YACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,6DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,YACR,CACD,EACA,SAAU,CACT,QAAS,IACT,YAAa,+DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,YACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,oCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,YACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,UAAWC,GACX,YAAa,6CACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,YACR,CACD,CACD,EACA,OAAQC,GAAO,CACd,SAAUC,GAAS,MAAMC,EAAE,OAAO,EAAGA,EAAE,MAAM,CAAC,EAC9C,SAAUA,EAAE,UAAU,EACtB,QAASA,EAAE,UAAU,EACrB,OAAQA,EAAE,QAAQ,CACnB,CAAC,EACD,oBAAqB,iEACtB,CAAC,EC1ED,IAAMC,GAAsBC,EAAU,CACrC,KAAM,gBACN,KAAM,UACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,8KACb,YAAa,GACb,cAAe,GACf,MAAO,CACN,cAAe,CACd,QAAS,SACT,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,eACP,MAAO,OACR,EACA,CACC,MAAO,aACP,MAAO,QACR,EACA,CACC,MAAO,WACP,MAAO,MACR,EACA,CACC,MAAO,MACP,MAAO,KACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,OACP,MAAO,MACR,CACD,EACA,MAAO,SACP,MAAO,WACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,qBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,WACR,CACD,EACA,OAAQ,CACP,QAAS,SACT,YAAa,GACb,YAAa,sDACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,SACP,MAAO,WACR,CACD,EACA,SAAU,CACT,QAAS,IACT,YAAa,2BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,IACL,KAAM,EACN,MAAO,iBACP,MAAO,WACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,GACb,YAAa,0FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,EACN,MAAO,cACP,MAAO,YACP,UAAW,CAAE,OAAQ,CAAC,WAAY,QAAQ,CAAE,CAC7C,CACD,EACA,SAAU,CACT,QAAS,UACT,YAAa,GACb,YAAa,6BACb,GAAI,CACH,KAAM,SACN,QAAS,CAAC,CACT,MAAO,OACP,MAAO,MACR,EAAG,CACF,MAAO,UACP,MAAO,SACR,CAAC,EACD,MAAO,YACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,0CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,GACL,KAAM,GACN,MAAO,aACP,MAAO,OACR,CACD,EACA,aAAc,CACb,QAAS,EACT,YAAa,6CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,gBACP,MAAO,QACP,UAAW,CAAE,SAAU,MAAO,CAC/B,CACD,EACA,YAAa,CACZ,QAAS,UACT,UAAWC,GACX,YAAa,+BACb,GAAI,CACH,KAAM,QACN,MAAO,SACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,YACT,UAAWA,GACX,YAAa,2BACb,GAAI,CACH,KAAM,QACN,MAAO,OACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,UACT,UAAWA,GACX,YAAa,oBACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,SACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,qBAAsB,CACrB,QAAS,UACT,UAAWA,GACX,YAAa,+BACb,GAAI,CACH,KAAM,QACN,MAAO,mBACP,MAAO,SACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,UAAW,CACV,QAAS,OACT,YAAa,GACb,YAAa,yBACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,aACP,MAAO,YACR,EACA,CACC,MAAO,aACP,MAAO,YACR,CACD,EACA,MAAO,QACP,MAAO,QACR,CACD,EACA,cAAe,CACd,QAAS,eACT,YAAa,GACb,YAAa,gDACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,cACP,MAAO,aACR,EACA,CACC,MAAO,eACP,MAAO,cACR,EACA,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,YACP,MAAO,WACR,CACD,EACA,MAAO,iBACP,MAAO,SACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,YAAa,CACZ,QAAS,EACT,YAAa,6CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,gBACP,MAAO,SACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,WAAY,CACX,QAAS,GACT,UAAWC,GACX,YAAa,6CACb,GAAI,CACH,KAAM,WACN,MAAO,cACP,MAAO,SACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,WAAY,CACX,QAAS,QACT,YAAa,2CACb,GAAI,CACH,KAAM,cACN,MAAO,OACP,MAAO,aACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,8BACb,GAAI,CACH,KAAM,cACN,MAAO,SACP,MAAO,aACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,SAAU,CACT,QAAS,KACT,YAAa,kDACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,KACN,MAAO,OACP,MAAO,aACP,YAAa,gBACb,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,EACA,cAAe,CACd,QAAS,EACT,YAAa,8CACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,KACN,MAAO,iBACP,MAAO,aACP,UAAW,CAAE,UAAW,CAAC,aAAc,YAAY,CAAE,CACtD,CACD,CACD,EACA,IAAK,CAAE,SAAUC,GAAiB,CACjC,cAAeC,EAAE,eAAe,EAChC,UAAWA,EAAE,WAAW,EACxB,OAAQA,EAAE,QAAQ,EAClB,SAAUA,EAAE,UAAU,EACtB,SAAUA,EAAE,UAAU,EACtB,SAAUA,EAAE,UAAU,EACtB,UAAWA,EAAE,WAAW,EACxB,aAAcA,EAAE,cAAc,EAC9B,YAAaA,EAAE,aAAa,EAC5B,UAAWA,EAAE,WAAW,EACxB,WAAYA,EAAE,YAAY,EAC1B,qBAAsBA,EAAE,sBAAsB,EAC9C,UAAWA,EAAE,WAAW,EACxB,cAAeA,EAAE,eAAe,EAChC,WAAYA,EAAE,YAAY,EAC1B,YAAaA,EAAE,aAAa,EAC5B,WAAYA,EAAE,YAAY,EAC1B,WAAYA,EAAE,YAAY,EAC1B,SAAUA,EAAE,UAAU,EACtB,cAAeA,EAAE,eAAe,CACjC,CAAC,CAAE,CACJ,CAAC,EC9UD,IAAIC,IAAuB,KAAK,UAAU,CACzC,KAAM,YACN,OAAQ,GACT,CAAC,EACGC,IAAgB,CACnB,CACC,MAAO,UACP,SAAU,CACX,EACA,CACC,MAAO,UACP,SAAU,EACX,EACA,CACC,MAAO,UACP,SAAU,GACX,EACA,CACC,MAAO,UACP,SAAU,GACX,EACA,CACC,MAAO,UACP,SAAU,CACX,CACD,EACIC,IAAc,GACdC,IAAa,IACbC,IAAiB,IACfC,GAAsBC,EAAU,CACrC,KAAM,WACN,KAAM,cACN,QAAS,SACT,uBAAwBC,GACxB,SAAU,gBACV,YAAa,4MACb,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,qCACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,8CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,yCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWC,GACX,YAAa,0HACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,qEACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,sEACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,MAAO,CACN,GAAGC,GAAqB,EACxB,QAAST,GACV,EACA,WAAY,CACX,QAAS,QACT,UAAWU,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,YAAa,CACZ,QAAS,EACT,YAAa,6GACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,cACP,MAAO,aACR,CACD,EACA,SAAU,CACT,QAAS,IACT,YAAa,0IACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,aACR,CACD,EACA,YAAa,CACZ,QAAS,IACT,YAAa,6DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,eACP,MAAO,aACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,8DACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,aACP,MAAO,aACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,0FACb,GAAI,CA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MAAO,CACN,MAAO,qBACP,QAAS,sBACV,CACD,CAAC,CACF,CACA,IAAM6B,IAAgCH,GAAUD,GAAoBC,EAAO,CAACnC,GAASA,EAAO,CAAC,EAAE,MAAM,OAC/FuC,IAA2BD,IAA6B,KAAK,EAC7DE,IAA6BN,GAAoB,MAAO,CAAClC,GAASA,EAAO,CAAC,EAAE,QAAQ,OACpFyC,GAAsBC,EAAU,CACrC,KAAM,gBACN,KAAM,aACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,4PACb,YAAa,GACb,cAAe,GACf,YAAa,GACb,MAAO,CACN,MAAO,CACN,QAAS,KACT,YAAa,4EACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK5C,GACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,YACT,YAAa,GACb,YAAa,yFACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,oBACP,MAAO,sBACR,EACA,CACC,MAAO,MACP,MAAO,KACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,aACP,MAAO,YACR,EACA,CACC,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,eACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,qGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,cAAe,CACd,QAAS,MACT,YAAa,GACb,YAAa,mFACb,GAAI,CACH,KAAM,SACN,QAAS6C,GACT,MAAO,QACP,MAAO,MACR,CACD,EACA,aAAc,CACb,QAAS,IACT,YAAa,qDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,MACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,4FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,MACR,CACD,EACA,OAAQ,CACP,QAAS,IACT,YAAa,yEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,sEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,IACL,KAAM,IACN,MAAO,OACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,yFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,KACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,yFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,KACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,mCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,KACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,QAAS,CACR,QAAS,EACT,YAAa,yEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,QAAS,CACR,QAAS,EACT,YAAa,gJACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,OACT,YAAa,2GACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,OACP,MAAO,MACR,CACD,EACA,MAAO,cACP,MAAO,aACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,0FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,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,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,+BACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,mCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,6BACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,gHACb,GAAI,CACH,KAAM,QACN,MAAO,gBACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,IACT,YAAa,gCACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAKC,GACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,KAAM,CACL,QAAS,IACT,YAAa,oGACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,OACP,MAAO,WACR,CACD,EACA,cAAe,CACd,QAAS,MACT,YAAa,GACb,YAAa,kHACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,QACP,MAAO,WACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,wGACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,kFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,uEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,SACR,CACD,EACA,QAAS,CACR,QAAS,EACT,YAAa,yEACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,SACR,CACD,EACA,eAAgB,CACf,QAAS,EACT,YAAa,6GACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,aACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,kDACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,gBACP,MAAO,aACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,WACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,8EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAS,IACT,YAAa,2FACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,WAAY,CACX,QAAS,QACT,UAAWC,GACX,YAAa,GACb,YAAa,mDACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAASC,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,sCACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,uBACd,CACD,EACA,GAAGC,GAAS,CACX,OAAQjB,GACR,OAAQkB,GACR,UAAWN,GACX,SAAU,CACT,QAASA,GACT,OAAQ,GACT,EACA,OAAQ,CACP,IAAK,SACL,KAAM,kBACN,KAAM,CAACO,GAASA,EAAO,EACvB,OAAQC,EACT,EACA,KAAOtC,GAAW,CACjB,GAAM,C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aACN,KAAM,aACN,QAAS,SACT,SAAU,cACV,YAAa,wJACb,YAAa,GACb,cAAe,GACf,uBAAwB,CAAE,YAAa,IAAK,EAC5C,YAAa,GACb,MAAO,CACN,SAAU,CACT,QAAS,YACT,UAAWzB,GACX,YAAa,GACb,YAAa,sDACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,aACP,MAAO,WACR,EACA,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,MACP,MAAO,KACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,OACP,MAAO,MACR,CACD,EACA,MAAO,WACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,IACT,YAAa,wCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,sHACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,mCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,uGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,0FACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,UACT,YAAa,sDACb,UAAW0B,GACX,YAAa,GACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,cACP,MAAO,aACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO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2D,GAAM,SAAS,CACpF,CACD,CAAC,EACD,MAAO,CACN,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,uCACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,gDACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,0CACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,MAAOC,GAAqB,EAC5B,cAAe,CACd,QAAS,GACT,YAAa,kDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,iBACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,+CACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,sGACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,6FACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,aAAc,CACb,QAAS,EACT,YAAa,kEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,SACR,CACD,EACA,QAAS,CACR,QAAS,IACT,YAAa,8HACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,SACR,CACD,EACA,aAAc,CACb,QAAS,EACT,YAAa,kEACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,GACL,KAAM,GACN,MAAO,gBACP,MAAO,SACR,CACD,EACA,gBAAiB,CAChB,QAAS,EACT,YAAa,wGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,mBACP,MAAO,SACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,yEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,SACR,CACD,EACA,aAAc,CACb,QAAS,IACT,YAAa,sCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,SACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,wDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,mGACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,QAAS,CACR,QAAS,IACT,YAAa,oFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,UACR,CACD,EACA,IAAK,CACJ,QAAS,IACT,YAAa,kDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,UACT,UAAWH,GACX,YAAa,iCACb,GAAI,CACH,KAAM,QACN,MAAO,YACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAASxH,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,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Cb,cAAe,GACf,qBAAsB,GACtB,YAAa,GACb,MAAO,CACN,OAAQ,CACP,QAAS,QACT,YAAa,wIACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,eACP,MAAO,cACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,UACP,MAAO,SACR,CACD,EACA,KAAM,CACL,QAAS,MACT,YAAa,mFACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,KACN,MAAO,OACP,MAAO,UACP,UAAW,CAAE,OAAQ,QAAS,CAC/B,CACD,EACA,KAAM,CACL,QAAS,KACT,YAAa,+EACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,IACL,KAAM,KACN,MAAO,OACP,MAAO,UACP,UAAW,CAAE,OAAQ,QAAS,CAC/B,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,wHACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,GACL,KAAM,IACN,MAAO,kBACP,MAAO,SACR,CACD,EACA,YAAa,CACZ,QAAS,EACT,YAAa,gHACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,eACP,MAAO,SACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,sEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK/B,GACL,KAAM,EACN,MAAO,QACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,gEACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,aACP,MAAO,aACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,qDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,iBACP,MAAO,aACR,CACD,EACA,OAAQ,CACP,QAAS,cACT,UAAWgC,GACX,YAAa,iDACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,sDACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,0DACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,8EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,6FACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,QACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,6JACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,qDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,UACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,4LACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,OACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,uKACb,GAAI,CA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EACA,CACC,GACA,IACA,CACC,EACA,CACC,EACA,CACC,EACA,QACA,CAAC,IAAI,CACN,EACA,IACA,CAAC,EAAG,KAAK,CACV,EACA,IACA,MACD,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CACD,EACA,CACC,GACA,KACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,OAAO,CAAC,CACd,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,OACA,CACC,EACA,QACA,CAAC,CAAC,EAAG,GAAG,CAAC,CACV,CACD,EACA,CACC,GACA,CACC,GACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,CACC,EACA,IACA,IACA,OACD,EACA,CACC,IACA,KACA,GACD,EACA,CAAC,EAAG,CACH,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,CACC,EACA,SACA,GACD,EACA,SACD,EACA,CACC,EACA,CACC,EACA,IACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,OACD,CACD,EACA,CACC,GACA,MACA,CACC,EACA,IACA,IACA,OACD,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,MACA,IACA,KACD,EACA,IACA,CACC,EACA,MACA,IACA,KACD,CACD,CACD,EACA,CACC,GACA,CACC,EACA,SACA,IACA,IACD,EACA,CAAC,EAAG,CACH,CACC,EACA,KACA,IACA,IACD,EACA,CACC,EACA,OACA,IACA,MACD,EACA,CACC,EACA,KACA,IACA,QACD,EACA,CACC,EACA,OACA,IACA,CACC,EACA,QACA,CAAC,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H,EAAoBE,CAAkB,EACpEE,EAAYX,EAAY,IAAIY,EAAIX,EAAU,IAAI,CAAC,EACrD,OAAOf,GAAU,CAChB,eAAAwB,EACA,WAAY7B,EAAM,aAAa8B,EAAU,EAAG,EAAE,EAAGA,EAAU,CAAC,EAC5D,YAAatB,EAAG,IAAIU,CAAI,EACxB,KAAAA,CACD,CAAC,CACF,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,IACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,OACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,QAAS,OAAO,CAClB,CACD,EACA,CACC,GACA,YACA,CACC,EACA,UACA,CAAC,QAAS,OAAO,CAClB,CACD,EACA,CACC,GACA,OACA,CACC,EACA,UACA,CAAC,QAAS,OAAO,CAClB,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,YAAY,CACd,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,CAAC,aAAa,CACf,CACD,EACA,CACC,GACA,WACA,CACC,EACA,aACA,CAAC,CACA,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,WAAW,CACb,CAAC,CACF,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,aACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,WACA,CACC,EACA,WACA,IACA,UACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,aACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,iBACA,UACD,CACD,CACD,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,MAAM,EACV,iBACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,qBACA,IACA,oBACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,cACA,KACD,EACA,CAAC,CACA,EACA,UACA,CAAC,WAAY,CAAC,EAAG,SAAS,CAAC,CAC5B,CAAC,CACF,CACD,EACA,CACC,GACA,aACA,CACC,EACA,UACA,CAAC,CACA,EACA,CACC,EACA,YACA,GACD,EACA,IACA,CACC,EACA,IACA,CAAC,EAAG,GAAG,CACR,CACD,EAAG,CACF,EACA,YACA,GACD,CAAC,CACF,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,KACA,KACD,EACA,CAAC,MAAM,CACR,CACD,EACA,CAAC,GAAI,CACJ,EACA,YACA,CAAC,CAAC,IAAK,CACN,eAAkB,iBAClB,WAAc,aACd,YAAe,cACf,KAAQ,MACT,CAAC,CAAC,CACH,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMlB,EACjB,aAAc,IAAMqB,GACpB,iBAAkB,IAAMM,GACxB,UAAW,IAAMI,EACjB,UAAa,IAAM1B,EACpB,CACD,CAAC,GAAK9B,EAAE,GAAG,CAAC,CAAC,CAAC,EACRyD,IAAiB9D,EAAgB,GAAG,CACzC8B,EACAA,EACA5B,EACAA,EACAA,EACAA,CACD,EAAG4B,CAAK,GAAoBzB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAAC0D,EAAaC,EAAYL,EAAgBM,EAAoBC,EAAgBC,IAAY,CACtM,UACA,IAAMC,EAAmBJ,EAAW,IAAI,aAAaC,EAAoB,GAAG,CAAC,EACvEI,EAAkB,aAAaH,EAAgB,IAAI,EACnDI,EAAcN,EAAW,IAAI,aAAaG,EAASE,CAAe,CAAC,EACnEE,EAASH,EAAiB,IAAIE,CAAW,EAC/C,OAAOP,EAAY,IAAIQ,EAAO,IAAIZ,CAAc,CAAC,CAClD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,YACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,oBACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,SACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,mBACA,CACC,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,CACA,EACA,qBACA,IACA,CAAC,EAAG,MAAM,CACX,CAAC,CACF,CACD,EACA,CACC,GACA,kBACA,CACC,EACA,iBACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,EACA,CACC,GACA,cACA,CACC,EACA,CACC,EACA,aACA,KACD,EACA,CAAC,CACA,EACA,UACA,IACA,iBACD,CAAC,CACF,CACD,EACA,CACC,GACA,SACA,CACC,EACA,CACC,EACA,mBACA,KACD,EACA,CAAC,aAAa,CACf,CACD,EACA,CAAC,GAAI,CACJ,EACA,CACC,EACA,cACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,SACA,KACD,EACA,CAAC,gBAAgB,CAClB,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CAAC,CACb,CAAC,GAAKtD,EAAE,GAAG,CAAC,CAAC,CAAC,EACVmE,GAAoB,GAAK,KAAK,MAAM,GAAI,EAAE,EAC1CC,GAAoB,GAAK,KAAK,MAAM,GAAI,EAAE,EACxCC,IAAoB1E,EAAgB,GAAG,CAC5CsB,EACAA,EACAA,EACAA,EACApB,EACA4B,EACA5B,CACD,EAAGoB,CAAK,GAAoBjB,IAAO,WAAW,mBAAqC,IAAI,SAAW,IAAIA,EAAE,GAAK,CAACsE,EAAaC,EAAQC,EAAQC,EAAQnB,EAAgBX,EAAM+B,IAAkB,CAC1L,UACA,IAAMC,EAAeC,EAAML,EAAO,EAAGC,EAAO,EAAGC,EAAO,CAAC,EACjDI,EAAYP,EAAY,IAAI,IAAI,aAAa,EAAGhB,CAAc,CAAC,EAAE,IAAIqB,EAAa,IAAIrB,CAAc,CAAC,EACrGwB,EAAqBhC,GAAOH,CAAI,EAChCoC,EAAQ,aAAapC,EAAK,EAAG,aAAamC,EAAoB,IAAI,CAAC,EACnEE,EAAQ,aAAarC,EAAK,EAAG,aAAamC,EAAoB,IAAI,CAAC,EACnEG,EAAY,aAAa,aAAaF,EAAOZ,EAAiB,EAAG,aAAaa,EAAOZ,EAAiB,CAAC,EACvGc,EAAiB,aAAa,EAAG,aAAaD,EAAWP,CAAa,CAAC,EACvES,EAAoB/B,GAAW,EAAG,IAAK0B,CAAkB,EACzDM,EAAgB,aAAa,EAAG,aAAa,aAAaF,EAAgB,CAAC,EAAGC,CAAiB,CAAC,EACtG,OAAOlE,EAAM4D,EAAU,IAAIO,CAAa,EAAGd,EAAY,CAAC,CACzD,GAAI,CACH,EAAG,EACH,KAAM,OACN,IAAK,CACJ,OAAU,CACT,CACC,KAAQ,IACR,KAAQ,aACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,QACT,EACA,CACC,KAAQ,IACR,KAAQ,gBACT,EACA,CACC,KAAQ,IACR,KAAQ,MACT,EACA,CACC,KAAQ,IACR,KAAQ,eACT,CACD,EACA,KAAQ,CAAC,EAAG,CACX,CACC,GACA,eACA,CACC,EACA,UACA,CACC,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,EACA,CACC,EACA,SACA,GACD,CACD,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,CACC,EACA,cACA,KACD,EACA,KACD,EACA,CAAC,CACA,EACA,CAAC,EAAG,GAAG,EACP,IACA,gBACD,CAAC,CACF,EACA,KACD,EACA,CAAC,CACA,EACA,CACC,EACA,eACA,KACD,EACA,CAAC,gBAAgB,CAClB,CAAC,CACF,CACD,EACA,CACC,GACA,qBACA,CACC,EACA,aACA,CAAC,MAAM,CACR,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,qBACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,GACA,QACA,CACC,EACA,CACC,EACA,OACA,GACD,EACA,IACA,CACC,EACA,qBACA,IACA,CAAC,EAAG,OAAO,CACZ,CACD,CACD,EACA,CACC,GACA,YACA,CACC,EACA,CACC,EACA,QACA,IACA,mBACD,EACA,IACA,CACC,EACA,QACA,IACA,mBACD,CACD,CACD,EACA,CACC,GACA,iBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,YACA,IACA,eACD,CACD,CACD,EACA,CACC,GACA,oBACA,CACC,EACA,iBACA,CACC,CAAC,EAAG,GAAG,EACP,CAAC,EAAG,MAAM,EACV,oBACD,CACD,CACD,EACA,CACC,GACA,gBACA,CACC,EACA,CAAC,EAAG,GAAG,EACP,IACA,CACC,EACA,CACC,EACA,iBACA,IACA,CAAC,EAAG,GAAG,CACR,EACA,IACA,mBACD,CACD,CACD,EACA,CACC,GACA,WACA,CACC,EACA,CACC,EACA,YACA,KACD,EACA,CAAC,eAAe,CACjB,CACD,EACA,CAAC,GAAI,CACJ,EACA,UACA,CAAC,WAAY,CACZ,EACA,cACA,GACD,CAAC,CACF,CAAC,CACF,CAAC,CACF,EACA,UAAW,CACV,UAAW,IAAMM,EACjB,aAAc,IAAM9B,GACpB,kBAAqB,IAAMqB,GAC3B,kBAAqB,IAAMC,GAC3B,iBAAkB,IAAMhB,GACxB,UAAW,IAAMnC,CAClB,CACD,CAAC,GAAKjB,EAAE,GAAG,CAAC,CAAC,CAAC,EACd,SAASqF,IAAmBC,EAAM,CACjC,OAAQC,GAAW,CAClB,GAAM,CAAE,IAAAC,EAAK,uBAAAC,EAAwB,YAAAC,EAAa,UAAAC,CAAU,EAAIJ,EAC1DK,EAAOJ,GAAK,KAClB,GAAI,CAACI,EAAM,OAAO,KAClB,GAAM,CAAE,OAAAnG,EAAQ,OAAAoG,CAAO,EAAI1E,IAAqBmE,EAAK,MAAOA,EAAK,IAAI,EAC/DQ,EAAUC,GAAkBH,EAAM/F,EAAKyF,EAAK,MAAQ,CAAC,EACrDU,GAA8B,WAAW,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B,SAAU,CACT,QAAS,CACR,EAAG,GACH,EAAG,CACJ,EACA,UAAWC,GACX,YAAa,4BACb,GAAI,CACH,KAAM,WACN,MAAO,YACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,kEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,6BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,iCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,SACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,4BACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,YACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,yBACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,iCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,6BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,SACP,MAAO,QACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,uCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,UACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,mDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,QACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,+BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,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ACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,YACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,SACT,YAAa,0IACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,+BACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,mCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWA,GACX,YAAa,yCACb,GAAI,CACH,KAAM,WACN,MAAO,YACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,kEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,UACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,6BACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,iCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,SACP,MAAO,UACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,4BACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,YACP,MAAO,UACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,yBACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,iCACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,6BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,SACP,MAAO,QACR,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,4FACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,UACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,mDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,cACP,MAAO,QACR,CACD,EACA,eAAgB,CACf,QAAS,GACT,YAAa,+BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,mBACP,MAAO,aACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,kCACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,IACN,MAAO,gBACP,MAAO,aACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAASnE,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,sCACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,uBACd,CACD,EACA,GAAGoE,GAAU7B,GAAW,CACvB,GAAM,CAAE,YAAAC,CAAY,EAAID,EAClB8B,EAAY/B,IAAoBC,CAAM,EACtC+B,EAAaf,IAAoBf,CAAW,EAClD,MAAO,CACN,WAAYvC,GACZ,OAAQW,GACR,aAAAI,GACA,aAAcR,GACd,OAAQ,CACP,QAASiB,GACT,YAAatB,GACd,EACA,OAAQ,CACP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QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,SACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,+EACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,GACL,KAAM,IACN,MAAO,cACP,MAAO,OACR,CACD,CACD,CACD,CACD,CAAC,ECrDD,SAASE,GAAmBC,EAAU,CACrC,MAAO,CACN,UAAW,CACV,QAASA,EAAS,UAClB,YAAa,8DACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,MAAO,CACN,QAASA,EAAS,MAClB,YAAa,4EACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,SACR,CACD,EACA,SAAU,CACT,QAASA,EAAS,SAClB,YAAa,4EACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,SACR,CACD,EACA,WAAY,CACX,QAASA,EAAS,WAClB,YAAa,iFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,SACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,oCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,SACR,CACD,CACD,CACD,CC5DA,IAAMC,GAAsBC,EAAU,CACrC,KAAM,QACN,KAAM,SACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,yEACb,YAAa,GACb,cAAe,GACf,MAAOC,GAAmB,CACzB,UAAW,GACX,MAAO,EACP,SAAU,EACV,WAAY,GACb,CAAC,EACD,IAAK,CAAE,SAAUC,GAAYC,GAAY,KAAK,CAAE,CACjD,CAAC,ECfD,IAAMC,GAAsBC,EAAU,CACrC,KAAM,UACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,uDACb,iBAAkB,GAClB,aAAc,CAAE,MAAO,OAAQ,EAC/B,mBAAoB,CAAE,MAAO,YAAa,EAC1C,MAAO,CACN,MAAO,CACN,QAAS,GACT,YAAa,0BACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,WACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,wDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,YACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,uCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,YACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,oBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,eACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,6CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,IACT,YAAa,wEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,kBACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,+CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,GACT,UAAWC,GACX,YAAa,+DACb,GAAI,CACH,KAAM,WACN,MAAO,YACP,MAAO,QACR,CACD,EACA,MAAO,CACN,GAAGC,GAAqB,EACxB,QAAS,CACR,CACC,MAAO,UACP,SAAU,CACX,EACA,CACC,MAAO,UACP,SAAU,GACX,EACA,CACC,MAAO,UACP,SAAU,GACX,EACA,CACC,MAAO,UACP,SAAU,CACX,CACD,CACD,EACA,WAAY,CACX,QAAS,QACT,UAAWC,GACX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EACL,KAAM,GACN,MAAO,UACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,gBACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,WACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,kBACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,WACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,uCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,SACP,MAAO,WACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,gCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,CACD,EACA,MAAOC,GAAW,CACjB,KAAMC,EAAE,QAAQ,EAChB,OAAQA,EAAE,QAAQ,EAClB,KAAMC,GAAY,CACjB,MAAOD,EAAE,OAAO,EAChB,QAASA,EAAE,SAAS,EACpB,QAASA,EAAE,SAAS,EACpB,SAAUA,EAAE,UAAU,EACtB,OAAQA,EAAE,QAAQ,CACnB,CAAC,EACD,MAAOA,EAAE,YAAY,CACtB,CAAC,CACF,CAAC,EC/HD,IAAIE,GAAM,KAAK,GAAK,EACdC,GAAsBC,EAAU,CACrC,KAAM,mBACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,qDACb,YAAa,CACZ,QAAS,CACR,OAAQC,EACR,QAAS,CACR,EACA,EACA,EACA,CACD,CACD,EACA,QAAS,CACR,OAAQA,EACR,QAAS,CACR,EACA,EACA,EACA,CACD,CACD,EACA,UAAW,CACV,OAAQA,EACR,QAAS,CACR,IACA,IACA,IACA,GACD,CACD,CACD,EACA,MAAO,CACN,MAAO,CACN,QAAS,UACT,UAAWC,GACX,YAAa,4BACb,GAAI,CACH,KAAM,QACN,MAAO,gBACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,UACT,UAAWA,GACX,YAAa,kCACb,GAAI,CACH,KAAM,QACN,MAAO,YACP,MAAO,WACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,6BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,WACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,+BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,WACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,gCACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,aACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,+BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,aACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,kCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,aACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,gDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,SACP,MAAO,aACR,CACD,EACA,UAAW,CACV,QAAS,UACT,UAAWA,GACX,YAAa,gCACb,GAAI,CACH,KAAM,QACN,MAAO,aACP,MAAO,YACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,6BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,YACP,MAAO,YACR,CACD,EACA,aAAc,CACb,QAAS,GACT,YAAa,+BACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,YACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,8BACb,GAAI,C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ACN,QAAS,GACT,YAAa,kBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,OACR,CACD,EACA,KAAM,CACL,QAAS,GACT,YAAa,yBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,OACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,yBACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,EACN,MAAO,OACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,gBACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,cACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,qBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,oBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,QACR,CACD,EACA,YAAa,CACZ,QAAS,EACT,YAAa,sEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,eACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,kDACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,cACP,MAAO,aACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,OACP,MAAO,MACR,CACD,EACA,MAAO,QACP,MAAO,OACR,CACD,EACA,SAAU,CACT,QAAS,GACT,UAAWH,GAAc,CAACC,EAAMC,IAASD,EAAO,KAAQC,EAAO,GAAG,EAClE,YAAa,o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M,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,aACP,MAAO,YACR,CACD,EACA,MAAO,YACP,MAAO,MACR,CACD,EACA,SAAU,CACT,QAAS,IACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,KACN,MAAO,OACP,MAAO,aACP,YAAa,eACd,CACD,EACA,cAAe,CACd,QAAS,EACT,YAAa,6BACb,GAAI,CACH,KAAM,QACN,IAAK,IACL,IAAK,GACL,KAAM,KACN,MAAO,iBACP,MAAO,YACR,CACD,EACA,WAAY,CACX,QAAS,IACT,YAAa,2DACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,IACL,KAAM,IACN,MAAO,cACP,MAAO,YACP,OAAQ,EACT,CACD,EACA,UAAW,CACV,QAAS,SACT,YAAa,sDACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,QACP,MAAO,YACP,OAAQ,EACT,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,mMACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,KACN,MAAO,YACP,MAAO,YACP,MAAO,CAAC,IAAK,IAAI,EACjB,YAAa,eACb,OAAQ,EACT,CACD,EACA,MAAO,CACN,QAAS,UACT,UAAWC,GACX,YAAa,aACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,SACT,YAAa,yIACb,GAAI,CACH,KAAM,SACN,MAAO,SACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,CACR,EAAG,GACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,8BACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,SAAU,C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CACD,EACA,aAAc,CACb,QAAS,EACT,YAAa,sDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,SACT,YAAa,sKACb,YAAa,GACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,MACP,MAAO,KACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,aACP,MAAO,WACR,EACA,CACC,MAAO,aACP,MAAO,WACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,UACP,MAAO,SACR,EACA,CACC,MAAO,cACP,MAAO,YACR,EACA,CACC,MAAO,aACP,MAAO,WACR,EACA,CACC,MAAO,cACP,MAAO,YACR,EACA,CACC,MAAO,aACP,MAAO,YACR,EACA,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,MACP,MAAO,KACR,EACA,CACC,MAAO,aACP,MAAO,YACR,EACA,CACC,MAAO,QACP,MAAO,OACR,EACA,CACC,MAAO,aACP,MAAO,YACR,CACD,EACA,MAAO,QACP,MAAO,OACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,gFACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,UACR,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,yCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,UACP,MAAO,UACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,+HACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,IACL,KAAM,KACN,MAAO,OACP,MAAO,UACR,CACD,EACA,SAAU,CACT,QAAS,OACT,YAAa,4FACb,YAAa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mB,EACpB,EACA,SAAU,WACV,YAAa,0EACb,iBAAkB,GAClB,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,sBACb,GAAI,CACH,KAAM,QACN,MAAO,OACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,kBACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,wDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,6CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,YACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,UAAWC,GACX,YAAa,kCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,wDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,6DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,gEACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,cAAe,CACd,QAAS,GACT,YAAa,8DACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,iBACP,MAAO,WACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,K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AM,IACN,MAAO,WACP,MAAO,OACR,CACD,EACA,aAAc,CACb,QAAS,EACT,YAAa,yFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,gBACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,yFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,UAAW,CACV,QAAS,IACT,YAAa,mEACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,4EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,oDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,OACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,mDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,aACP,MAAO,SACR,CACD,EACA,YAAa,CACZ,QAAS,EACT,YAAa,2EACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,eACP,MAAO,SACR,CACD,EACA,UAAW,CACV,QAAS,GACT,YAAa,+CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACR,CACD,EACA,WAAY,CACX,QAAS,GACT,YAAa,sFACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,cACP,MAAO,SACR,CACD,EACA,KAAM,CACL,QAAS,GACT,YAAa,sEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,OACP,MAAO,SACR,CACD,EACA,aAAc,CACb,QAAS,IACT,YAAa,sCACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,gBACP,MAAO,SACR,CACD,EACA,MAAO,CACN,QAAS3C,IACT,YAAa,wCACb,GAAI,CACH,KAAM,QACN,MAAO,QACP,MAAO,OACR,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,GACb,YAAa,sCACd,EACA,UAAW,CACV,QAAS,GACT,YAAa,GACb,YAAa,uBACd,CACD,EACA,GAAG4C,GAAc,CAChB,QAAS,MACT,QAAS,CAACC,EAAOC,IAAW,CAC3B,GAAM,CAAE,SAAUC,CAAE,EAAID,EAClBE,EAAIC,GAAaH,CAAM,EACvBI,EAAML,EAAM,WACZM,EAAQC,GAAaP,EAAOC,EAAQ,CAAE,MAAOC,EAAE,KAAM,CAAC,EACtD,CAAE,IAAAM,EAAK,IAAAC,CAAI,EAAIH,EACfI,EAAQC,GAAUT,EAAE,WAAY,OAAO,EACvC9B,EAAKsC,EAAM,OAAO,GAAG,EACrBrC,EAAKqC,EAAM,OAAO,GAAG,EACrBE,EAAMD,GAAUT,EAAE,YAAa,KAAK,EACpC5B,EAAOsC,EAAI,OAAO,GAAG,EACrBrC,EAAOqC,EAAI,OAAO,GAAG,EACrBC,EAAOC,GAAWR,CAAK,EACzBS,EACJ,GAAIV,EAAKU,EAAOC,GAAcV,CAAK,MAC9B,CACJ,IAAMW,GAAWzD,EAAMI,EAAIc,GAAI,EAAGG,GAAMqC,GAAItD,EAAI4C,EAAK,EAAE,EAAG,GAAG,EAAG,EAAG,CAAC,CAAC,EAAG,GAAG,EAAG,UAAU,EACxFO,EAAOvD,EAAM2D,GAAUpC,GAAKnB,EAAIiD,EAAK,OAAO,GAAG,EAAGI,EAAQ,EAAGrD,EAAIiD,EAAK,OAAO,GAAG,EAAGI,EAAQ,EAAG,EAAE,CAAC,EAAG,MAAM,CAC3G,CACA,IAAMG,EAAMC,GAAerB,EAAOM,CAAK,EACjCgB,EAAKF,EAAI,OAAO,GAAG,EACnBG,EAAKH,EAAI,OAAO,GAAG,EACnBI,EAAOhE,EAAMI,EAAIsC,EAAE,UAAW,GAAG,EAAG,MAAM,EAC1CuB,EAAQjE,EAAMI,EAAIuC,EAAG,EAAE,EAAG,OAAO,EACjCuB,EAAIlE,EAAMM,GAAKF,EAAIA,EAAI0D,EAAIE,CAAI,EAAG,EAAE,EAAG5D,EAAIA,EAAI2D,EAAIC,CAAI,EAAG,IAAI,CAAC,EAAG,GAAG,EACrEG,EAAO/D,EAAIsC,EAAE,MAAO,EAAE,EACtB0B,EAAKpE,EAAMK,EAAIA,EAAI6D,EAAG9D,EAAIiE,GAASjE,EAAI8D,EAAG,EAAE,EAAGD,CAAK,EAAGE,CAAI,CAAC,EAAG7D,GAAK,EAAGF,EAAI6D,EAAO,EAAE,CAAC,CAAC,EAAG,IAAI,EAC7FK,EAAK,IACLC,EAAKvE,EAAMJ,GAASwE,EAAI,OAAO,EAAG,IAAI,EACtCI,EAAOxE,EAAMQ,GAAY4D,CAAE,EAAG,MAAM,EACpCK,EAAKpD,GAAMqC,GAAIxC,GAAIV,GAAYH,EAAI+D,EAAI9D,GAAKgE,EAAI,CAAC,CAAC,CAAC,EAAGE,CAAI,EAAGF,CAAE,EAAG,GAAI,CAAC,EACvEI,EAAKrD,GAAMqC,GAAIxC,GAAIV,GAAYH,EAAI+D,EAAI9D,GAAK,EAAGgE,CAAE,CAAC,CAAC,EAAGE,CAAI,EAAGF,CAAE,EAAG,GAAI,CAAC,EACvEK,EAAS,KACTC,EAAK5E,EAAMK,EAAIA,EAAID,EAAIgE,EAAI,GAAG,EAAG9D,GAAKF,EAAI6D,EAAO,GAAG,EAAG7D,EAAI6D,EAAO,KAAK,CAAC,CAAC,EAAG3D,GAAK,KAAM,GAAG,CAAC,EAAG,IAAI,EAClGuE,EAAO7E,EAAMQ,GAAYoE,CAAE,EAAG,MAAM,EACpCE,EAAMzD,GAAMqC,GAAIxC,GAAIV,GAAYH,EAAIuE,EAAItE,GAAKqE,EAAQ,CAAC,CAAC,CAAC,EAAGE,CAAI,EAAGF,CAAM,EAAG,GAAI,CAAC,EAChFI,EAAM1D,GAAMqC,GAAIxC,GAAIV,GAAYH,EAAIuE,EAAItE,GAAK,EAAGqE,CAAM,CAAC,CAAC,EAAGE,CAAI,EAAGF,CAAM,EAAG,GAAI,CAAC,EAChFK,GAAShF,EAAMI,EAAIsC,EAAE,WAAY,EAAE,EAAG,QAAQ,EAC9CuC,GAAajF,EAAMI,EAAIsC,EAAE,WAAY,GAAG,EAAG,YAAY,EACvDwC,GAAIlF,EAAM2D,GAAUpC,GAAKL,GAAIA,GAAIqC,EAAK,OAAO,GAAG,EAAGnD,EAAIqE,EAAIO,EAAM,CAAC,EAAG5E,EAAI0E,EAAKG,EAAU,CAAC,EAAG/D,GAAIA,GAAIqC,EAAK,OAAO,GAAG,EAAGnD,EAAIsE,EAAIM,EAAM,CAAC,EAAG5E,EAAI2E,EAAKE,EAAU,CAAC,EAAG1B,EAAK,OAAO,GAAG,CAAC,CAAC,EAAG,GAAG,EACtLvC,GAAQhB,EAAMqB,GAAMqB,EAAE,UAAW,EAAG,CAAC,EAAG,OAAO,EAC/CyC,GAAInF,EAAMoF,GAAQ7D,GAAK,EAAG,EAAG,CAAC,EAAG2D,EAAC,EAAG,GAAG,EACxCG,GAAUrF,EAAMI,EAAIK,GAAS0E,GAAE,OAAO,GAAG,EAAGA,GAAE,OAAO,GAAG,EAAGvE,EAAIC,EAAIC,EAAMC,EAAMC,GAAO,MAAM,EAAG0B,EAAE,UAAU,EAAG,SAAS,EACvH4C,GAAYtF,EAAMI,EAAImF,GAAiBzC,EAAON,CAAK,EAAGE,EAAE,KAAK,EAAG,WAAW,EAC3E8C,GAASxF,EAAMqB,GAAMjB,EAAIkF,GAAW,GAAG,EAAG,EAAG,CAAC,EAAG,QAAQ,EACzDG,GAAKzF,EAAM0C,EAAE,WAAW,OAAO,KAAK,EAAG,IAAI,EAC3CgD,GAAW1F,EAAM2F,GAAYL,GAAW/D,GAAKnB,EAAIc,GAAI,EAAGuE,GAAG,OAAO,GAAG,CAAC,EAAG,GAAG,EAAGrF,EAAIc,GAAI,EAAGuE,GAAG,OAAO,GAAG,CAAC,EAAG,GAAG,EAAGrF,EAAIc,GAAI,EAAGuE,GAAG,OAAO,GAAG,CAAC,EAAG,GAAG,CAAC,CAAC,EAAG,UAAU,EAC/JG,GAAYvE,GAAMqB,EAAE,SAAU,EAAG,CAAC,EAClCmD,GAAW7F,EAAMK,EAAID,EAAIsB,GAAIA,GAAI+D,GAAIlE,GAAK,EAAG,EAAG,CAAC,EAAGI,GAAOiE,EAAS,CAAC,EAAGH,GAAI9D,GAAO6D,EAAM,CAAC,EAAGE,EAAQ,EAAGtF,EAAIqF,GAAIrF,EAAIoF,GAAQ,GAAG,CAAC,CAAC,EAAG,UAAU,EAC9IM,GAAKC,GAAW7C,EAAO,GAAG,EAC1B8C,GAAUhG,EAAMK,EAAID,EAAI6F,GAAI5E,GAAMhB,EAAID,EAAI8F,GAAIhB,GAAGY,GAAG,OAAO,GAAG,CAAC,EAAG,EAAE,EAAG,EAAE,EAAG,EAAG,CAAC,EAAG,EAAE,EAAG,EAAE,EAAG,EAAE,EAAG,SAAS,EAC3GK,GAAOnG,EAAMoG,GAAQ7E,GAAK,EAAG,EAAG,CAAC,EAAG2D,GAAGmB,GAAM,EAAI,KAAK,CAAC,EAAG,MAAM,EAChEC,GAAWlG,EAAIK,GAAS0F,GAAK,OAAO,GAAG,EAAGA,GAAK,OAAO,GAAG,EAAGvF,EAAIC,EAAIC,EAAMC,EAAMC,GAAO,OAAO,EAAG0E,EAAQ,EACzGa,GAAWnG,EAAIiB,GAAMqB,EAAE,QAAS,EAAG,CAAC,EAAGxB,GAAI,EAAGd,EAAIoF,GAAQ,EAAE,CAAC,CAAC,EAC9DgB,GAAQpG,EAAIsB,GAAImE,GAAUxF,EAAID,EAAIkG,GAAU,EAAE,EAAGlG,EAAIyF,GAAU,EAAE,CAAC,EAAGlE,GAAO4E,EAAQ,CAAC,EAAGP,EAAO,EAC/FS,GAAQzG,EAAMI,EAAIuC,EAAG,CAAC,EAAG,OAAO,EAChC+D,GAAQ1G,EAAMK,EAAID,EAAIE,GAAKwD,EAAIC,CAAE,EAAGrB,EAAE,YAAY,EAAGpC,GAAKF,EAAIuG,GAAIvG,EAAIqG,GAAO,GAAG,CAAC,EAAG,EAAE,EAAGrG,EAAIA,EAAIqG,GAAO,EAAE,EAAG,EAAE,CAAC,CAAC,EAAG,OAAO,EAC3HG,GAAK1F,GAAI,EAAG2F,GAAIjH,GAAS8G,GAAO,OAAO,CAAC,CAAC,EACzCI,GAAK5F,GAAI,EAAG2F,GAAIjH,GAASS,EAAID,EAAIsG,GAAO,GAAG,EAAGpG,GAAK,IAAKF,EAAIA,EAAIqG,GAAO,GAAG,EAAG,EAAE,CAAC,CAAC,EAAG,OAAO,CAAC,CAAC,EAC7FM,GAAQ/G,EAAMiG,GAAI5E,GAAMhB,EAAID,EAAIwG,GAAI,EAAE,EAAGxG,EAAI0G,GAAI,EAAE,CAAC,EAAG,EAAG,CAAC,EAAG,CAAC,EAAG,OAAO,EACzEE,GAAWhH,EAAMI,EAAIC,EAAID,EAAIoF,GAAQ,EAAE,EAAG,EAAE,EAAG9C,EAAE,QAAQ,EAAG,UAAU,EACtEuE,GAAWvF,GAAIrB,EAAID,EAAIoG,GAAOnG,EAAI,EAAGD,EAAIA,EAAI2G,GAAOC,EAAQ,EAAG,EAAE,CAAC,CAAC,EAAG5G,EAAImB,GAAK,IAAK,IAAK,CAAC,EAAGnB,EAAIA,EAAI2G,GAAOC,EAAQ,EAAG,GAAG,CAAC,CAAC,EAAG3B,GAAS1D,GAAON,GAAM6F,GAAeC,GAAYjC,EAAC,EAAG,CAAE,KAAM,GAAI,CAAC,EAAG,EAAG,CAAC,CAAC,CAAC,EAC1MkC,GAAOC,GAAWhG,GAAM6E,GAAIhB,GAAGY,GAAG,OAAO,GAAG,CAAC,EAAG,EAAG,CAAC,EAAG9E,GAAOsG,GAAK,GAAI,IAAK,GAAI,GAAG,CAAC,EACpFC,GAAWlH,EAAI4G,GAAU7G,EAAImB,GAAK,EAAG,IAAK,GAAG,EAAG6F,EAAI,CAAC,EACrDI,GAAWxH,EAAMI,EAAIiB,GAAMhB,EAAIuB,GAAW,IAAK,IAAKP,GAAMhB,EAAID,EAAImE,EAAI,EAAE,EAAG,EAAE,EAAG,EAAG,CAAC,CAAC,EAAGnE,EAAIc,GAAI,EAAGU,GAAW,EAAG,KAAMxB,EAAI4C,EAAK,EAAE,CAAC,CAAC,EAAG,EAAE,CAAC,EAAG,EAAG,CAAC,EAAGN,EAAE,IAAI,EAAG,UAAU,EACvK+E,GAAWzH,EAAM0B,GAAI6F,GAAUhG,GAAK,EAAG,EAAG,CAAC,EAAGI,GAAOvB,EAAIoH,GAAU,GAAG,CAAC,CAAC,EAAG,UAAU,EACrFE,GAAaC,GAAW7E,EAAOJ,EAAE,YAAY,EACnD,OAAOkF,GAAQC,GAAY7E,EAAKC,CAAG,EAAGqE,GAAKG,GAAUC,EAAU,EAAGI,GAAM,OAAO,CAChF,CACD,CAAC,CACF,CAAC,EC9WD,IAAIC,GAAMC,GAAU,CAAE,OAAQC,EAAE,OAAO,CAAE,CAAC,EACpCC,GAAsBC,EAAU,CACrC,KAAM,aACN,KAAM,SACN,QAAS,SACT,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,yGACb,MAAO,CACN,OAAQ,CACP,QAAS,EACT,YAAa,GACb,YAAa,uDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,EACN,MAAO,QACP,MAAO,SACP,OAAQ,EACT,CACD,EACA,MAAO,CACN,QAAS,EACT,UAAWC,GAAQ,CAAC,EACpB,YAAa,wDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,UAAWA,GAAQ,CAAC,EACpB,YAAa,0EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,IACT,UAAWA,GAAQ,CAAC,EACpB,YAAa,uDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,UACT,UAAWC,GACX,YAAa,0BACb,GAAI,CACH,KAAM,QACN,MAAO,cACP,MAAO,QACR,CACD,CACD,EACA,OAAQC,GAAK,CACZ,GAAIP,GACJ,MAAOQ,GAAS,CACf,GAAIR,GACJ,OAAQE,EAAE,QAAQ,CACnB,CAAC,EACD,MAAOO,GAAW,CAAE,OAAQP,EAAE,OAAO,CAAE,CAAC,EACxC,MAAOA,EAAE,OAAO,EAChB,WAAYA,EAAE,YAAY,EAC1B,SAAUA,EAAE,UAAU,CACvB,CAAC,CACF,CAAC,ECtFD,IAAMQ,GAAsBC,EAAU,CACrC,KAAM,iBACN,KAAM,OACN,SAAU,cACV,YAAa,qDACb,uBAAwB,CAAE,YAAa,IAAK,EAC5C,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,SAAU,CACT,QAAS,GACT,YAAa,uBACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,wBACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,GACL,KAAM,GACN,MAAO,YACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,kBACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,WACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,0CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,OACT,YAAa,+BACb,YAAa,GACb,UAAYC,IACJ,CACN,KAAQ,EACR,SAAY,EACZ,OAAU,EACV,SAAY,EACZ,OAAU,CACX,GAAEA,CAAK,GAAK,EAEb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,SACP,MAAO,QACR,EACA,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,YACP,MAAO,QACR,CACD,EACA,MAAOC,GAAgB,UAAW,kEAAkE,CACrG,EACA,IAAKC,GAAK,CACT,SAAUC,EAAE,UAAU,EACtB,UAAWA,EAAE,WAAW,EACxB,MAAOA,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,CACvB,CAAC,EACD,oBAAqB,iEACtB,CAAC,ECnGD,IAAIC,IAAW,CACd,CACC,MAAO,CAAC,CACP,EAAG,IACH,EAAG,GACJ,CAAC,EACD,OAAQ,GACT,EACA,CACC,MAAO,CAAC,CACP,EAAG,IACH,EAAG,IACJ,EAAG,CACF,EAAG,IACH,EAAG,EACJ,CAAC,EACD,OAAQ,GACT,EACA,CACC,MAAO,CAAC,CACP,EAAG,KACH,EAAG,GACJ,CAAC,EACD,OAAQ,GACT,EACA,CACC,MAAO,CAAC,CACP,EAAG,KACH,EAAG,IACJ,EAAG,CACF,EAAG,IACH,EAAG,GACJ,CAAC,EACD,OAAQ,GACT,EACA,CACC,MAAO,CAAC,CACP,EAAG,KACH,EAAG,GACJ,CAAC,EACD,OAAQ,GACT,EACA,CACC,MAAO,CAAC,CACP,EAAG,MACH,EAAG,IACJ,EAAG,CACF,EAAG,IACH,EAAG,GACJ,CAAC,EACD,OAAQ,GACT,CACD,EACIC,IAAa,GACbC,IAAmB,EACnBC,IAAc,IACdC,IAAc,GACdC,GAAY,KACZC,GAAc,CACjB,KAAM,EACN,KAAM,EACN,KAAM,EACN,KAAM,CACP,EACIC,GAAc,CACjB,SAAU,EACV,IAAK,EACL,OAAQ,CACT,EACIC,IAAWC,GACV,OAAOA,GAAQ,SAAiB,OAAO,KAAKH,EAAW,EAAEG,CAAG,GAAK,OAC9DA,IAAQ,QAAUA,IAAQ,QAAUA,IAAQ,OAASA,EAAM,OAE/DC,IAAWD,GACV,OAAOA,GAAQ,SAAiB,OAAO,KAAKF,EAAW,EAAEE,CAAG,GAAK,WAC9DA,IAAQ,OAASA,IAAQ,SAAWA,EAAM,WAE5CE,GAAsBC,EAAU,CACrC,KAAM,WACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,gMACb,iBAAkB,GAClB,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,MAAO,CACN,QAAS,OACT,UAAYC,GAAUP,GAAYO,CAAK,GAAK,EAC5C,YAAa,GACb,YAAa,kGACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,OACP,MAAO,MACR,EACA,CACC,MAAO,OACP,MAAO,MACR,CACD,EACA,MAAO,QACP,MAAO,OACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,qBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,mBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,MAAOC,GAAqB,EAC5B,WAAY,CACX,QAAS,QACT,UAAWC,GACX,YAAa,GACb,YAAa,8CACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,CACR,EAAG,EACH,EAAG,EACJ,EACA,UAAWC,GACX,YAAa,0CACb,GAAI,CACH,KAAM,WACN,MAAO,QACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,GAAI,CACH,QAAS,CACR,EAAG,EACH,EAAG,EACJ,EACA,UAAWA,GACX,YAAa,wCACb,GAAI,CACH,KAAM,WACN,MAAO,MACP,MAAO,WACP,MAAO,CAAC,IAAK,IAAI,CAClB,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,iHACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,UAAW,CACV,QAAS,EACT,YAAa,gEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,GACT,YAAa,6EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,WACT,UAAYL,GAAUN,GAAYM,CAAK,GAAK,EAC5C,YAAa,GACb,YAAa,4HACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,WACP,MAAO,UACR,EACA,CACC,MAAO,MACP,MAAO,KACR,EACA,CACC,MAAO,SACP,MAAO,QACR,CACD,EACA,MAAO,QACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,mDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,QACP,MAAO,SACP,UAAW,CAAE,MAAO,CAAC,OAAQ,MAAM,CAAE,CACtC,CACD,EACA,SAAU,CACT,QAAS,GACT,YAAa,6DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,YACP,MAAO,SACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,2DACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,SACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,QAAS,CACR,QAAS,GACT,YAAa,yCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,GACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,SACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,UAAW,CACV,QAAS,KACT,YAAa,8EACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,KACL,IAAK,IACL,KAAM,KACN,MAAO,aACP,MAAO,SACP,YAAa,gBACb,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,uCACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,WACP,MAAO,SACP,UAAW,CAAE,MAAO,MAAO,CAC5B,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,0CACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,QACP,MAAO,WACR,CACD,EACA,KAAM,CACL,QAAS,EACT,YAAa,mDACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,OACP,MAAO,WACR,CACD,CACD,EACA,MAAQM,GAAW,CAClB,IAAMC,EAAQZ,IAAQW,EAAO,WAAW,KAAK,EACvCE,EAAQX,IAAQS,EAAO,WAAW,KAAK,EACvC,CAAE,SAAAG,CAAS,EAAIC,GAAUJ,CAAM,EAC/BK,EAAKC,GAASC,GAAUC,EAAEF,CAAI,EAAGN,CAAM,EACvC,CAAE,MAAAS,EAAO,OAAAC,EAAQ,OAAAC,CAAO,EAAIC,GAAa,CAC9C,KAAMJ,EAAE,MAAM,EACd,GAAIA,EAAE,IAAI,CACX,CAAC,EAAER,EAAQI,GAAUJ,CAAM,CAAC,EACtBa,EAAIC,EAAMC,GAAIN,EAAOE,CAAM,EAAG,KAAK,EACnCK,EAAKF,EAAMC,GAAI,EAAGZ,EAAS,OAAO,GAAG,CAAC,EAAG,MAAM,EAC/Cc,EAAIH,EAAMI,GAAalB,EAAQ,MAAM,EAAG,QAAQ,EAChDmB,EAAYd,EAAE,WAAW,EACzBe,EAAYf,EAAE,WAAW,EACzBgB,EAAShB,EAAE,QAAQ,EACnBiB,EAASC,GAAOC,GAAM,CAC3B,EAAGC,EAAIF,EAAIH,CAAS,EACpB,EAAAH,CACD,EAAGpC,GAAQ,EACL6C,EAAcH,GAAOI,GAAI7C,IAAY,EAAG8C,GAAUC,GAAIN,EAAI,EAAE,EAAGxC,GAAgB,CAAC,EAChF+C,EAAYP,GAAOQ,GAAMN,EAAIA,EAAIH,EAAMC,CAAE,EAAGG,EAAWH,CAAE,CAAC,EAAGJ,CAAS,EAAG,GAAI,CAAC,EAC9Ea,EAAWT,GAAOQ,GAAMN,EAAIA,EAAIQ,EAAIjD,IAAayC,EAAIH,EAAMC,CAAE,EAAGtC,GAAW,CAAC,EAAGyC,EAAWH,CAAE,CAAC,EAAGJ,CAAS,EAAG,EAAG,CAAC,EAChHe,EAAWhC,IAAU,WACrBiC,EAAKrB,EAAMZ,IAAU,MAAQkC,GAAI1B,CAAM,EAAIA,EAAQ,MAAM,EACzD2B,EAAOH,EAAWI,GAAIH,CAAE,EAAIA,EAC5BI,EAAYC,GAAUf,EAAIA,EAAIe,EAAOnB,CAAM,EAAGa,EAAW,GAAK,CAAC,EAC/DO,EAAgBC,GAAWR,EAAWL,GAAIQ,EAAMK,CAAM,EAAIC,GAAId,GAAIQ,EAAMK,CAAM,EAAGN,GAAIC,CAAI,CAAC,EAC1FO,EAAQvC,EAAE,OAAO,EACjBwC,EAAO/B,EAAMC,GAAIJ,EAAQiC,CAAK,EAAG,QAAQ,EACzCE,EAAShC,EAAMW,EAAIZ,EAAG+B,CAAK,EAAG,UAAU,EACxCG,EAAUjC,EAAMC,GAAIkB,EAAIe,GAAMF,CAAM,EAAG,EAAE,EAAGF,CAAK,EAAG,QAAQ,EAC5DK,EAAenC,EAAMW,EAAII,GAAIqB,GAAMJ,CAAM,EAAG,EAAE,EAAGD,CAAI,EAAG,SAAS,EACnEM,EACJ,GAAIlD,IAAU,OAAQ,CACrB,IAAMmD,EAAQtC,EAAMW,EAAIA,EAAIpB,EAAE,UAAU,EAAGwC,CAAI,EAAG,EAAE,EAAG,SAAS,EAC1DH,EAAS5B,EAAM6B,GAAIJ,EAASP,EAAQe,CAAO,CAAC,EAAGb,EAAWkB,EAAQ3B,EAAI2B,EAAO,CAAC,CAAC,EAAG,UAAU,EAC5FC,EAAQnB,EAAWQ,EAASjB,EAAIiB,EAAQ,EAAE,EAChDS,EAAWG,GAAU,CACpB,SAAUC,GAAYN,EAAcf,EAAWC,EAAKN,GAAIM,EAAIkB,CAAK,EAAGD,EAAOC,EAAO5B,EAAIpB,EAAE,UAAU,EAAG+C,CAAK,CAAC,EAC3G,UAAWpC,CACZ,CAAC,CACF,SAAWf,IAAU,OAAQ,CAC5B,IAAMuD,EAAO1C,EAAMC,GAAIsB,EAAMQ,CAAI,EAAG,QAAQ,EACtCY,EAAY3C,EAAMW,EAAIQ,EAAIe,GAAMQ,CAAI,EAAG,EAAE,EAAGX,CAAI,EAAG,QAAQ,EAC3DH,EAAS5B,EAAMyB,EAASP,EAAQe,CAAO,CAAC,EAAG,UAAU,EACrDW,GAAMjC,EAAII,GAAI,EAAG8B,GAAW9B,GAAIa,EAAQjB,EAAIoB,EAAM,EAAE,CAAC,EAAGZ,EAAIS,EAAQjB,EAAIoB,EAAM,EAAE,CAAC,EAAGY,CAAS,CAAC,EAAGvB,EAAW,EAAI0B,GAAK,EAAGvB,CAAI,CAAC,EAC7HwB,GAASpC,EAAIA,EAAIpB,EAAE,SAAS,EAAGwC,CAAI,EAAG,EAAE,EAC9CM,EAAW1B,EAAI6B,GAAU,CACxB,SAAUQ,GAAOb,EAAcxB,EAAII,GAAIqB,GAAMM,CAAI,EAAG,EAAE,EAAGX,CAAI,EAAGgB,EAAM,EACtE,UAAW7C,CACZ,CAAC,EAAG0C,EAAG,CACR,SAAWzD,IAAU,OAAQ,CAC5B,IAAM8D,EAAWxC,IAAkBgB,EAAXL,EAAoBJ,EAASP,EAAE,EAAcS,EAAQT,EAAE,CAAvB,EAClDyC,EAAQlD,EAAMiD,EAAQlD,CAAC,EAAG,SAAS,EACnCoD,EAAQnD,EAAMC,GAAIc,GAAIkC,EAAQ9B,EAAIpB,EAAG3B,EAAS,CAAC,EAAG6E,EAAQlC,GAAIhB,EAAG3B,EAAS,CAAC,CAAC,EAAGuC,EAAI,EAAIvC,GAAWyB,CAAM,CAAC,EAAG,SAAS,EAC3HwC,EAAWe,GAAY,CACtB,SAAUnD,GAAIc,GAAIM,EAAI6B,CAAK,EAAGG,GAAKlC,EAAI,EAAGR,EAAIwC,EAAOA,CAAK,CAAC,CAAC,CAAC,EAC7D,MAAO5D,EAAE,WAAW,EACpB,UAAWW,CACZ,CAAC,CACF,MAAOmC,EAAWG,GAAU,CAC3B,SAAUb,EAAa3B,EAAMyB,EAASP,EAAQnB,CAAC,CAAC,EAAG,UAAU,CAAC,EAC9D,UAAWoB,EAAIjB,EAAIS,EAAIpB,EAAE,UAAU,EAAG,EAAE,CAAC,CAC1C,CAAC,EACD,IAAM+D,EAASd,GAAU,CACxB,SAAUX,GAAIP,GAAI3B,CAAK,EAAGoB,GAAIpB,EAAOE,CAAM,CAAC,EAC5C,UAAWK,CACZ,CAAC,EACKqD,EAAQvD,EAAMwD,GAAM9D,EAAE,YAAY,CAAC,EAAEK,EAAGb,CAAM,EAAG,SAAS,EAChE,OAAOuE,GAAKF,EAAM,OAAO,KAAK,EAAG5C,EAAIA,EAAI4C,EAAM,OAAO,GAAG,EAAGlB,CAAQ,EAAGiB,CAAM,CAAC,CAC/E,CACD,CAAC,ECpaD,IAAMI,GAAsBC,EAAU,CACrC,KAAM,eACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,uDACb,iBAAkB,GAClB,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,GAAGC,GAAgB,EACnB,MAAO,CACN,QAAS,IACT,YAAa,2CACb,GAAI,CACH,KAAM,QACN,IAAK,GACL,IAAK,EACL,KAAM,GACN,MAAO,QACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,KACT,YAAa,qEACb,GAAI,CACH,KAAM,QACN,IAAK,KACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,GAAGC,GAAe,EAClB,GAAGC,GAAe,CACnB,EACA,MAAOC,GAASC,GAAUC,GAAYC,GAASC,GAAa,CAAE,OAAQC,EAAE,QAAQ,CAAE,CAAC,CAAC,EAAG,CACtF,MAAOA,EAAE,OAAO,EAChB,KAAMA,EAAE,MAAM,CACf,CAAC,EAAG,CACH,SAAUA,EAAE,UAAU,EACtB,QAASA,EAAE,SAAS,CACrB,CAAC,EAAGC,GAAMD,EAAE,YAAY,CAAC,CAAC,CAC3B,CAAC,EChDD,IAAME,GAAsBC,EAAU,CACrC,KAAM,QACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,0FACb,iBAAkB,GAClB,MAAO,CACN,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,0BACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,wBACb,GAAI,CACH,KAAM,QACN,MAAO,UACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,GACT,YAAa,oDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,EACN,MAAO,QACP,MAAO,QACR,CACD,EACA,IAAK,CACJ,QAAS,IACT,YAAa,sDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,IACN,MAAO,MACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,2CACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,IACL,KAAM,EACN,MAAO,WACP,MAAO,QACR,CACD,CACD,EACA,MAAOC,GAAa,CACnB,MAAOC,GAAU,CAChB,MAAOC,EAAE,OAAO,EAChB,SAAUA,EAAE,UAAU,EACtB,WAAY,OACb,CAAC,EACD,IAAKA,EAAE,KAAK,EACZ,OAAQ,CAACA,EAAE,QAAQ,EAAGA,EAAE,QAAQ,CAAC,CAClC,CAAC,CACF,CAAC,EC9ED,IAAMC,GAAsBC,EAAU,CACrC,KAAM,gBACN,KAAM,QACN,QAAS,SACT,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,gEACb,iBAAkB,GAClB,eAAgB,CAAE,MAAO,QAAS,EAClC,MAAO,CACN,UAAWC,GAAc,QAAS,0DAA2D,CAAE,UAAW,EAAK,CAAC,EAChH,OAAQ,CACP,QAAS,GACT,YAAa,oDACb,GAAI,CACH,KAAM,WACN,MAAO,SACP,MAAO,QACR,CACD,CACD,EACA,GAAGC,GAAY,CACd,IAAKC,EAAE,WAAW,EAClB,OAAQA,EAAE,QAAQ,EAClB,OAAQ,wBACR,YAAa,CACZ,MAAO,CACN,MAAO,CAAE,MAAO,IAAK,EACrB,OAAQ,CAAE,MAAO,GAAI,EACrB,WAAY,MACb,EACA,MAAO,EACR,EACA,eAAgB,SAChB,QAAUC,GAAU,CACfA,aAAiB,aAAkBA,EAAM,OAAS,kBAAmB,QAAQ,MAAM,kDAAkD,EAChIA,EAAM,OAAS,gBAAiB,QAAQ,MAAM,gDAAgD,EAC9FA,EAAM,OAAS,mBAAoB,QAAQ,MAAM,iEAAiE,EACtH,QAAQ,MAAM,gCAAiCA,EAAM,OAAO,EAC5D,QAAQ,MAAM,0CAA2CA,CAAK,CACpE,CACD,CAAC,CACF,CAAC,EC5CD,IAAMC,GAAsBC,EAAU,CACrC,KAAM,OACN,KAAM,SACN,QAAS,SACT,YAAa,GACb,cAAe,GACf,uBAAwB,CAAE,YAAa,IAAK,EAC5C,SAAU,UACV,YAAa,+EACb,MAAOC,GAAmB,CACzB,UAAW,GACX,MAAO,EACP,SAAU,IACV,WAAY,GACb,CAAC,EACD,IAAK,CAAE,SAAUC,GAAYC,GAAY,IAAI,CAAE,CAChD,CAAC,EChBD,IAAMC,GAAsBC,EAAU,CACrC,KAAM,cACN,KAAM,YACN,uBAAwB,CACvB,YAAa,KACb,kBAAmB,EACpB,EACA,SAAU,WACV,YAAa,uGACb,iBAAkB,GAClB,aAAc,CAAE,MAAO,OAAQ,EAC/B,MAAO,CACN,OAAQ,CACP,QAAS,UACT,UAAWC,GACX,YAAa,mEACb,GAAI,CACH,KAAM,QACN,MAAO,gBACP,MAAO,QACR,CACD,EACA,OAAQ,CACP,QAAS,UACT,UAAWA,GACX,YAAa,uEACb,GAAI,CACH,KAAM,QACN,MAAO,iBACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,SACT,UAAWC,GACX,YAAa,GACb,YAAa,sCACb,GAAI,CACH,KAAM,SACN,QAASC,GACT,MAAO,cACP,MAAO,QACR,CACD,EACA,MAAO,CACN,QAAS,EACT,YAAa,uDACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,GACL,KAAM,GACN,MAAO,QACP,MAAO,QACR,CACD,EACA,KAAM,CACL,QAAS,KACT,UAAWC,GACX,YAAa,GACb,YAAa,wHACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,aACP,MAAO,IACR,EACA,CACC,MAAO,mBACP,MAAO,IACR,EACA,CACC,MAAO,uBACP,MAAO,WACR,EACA,CACC,MAAO,UACP,MAAO,UACR,EACA,CACC,MAAO,aACP,MAAO,WACR,CACD,EACA,MAAO,OACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,YACT,UAAWC,GACX,YAAa,GACb,YAAa,qFACb,GAAI,CACH,KAAM,SACN,QAAS,CACR,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,YACP,MAAO,WACR,EACA,CACC,MAAO,YACP,MAAO,WACR,CACD,EACA,MAAO,WACP,MAAO,QACR,CACD,EACA,QAAS,CACR,QAAS,EACT,YAAa,GACb,YAAa,iEACb,GAAI,CACH,KAAM,QACN,IAAK,EACL,IAAK,EACL,KAAM,EACN,MAAO,UACP,MAAO,QACR,CACD,EACA,WAAY,CACX,QAAS,EACT,YAAa,kEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,IACL,IAAK,EACL,KAAM,GACN,MAAO,aACP,MAAO,SACP,UAAW,CAAE,QAAS,CACrB,EACA,EACA,CACD,CAAE,CACH,CACD,EACA,YAAa,CACZ,QAAS,GACT,YAAa,sEACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,cACP,MAAO,SACP,UAAW,CAAE,QAAS,CACrB,EACA,EACA,CACD,CAAE,CACH,CACD,EACA,OAAQ,CACP,QAAS,EACT,YAAa,qGACb,GAAI,CACH,KAAM,CAAC,QAAS,KAAK,EACrB,IAAK,EACL,IAAK,EACL,KAAM,IACN,MAAO,SACP,MAAO,QACR,CACD,EACA,SAAU,CACT,QAAS,EACT,YAAa,yDACb,GA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","names":["GpuUnavailableError","reason","message","options","isGpuUnavailableError","error","debugOverride","setShadersDebug","enabled","isShadersDebug","flag","debugWarn","args","debugError","isWebGPUSupported","probeCache","getWebGPUSupport","PAGE_WIDE_REASONS","gpuUnusableReason","markGpuUnusable","getGpuUnusableReason","multiplyMatrices","A","B","m$1","x","p$1","B_cols","_","i","product","row","col","ret","c$1","isString","str","type","o","serializeNumber","n$2","precision","unit","isNone","toPrecision","skipNone","integer","digits","multiplier","angleFactor","parseFunction","isFunctionRegex","isNumberRegex","unitValueRegex","singleArgument","parts","args","$0","rawArg","match","arg","unitlessArg","last","arr","interpolate","start","end","interpolateInv","value","mapRange","from","to$1","parseCoordGrammar","coordGrammars","coordGrammar$1","type$1","range$1","clamp","min","val","max$1","copySign","spow","base","exp","zdiv","d$1","bisectLeft","lo","hi","mid","util","Hooks","name","callback","first","name$1","env","hooks","defaults","msg","WHITES","getWhite","adapt$2","W1","W2","XYZ","options","noneTypes","coerceCoords","space","format","coords","id","coordMeta","providedType","coordName","fromRange","toRange","parse","meta","alternateId","ids","alpha","ColorSpace","colorSpec","specId","types","didYouMean","registryId","cssId","formatId","color","getColor","ε$7","coords$1","options$1","getPath","epsilon","coord","processFormat","myPath","otherPath","connectionSpace","connectionSpaceIndex","alias","alternatives","ref","workingSpace","coordType","normalizedCoord","coordFormats","outputType","suffix","xyz_d65","RGBColorSpace","rgb","xyz","getAll","get","prop","index","setAll","set","object","XYZ_D50","ε$6","ε3$1","κ$4","white$4","lab","f","Lab","constrain","angle","adjust","arc","angles","a1","a2","angleDiff","lch","L","a$1","b$2","hue","ε$8","LCH","Lightness","Chroma","Hue","Gfactor","π$1","r2d","d2r$1","pow7","x2","deltaE2000","sample","kL","kC","kH","L1","b1","C1","L2","b2","C2","C7","G","adash1","adash2","Cdash1","Cdash2","h1","h2","ΔL","ΔC","hdiff","hsum","habs","Δh","ΔH","Ldash","Cdash","Cdash7","hdash","lsq","SL","SC","T","SH","Δθ","RC","RT","dE","XYZtoLMS_M$1","LMStoXYZ_M$1","LMStoLab_M","LabtoLMS_M","OKLab","OKLab$1","deltaEOK","Δa","Δb","ε$5","inGamut","clone","distance","color1","color2","coords1","coords2","acc","c1$3","c2$3","deltaE76","d2r","deltaECMC","l","H1","H2","C4","F","Yw$1","XYZ_Abs_D65","v","AbsXYZ","b$1","g","n$1","ninv$1","c1$2","c2$2","c3$2","p","pinv","d","d0","XYZtoCone_M","ConetoXYZ_M","ConetoIab_M","IabtoCone_M","Jzazbz","Xa","Ya","Za","Iz","az","bz","Jzazbz$1","Jz","Xm","Ym","jzczhz","jzazbz","jzczhz$1","deltaEJz","Jz1","Cz1","Hz1","Jz2","Cz2","Hz2","ΔJ","c1$1","c2$1","c3$1","m1$1","m2","im1","im2","XYZtoLMS_M","LMStoIPT_M","IPTtoLMS_M","LMStoXYZ_M","ictcp","LMStoICtCp","ICtCp","ICtCptoLMS","LMS","deltaEITP","I1","T1","P1","I2","T2","P2","white$3","adaptedCoef","adaptedCoefInv","tau","cat16","cat16Inv","m1","surroundMap","hueQuadMap","rad2deg","deg2rad$1","adapt$1","fl","unadapt","adapted","constant","cabs","hueQuadrature","h","hp","hii","ei","eii","Hi","t","invHueQuadrature","H","Hp","environment","refWhite","adaptingLuminance","backgroundLuminance","surround","discounting","xyzW","yw","rgbW","k4","rgbAW","viewingConditions$1","fromCam16","cam16$1","hRad","cosh","sinh","Jroot","et","p1","p2","r","toCam16","xyzd65","rgbA","J","Q","C","M","cam16","white$2","ε$4","κ$3","toLstar","y","fromLstar","lstar","fromHct","j","threshold","max_attempts","attempt","last$1","delta","toHct","viewingConditions","hct","hct$1","deg2rad","ucsCoeff","convertUcsAb","hrad","deltaEHCT","t1","t2","deltaEMethods","calcEpsilon","jnd","order","GMAPPRESET","toGamut","method","deltaEMethod","blackWhiteClamp","spaceColor","toGamutCSS","de","clipped","to","channelMeta","channel","mapSpace","coordId","mappedColor","low","high","clipped$1","bounds","COLORS","origin","oklchSpace","origin_OKLCH","white$5","black","clip","_color","destColor","spaceCoords","min$1","max$2","min_inGamut","current","E","chroma","inGamut$1","serialize","customOptions","strAlpha","REC2020Linear","α","β","REC2020","RGB","P3Linear","toXYZ_M$3","fromXYZ_M$3","sRGBLinear","KEYWORDS","coordGrammar","coordGrammarNumber","sRGB","sign","abs","rgba","component","collapse","collapsible","P3","supportsNone","display","fallbackColor","equals","getLuminance","setLuminance","register$2","Color$1","luminance","contrastWCAG21","Y1","Y2","normBG","normTXT","revTXT","revBG","blkThrs","blkClmp","loClip","deltaYmin","scaleBoW","loBoWoffset","scaleWoB","fclamp","Y","linearize","contrastAPCA","background","foreground","S","Sapc","R","lumTxt","lumBg","Ytxt","Ybg","BoW","contrastMichelson","denom","max","contrastWeber","contrastLstar","ε$3","ε3","κ$2","white$1","lab_d65","phi","contrastDeltaPhi","Lstr1","Lstr2","deltaPhiStar","contrast$1","contrastMethods","contrast","algorithm","rest","algorithms","uv","X","Z","xy","sum","register$1","chromaticity","deltaE","lighten","amount","darken","variations","mix","range","steps","colorRange","isRange","maxDeltaE","steps$1","maxSteps","rangeOptions","totalDelta","actualSteps","step","maxDelta","cur","ΔΕ","prev","outputSpace","progression","premultiplied","rangeArgs","θ1","θ2","register","interpolation","HSL","g$1","s","hsl","k","HSV","hsv","hwb","hwb$1","w","A98Linear","a98rgb","ProPhotoLinear","Et","Et2","prophoto","oklch","oklab","oklch$1","white","ε$2","κ$1","U_PRIME_WHITE","V_PRIME_WHITE","Luv","up","vp","Luv$1","u","LCHuv","ε$1","κ","m_r0","m_r1","m_r2","m_g0","m_g1","m_g2","m_b0","m_b1","m_b2","distanceFromOriginAngle","slope","intercept","calculateBoundingLines","sub1","sub2","s1r","s2r","s3r","s1g","s2g","s3g","s1b","s2b","s3b","calcMaxChromaHsluv","lines","hueRad","r0","r1","g0","g1","b0","hsluv","lch$1","distanceFromOrigin","calcMaxChromaHpluv","hpluv","Yw","n","ninv","m","minv","c1","c2","c3","rec2100Pq","a","b","c","scale","rec2100Hlg","CATs","adapt","defineCAT","toCone_M","fromCone_M","ρs","γs","βs","ρd","γd","βd","scaled_cone_M","ACEScg","ε","ACES_min_nonzero","ACES_cc_max","acescc","spaces","Color","code","instance","returns","func","args$1","ret$1","exports","key","addSpaceAccessors","propId","obj","property","receiver","colorSpaceMode","setColorSpaceMode","mode","transformBoolean","parseColorChannels","threeColor","targetSpace","transformColor","transformPosition","parsePositionValue","isVertical","finalY","transformAngle","numMatch","valueStr","numValue","transformEdges","transformStrokePosition","colorSpaceOptions","transformColorSpace","__defProp$1","__export$1","all$1","target","name","polyfillSymbol","hasOperator","value","operator","binOp","a","b","opSymbol","fallback","result","Operator","normalAdd","add$1","normalSub","sub$1","normalMul","mul$1","normalDiv","div$1","normalPow","pow$1","normalMod","mod$1","DEV","TEST","version$1","$internal","$soul","$gpuValueOf","$getNameForward","$providing","$ownSnippet","$resolve","$cast","$gpuCallable","$repr","isMarkedInternal","Void","wgslTypeLiterals","isVecInstance","v","isVecBoolInstance","isVec2","isVec3","isVec4","isVec","isVecBool","isMatInstance","isMat2x2f","isMat3x3f","isMat4x4f","isMat","isInteger","isIntegerVec","isFloat32VecInstance","element","isInteger32VecInstance","isUint32VecInstance","isWgslData","isWgslArray","schema","isWgslStruct","isPtr","isAtomic","isAlignAttrib","isSizeAttrib","isLocationAttrib","isBuiltinAttrib","isDecorated","isVoid","isBool","isNumericSchema","type","isHalfPrecisionSchema","ephemeralTypes","isNaturallyEphemeral","WORKAROUND_getSchema","vec","warningTypes","TgpuLogger","#initialEnabledWarnings","#enabledWarnings","#warned","prod","args","key","tag","warnings","warningId","tgpuLogger","logger","warn","safeStringify","item","asString","error","niceStringify","normalizeExternalsV2","externals","normalizeMetadata","meta","rawExternals","version","globalExt","exp$1","label","isNamable","getName","nameMap","isForwarded","soulOf","definition","setName","soul","metadataMap","getFunctionMetadata","maybeRawMeta","normalized","hasTinyestMetadata","PERF","data","records","entries","prefix","invariant","condition","message","provided","ResolutionError","cause","trace","ancestor","newTrace","ExecutionError","MissingSlotValueError","slot$1","NotUniformError","MissingBindGroupsError","layouts","layout","MissingVertexBuffersError","IllegalVarAccessError","msg","IllegalBufferAccessError","WgslTypeError","SignatureNotSupportedError","actual","candidates","FiniteMathAssumptionError","vertexFormats","kindToDefaultFormatMap","undecorate","isLooseDecorated","unptr","looseTypeLiterals","isLooseData","isDisarray","isUnstruct","getCustomAlignment","getCustomSize","getCustomLocation","isData","UnknownData","MatrixColumnsAccess","matrix","fallthroughCopyOrigin","origin","isAlias","snippet","originToPtrParams","SnippetImpl","dataType","possibleSideEffects","isSnippet","isSnippetNumeric","snip","withDataType","withValue","withSideEffects","noSideEffects","isSlot","isLazy","isProviding","isAccessor","isMutableAccessor","NormalState","CodegenState","SimulationState","buffers","vars","isSelfResolvable","getOwnSnippet","isGPUCallable","hasCast","isKnownAtComptime","isWgsl","isGPUBuffer","isBuffer","isUsableAsUniform","buffer$1","isUsableAsStorage","insideTgpuFn","provideInsideTgpuFn","callback","isInsideTgpuFn","resolutionCtx","provideCtx","ctx","prevCtx","getResolutionCtx","topLevelState","getExecMode","inCodegenMode","stitch","strings","snippets","resolveSnippet","maybeSnippet","i","s","ptrFn","inner","INTERNAL_createPtr","addressSpace","access","implicit","createPtrFromOrigin","innerDataType","ptrParams","implicitFrom","ptr","explicitFrom","_ref","impl","INTERNAL_createRef","typeStr","ptrType","RefOperator","isRef","newValue","target$1","prop","_target","propValue","#ptrType","derefSnippet","innerType","schemaCallWrapper","callSchema","schemaCallWrapperGPU","assertExhaustive$2","x","location$1","accessStructProp","propName","propType","INFINITE_RANK","getAutoConversionRank","src","dest","trueSrc","trueDst","getImplicitConversionRank","primitivePreference","srcType","destType","srcPref","getConversionRank","allowImplicit","autoRank","findBestType","types","uniqueTypes","bestResult","targetType","details","sum","sourceType","conversion","actions","detail","index","action","getBestConversion","targetTypes","uniqueTargetTypes","explicitResult","implicitResult","applyActionToSnippet","typeName","targetName","propSnips","accessedProp","converted","convertToCommonType","targetSnippet","snip$1","unify","inTypes","restrictTo","unifyStrict","values","verbose","tryConvertSnippet","targetDataTypes","targets","t","convertStructValues","structType","val","callableSchema","options","argTypes","idx","argType","boolCast","bool","arg","u32","i32","f32","f16","u32Cast","truncated","i32Cast","f32Cast","buf32$1","f32arr$1","u32arr$1","toHalfBits","bits","sign$1","mant","full","shift","roundBit$1","sticky$1","half$1","roundBit","sticky","half","fromHalfBits","h","roundToF16","f16Cast","abstractInt","abstractFloat","numericLiteralToSnippet","concretize","concretizeSnippet","coerceToSnippet","ownSnippet","ArrayExpression","elements","elem","snippetStr","snippetType","comptime","func","MissingCpuImplError","dualImpl","returnType","e","concreteReturnType","XYZW","RGBA","VecBase","#_","e0","e1","e2","e3","xyzwProp","rgbaProp","vecSchema","Vec2","y","Vec3","z","Vec4","w","Vec2fImpl","Vec3fImpl","Vec4fImpl","Vec2hImpl","Vec3hImpl","Vec4hImpl","Vec2iImpl","Vec3iImpl","Vec4iImpl","Vec2uImpl","Vec3uImpl","Vec4uImpl","Vec2bImpl","Vec3bImpl","Vec4bImpl","vec2f","makeVecSchema","vec2h","vec2i","vec2u","vec2b","vec3f","vec3h","vec3i","vec3u","vec3b","vec4f","vec4h","vec4i","vec4u","vec4b","vecTypeToConstructor","VecImpl","primitive","length$1","componentCount","construct","j","c","MatBase","createMatSchema","identityFunctions","translation4","scaling4","rotationX4","rotationY4","rotationZ4","VALID_MAT2x2_ELEMENTS","mat2x2Impl","mat2x2f","mat2x2fImpl","VALID_MAT3x3_ELEMENTS","mat3x3Impl","_","mat3x3f","mat3x3fImpl","VALID_MAT4x4_ELEMENTS","mat4x4Impl","mat4x4f","mat4x4fImpl","identity2","identity3","identity4","vector","_ctx","smoothstepScalar","edge0","edge1","clampScalar","low","high","buf32","f32arr","u32arr","i32arr","bitcastU32toF32Impl","n","bitcastU32toI32Impl","bitcastF32toU32Impl","lengthVec2","lengthVec3","lengthVec4","dotVec2","lhs","rhs","dotVec3","dotVec4","binaryComponentWise2u","op","binaryComponentWise3u","binaryComponentWise4u","binaryComponentWise2i2u","binaryComponentWise3i3u","binaryComponentWise4i4u","VectorOps","a_","b_","m","m_","booleanFor","constructorFor","getConstructorFor","mode","kind","map","makeIterable","applyArgs","fn$1","kinds","kindOf","constructor","iterableArgs","generalizeFn","generalizeBoolFn","upCast","getPrimitive","makeBinarySignature","opts","restrict","fail","lhsC","rhsC","unified$1","scalar","composite","unified","binaryArithmeticSignature","binaryMulSignature","binaryDivSignature","cpuAdd","add","cpuSub","cpuMul","sub","mul","cpuDiv","div","mod","a$1","b$1","cpuNeg","value$1","neg","intVecToUnsignedVec","bitShiftSignature","lhsUnified","cc","vecU","rhsUnified","cpuBitShiftLeft","rhsVec","bitShiftLeft","cpuBitShiftRight","infixOperators","InfixDispatch","isInfixDispatch","o","assignInfixOperator","base","operatorSymbol","opImpl","jsInfixDispatchFor","infixOperatorsAssigned","assignInfixOperators","bannedTokens","builtins","sanitizePrimer","primer","validateIdentifier","ident","validateProp","identResult","struct","props","INTERNAL_createStruct","abstruct","isAbstruct","structSchema","instanceProps","WgslStructImpl","roundUp","modulo","bitMask","invBitMask","TgpuVertexFormatDataImpl","formatToWGSLType","packedFormats","isPackedData","knownAlignmentMap","computeAlignment","knownAlignment","alignmentOf","firstProp","computeCustomAlignment","customAlignmentOf","cachedAlignments","cachedCustomAlignments","alignment","knownSizesMap","computeMLOfStruct","struct$1","size$1","longestContiguousPrefix","isContiguous$1","prefixEnd","property","prevSize","hasPadding","propLayout","computeMemoryLayout","trueSize","computeMLOfUnstruct","computeMLOfWgslArray","elementType","elementMemoryLayout","elementSize","stride","computeMLOfDisarray","knownSize","undecoratedLayout","cachedLayouts","getLayoutInfo","sizeOf","PUBLIC_sizeOf","arrayOf","elementCount","count","cpu_arrayOf","arraySchema","WgslArrayImpl","textureDescriptorToSchema","desc","textureMultisampled2d","texture1d","texture2d","texture2dArray","texture3d","textureCube","textureCubeArray","textureStorage1d","textureStorage2d","textureStorage2dArray","textureStorage3d","createTexture","sampleTypes","createStorageTexture","textureCache","accessModeMap","getOrCreate","factory","cached","sampleType","actualSampleType","format","actualAccess","textureExternal","isWgslTexture","isWgslStorageTexture","isWgslExternalTexture","sampler","comparisonSampler","isWgslSampler","isWgslComparisonSampler","atomic","AtomicImpl","attribute","attrib","DecoratedImpl","LooseDecoratedImpl","align","size","location","isBuiltin","getAttributesString","field","BaseDecoratedImpl","attribs","alignAttrib","sizeAttrib","isContiguous","getLongestContiguousPrefix","__defProp","__defNormalProp","obj","__export","__publicField","BufferReader","BufferWriter","MaxValue","Measurer","UnresolvedReferenceError","ValidationError","arrayOf$1","bool$1","byte","chars","concat","dynamicArrayOf","f16$1","f32$1","f32Array","f64Array","generic","genericEnum","i16","i16Array","i32$1","i32Array","i8","i8Array","keyed","object","optional","string","tupleOf","u16$1","u16Array","u32$1","u32Array","u8","u8Array","u8ClampedArray","_UnresolvedReferenceError","_ValidationError","UnboundedMeasurer","unboundedMeasurer","_Measurer","bytes","forked","Schema","_reference","_prop","Ref","SubTypeKey","ArraySchema","_unstableElementSchema","output","input","array","measurer","elementSchema","BoolSchema","_StringSchema","_StringSchema$1","encoded","Int8Schema","Uint8Schema","Int16Schema","Uint16Schema","Int32Schema","Uint32Schema","Float16Schema","Float32Schema","CharsSchema","content","exactEntries","record","resolveMap","refs","ref","ObjectSchema","_properties","reference","bufferOffset","properties","GenericObjectSchema","keyedBy","_subTypeMap","subTypeKey","subTypeDescription","extraProp","biggestSubType","subType","forkedMeasurer","subTypeMap","objs","DynamicArraySchema","_unstableElementType","len","indexProp","RefSchema","RefResolve","unstableSchema","KeyedSchema","innerResolver","OptionalSchema","_innerUnstableSchema","resolveArray$1","TupleSchema","_unstableSchemas","schemas","TypedArraySchema","_arrayConstructor","view","_value","isSystemBigEndian","getSystemEndianness","unwrapBuffer","byteOffset","innerBuffer","BufferIOBase","endianness$1","systemEndianness","unwrapped","offset","strLength","bufferView","byteLength","destU8","bytesPerElement","srcU8","alignIO","io","baseAlignment","currentPos","alignIO_default","cachedOffsets","offsetsForProps","offsets","lastEntry","beforeAlignment","propSize","OFFSET_MARKER","CONTIGUOUS_MARKER","isOffsetProxy","scalarNode","contiguous","getMarker","makeProxy","baseOffset","vecComponentCount","componentSize","makeVecProxy","makeStructProxy","makeArrayProxy","createOffsetProxy","marker","elementOffset","remainingFromHere","childContiguous","propTypes","propNames","runStart","info","padding","typeContiguous","runEnd","runName","runInfo","localLimit","propSchema","getRootContiguous","totalSize","memoryLayoutOf","accessor$1","defineBuiltin","builtin","vec2f$1","vec2i$1","vec2u$1","vec3f$1","vec3u$1","vec4f$1","mat3x3f$1","getGPUValue","object$1","withLocations","members","locations","nextLocation","usedCustomLocations","member","customLocation","separateBuiltins","positionalArgs","dataFields","separateAllAsPositional","withLocs","createIoSchema","AutoStruct","#validProps","#allocated","#usedWgslKeys","#locations","#cachedStruct","#typeForExtraProps","validProps","typeForExtraProps","alloc","wgslKey","ownName","EntryInputRouter","structArg","positionalEntry","structSnippet","infixKinds","swizzleLenToType","accessProp","derefed","propLength","swizzleType","indexableTypeToResult","accessIndex","indexArg","valueProxyHandler","accessed$1","accessed","getGpuValueRecursively","gpuValue","makeDereferenceable","resource","makeResolvable","constant","TgpuConstImpl","deepFreeze","id","trackingProxy","isResolvable","mergeFunctionExternals","fnExternals","flatExternal","addArgTypesToExternals","implementation","core","argTypeNames","found","argTypeName","addReturnTypeToExternals","matched","outputName","anyIdent","anyPropChain","boundedPropChain","replaceExternalsInWgsl","externalMap","wgsl","keys","maybeInvalidKey","match","chain","currentItem","suffix","ResolvableString","#value","lineBreaks","blankSpaces","extractArgs","rawCode","strippedCode","range$1","strip","code","ParsableString","attributes","closingParenthesis","parentheses","identifierEndSymbols","identifier","maybeType","typeEndSymbols","angleBrackets","maybeRet","argsStart","openingCommentBlock","commentBlocks","#parseStartPos","#pos","str","substr","toFind","brackets","openedBrackets","steps","createFnCore","functionType","workgroupSize","newExternal","entryInput","replacedImpl","header","body","dataSchema","parts","isArgUsedInBody","argName","attributes$1","providedArgs","argInfo","checkAndReturnType","pluginData","pluginExternals","ast","maybeSecondArg","actualReturnType","wgslType","jsType","resolvedJsType","resolvedWgslType","stripTemplate","isTemplateStringsArray","templateLiteralIdentity","acc","fn","argTypesOrCallback","createGenericFn","shell","createFn","isTgpuFn","isGenericFn","stringifyPair","_implementation","pairs","fnBase","newExternals","createBoundFunction","call$1","castAndCopiedArgs","err","innerFn","innerName","genericFn","fnLabel","NodeTypeCatalog","FuncParameterType","tinyest_exports","unaryIdentitySignature","variadicUnifySignature","uargs","unifyRestrictedSignature","variadicReduce","fst","rest","r","variadicStitch","wrapper","anyFloatPrimitive","anyFloatVec","anyFloat","anyConcreteIntegerPrimitive","anyConcreteIntegerVec","anyConcreteInteger","cpuAbs","abs","cpuAcos","acos","cpuAcosh","acosh","cpuAsin","asin","cpuAsinh","asinh","cpuAtan","atan","cpuAtanh","atanh","cpuAtan2","atan2","cpuCeil","ceil","cpuClamp","clamp","cpuCos","cos","cpuCosh","cosh","countLeadingZeros","cross","cpuDegrees","cpuDistance","length","dot","cpuExp","exp","cpuExp2","exp2","extractBits","_offset","_count","argRestricted","cpuFloor","floor","cpuFma","cpuFract","fract","FrexpResults","newbits","cpuInverseSqrt","_e2","cpuLength","uarg","cpuLog","log","cpuLog2","log2","cpuMax","max","cpuMin","min","cpuMix","e1$1","e2$1","e3$1","mix","ModfResult","normalize","powCpu","exponent","pow","cpuRadians","radians","_e3","cpuRound","floor$1","round","cpuSaturate","cpuSign","sign","cpuSin","sin","cpuSinh","sinh","cpuSmoothstep","smoothstep","cpuSqrt","sqrt","cpuStep","edge","step","cpuTan","tan","cpuTanh","tanh","cpuTranspose","transposed","dst","dst2","dst3","trunc","cpuIntdiv","cpuCopy","correspondingBooleanVectorSchema","allEq","cpuAll","cpuEq","eq","ne","cpuNot","cpuLt","lt","le","cpuOr","gt","cpuAnd","ge","not","all","precision","componentResult","lhs$1","rhs$1","cpuSelect","f","cond","f$1","t$1","validSelectBranchTypes","select","uf","ut","fStr","tStr","isAttribute","connectAttributesToShader","shaderInputLayout","usedVertexLayouts","bufferDefinitions","layoutToAttribListMap","nextShaderLocation","matchingAttribute","attribList","identityTypes","isIdentityType","resolveStructProperty","resolveStruct","resolveUnstruct","unstruct","resolveArray","resolveDisarray","disarray","resolveData","UnrollableIterable","unroll","jsImpl","iterable","mathToStd","supportedLogOps","sizeOfPointedToArray","arrayLength","ptrArg","start","end","step$1","isTgpuRange","getLoopVarKind","elementSnippet","getElementSnippet","iterableSnippet","getElementType","getRangeSnippets","unroll$1","dataType$1","defaults","NODE$1","stringifyNode","node","isExpression","stringifyExpression","stringifyStatement","init$1","update","assertExhaustive$1","wrapIfComplex","sep","SIMPLE_NODES","NODE","parenthesizedOps","binaryLogicalOps","binaryRelationalOpToStdMap","bitShiftOps","OP_MAP","operatorToType","unaryOpCodeToCodegen","argExpr","argStr","binaryOpCodeToCodegen","usageToVarTemplateMap","functionInitialBlockDepth","WgslGenerator","#ctx","#unrollingChain","statementNodes","allowInlining","definesInNearestScope","endsWithControlFlow","statementNode","statement","willInline","block","varName","keyword","_dataType","rhsStr","res","callee","isGeneric","slotPairs","shellless","expression","expectedType","prevExpectedType","lhsExpr","castToBool","rhsExpr$1","rhsSnippet","rhsExpr","lhsStr","exprType","stdBinaryRelationalOp","left","right","codegen","convLhs","convRhs","lhsDataType","lhsPrimitive","rhsTarget","forcedType","validateSnippetMutation","equalityCheck","bothVectors","targetNode","propertyNode","inProperty","parseNumericString","calleeNode","argNodes","_callee","callable","strictSignature","convertedArguments","maybeMathMethod","maybeConsoleMethod","expr$1","completeStruct","convertedSnippets","valueNodes","arrType","elemType","valuesSnippets","arrayType","allConstant","testNode","consequentNode","alternativeNode","test","convertedTest","consequent","alternative","con","alt","assertExhaustive","resolvedDataType","resolvedValue","pre","scope","replacements","variable","placeholder","regex","argList","head","decimal","templateParams","resolvedTemplateParams","resolvedArgs","returnNode","expectedReturnType","returnSnippet","rawId","eqNode","eq$1","rhsStr$1","definitionDataType","rhsTypeStr","concreteType","emittedVarType","refSnippet","rhsNaturallyEphemeral","varOrigin","varType","resolved$1","condNode","consNode","altNode","blockifySingleStatement","alternate","prevUnrollingChain","initStatement","conditionExpr","updateStatement","initStr","updateStr","bodyStr","condSnippet","conditionStr","loopVar","ctxIndent","iterableExpr","shouldUnroll","originalLoopVarName","blockified","_$1","firstElement","blocksCode","resolvedBlock","forHeaderStr","loopVarName","loopVarKind","resolved","maybeObject","extractObject","mutated","EVAL_ALLOWED_IN_ENV","compiledWriters","didWarnAboutEvalFallback","typeToPrimitive","vertexFormatToPrimitive","primitiveToWriteFunction","vertexFormatValueTransform","specialPackedFormats","offsetExpr","valueExpr","buildWriter","depth","partial","emitWrite","writeFunc","addr","emitBlock","go","node$1","offsetExpr$1","valueExpr$1","depth$1","propOffset","subSchema","copyLen","primitive$1","matSize","rowStride","components","wgslElementStride","col","row","packedIndex","wgslIndex","formatName","handler","transform","getCompiledWriter","fullBody","writeFloat16","readFloat16","dataWriters","_schema","writeData","beginning","packed","writer","expected","dataReaders","skipOneAfter","readData","g","reader","endianness","calculateOffsets","bufferSize","startOffset","naturalSize","naturalEndOffset","writeToArrayBuffer","endOffset","regionSize","dataView","isLittleEndian$1","compiledWriter","readFromArrayBuffer","convertPartialToPatch","arrSchema","isLittleEndian","getPatchInstructions","targetBuffer","buf","compiledView","segments","collect","propOffsets","childValue","elementPadding","sparse","leafSize","instructions","run","seg","patchArrayBuffer","mappedView","data$1","gpuOffset","NotStorageError","isBufferBinding","TgpuBufferBindingImpl","isUniformBinding","isMutableBinding","isReadonlyBinding","group","binding","state","usage","mutableUsageMap","mutable","readonlyUsageMap","readonly","uniformUsageMap","uniform","warnIfOverflow","limits","entry","uniform$1","storage","requiredAlignOf","warnIfNotUniformAligned","schema$1","requiredAlignment","thisKey","nextKey","thisValue","minimumDifference","thisKeyOffset","difference$1","usageToUsageConstructor","INTERNAL_createBuffer","typeSchema","initialOrBuffer","TgpuBufferImpl","#ownBuffer","#destroyed","#internalBuffer","#hostBuffer","#mappedRange","#initialCallback","#disallowedUsages","root","disallowedUsages","#getMappedRange","#unmapBuffer","raw","usages","flags","gpuBuffer","mapped","encoder","rawEncoder","srcBuffer","res$1","stagingBuffer","commandEncoder","ConfigurableImpl","bindings","newCfg","naturalsExcept","excluded","next","INTERNAL_createSampler","TgpuFixedSamplerImpl","INTERNAL_createComparisonSampler","isSampler","maybe","isComparisonSampler","TgpuLaidOutSamplerImpl","#membership","membership","#filtering","TgpuExternalTextureImpl","DEPTH_ASPECT_NON_COPYABLE","DEPTH_ASPECT_16","DEPTH_ASPECT_32","STENCIL_ASPECT","formatInfoCache","getTextureFormatInfo","createFormatInfo","channelType","parseChannelType","depthAspect","getDepthAspect","hasStencil","parseTexelSize","parseSampleTypes","canRenderAttachment","channels","FLOAT32_FORMATS","getEffectiveSampleTypes","device","getImageSourceDimensions","source","videoWidth","videoHeight","naturalWidth","naturalHeight","codedWidth","codedHeight","width","height","FULLSCREEN_VERTEX_SHADER","SAMPLE_FRAGMENT_SHADER","GATHER_FRAGMENT_SHADER","blitCache","getOrCreateDeviceCache","cache","getBlitResources","filterable","filterableRes","layoutKey","layoutRes","bindGroupLayout$1","blit","destination","resources","pipeline","bindGroup","ownEncoder","pass","clearTextureUtilsCache","validateBlitFormat","operation","effectiveSampleTypes","isFloat","isUnfilterableFloat","generateTextureMipmaps","texture","baseMipLevel","mipLevels","levels","layer","mip","viewOptions","level","resampleImage","targetTexture","image","inputTexture","renderTexture","getDescriptorForProps","INTERNAL_createTexture","rawTexture","TgpuTextureImpl","isTexture","isTextureView","#formatInfo","#ownTexture","props$1","hasStorage","hasSampled","hasRender","hasTransient","bindingFlags","transientFlags","nextFlags","hasTransientUsage","hasSampledOrStorageUsage","viewDescriptor","TgpuTextureRenderViewImpl","TgpuFixedTextureViewImpl","#clearMipLevel","scale","texelSize","mipLevel","actualMipLevels","optionsOrMipLevel","#writeBufferData","dimension","#writeSingleLayer","layerCount","bitmap","mipWidth","mipHeight","mipDepth","expectedSize","actualSize","targetWidth","targetHeight","sourceWidth","sourceHeight","baseTexture","descriptor","TgpuLaidOutTextureViewImpl","isUsableAsSampled","NotSampledError","TgpuLaidOutBufferImpl","bindGroupLayout","TgpuBindGroupLayoutImpl","isBindGroupLayout","isBindGroup","MissingBindingError","groupLabel","DEFAULT_MUTABLE_VISIBILITY","DEFAULT_READONLY_VISIBILITY","normalizedEntries","unwrapper","visibility","multisampled","bindingSampleType","TgpuBindGroupImpl","#entries","slot","defaultValue","TgpuSlotImpl","shaderStageSlot","privateVar","initialValue","TgpuVarImpl","workgroupVar","prototype","dataBlockIndex","dataByteIndex","dataBufferSlot","nextByteIndex","nextU32","serializerMap","serializer","generateHeader","getSerializer","dataBuffer","maybeSerializer","propsSerializer","createCompoundSerializer","elementSerializer","dataTypes","usedSerializers","createLoggingFunction","indexBuffer","logOptions","serializedSize","compoundSerializer","defaultOptions","fallbackSnippet","LogGeneratorNullImpl","LogGeneratorImpl","#options","#logIdToMeta","#firstUnusedId","#indexBuffer","#dataBuffer","SerializedLogData","concreteArgsWithStrings","concreteArgs","logFn","functionSnippet","isShelllessImpl","createShelllessImpl","splitRegex","separatorNeededRegex","minify","tokens","stripWGSLComments","token","current","isSpaceRequired","currentLast","nextFirst","copiedUpTo","CATCHALL_BIND_GROUP_IDX_MARKER","ItemStateStackImpl","argAccess","poppedValue","boundValue","external","INDENT","N","IndentController","savedLevel","createArgument","used","createArgumentPropAccess","argSnippet","ResolutionCtxImpl","#namespaceInternal","#modeStack","#startedFunctionResolves","#logGenerator","#lastUniqueId","random","blockScope","firstParam","alias","proxyEntries","router","astParam","objArg","returnTypes","declaration","memoMap","placeholderKey","layoutEntry","oldName","eventual","maybeEventual","lazy$1","instances","instance","expectedValue","slotToValueMap","usedSlot","decl","realSchema","resolve$1","usedBindGroupLayouts","automaticIds","layoutEntries","bindingReplacements","createCatchallGroup","catchallIdx","catchallLayout","catchall","ext","declarations","declarationCode","collectBindGroupPairs","collectVertexBufferPairs","IndirectOperationToRequiredData","validateIndirectBufferSize","requiredBytes","resolveIndirectOffset","indirectBuffer","requiredSize","offset$1","u32AllowedSchemas","f32AllowedSchemas","buffer","bufViews","writeToBuffer","writeFloat16ToBuffer","readFromBuffer","items","readFloat16FromBuffer","getCpuBitcast","inType","outType","writeToPrimitive","readFromPrimitive","bitcastFor","casts","getBitcast","from","to","intermediate","bitcast","unpack2x16float","toF","toI","unpack","deserializerMap","d","xyVec","zVec","zwVec","deserialize","maybeDeserializer","decodedProps","deserializeCompound","deserializeAndStringify","serializedData","logDataFromGPU","logIdToMeta","results","totalCalls","INTERNAL_createQuerySet","rawQuerySet","TgpuQuerySetImpl","isQuerySet","#ownQuerySet","#available","#readBuffer","#resolveBuffer","self","readBuffer","createWithPerformanceCallback","currentPriors","querySet","createWithTimestampWrites","timestampWrites","pendingTimestampReads","readTimestamps","registrations","priors","queueTimestampResolve","internals","byQuerySet","regs","reg","RenderDrawState","ComputeDrawState","recordBindGroup","first","stampRenderPipeline","stampComputePipeline","applyIndexBuffer","indexFormat","offsetBytes","sizeBytes","applyBindGroups","resolveBindGroup","missingBindGroups","applyVertexBuffers","resolveVertexBuffer","missingVertexLayouts","vertexLayout$1","applyRenderPipelineState","passState","memo","applyComputePipelineState","requireIndexBuffer","warnAboutUnreachableSubmission","what","queueLogDrain","logResources","finalizeOwnEncoder","PassKindWording","reportIgnoredPriors","owner","hasTimestampWrites","passKind","hasAttachments","wording","emitRenderDraw","passInternals","usesIndexBuffer","emit","ownsPass","rawPass","emitComputeDispatch","isComputePipeline","isRenderPipeline","isPipeline","isTgpuCommandEncoder","isTgpuRenderCommands","isTgpuComputePass","isGPUCanvasContext","isGPUCommandEncoder","isGPUComputePassEncoder","isGPURenderPassEncoder","isGPURenderBundleEncoder","unwrapAttachmentView","unwrapTimestampWrites","beginningOfPassWriteIndex","endOfPassWriteIndex","INTERNAL_beginComputePass","rawDescriptor","TgpuComputePassImpl","INTERNAL_adoptComputePass","adopted","#root","#emit","rawBuffer","attachmentAspects","aspect","withDepthStencilDefaults","attachment","rawAttachment","aspects","hasDepth","INTERNAL_beginRenderPass","TgpuRenderPassImpl","INTERNAL_createRenderBundleEncoder","TgpuRenderBundleEncoderImpl","INTERNAL_adoptRenderCommands","TgpuRenderCommandsImpl","vertexCount","instanceCount","firstVertex","firstInstance","indexCount","firstIndex","baseVertex","indirectOffset","minDepth","maxDepth","color$1","queryIndex","bundles","INTERNAL_createCommandEncoder","TgpuCommandEncoderImpl","INTERNAL_adoptCommandEncoder","#recordPendingCommands","beforeFinish","afterSubmit","hook","wgslEnableExtensions","wgslEnableExtensionToFeatureName","shallowEqualSchemas","ShelllessRepository","argSnippets","variant","NamespaceImpl","strategy","namespace","names","TRANSFERABLE_PRIORS","nonTransferablePriorsOf","PerformanceTrackerImpl","#resolveMeasure","#wgslSize","resolveStart","compileMeasure","NullPerformanceTracker","INTERNAL_createComputePipeline","slotBindings","TgpuComputePipelineImpl","ComputePipelineCore","#withPriors","patch","#execute","dispatch","#performanceTracker","#initAsyncPromise","#memo","#slotBindings","#descriptor","#performanceCallbackQuerySet","resolutionResult","module","enableExtensions","extension","ns","builtinVertexIn","builtinVertexOut","builtinFragmentIn","builtinFragmentOut","AutoFragmentFn","#core","varyings","AutoVertexFn","vertexLayout","schemaForCount","stepMode","TgpuVertexLayoutImpl","isVertexLayout","defaultAttribEntry","dataToContainedAttribs","customLocationMap","memberOffset","key$1","#customLocationMap","isColorAttachment","connectAttachmentToShader","fragmentOut","outputValue","matching","connectTargetsToShader","presentationFormat","matchingTarget","singleTarget","INTERNAL_createRenderPipeline","TgpuRenderPipelineImpl","RenderPipelineCore","indexFormatOrOffset","offsetElementsOrSizeBytes","sizeElementsOrUndefined","dataTypeToIndexFormat","#ownPassDescriptor","#latestAutoVertexIn","#latestAutoFragmentOut","vertex","fragment","matchUpVaryingLocations","vertexOut","autoFn","connectedAttribs","tgpuDescriptor","connectedTargets","l","fragmentIn","vertexFnName","fragmentFnName","usedLocations","saveLocation","WeakMemo","#map","#make","make","computeFn","createComputeFn","newLabel","toVec3","arr","workgroupSizeConfigs","TgpuGuardedComputePipelineImpl","#lastSize","sizeUniform","threads","sanitizedSize","workgroupCount","WithBindingImpl","#getRoot","getRoot","wrappedCallback","mainCompute","TgpuRootImpl","#unwrappedBindGroupLayouts","#unwrappedBindGroups","#ownDevice","nameRegistrySetting","minify$1","ownDevice","shaderGeneratorClass","context","init","adapterOpt","deviceOpt","optionalFeatures","deviceDescriptor","adapter","availableFeatures","feature","initFromDevice","accessor","schemaOrConstructor","TgpuAccessorImpl","mutableAccessor","TgpuMutableAccessorImpl","createAccessorSnippet","AccessorBase","resolveWithContext","arg0","resolveFromArray","resolveFromTemplate","resolve","template","shaderGenerator","unstable_minify","config","resolutionObj","maybeRoot","tryFindRoot","buckets","extractRoot","bucket","bucketsString","lazy","compute","TgpuLazyImpl","#getValue","providing","fragmentFn","createFragmentFn","outputType","vertexFn","createVertexFn","outputWithLocation","declare","TgpuDeclareImpl","#externals","#declaration","dependencyMap","replacedDeclaration","rawCodeSnippet","TgpuRawCodeSnippetImpl","#expression","simulate","workgroups","workgroupVars","privateVars","simStates","_$2","k","wi","wj","wk","tgpuUnstable_exports","_accessor","_comptime","_computeFn","_constant","_lazy","_fn","_fragmentFn","_mutableAccessor","_privateVar","_slot","_vertexFn","_vertexLayout","_workgroupVar","tgpu_exports","derivativeNormalError","dpdx","dpdy","fwidth","compactSnippetArgs","sampleCpu","_texture","_sampler","_coords","_offsetOrArrayIndex","_maybeOffset","sampleBiasCpu","_biasOrArrayIndex","_biasOrOffset","sampleLevelCpu","_level","textureSampleLevel","textureLoadCpu","_levelOrArrayIndex","textureLoad","isDepth","textureStoreCpu","_arrayIndexOrValue","_maybeValue","textureStore","textureDimensionsCpu","textureDimensions","dim","textureGatherCpu","_args","sampleTypeToVecType","texture$1","sampler$2","coords$1","rest$1","sampler$1","coords","textureSampleCompareCpu","_depthRefOrArrayIndex","_depthRefOrOffset","textureSampleCompareLevelCpu","textureSampleBaseClampToEdgeCpu","sampleGradCpu","_ddxOrArrayIndex","_ddyOrDdx","_offsetOrDdy","typegpu_default","UNIFORM_ENTRY_KEY","sanitizeId","WGSL_RESERVED","sanitizeFieldId","nodeKey","componentsOf","kindOfSchema","isArraySchema","inferFieldSchema","toComponents","VectorFieldView","padTo","out","toScalar","warnedNonPackableTransforms","isPackableFieldValue","handle","FieldHandle","ArrayFieldHandle","flat","comps","elemIndex","SystemUniforms","SYSTEM_DEFAULTS","createUniformStore","systemSchema","systemInitial","nodeStructs","nodeHandles","systemHandles","systemStruct","systemDefined","dirtyScalars","dirtyArrays","padFields","sink","cur","finalized","buildHandles","fields","handles","structProps","finalInitial","isCpu","forInfer","assertNotFinalized","fullTree","tree","nodeSubtree","sub$2","pad","built","padTo16","padded","padNames","combinedProps","combined","combinedSize","bindingCap","cap","GpuUnavailableError","idxs","el","layoutVar","updateFieldValue","rawValue","DEG_TO_RAD$1","PI$1","TAU","TWO_PI$1","HALF_PI","SQRT3","GOLDEN","mxRotl32","$","mxBjfinal","a0","b0","c0","DEADBEEF","mxHashInt1","seed","mxHashInt2","mxHashInt3","xx","mxBitsTo01","mxFade","mxGradientFloat2","hash","u","uu","vv","mxGradientFloat3","mxGradientScale2d","mxGradientScale3d","mxBilerp","v0","v1","v2","v3","s1","mxTrilerp","v4","v5","v6","v7","t1","r1","mxPerlinNoiseFloat2","p$1","X","Y","fx","fy","mxPerlinNoiseFloat3","Z","fz","mxCellNoiseVec3_2d","ix","iy","mxCellNoiseVec3_3d","iz","mxWorleyDistance2d","xoff","yoff","jitter","metric","tmp","off","diff","mxWorleyDistance3d","zoff","mxWorleyNoiseFloat2","localpos","sqdist","dist","mxWorleyNoiseFloat3","mxNoiseFloat2","mxNoiseFloat3","mxWorleyNoiseFloat2Pub","floatBitsToUint1","floatBitsToUint2","floatBitsToUint3","U32","hash11","hash12","hash22","hash13","hash33","value12","f0","perlinGrad2","ox","oy","perlin12","dd","perlin12d","du","ga","gb","gc","gd","va","vb","vc","vd","deriv","perm4","value13","d0","sd","k1","k2","k3","k4","o3","o4","perlinGrad3","oz","perlin13","a1","b1","c1","d1","z0","z1","gaborGrain","freq","phase","gabor12","curl22","curl22z","pax","pay","pbx","pby","wavelet12","dsum","pp","q0","qc","ca","sa","q","blue12","fk","hilbertEncode512","px","py","S","rx","ry","dq","oneMinusRy","scratchOne","uv","time","thickness","seed0","lo","sx","sy","ss","u2","sVal","pulse","scratches12","scratches","fbmPerlin","octaves","fbmStone","stone12","fs","fbmWool","wool12","gullies","slope","sideDir","heightSlope","wSum","dist2","erosion12","nd","strength","total","grad","len2","fbmPaper","paper12","aspectOf","viewport","flooredMod1","flooredMod2","den","guarded","rotate2","cosA","sinA","aspectCorrectedUV","aspectCorrectedUVFlipY","unflipPosition","aspectCentrePosition","pos","aspectCenteredDelta","center","canvasCentredDelta","rotateAboutCanvasCentre","centerX","centerY","cx","cy","directionalProjection","theta","aspectScaledDomain","pixelGridDomain","grain","timeAxisDomain","rate","fieldFnIds","nextFieldFnId","fieldFnId","fieldFn","keyable","existing","assigned","fbmGated","maxOctaves","drift","fbmCache","N$1","TIME_STRIDE","SEED_STRIDE","octaveField","baseFreq","lacunarity","persistence","animTime","seedOffset","octaveCount","weight","accumulated","totalWeight","fi","dirX","dirY","coord","active","extra","amp","fo","IQ_WARP_OFFSETS","domainWarp2","warpCache","warpField","QX","QY","QZ","Q2X","Q2Y","Q2Z","RX","RY","RZ","R2X","R2Y","R2Z","warpAmount","qx","qy","warped1","domainWarp1","radialFalloffMask","radius","falloff","aspectUV","centerPos","SCATTER_DRIFT_RATE","GOLDEN_CONJ","SCATTER_MAX","spiralScatter","ph","w1","dx","dy","nx","ny","scatterFieldAnchored","anchors","power","num","seedShuffle","pair","anchor","ti","scatterField","chainedWarpStep","offA","offB","wp","colorMixing_exports","MixStep","convertMixSpaceToP3","convertP3ToMixSpace","convertP3ToMixSpaceCPU","hslToRgb","hsvToRgb","labToLch","labToRgb","lchToLab","mixColors","mixColorsHsl","mixColorsHsv","mixColorsLch","mixColorsLinear","mixColorsOklab","mixColorsOklch","mixColorsVariants","mixPreconvertedColors","mixPreconvertedHsl","mixPreconvertedHsv","mixPreconvertedInSpace","mixPreconvertedLch","mixPreconvertedLinear","mixPreconvertedOklab","mixPreconvertedOklch","mixPreconvertedVariants","mixToward","oklabToOklch","oklabToRgb","oklchToOklab","p3ToSRGB","rgbToHsl","rgbToHsv","rgbToLab","rgbToOklab","sRGBToP3","selectRGBBySector","EPSILON","PI_OVER_3","LAB_DELTA","LAB_KAPPA","LAB_LAMBDA","LAB_DELTA3","LAB_OFFSET","LAB_FWD_SLOPE","LAB_INV_SLOPE","p3","srgb","rgb","l_","s_","lab","L","lch","C","sector","maxVal","minVal","delta","satDenom","isRMax","isGMax","hueR","hueG","hue$1","hsl","hPrime","hsv","xn","yn","zn","awMix","wA","wB","sw","colorA","colorB","weightA","weightB","safeWeight","colorSpaceMode","mixed","convA","alphaA","convB","alphaB","EPS_CPU","LAB_DELTA_CPU","p3ToSRGBCPU","rgbToOklabCPU","rgbHueCPU","rgbToHslCPU","rgbToHsvCPU","rgbToLabCPU","delta3","sr","sg","sb","bb","amount","blend_exports","applyBlendMode","blendModes","color","colorBurn","colorDodge","darken","difference","exclusion","hardLight","hue","lighten","linearBurn","linearDodge","luminance$1","luminosity","multiply","normal","normalOklab","normalOklch","overlay","saturation","screen","softLight","unpremultiplyAlpha","step3","overComposite","blended","overlayAlpha","baseWeight","finalAlpha","alpha$1","overlay$1","opacity","baseOklch","baseOklab","oneMinusOverlay","baseLum","overlayLum","lumDiff","lumRatio","burned","mult","baseSquared","softDark","baseSqrt","baseChromaticity","overlayChromaticity","baseChromaLength","overlayChromaLength","baseChromaDir","blendMode","LUMINANCE_WEIGHTS","maskFunctions","mask","lum","linear","reinhard","cineon","ACES_INPUT","ACES_OUTPUT","rrtAndODTFit","aces","LINEAR_SRGB_TO_LINEAR_REC2020","LINEAR_REC2020_TO_LINEAR_SRGB","AGX_INSET","AGX_OUTSET","AGX_MIN_EV","AGX_MAX_EV","agxContrastApprox","x2","x4","agx","NEUTRAL_START_COMPRESSION","NEUTRAL_DESATURATION","neutral","peak","newPeak","tonemapFns","linearToSrgb","srgbToLinear","needsTransformation","applyUVTransform","offsetX","offsetY","rotation","anchorX","anchorY","aspectRatio","rotationRad","cosAngle","sinAngle","centeredX","centeredY","squareX","squareY","rotatedSquareX","rotatedSquareY","scaledX","scaledY","boundingBoxToUVParams","bbox","canvasWidth","canvasHeight","toUVX","toUVY","xUV","yUV","widthUV","heightUV","resolveTopLeft","vUV","sizeUV","leftUV","topUV","centerXUV_down","centerYUV_down","cornerRadiusUV","applyRectangularClipMask","halfWidth","halfHeight","cornerRadius","aaFeather","rotRad","sqX","sqY","rotatedX","rotatedY","halfWidthSq","halfHeightSq","innerHalfW","innerHalfH","qClamped","sdf","feather","boundingBoxToGeneratorUVContext","screenUVToBoxLocal","th","sqx","sqy","hwSq","hhSq","DEFAULT_BOUNDING_BOX","resolveBoundingBox","isIdentityBoundingBox","isUV","Expr","wrap","other","emitOperand","text","operand$1","formatFloat","SHARED_SAMPLER_LAYOUT","BIND_GROUPS","expr","floatE","call","hint","vec4","operand","mixExpr","arrayExpr","elems","hoistCounter","asLocal","ZERO","WHITE0","applyBlend","sanitizeName","applyMaskFn","serialiseFragment","tail","flipY","uniformLayout","byIdentity","usedNames","statements","memos","localCounter","hit","uvInit","composedText","returnExpr","scan","composeNodeTree","registry","rttBoundaries","textures","externalTextures","computeSteps","composedNodeIds","onBeforeRender","onAfterRender","onResize","onCleanup","rttCounter","computeTexCounter","externalTexCounter","mediaTexCounter","unfilterableKeys","uniAccessorRaw","fullPath","uniAccessor","accessorPath","propAccessor","sysCtx","makeKitTexture","makeExternalKitTexture","convertToTexture","mapSourceCache","mapSourceTexture","cacheKey","sourceId","tex","composeNode","overridesByNode","getOverrides","maps","customSampleUVs","sampleUVsFn","baseUniforms","driver","overExpr","resolveDriver","propsAccessor","overrides","local","propValuesFor","uniformExprs","propsE","extraFields","sampleUV","cfg","srcTex","remapExpr","extractChannel","applyMaskIfNeeded","processedMasks","distortedUV","maskCfg","maskNodeId","maskExpr","opacityExpr","hasBox","cutoutActive","requiresChild","blendWithChildren","usesBoxClipWindow","halfPixelSq","clipMaskExpr","bu","applyBoxTransform","contentUV","sampled","applyNodeTransform","tf","tu","applyEdgeHandlingExpr","TRANSFORM_EDGE_MODES","applyNodeBboxOrTransform","composedInput","applyChildFragmentBox","fragmentResult","composeReplaceFilter","childResult","clipMaskNode","noBox","initNodeCompute","params","debugError","boundsFromBboxFields","childHasShapeBounds","dcl","nodeBoundsParams","children","child","cb","makeParams","childNode","getSource","getTexture","sourceTexture","uvResult","tryComposeViaUVContext","pushed","tryComposeViaAnalyticPushdown","nested","tryComposeViaAnalyticUVRemapNested","params$1","bboxMaskForNode","genResizeFitParams","sorted","analytic","tryComposeViaAnalyticUVRemap","composed","composeSiblings","parent","analyticRunEligible","runResult","tryFoldAnalyticRunComposite","childHasChildren","effectiveChild","childBox","effectiveOpacity","analyticHasFallbackTriggers","remapAt","dNode","computeOutputs","foldAnalyticRun","remapped","PUSHDOWN_MAX_NODES","fullCoverage","pushdownEligible","budget","remapCoverage","incoming","combineCoverage","composeAtUV","composeChildrenAtUV","resizeFit","coverage","sibs","visible","_processedMasks","contentBelow","generator","genResult","startIdx","endIndex","MAX","cursor","hopChildren","terminusGenerator","terminusComposite","nextChildren","gen","hasTriggers","terminus","nextHasChildren","link","linkParams","upstream","outputs","finalSample","lookedUpUV","termParams","rootExpr","rttPasses","buildFragmentEntry","toneMode","finalSer","finalTail","premultiply","toneFn","oetf","samplerLayout","reads","uniqueMatches","externalReads","usesSamplers","textureLayout","externalLayout","occupied","externalIdx","re","channel","iMin","iMax","oMin","oMax","curve","im","om","cv","collectStructuralHashInputs","visit","def","transformActive","bboxActive","opacityBucket","compileTimeProps","catmullRomAxisPositions","texSize","samplePos","texPos1","w2","w12","offset12","catmullRomAxisWeights","w0","w3","bSplineTapCache","buildBSplineTapSetup","gridSize","structName","Taps","gf","tx","ty","pxf","pyf","ofx","wx0","wx1","wx3","wx2","ofy","wy0","wy1","wy3","wy2","g0x","g1x","g0y","g1y","h0x","h1x","h0y","h1y","bSplineTapSetup","fnName","bicubicCounter","sampleCatmullRomExpr","uvL","sizeL","pxL","pyL","wxL","wyL","outL","posFn","wFn","axis","yi","xi","tapUV","edgeClampUV","edgeMirrorUV","mirrorX","mirrorY","edgeWrapUV","edgeTransparentMask","inX","inY","TRANSPARENT","MIRROR","WRAP","applyEdgeToUVExpr","edgeMode","composeEdgeRemapExpr","sample","sampleRemappedExpr","ChromaticSplitUVs","chromaticDisplaceUVs","disp","chromaticSplit","scaled","maxDisp","clamped","chromaticScale","wrapGuarded","createGuardedCompute","createComputeDispatcher","createPingPongPair","flipped","ab","ba","forA","forB","createStateBuffer","createPointerVelocityTracker","smoothing","teleportGuard","minDrag","prevX","prevY","smoothVelX","smoothVelY","sawUnseen","snappedToFirstReal","pointer","dt","parked","oldX","oldY","rawDx","rawDy","dragDist","teleport","invDt","velX","velY","createIdleGate","warmupFrames","everActive","simSinceActive","frames","warmedUp","fadeSeconds","driving","decayFadeSeconds","ratio","minRate","pathStampRibbon","nodes","numSteps","posX","posY","prepared","BRUSH_CUTOFF_SIGMAS","BRUSH_EDGE","BRUSH_EDGE_GAIN","DAMPING_SCALE","STATE_FORMAT","buildPropagateLayout","cellCount","buildGradientLayout","kernelCache","buildWaveFieldKernels","resolution","gridMax","propagateLayout","gradientLayout","gs","up","down","avg","prev","dampFactor","cellX","cellY","ddx","ddy","distSq","influenceRadius","influence","createWaveFieldSim","gpu","registerComputeTexture","getCpuValue","dimensions","dampingProp","radiusProp","radiusScale","speedMax","propagateKernel","gradientKernel","bufferA","bufferB","dispTex","displacement","propParams","curW","curH","propGroup","readBuf","writeBuf","gradGroup","srcBuf","propagate","gradient","lastActiveTime","frameParams","fp","currentTime","damping","move","cursorSpeed","settleTime","_f32Scratch","_i32Scratch","toHalfFloat","sdf_exports","ANALYTIC_SDF_EXTRA_FIELDS","APERTURE_TO_HALFANGLE","ShapeMask","analyticSubPropValues","arcSdf","buildAnalyticSdfFn","circleSdf","createAnalyticSdfSampler","createSdfDataTexture","createSvgSdfSampler","createSvgSdfSamplerWithGradients","crescentSdf","crossSdf","driveAnalyticSubProps","ellipseSdf","fillStrokeColor","flowerSdf","heartSdf","loadSdfFromUrl","parallelogramSdf","parseShapeConfigValue","polygonSdf","ringSdf","roundedRectSdf","shapeLocalCoords","starSdf","strokeMaskFromSdf","teardropSdf","trapezoidSdf","vesicaSdf","PI","TWO_PI","SQRT2_OVER_4","DEG_TO_RAD","circleSdf","typegpu_default","f32","$","dx","dy","radius","sqrt","polygonSdf","sides","len","angle","atan2","sectorAngle","sectorIdx","floor","canonicalAngle","cos","flowerSdf","outerRadius","innerRatio","innerRadius","tAngle","tFrac","t","abs","boundaryR","starSdf","bn","fpx","sin","fpy","an","sinAn","cosAn","ex","ey","qx","qy","dotQE","dotEE","clamp","nx","ny","dist","cross$1","sign","ringSdf","thickness","crossSdf","size$1","rounding","px","py","dHoriz","max","dVert","min","roundedRectSdf","width","height","mqx","mqy","outerDist","innerDist","ellipseSdf","radiusX","radiusY","k","vesicaSdf","spread","dd","b","cond","dist1","select","crescentSdf","offset","ra","rb","off","a","lhs","rhs","d1x","d1y","lenP","innerX","lenInner","trapezoidSdf","r1","r2","he","k1x","k1y","k2x","k2y","clampWidth","cax","cay","diffX","diffY","dotNum","dotDen","cbx","cby","sInner","s","dca","dcb","heartSdf","S","ax","ay","distA","b1y","dot1","m","b2x","b2y","dot2v","distB","arcSdf","halfAngle","cx","cy","l","clamped","mx","my","teardropSdf","h","mid","hSafe","cap0","qyTip","cap1","parallelogramSdf","wi","sk","flip1","px0","py0","wx0","wy","wx","dX","dY","flip2","vx0","dotve","dotee","tt","vx","vy","finalX","finalY","shapeLocalCoords","vec2f$1","center","rotation","uv","aspect","aspectUV","centerPos","rotRad","cosR","sinR","ShapeMask","struct","strokeMaskFromSdf","softness","strokeThickness","strokePosition","hasStroke","isInside","isCenterOrAbove","halfThickness","negThickness","negHalf","strokeInner","strokeOuter","overallMask","smoothstep","blend","fillStrokeColor","mask","fill","stroke","colorSpaceMode","blended","call","mixColorsVariants","mixColorsLinear","vec4","loadSdfFromUrl","url","sdfData","response","buffer$1","pixelCount","uint16$1","n","i","floats","createSdfDataTexture","params","shapeSdfUrl","texData","halfHalf","toHalfFloat","texture","needsUpload","version$2","err","debugWarn","createSvgSdfSampler","kitTexture","createSvgSdfSamplerWithGradients","halfOne","sampleField","tx","ty","x0","y0","fx","fy","cl","v","x0c","x1c","y0c","y1c","EPS_UV","epsTexels","bake","y","x","f0","gx","gy","APERTURE_TO_HALFANGLE","buildAnalyticSdfFn","shapeType","vec4f$1","round$1","inner","rot","ap","rdx","rdy","mix","createAnalyticSdfSampler","sub$2","_patternMode","floatE","aperture","fn$1","ANALYTIC_SDF_EXTRA_FIELDS","analyticSubPropValues","cfg","num","f","parseShapeConfigValue","raw","driveAnalyticSubProps","getShapeConfig","lastShapeJson","lastCfg","write","u","definePointwiseFilter","config","body","build","args","compose","identity","missingChildMessage","setup","meta","rawParams","ZERO","isFilterIdentity","result","hint","prop","defineRttFilter","resultAlpha","sampleStraight","unpremultiplyAlpha","lerpToIdentity","amount","mapped","normalizeMapped","mixExpr","selectMap","pick","uvRemapShader","source","opts","resolveMap$1","edgeSource","edgeModeFor","propValues","childNode","ctx","convertToTexture","edgeMode","sampled","applyEdgeHandlingExpr","sampleRemappedExpr","composed","composeEdgeRemapExpr","edgesPropConfig","defaultMode","description","overrides","transformEdges","centerPropConfig","ui","transformPosition","originProp","shapeStrokeProps","transformColor","transformStrokePosition","shapeColorSpaceProp","transformColorSpace","colorSpaceOptions","objectFitProp","defaultValue","options","transform","value","uiOptions","GLASS_SHELL_CANON","glassShellProps","spec","out","key","override","canon","rotationProp","colorProp","buildBounds","bounds","rotatable","as","propBindings","orderProps","props","order","shaderName","missing","unknown","defineSdfShapeShader","uniforms","asLocal","sdfShapeMask","expr","frame","name","p","Scalar","node","other","paintFrame","uniformOf","ref","accessor$1","resolveScalar","input","radialFalloffMask","resolveArg","resolveArgIn","pointwiseOp","extra","lowerProps","lowered","recompile","rest","boundary","prev","next","lowerIdentityRule","rule","defaults","target","declared","values","lowerIdentity","lowerPointwiseFilter","definition","_role","_species","effect","identityWhen","shared","color$1","mixToward","_kind","effectConfig","lowerGatherFilter","lowerDisplaceBy","effectUnion","_mcm","sim","outputKey","wave","splat","runtime","createWaveFieldSim","computeOutputs","childTex","dispTex","disp","uvs","chromaticDisplaceUVs","sampleChild","rSample","gSample","bSample","lowerWarp","map","edges","resample","uvRemapIdentityWhen","lowerShape","category","shape","lowerGenerator","paint","lowerCustom","gpu","defineStd","role","isMobileGpuViewport","coarse","cssLong","maxPixelRatioForDevice","legacySinHash11","typegpu_default","f32","$","x","fract","sin","sortStops$1","stops","stop","index","a","b","packStops","toRGBA","colors","positions","sorted","n","c","packConvertedStops","stopCount","colorSpaceMode","out","i","convertP3ToMixSpaceCPU","typegpu_default","vec3f$1","f32","MixStep","$","conv","alpha","running","convI","alphaI","tClamped","posA","posB","seg","clamp","max","mixPreconvertedInSpace","s","vec4f$1","rgb","gradientStopsInSpace","arrayOf","converted","clampedT","i32","c0","va","vb","step","backConvertToP3","call","sRGBToP3","oklabToRgb","oklchToOklab","hslToRgb","hsvToRgb","labToRgb","lchToLab","mixColorStopsRuntime","t","uniforms","acc","asLocal","vec4","createLateBoundChildInput","params","buildGroups","childNode","convertToTexture","childTexture","groups","resolve","src","asSize","createFeedbackTrailSim","opts","gpu","registerComputeTexture","onCleanup","getCpuValue","root","format","make","size","tex","allocated","track","stateA","stateB","displayTex","extraNames","extraA","extraB","name","textures","display","pair","createPingPongPair","currentGroups","shared","child","ctx","read","write","maxDt","localTime","frameParams","frame","rawDeltaTime","rawSpeed","speed","dt","steps","colorStopsTransform","value","colorStopsPropConfig","colorStopsTransform","previousValue","newValue","effective","v","n","listPropTransform","value","listPropConfig","spec","cfg","ui","listSpecOf","config","listFieldName","prop","field","listCountName","isPositionDriver","listDriverPath","index","parseListDriverPath","key","m","resolveListItems","items","opts","raw","item","out","resolveField","kind","live","p","transformPosition","listFieldLane","packList","fields","lanes","i","lane","listHasDrivers","f","c","gpuColorSpaceMode","setColorSpaceModeGpu","mode","setColorSpaceMode","parseColorChannelsGpu","parsed","Color","targetSpace","coords","alpha","transformColorGpu","r","g","b","a","vec4f$1","colorToRGBA","parsePositionAxis","val","isVertical","str","transformPositionGpu","x","y","parts","vec2f$1","gpuTransformFor","propTransform","transformColor","setShaderCanvasDimensions","width","height","isDimensionalValue","buildExtraSizeProps","props","name","d","buildDimensionalPlan","decl","extraSizeProps","pb","positionProps","sizeProps","axis","conv","resolveOriginEdges","origin","resolveOriginCenter","anchorUV","edge","he","bindingSizePx","binding","toPx","dim","boxHalfExtentsUV","hwx","hhy","resolvePositionAxis","gap","resolveSize","conversion","resolveDimensionalProp","propName","rawValue","plan","ox","oy","isDimensionalProp","createGpuUniformsMap","definition","reactiveProps","_instanceId","uniformsMap","activeColorSpaceMode","resolveColorSpaceMode","propConfig","transform","expandColorStops","expandListProp","gpuTransform","isDim","cpu","transformColorSpace","colorSpaceMode","stops","packed","packStops","converted","packConvertedStops","arrayOf","vec3f$1","f32","resolveDeviceTier","tier","isMobileGpuViewport","resolveRenderRes","SIZE_REF_RES","FIXED_POINT_GAINS","R2_ALPHA","R3_ALPHA","readAgentFrame","frameParams","fallbackAspect","fp","h","makeCpuValueGetter","getCpuValue","fallback","clampAgentCount","min$1","cap","SplatWindow","struct","i32","worldSplatWindow","typegpu_default","$","pos","reach","aspect","res","asp","max","cxi","floor","cyi","radX","ceil","radY","last","min","texelSplatWindow","vec2i$1","center","rad","energyCoverageAlpha","energy","k","exp","integrateSemiImplicitEuler","vel","force","dt","dragMul","maxSpeed","spd","length","isArrayStorage","entry","storage","isUniform","createAgentSystem","params","gpu","registerComputeTexture","onCleanup","root","layout","output","maxAgents","externalKeys","extraBindGroup","outTex","paramsU","bindings","createStateBuffer","bindGroup","pipelines","createPipelines","kernel","is2d","pipe","k2","createGuardedCompute","k1","countCap","initialized","lastSeed","step","count","grid","gw","gh","values","entries","nodes","reseeded","EDGE","INV_EDGE","gaussianBrushSq","distSq","radiusSq","gaussianBrushShiftedSq","clamp","cellPos","off","sub","dot","shiftedSqCache","DEFAULT_CUTOFF_SIGMAS","shiftedName","base","cutoffSigmas","gaussianBrushShiftedSqFn","hit","invEdge","built","gaussianBrushFnSq","buildVelocityImpulseKernel","namePrefix","u32","cx","cy","idx","cellX","cellY","dx","dy","inf","buildBrushSplatKernel","colorSpace","mixFn","mixPreconvertedVariants","mixPreconvertedLinear","brushWeight","w","brush","cell","mix","buildEmitterSplatKernel","layoutIn","densityGain","velocityBlendGain","masked","gated","gravityGain","radSq","influence","oldDens","addDens","newDens","rejuvenate","br","gravForce","mask","perpOff","vmSq","tvx","sqrt","tvy","cursorDX","cursorDY","cursorDistSq","cursorInf","neighbourCache","buildNeighbourIndex","boundary","ii","ji","di","dj","row","col","neighbourIndex","buildStableFluidsKernels","dye","nb","pressureDecay","toroidal","dyeSuffix","curl","vL","vR","vU","vD","curlZ","ambientGain","vorticity","cL","abs","cR","cU","cD","cc","gx","gy","gl","fx","fy","ax","ay","uvx","uvy","amb","curl22z","af","divergence","jf","iF","selfMask","selfVel","isWallL","isWallR","isWallT","isWallB","L","select","R","T","B","div","normalL","normalR","normalU","normalD","jacobi","pL","pR","pU","pD","velocityCap","gradSubtract","vx","vy","maxVel","vLen","capScale","kernels","srcX","srcY","x0","y0","sx","sy","ix0","iy0","ix1","iy1","v00","v10","v01","v11","decay","textureStore","vec2u$1","dyeDissipation","ageAdvance","c00","c10","c01","c11","d00","d10","d01","d11","dens","age","dd","buildFluidOutputKernel","valueHash","px","py","hash12","valueNoise2D","nx","ny","ix","iy","fract","ux","uy","fbm","seedLattice","seed","cellsPerTexel","sdx","hash11","sdy","buildNoiseFieldInitKernel","dScale","dBias","dMin","dMax","lat","dens0","colorVar","TAU","buildTrigTurbulenceKernel","gain","t","sin","cos","cdx","cdy","buildNoiseRestoreKernel","refRaw","invBlend","contrastBoost","refBoosted","rateMult","blendRate","SVG_SDF_SIZE","gridShapeUV","u","centerX","centerY","scale","rotation","dxAc","cosR","sinR","rdx","rdy","makeShapeMaskSet","paramsSchema","schema","maskEntry","analyticLayout","svgLayout","texture2d","fieldLayout","shapeType","sdfFn","buildAnalyticSdfFn","inside","sdfUV","sizeM1","tx","ty","dist","textureLoad","uxc","uyc","outsideDist","maxT","createFluidKernelPass","createStableFluidsPasses","size","mk","passes","jacobiIters","steps","TWO_PI","TWO_PI$1","WAVE_CELLS","WAVE_MAX","WAVE_DAMP","WAVE_SETTLE_MS","HEIGHT_SLAB_PAD","HEIGHT_FIELD_STATE_FORMAT","HeightFieldParams","a","struct","f32","vec3f$1","createHeightFieldParamsUniform","root","u","p","waveEquationLayout","typegpu_default","arrayOf","WAVE_CELLS","heightFieldMarchLayout","textureStorage2d","createWaveStateBuffers","createStateBuffer","buildSpectralHeightField","waveType","octaveCount","cursorEnabled","invTotalWeight","vec2f$1","$","uv","v","amp","freq","seedU","waveVal","accSin","i","iF","scale","exp2","weight","cu$1","cos","su","sin","ru","phase","TWO_PI","accR","driftX","driftY","coord","mxNoiseFloat2","n","abs","warpFreq","wx","wy","wu","wv","accW","cu","cv","pinFalloff","smoothstep","max","pinMask","mix","baseHeight","ripple","H","waveU","waveV","Nm1","WAVE_MAX","gx","clamp","gy","ix","u32","iy","ix1","min","iy1","fx","floor","fy","W","v00","v10","v01","v11","waveSample","makeWaveEquationKernel","cx","cy","gs","idx","left","right","up","down","center","sum","prev","dampFactor","k2","lap","next","cellU","cellV","ddx","ddy","distSq","influenceRadius","influence","exp","bound","makeHeightFieldMarchKernel","opts","edgeMode","lightingEnabled","marchSteps","marchRefine","computeW","computeH","heightFn","screenU","screenV","ndcX","ndcY","rayDir","normalize","envelope","dzSign","select","dzSafe","tTop","tBot","tEnter","tExit","farPos","hit","finalT","hitU","hitV","lit","stepSize","tMarch","pStart","prevDiff","s","pos","h","diff","tLow","tHigh","r","tMid","pMid","hitPos","hC","hR","hUp","dhdu","dhdv","nrm","lightDir","viewDir","diffuse","dot","halfVec","specPow","specular","pow","ambient","tintedDiffuse","tintedSpec","totalLight","rawSampleUV","finalUV","outOfBoundsMask","edgeMirrorUV","edgeWrapUV","inside","CUTOFF_RANGE","edgeAA","nearT","farT","nearMask","farMask","finalMask","textureStore","vec2u$1","vec4f$1","createKernelPass","kernel","k","createGuardedCompute","createGridKernelPass","grayScottParamsSchema","makeGrayScottPlainLayout","Params","makeGrayScottDriveLayout","texture2d","buildGrayScottStep","namePrefix","drive","suffix","layout","driveLayout","nbr","i32","ii","ji","di","dj","row","col","driveMap","dims","textureDimensions","fw","fh","px","py","texel","textureLoad","cov","luma","gain","shaped","signed","rates","drv","dm","feed","kill","mod","self","L","R","T","B","TL","TR","BL","BR","lapU","lapV","fk","feedCell","killCell","U","V","uvv","newU","newV","cellX","cellY","dxp","dyp","inf","buildScatterSeedKernel","density","hash12","vSeed","buildPairPublishKernel","format","brushWeightCache","buildAspectBrushWeight","cxf","cyf","mouseX","mouseY","radius","falloff","aspect","dx","dy","dist","sqrt","inner","makeAspectBrushWeight","built","buildOddEvenSortSet","vertical","direction","count","nF","maxC","LumaParams","SwapParams","lumaLayout","swapLayout","outputLayout","brushWeight","key","round","rgb","unpremultiplyAlpha","makeSwap","parity","xf","yf","lineC","fixedC","lineCf","lineCi","myOff","myCol","isLeft","partnerLineI","valid","pClamped","pClampedU","partnerX","partnerY","partnerIdx","partnerOff","partnerCol","myC0","myC1","myIdx0","myIdx1","myKey","pC0","pC1","pIdx0","pIdx1","partnerKey","wMy","wP","rnd","hash13","gate","keyDiff","takePartner","decayed","output","frameDiffMask","live","threshold","dRgb","dA","hueRotateTurns","amount","hsl","rgbToHsl","hslToRgb","fract","buildFeedbackTrailStep","res","source","hueCycle","diffuseHalfUv","driftScale","sampleHistory","uvx","uvy","textureSampleLevel","sampleLive","texelUv","feedbackUv","P","zoom","bx","by","decayedTinted","dec","trailFn","stamp","m","trail","outA","rgbNormal","rgbScreen","rgbAdd","b","outC","buildMacroblockAdvectKernel","coarseScale","coarsePick","quantLevels","quantAmount","energyDecay","resF","churnRate","bsF","coarse","cbx","cby","cPhase","hash11","cEpoch","bs","bPhase","bRate","bEpoch","bh","h1","h2","h3","bcx","bcy","field","thresh","hold","flowAng","ang","mag","suRaw","svRaw","inBounds","sv","sx0","sy0","sfx","sfy","maxT","ix0","iy0","p00","p10","p01","p11","prevC","quant","held","rekey","srcDims","srcW","srcH","cx0","cy0","cfx","cfy","jx0","jx1","jy0","jy1","c00","c10","c01","c11","fresh","LUMA_QUANT","CHROMA_QUANT","COS_LUT_FLAT","SQRT1_2","PI_OVER_16","COS_LUT","LUMA_QUANT_C","CHROMA_QUANT_C","jpegBlockCache","buildJpegBlockRgb","nLuma","block","localX","localY","quality","qualityC","qScale","Yv","Cbv","Crv","c","rowCoef","y","x","acc","av","au","colSum","q","Gq","cxv","Y","sumCb","sumCr","qChroma","GdcCb","GdcCr","Cb","Cr","makeJpegBlockRgb","buildBlockQuantizeGraph","scaleN","blockPx","blockRgb","cellXf","cellYf","blockCol","blockRow","originX","originY","wm1","hm1","flowDirectionColor","s0","s1","s2","s3","s4","base","liquidIntensity","flow","flowMagnitude","length","hasFlow","normalizedX","normalizedY","rightAmount","leftAmount","upAmount","downAmount","horizontalColor","verticalColor","horizontalWeight","verticalWeight","totalWeight","rootPassthrough","childNode","expr","animatedTime","params","seedName","fieldName","seed","SVG_SDF_SIZE$1","cache","pending","waiters","getSdfContentBounds","url","onReady","scan","res","buf","pixelCount","valueAt","u","i","f","minX","minY","maxX","maxY","y","row","x","fns","fn","isSdfContentBoundsScanned","SPRING_MAX_SUBSTEP","applySpring","current","velocity","target","smoothing","momentum","dt","stiffness","damping","steps","h","pos","vel","force","applyBounceEase","t","applyEasing$1","easing","clampToTextureCap","w","env","pr","gpuCssCap","capW","capH","scale","deriveElapsedTime","sharedTimeOrigin","prevElapsed","deltaTime","now","frameGate","state","lastRenderTime","isVisible","forceFullFrameRate","minInterval","sinceLast","awaitGpuIdle","root","queue","resolve","runFrameSequence","seq","createFrameLoop","tick","rafId","raf","cb","cancel","id","step","SHAPE3D_TYPES$1","is3dShapeType$1","shapeType","isSvg3dShapeType$1","shapeType","SVG3D_DEFAULTS$1","shapeSubPropMax$1","value","fallback","oMin","oMax","SHAPE3D_DEFAULTS$1","shape3dBoundingRadius$1","cfg","d","n","k","f","shapeEffectBoundingBoxDeclaration","props","cw","ch","scale","cx","cy","hwf","hhf","shapeContentExtent","fieldPx","bounds","currentProps","center","isNonUniformShapeEffect","parseShapeConfig$1","shapeParseCache","shape","parsed","sb","getSdfContentBounds","base","t","isSvg3dShapeType$1","cfg$1","sub","br","is3dShapeType$1","r","bw","tw","h","spread","w","sk","resolveShapeType","shapeType","sdf3d_exports","__export$1","MarchParams","RotStruct","SHAPE3D_DEFAULTS","SHAPE3D_TYPES","SVG3D_DEFAULTS","SVG3D_TYPES","SampleParams","VOLUMETRIC_FIELD_EXTRA_FIELDS","VOLUMETRIC_FIELD_FORMAT","VOLUMETRIC_FIELD_RES","boxFaceUV","buildFieldSampleGraph","buildFieldSampleGraphArgs","buildRaymarchedField","buildRaymarchedFieldFn","buildVolumetricFieldKernel","buildVolumetricFieldSampler","capsuleSurfaceUV","createAnalytic2dExtrudeSetup","createAnalytic3dSdfSetup","createSvg3dSdfSetup","createVolumetricFieldCompute","createVolumetricFieldComputeNode","eulerRotatePacked","is3dShapeType","isMobileGpuViewport","isSvg3dShapeType","isVolumetricShapeType","makeVolumetricFieldLayout","makeVolumetricSvgFieldLayout","mobiusSurfaceUV","packedParamExtraFields","paramBoxSdf","paramCapsuleSdf","paramMobiusSdf","paramSphereSdf","paramTorusSdf","paramTwistedRibbonSdf","resolveActiveFieldRes","resolveShapeFieldSampler","resolveShapeSubProp","resolveVolumetricFieldRes","rotateVec3","rotateVecCpu","sdBicone","sdCappedCone","sdCapsule","sdCutSphere","sdDodecahedron","sdEllipsoid","sdFlatBand","sdGem","sdGyroscope","sdHelix","sdHexPrism","sdLink","sdMetaballs","sdOctahedron","sdPyramid","sdRibbon","sdRoundBox","sdRoundCylinder","sdSphere","sdTorus","sdWobbleBlob","shape3dBoundingRadius","shapeSubPropMax","smin","sphereSurfaceUV","torusSurfaceUV","twistedRibbonSurfaceUV","PI","TWO_PI","bounceEase","applyEasing","easing","frame","key","t01","phase","target","st","np","nv","applySpring","smoothed","exponent","dflt","vx","vy","vz","s","x1","z1","y2","z2","typegpu_default","vec3f$1","f32","$","p","length","hx","hy","hz","rounding","qx","abs","qy","qz","outer","max","inner","min","ringR","tubeR","vec2f$1","dx","dy","cyc","clamp","r1","r2","k2x","k2y","cax","select","cay","dotNum","dotDen","cbx","cby","sInner","dca","dcb","sqrt","b","ht","h2","denom","dz","dBase","he","kx","ky","kz","ax","ay","az","dk","px","py","ex","ey","dHex","sign","dZ","rx","ry","rz","k0","k1","abx","aby","apx","apy","den","dxx","dyy","dist","le","ring","a","mix","sides","lenXZ","ang","atan2","sector","idx","floor","ca","ri","cos","R","tube","pitch","turns","psi","theta","ccx","ccy","ccz","sin","MetaballArray","arrayOf","METABALL_COUNT","b0","b1","b2","b3","b4","b5","b6","b7","balls","dd","i","q","dot","c","case0","case1","th","len","amp","freq","ph1","ph2","twRate","twPh","lip","yc","zc","round","bx","by","d2","radialDist","axialDist","hw","rnd","radius","width","thick","core","c1","s1","c2","s2","c3","s3","dCore","p1y","p1z","d1","p2x","p2z","p3x","d3","struct","v","rot","sdfFn","patternMode","chordMode","STEP_MIN","STEP_MAX","STEP_SCALE","vec4f$1","fuv","rBound","ro0","rd0","ro","rd","steps","i32","perp","halfSpan","tStart","tEnd","tPrev","minD","hit","fieldVal","patternU","patternV","viewDepth","eLo","eHi","mid","tEnter","tExit","sInPrev","sIn","fLo","fHi","roB","span","sPrev","xLo","xHi","halfChord","hp","e2","nlx","nly","nlz","anx","anyv","anz","branch1","branch2","branch23","pattern","ACTIVE_RES_BUCKETS","spanXv","spanYv","canvasHeightDevicePx","maxRes","prevRes","footprintScale","targetPx","res","align","size","u32","textureStorage2d","layout","marchFn","activeResF","field","textureStore","vec2u$1","sampleLayout","texture2d","fetchTexel","xi","yi","maxT","tx","ty","textureLoad","uv","uxc","uyc","outsideDist","x0","y0","fx","fy","tx2","tx3","wx0","wx1","wx2","wx3","ty2","ty3","wy0","wy1","wy2","wy3","k00","k01","k02","k03","k10","k11","k12","k13","k20","k21","k22","k23","k30","k31","k32","k33","rAcc","aAcc","bl","rMin","rMax","aOut","rNear","smoothstep","t00","t10","t11","root","kernel","onCleanup","extra","fieldTexture","paramsUniform","bindGroup","pipeline","createGuardedCompute","bg","activeRes","originX","originY","spanX","spanY","cxm","cx0","cx1","cx2","cym","cy0","cy1","cy2","oxf","bx0","bx1","bx2","bx3","dbx0","dbx1","dbx2","dbx3","oyf","by0","by1","by2","by3","dby0","dby1","dby2","dby3","drdpx","drdpy","kSoft","hCap","rCap","hFlr","rSoft","rOut","insideX","insideY","invOut","fieldSampleArg","fieldSampleGradArg","fieldSampleFastArg","fieldSampleTexelArg","texelSpanFn","acc","argsFor","call","params","options","gradMode","bakedGradients","computeOutputs","uniforms","propValues","getCpuValue","fieldTex","baked","sampler$1","shapeSdfUrl","bakedSvg","createSvgSdfSamplerWithGradients","createSvgSdfSampler","sampler","createAnalyticSdfSampler","driveAnalyticSubProps","DEG","parseShapeConfig","raw","initialConfig","getShapeConfig","opts","defaults","extraPad","marchParamsBuffer","pp","elapsed","lastShapeJson","lastCfg","springs","pA","pB","pC","pD","sx","sy","cz","sz","mb","writeMarch","update","frameParams","deltaTime","count","sp","tt","wob","wf","slope","wb","th1","th2","th3","rPad","setActiveRes","getGeometryKey","m","texture","getVersion","createSdfDataTexture","SIZE_F","MAX_TEXEL","halfDepth$1","bevel$1","u","s00","s10","s01","s11","field2d","wz","halfDepth","bevel","cb","pad","eX","eY","axisPad","rBoundX","rBoundY","rPadX","rPadY","getStateKey","getHalfDepth","analytic","buildAnalyticSdfFn","analyticSubPropValues","setup","march","compute","lastKey","marchEvery","changedFrames","domain","fp","hDev","TWISTED_RIBBON_TWIST_RATE","rp0","rp1","_rp2","_t","_n","normalize","rp","ringDist","rp2","rn","an","scaleX","scaleY","scaleZ","uvX","uvY","uvZ","pickXZ","halfHeight","clampedY","ringRadius","halfWidth","thickness","phi","spine","dvec","halfPhi","ev","vProj","du","angleRad","twist","halfW","lipschitz","cosA","sinA","rpx","rpy","twistAngle","sa","localU","localV","localUClamped","prefix","initials","out","initial","arrowSdf","typegpu_default","f32","$","n","hl","hw","px","abs","py","qx","qy","k","clamp","max","ax","ay","bx","by","dSq","min","inside","select","sqrt","capsuleSdf","r","tc","boxSdf","ox","oy","AGENT_SHAPES","resolveAgentShape","name","fallback","orientedShapeOptions","pointShapeOptions","makeAgentWeightFn","shape","s","sdFn","HL","HW","t","bodyR","aaW","soft","sd","wHard","smoothstep","gq","mix","exp","makeAgentTexelWeightFn","isDisc","q","_t","_n","_aaW","_q","orientedShapeProfile","opts","comet","makeOrientedCometWeightFn","p","weightFn","SOFT","tEval","tk","bright","qEval","reynoldsSteer","vec2f$1","dir","vel","maxSpeed","maxForce","len","length","steer","sl","cruiseVariation","fi","hash11","presenceVariation","straightAlphaOver","vec4f$1","c","pa","outA","rgb","dipoleOrRadialField","rhat","axis","fieldType","mdotr","dot","nematicTorque","target","theta","sin","trailMaxDecay","col","curA","prev","trails","prevA","win","outRGB","vec3f$1","applyCameraRows","pw","rowX","rowY","rowZ","applyCameraRowsTransposed","v","BilinearFrame","struct","u32","bilinearTexelFrame","uv01","dims","cu","cv","cx0","floor","cy0","cursorFalloff","delta","radSq","dl","cursorMagnet","force","makeUniformScatterInit","layout","i","prm","hash33","makeBallCloudInit","cfg","RAD","ZS","normalize","rad","pow","seed","makeClusterFormationInit","PER","MIN","TAU","flocks","rc","ang","hd","cos","center","ra","jAng","sp","makeRestingDirectorInit","PI","theta0","makeStrokePolylineScan","MAX_POINTS","SUBDIVISIONS","texture2d","pointsTex","uv","aspect","radius","shrink","softness","viewportH","baseRadius","edgeW","sharp","minSdf","ageSum","wSum","prev2","cur","textureLoad","vec2u$1","cx","cy","linked","prevAlive","usePrev2","jx","jy","sx0","sy0","ageS","widPrev","widS","ex","ey","ageE","widE","sx","sy","sAge","sWid","jMin","jAge","omt","bAge","bWid","rb","bax","bay","tt","dist","w","age","dualImpl","Void","atomicNormalError","atomicLoad","a","isAtomic","safeStringify","_ctx","stitch","atomicActionSignature","u32","i32","atomicOpSignature","paramType","atomicStore","value","atomicAdd","AgentPose","struct","vec2f$1","f32","splatOrientedWorld","layout","cfg","L","profile","orientedShapeProfile","RES","INV_RES","AA_W","SPLAT_R","EXT","GAIN","FIXED_POINT_GAINS","home","pose","typegpu_default","$","i","homeP","cos","sin","vel","spd","length","select","max","excitement","_spd","clamp","_i","cometWeight","makeOrientedCometWeightFn","plainWeight","makeAgentTexelWeightFn","texelWeight","_dSq","offX","offY","dir","bodyR","_bodyRSq","aaW","dSq","_dir","bodyRSq","t","n","prm","p","agitI","agitGain","aspect","radW","extSq","win","worldSplatWindow","py","offYSq","px","w","e","idx","pointSlot","RATE","RAD","TAU","fi","stored","h","hash22","rate","ph","rad","FREQ","hash11","twk","mix","presenceVariation","splatPointWorld","AGENT_SHAPES","resolveAgentShape","name","FORCE_SOFT","HARD_GAIN","SOFT_GAIN","place","brightness","bodyRadius","weightFn","fast","q","_soft","general","makeAgentWeightFn","_q","soft","s4","pos","bright","softV","extK","gain","invBodyR","reach","reachQ","makeSoftenedProfile","shape","names","glowProfile","_ddx","_ddy","_size","exp","ddx","ddy","size","splatVolume","profileFn","OUT_RES","MAX_SPLAT_SIZE","EXTQ","persp","xs","ys","rx","ry","u","v","outF","tx","ty","speedNorm","doSpeed","ceil","radF","texelSplatWindow","vec2i$1","sizeSq","ddySq","splatRelief","s","EXT_SHAPE","MIN_ALPHA","FP","MIN_WEIGHT","WOBBLE_FREQ","PERSP_K","gx","gy","P","p4","col","childA","homeU","homeV","wob","wx","wy","wz","rv","applyCameraRows","vec3f$1","persp0","su","sv","dotR","dr","near","smoothstep","shade","depthWeight","cw","extR","onTarget","owU","wc","resolveRamp","mixFn","mixColorsVariants","mixColorsLinear","INV_GAIN","energyOf","eRaw","x","y","sRaw","energy","agitAvg","energyCoverageAlpha","textureStore","vec2u$1","vec4f$1","composite","curA","trailMaxDecay","_idx","out","resolveTint","resolveWeightedColor","ALPHA_K","wRaw","rRaw","gRaw","bRaw","denom","r","b","alpha","splat","resolve","pressure","DGRID","DOMAIN","densAt","cx","cy","cz","g","z","densTrilinearGrad","c","base","floor","f","bi","bj","bk","acc","gz","dz","dy","dx","sx","sy","sz","cv","clearKernel","splatKernel","gi","_vel","_seed","gv","pressNorm","containment","field$1","E","wall","recall","homing","entrainment","sd","gn","F","wallF","rl","recallF","homingF","featureVel","cross","insideM","cursorXY","mxy","cursorMagnet","gravity","_pos","turbulence","posScale","timeX","timeY","seedScale","seed","hash33","composeForces3","parts","part","index","forces3d","total","MAX_SPEED","C","v4","vPrev","dt","v3","integrateSemiImplicitEuler","flocking","MAX_AGENTS","maxSpeedI","sep","ali","coh","nCount","sCount","j","other","opos","off","dsq","dot","accel","aliSteer","reynoldsSteer","cohSteer","cursorSteer","_maxSpeedI","cd","cdsq","cdist","sqrt","falloff","sign","wallTurn","m","tf","composeSteer2","steering2d","AGIT_REST","AGIT_GAIN","AGIT_COOL","FLOOR","REST","self","cruiseVariation","effort","raw","cooled","clamped","hitX","hitY","nvx","nvy","FieldSample","dipoleOrRadial","cursor","delta","rhat","B","dipoleOrRadialField","atan2","restOrientationAngle","restMode","alignToField","fld","theta","_fi","nematicTorque","restTorque","_fld","composeTorques","jitteredGridHome","OVERSCAN","cols","row","jx","jy","orientation2d","fieldAt","MAX_OFFSET","st","omega","abs","pull","offLen","variedHeading","speedMul","ang","cursorGust","impulse","drift2d","drift$1","gust","gustV","channelLuminance","rgb","_a","channelLuminanceInv","channelRed","channelGreen","channelBlue","channelSaturation","mx","mn","min","channelAlpha","_rgb","channel","cursorInView","homeW","deltaS","mz","cursorFalloff","applyCameraRowsTransposed","relief","channel$1","STIFF","dims","textureDimensions","bf","bilinearTexelFrame","c00","textureLoad","c10","c01","c11","prem","ch","targetZ","needsSnap","cf","offN","curZ","hash12","seenN","advect2d","N","INERTIA_RATE","HOME_RATE","R2A","R2_ALPHA","R2B","NF","v00","v10","v01","v11","gvx","gvy","fieldVx","fieldVy","blend","homeX","fract","homeY","velX","velY","nposX","nposY","force","torque","field","drift","integrator","extrudeZ","d2","ox","oz","analyticExtruded","sdf2d","p3","svgExtruded","svgLayout","SIZE","sizeM1","exX","exY","analytic3d","baked","rotateVec3","svgLifted3d","ps","shapeField","expDecay","pointerToShapeLocal","opts","dxAc","dyv","omegaFromRotationDeltas","prev","next","ex","rotateVecCpu","ey","ez","entrainmentFromOmega","om","omLen","omCap","createMotionAxis","smoothing","teleport","lastX","lastY","axisX","axisY","mvx","mvy","mvLen","nx","ny","al","fitJitteredGrid","count","domainX","overscan","spanX","spanY","rows","fitIsoGrid","min$1","max$1","cameraRowsYDown","rz","m00","m01","m02","m10","m11","m12","m20","m21","m22","r3SubCellOffset","frameIdx","cell","R3_ALPHA","renderAgents","ramp","extraOnSplat","splatCfg","weightedColor","agentSim","params","childTexture","sys","createAgentSystem","tick","resolveInput","src","ctx","childNode","computeOutputs","ZERO","sampled","typegpu_default","vec3f$1","f32","$","rgb","luma709Dot","dot","luma601Dot","x","contrast","pivot","clamp","signedToUnit","v","abs","toneUnitPivotInverted","noise01","balance","k","toneSignedInverted","adjusted","toneUnitMultiplicative","signed","toneGlowInverted","glow","spread","pow","contrasted","balanceShift","balanced","toneRemap","options","domain","contrastMode","invert","glowGamma","rgbDither","vec4f$1","vec2f$1","base","uv","viewport","animTime","n","hash12","radialGaussianFalloff","typegpu_default","f32","$","dist","sharpness","exp","anisotropicGaussianSpot","du","dv","radialGaussianGlow","vec2f$1","uv","aspect","lx","ly","sizeSq","dx","dy","dd2","angularSineLobes","angle","count","phase","pow","sin","angularCosineSpikes","halfCount","power","abs","cos","seamlessAngularField","vec3f$1","delta","atan2","TAU","floor","smoothstep","chromaticRingBand","center","spread","width","w","max","pointToSegment","p","a","b","lineVec","toPoint","dotProduct","lineLengthSq","t","clamp","closestPoint","distVec","sqrt","taperedSegmentGlow","startThickness","endThickness","startSoftness","endSoftness","thickness","mix","softness","normalizedDist","edgeEnd","alpha","streakBand","u","heatRamp3","heat","hot","mid","fringe","toMid","toHot","chromaticHeatTaps","rampR","rampG","rampB","radialFeatherMask","radius","feather","falloffStart","softRayLobes","radialBurstFrame","viewport","aspectOf","cx","cy","vignetteMask","strength","vigX","vigY","vigD2","screenGlowComposite","vec4f$1","color","leakRgb","base","outRgb","leakLuma","luma601Dot","beamLocalFrame","anchorRaw","pA","anchor","toCenter","cLen","length","dirX","select","dirY","relX","relY","footprint1","typegpu_default","f32","$","x","softness","baseW","max","abs","dpdx","dpdy","footprint2","vec2f$1","p","dpx","dpy","quilezStepFilter","w","threshold","a","b","oneMinusThreshold","Fa","floor","fract","Fb","clamp","quilezLineFilterAxis","N","min","quilezCheckerFilter","aHalf","minusSideX","minusSideY","plusSideX","plusSideY","iX","iY","lineMaskFromField","field","lineWidth","lo","hi","smoothstep","step","bandMask","discCoverage","dist","radius","footprint","INV_360","gradientRawT","start","end","angle","uv","viewport","startPos","unflipPosition","endPos","gradientVector","gradientLength","length","gradientDir","normalize","safeViewportY","aspect","angleRad","DEG_TO_RAD$1","cosAngle","cos","sinAngle","sin","midpoint","centeredUV","rotated","rotate2","projection","dot","gradientEdgeMirror","m","mod","select","gradientEdgeWrap","gradientClamp01","gradientTransparentAlpha","inLow","inHigh","radialDist","center","skewAngle","ellipseAspect","delta","aspectCenteredDelta","skewRad","safeRadius","conicSweep","rotation","atan2","normalized","TAU","rotationFraction","diamondDist","size","roundness","rotRad","absDx","absDy","mix","repeatRings","repeat","s","repeatWrap","colorWheelT","scale","animTime","aspectOf","projectedCoord","directionalProjection","canvasCentredDelta","colorWheelRainbow","vec4f$1","h6","colorWheelPhase","t3","colorWheelSelect","c01","c12","c20","floorT3","spiralOffset","dx","dy","l","TWO_PI$1","spiralMask","strokeWidth","strokeFalloff","offset","stripe","shape","baseWidth","falloffAmount","width","fw","fwidth","fwMult","pixelSize","mpgWeight","uvAspect","pos","effPower","sqrt","pow","mpgFactors","vp","posA","posB","posC","posD","posE","smoothness","pA","aspectCentrePosition","pB","pC","pD","pE","wA","wB","wC","wD","wE","accW1","t1","accW2","t2","accW3","accW4","beamField","startThickness","endThickness","startSoftness","endSoftness","acStart","acEnd","proj","pointToSegment","taperedSegmentGlow","colorT","alpha","plasmaTone","toneRemap","volumeDomain","vec3f$1","exp","unitNoise3","mxNoiseFloat3","flowLayers","detail","t","freq1","d1","pattern1","freq2","d2","pattern2","freq3","d3","pattern3","unitThreshold","pattern","bias","low","high","shimmerPulse","speed","span","depth","godraysHash","hash12","godraysValueNoise","st","i","f","c","e","u","godraysRaysShape","aWrapped","blend","r","freq","intensity","nLeft","godraysFrame","centerPos","shapeUV","ang","seamlessAngularField","godraysRayLayer","frame","spots","intensityCalc","dens","sched","freqs","rA","rB","shapeA","shapeB","godraysRayStack","animTimeRaw","density","spotty","layer1","layer2","coverageOverComposite","rayColor","bgColor","coverage","rayA","finalAlpha","safeAlpha","rayContribution","bgContribution","leakDrift","seed","flicker","nA","value12","nB","breathe","leakBloom","v","spread","drift","evo2","sp","elong","du","dv","anisotropicGaussianSpot","leakStreaks","streaks","evo1","evo3","alongFade","s1c","s1w","streak1","streakBand","s2c","s2w","streak2","heatDither","heat","rampWrap","cycles","toE","v","floatE","emit","ctx","callB","name","args","Expr","a","binary","op","b","add","sub","mul","div","neg","abs","x","floor","fract","sqrt","pow","y","exp","sin","cos","atan2","min","max","clamp","lo","hi","mix","t","mixExpr","step","edge","smoothstep","e0","e1","sign","length","dot","normalize","rotate2","p","cosA","sinA","vec2","member2","m","reflect","i","n","refract","eta","exp2","hashPhase","seed","salt","lt","le","gt","ge","select","cond","ifTrue","ifFalse","float","vec3","z","vec4$1","parts","vec4","splat3","local","hint","asLocal","softPlus","k","xe","gaussBell","noiseToneKColor","toneUnitPivotInverted","mixStopsOrColorsExpr","params","endpoints","uniforms","propValues","colorSpaceMode","mixColorStopsRuntime","call","mixColorsVariants","mixColorsLinear","f","F_GOLDEN","GOLDEN","F_TAU","TAU","SCATTER_DRIFT_RATE","U32","bitView","floatBitsToUint","x","umul","a","b","hash11Cpu","p","u","hash22Cpu","y","h","spiralScatterCpu","fi","count","seed","drift","aspect","animTime","theta","r","jh","jx","jy","ph","phx","phy","w1","tw","dx","dy","nx","ny","packScatterAnchors","out","baseArg","spec","floatE","Scalar","resolveScalar","fArg","e","frame","structural","ref","colorSpaceModeOf","raw","transformColorSpace","mixColorsIn","space","colorLadder3","slots","t1","t2","variant","uniformOf","pair","t","stops","spaceMode","TRANSPARENT","MIRROR","WRAP","rampOver","field","palette","opts","uv","edgeMode","finalT","gradientEdgeMirror","gradientEdgeWrap","gradientClamp01","color","cut","gradientTransparentAlpha","vec4","dist","viewport","gradientRawT","radialDist","conicSweep","diamondDist","spiralMask","animatedTime","rings","coord","repeatRings","tiles","repeatWrap","tone","plasmaTone","threshold","unitThreshold","share","cache","bound","asLocal","NOISE_BASES","unitNoise3","perlin13","value13","mxNoiseFloat3","noiseField","basis","entry","_params","warped","warpFn","domainWarp2","amount","time","scaledVolume","volumeDomain","flowField","flowLayers","pulse","shimmerPulse","hueWheel","local","mul","fract","vec3","clamp","sub","abs","shimmered","paint","gain","scatterField","v","scatterFieldAnchored","scatteredAnchors","width","height","lastKey","key","wrapRamp","rampWrap","foldRamp","warpedPoint","domainWarp1","warpStep","chainedWarpStep","vec2","standardPalette","quadBlend","colorA","colorB","colorC","colorD","cols","prop","c","fields","i","conv","convertP3ToMixSpaceCPU","row1$1","mixPreconvertedInSpace","row2$1","mixPreconvertedVariants","mixPreconvertedLinear","tintToward","color","opts","displaceBy","field","gather","config","TWO_OVER_SQRT3","CellTile","struct","vec2f$1","squareTiling","typegpu_default","$","p","floor","fract","HexCell","hexTiling","sh","a","flooredMod2","b","gv","select","dot","triLattice","SQRT3","cellCentreUV","f32","uv","viewport","cells","aspect","max","correctedX","correctedY","cellCenterCorrectedX","cellCenterCorrectedY","cellCentreUVRotated","rotationRad","cosR","cos","sinR","sin","centerX","centerY","cx","cy","rotX","rotY","cellRX","cellRY","ccx","ccy","unrotX","unrotY","cellHash","id","q0","q1","rowSpeedHash","row","rowSpeedMultiplier","rowHash","variance","variationFactor","rand","variation","INV_SQRT3_2","SQRT3_2","latticeFrameFlipY","rotationDeg","aspectOf","correctedUV","rotRad","DEG_TO_RAD$1","rotateAboutCanvasCentre","latticeFrameCW","ang","latticeFrame","cellVariation","cellId","strokeBandFloored","field","lineWidth","pixel","softness","soft","lineMaskFromField","strokeBandSymmetric","aaWidth","checkerBlend","aspectCorrectedUVFlipY","quilezCheckerFilter","footprint2","stripeCoordP","angle","density","animTime","offset","angleRad","rotatedCoord","directionalProjection","canvasCentredDelta","stripesMask","balance","quilezStepFilter","footprint1","chevronMask","count","cosA","sinA","rot","rotate2","zigzag","abs","stripeCoord","pattern","fw","fwidth","smoothstep","ripplesMask","center","frequency","thickness","phase","dist","length","baseWave","thicknessThreshold","banded","colHash","idx","fallingCapAlpha","vPeriodic","trailLen","hw","rounding","fwU","distFromCenter","maxDepth","gapDist","tcap","clamp","capHW","sqrt","fallingBalanceRemap","withinStreak","balanceNum","balanceDen","fallingLinesField","vp","speedVariance","trailLength","strokeWidth","centeredUV","u","v","colF","colIdx","colLocalU","h","speedMod","animOffset","fwV","streakMask","widthMask","gridCellCenterUV","rotation","gridField","gridUV","safeLine","lineFraction","N","dpx","dpdx","dpy","dpdy","wx","wy","iX","quilezLineFilterAxis","iY","gapBoth","step","dotGridAlpha","dotSize","twinkle","time","rowIndex","drift","staticStagger","flooredMod1","tile","centerDistance","pixelSize","coverage","discCoverage","dotPhase","twinkleTime","TAU","twinkleModifier","mix","hexGridField","scaledUV","hex","variedFactor","round","pAbs","hexDist","triangularGridField","ps","psShifted","cell","upper","min","brickFrame","centred","brickRowStagger","seed","rowMod2","brickMortarMask","cellUV","mortarUV","aaUV","brickU","bandMask","brickV","brickField","cellsX","cellsY","mortar","frame","mortarU","mortarV","stagger","brickArg","vScaled","cellU","cellV","aaU","aaV","truchetHash","truchetField","flip","c1x","c2x","weaveColor","vec4f$1","gap","colorA","colorB","hBand","vBand","isHTopFloat","intersection","hVis","vVis","weightA","weightB","totalAlpha","safeWeight","INV_2_SQRT3","isoCubeField","vec3f$1","s0","s1","s2","isTop","tone","mx","mn","midScore","internal","SMOOTHNESS","halftoneClassic","childColor","angleDeg","aspectUV","s","brightness","dotPattern","halftonePlateUV","misprintAngleDeg","plateIndexDeg","misprint","halftoneChannelK","halftoneChannelC","k","invK","halftoneChannelM","halftoneChannelY","halftonePlateGrid","intensity","size","halftoneTransmission","inkColor","inkMask","ditherCoord","gridRes","ditherPixUV","coord","ditherLuma","c","ditherBayerQuad","ditherPeriodic","tx","ty","x2","y2","x4","y4","x4h","y4h","x8h","y8h","b00","b11","b22","bayer2","bayer4","bayer8","i32","cd","ditherBlueNoise","ditherWhiteNoise","hash12","ditherOrderedResult","ditherValue","luminance","threshold","spread","ditherBlockOrigin","ditherLocalCellIndex","blockOrigin","ditherCellUV","lx","ly","ditherFloydSteinberg","arrayOf","lum","lic","thr","ecur","enext","licInt","result","y","ltr","xi","x","val","qv","e","dir","xr","xbl","xbr","ditherComposeCustom","ditherResult","rgb","ditherComposeSource","sourceColor","out","resolveSlot","slot","params","uniformOf","shared","build","cache","hit","FRAME_BODIES","cellFrame","slots","body","paintFrame","call","vary","color","factor","vec4","strokeOver","layers","mixColorsIn","sampleMapsAtCellCentres","uniforms","ctx","cellCenter","prop","withAlpha","alpha","alphaOf","rgbOf","times","mixOf","from","to","amount","mixExpr","opaque","checkerCells","stripeBands","animatedTime","zigzagBands","ringWaves","fallingStreaks","local","dotLattice","gridLines","hexLines","triangleLines","brickCourses","truchetArcs","weaveThreads","isoCubeFaces","dotScreenMask","inkTransmission","dotScreen","gather","sampleStraight","PLATE_CHANNELS","halftoneChannelC","halftoneChannelM","halftoneChannelY","halftoneChannelK","cmykPress","slots","gather","sampleStraight","ctx","uniforms","u","ref","uniformOf","printed","plate","index","sample","call","halftonePlateUV","floatE","channel","intensity","inkTransmission","dotScreenMask","vec4","chosenBy","prop","read","recipes","cases","resultAlpha","c","params","ditherPatternOf","raw","ditherColorModeOf","pixelGrid","coord","shared","local","ditherCoord","source","ditherPixUV","orderedThreshold","pattern","ditherBlueNoise","ditherWhiteNoise","periodic","ditherPeriodic","quantise","threshold","spread","gridRes","pixelSize","blockOrigin","ditherBlockOrigin","lic","ditherLocalCellIndex","lums","ly","lx","cellUV","ditherCellUV","ditherLuma","ditherFloydSteinberg","arrayExpr","luminance","ditherOrderedResult","ditherInks","levels","ditherComposeCustom","ditherComposeSource","cellHash2","typegpu_default","vec2f$1","$","p","fract","sin","dot","nearest2Cells","options","distance","jitter","name","key","cached","nearest2Cache","suffix","built","f32","scaledUV","animT","seed","cell","floor","localUV","d1","d2","ny","nx","offset","h","pointX","clamp","TAU","pointY","cos","dd","length","min","max","jitterAmount","metric","animTSlow","px","py","jx","mix","jy","deltaX","deltaY","dEuclid","dManhattan","abs","dChebyshev","select","CELL_MODES","CELL_METRICS","cellReduceSelectable","mode","isEuclid","sd1","sqrt","sd2","raw","cellRatio","power","safeSum","pow","cellEdgeMask","softness","edgeMetric","smoothstep","aspectPlane","uv","viewport","aspect","aspectOf","rawAspectScaledDomain","scale","exp","rotatedCenteredDomain","angle","angleRad","DEG_TO_RAD$1","cosA","sinA","au","av","curlMagnitude","pos","z","curl22z","fractalOctaveSum","fbmGated","mxNoiseFloat2","fractalSum","detail","contrast","animTime","octaveCount","fbmNormalize","sum","worleyNearest2","nearest2Cells","worleyOctaveSum","fbmGated","typegpu_default","vec2f$1","f32","$","oUV","animT","seedOff","jitter","distNum","modeNum","dd","cellReduceSelectable","worleyCells","pos","scale","seed","lacunarity","persistence","animTime","octaves","vec3f$1","worleyNormalize","sum","modeScale","max","worleyTone","toneRemap","transformWorleyMode","value","CELL_MODES","transformWorleyDistance","CELL_METRICS","worleyModeNum","raw","worleyDistNum","worleyModeScale","voronoiCells","cellFill","edgeIntensity","gradientPower","cellRatio","cellBorders","softness","scaledEdgeSoftness","cellEdgeMask","toneLift","rgb","pow","MAX","ribbonPathFrame","vec4f$1","uv","viewport","start","end","pinFlag","aspectRatio","startPos","endPos","aspectUV","direction","len","length","normalizedDir","perpDir","relativePos","progress","dot","perpDist","pinOn","clampedProg","clamp","pinch","select","sin","PI$1","fade","smoothstep","ribbonsField","arrayOf","packed1","packed2","packed3","colors","positions","converted","amplitude","frequency","lineCount","lineWidth","softnessP","spread","colorScale","colorVariance","waveT","colorT","stopCount","frame","edgeFade","thickness","denom","accumColor","accumWeight","waveBase","TAU","shimmerBase","colorBase","n","i32","round","idx","fi","norm","phase","strandT","wave","displacement","baseline","centre","abs","line","shimmer","cc","strandColor","gradientStopsInSpace","fract","weight","paperSurface","aspect","grainScale","roughness","grainFreq","grainUV","disp","curl22","displacedUV","grain","paper12","brightness","TWO_PI","TAU","hueRotate$1","typegpu_default","vec4f$1","f32","$","color","shiftDeg","angle","DEG_TO_RAD$1","cosA","cos","sinA","sin","k","oneMinusCos","kOneMinusCos","sinOverSqrt3","SQRT3","m00","m01","m02","m10","m11","m12","m20","m21","m22","r","g","b","saturate$1","intensity","rgb","vec3f$1","luminance","dot","saturated","mix","vibrance$1","adjustment","average","mx","max","amt","vibrant","brightnessContrast$1","brightness","contrastRaw","contrast","half","exposure$1","gain","grayscale$1","invert$1","solarize$1","threshold","strength","result","select","posterize$1","steps","s","clamp","floor","tintPlain","tintColor","amount","tinted","tintPreserveLuma","luminanceWeights","originalLum","tintedLum","duotoneT","blend","smoothstep","tritoneFactors","blendMid","gradientMapT","black","white","luma","range","t","gradientMapCosine","phase","pa","pb","pc","pd","arg","gradientMapCustomPhase","vec2f$1","t01","fract","t3","gradientMapSelect","seg0","seg1","seg2","i","gradientMapCompose","mapped","filmGrain$1","uv","viewport","bias","animTime","noiseVal","hash12","grain","darkness","darkFactor","pow","grainIntensity","contourLineMask","sourceValue","levels","lineWidth","softness","gamma","invert$2","sv","scaledValue","fw","fwidth","distFromBoundary","abs","normalizedDist","transitionFactor","innerEdge","isolinesFromLuma","luma709Dot","isolinesFromAlpha","contourCompose","bg","line","mask","alpha","hueRotate","shift","pointwiseOp","saturate","vibrance","brightnessContrast","slots","exposure","grayscale","invert","solarize","posterize","tint","propValues","params","resolveArg","filmGrain","animTimeAcc","deltaTime","on","sourceModeOf","raw","colorModeOf","isolines","lineMask","custom","call","uniformOf","ZERO","vec4","floatE","mixVariantFor","colorSpace","mixColorsVariants","mixColorsLinear","duotone","tritone","factors","shadowToMid","midToHighlight","finalT","variant","colorA","colorB","colorC","PALETTES","PALETTE_INDEX","vec3E","v","expr","formatFloat","gradientMap","childNode","ctx","paletteIdx","p","phaseData","fr","colorLow","colorMid","colorHigh","makeLutAtlasUvFn","size","LUT_MAX","INV_ATLAS_W","INV_LUT_N","hi","enc","linearToSrgb","slice","makeLutAtlasApplyFn","tapLo","tapHi","f","graded","srgbToLinear","lutAtlasFnCache","lutAtlasFnsFor","fns","lutAtlasGrade","uniforms","createDataTexture","registerMediaTexture","onCleanup","key","lutTex","lutKit","mirrorReflect","typegpu_default","vec2f$1","f32","vec3f$1","$","center","angle","uv","aspect","aspectCorrectedUV","centerPos","delta","angleRad","DEG_TO_RAD$1","lineDirection","cos","sin","lineNormal","signedDistance","dot","reflectedDelta","mirroredUV","finalMirroredUV","shouldMirror","step","flipUV","flipX","flipY","select","CAMERA_D","B_MAX","bendRemap","strength","falloff","dir","perp","p","sScreen","tScreen","sHalf","max","abs","snScreen","b","f","clamp","fSpan","m","sig","a2","disc","nearZero","denom","uOn","sqrt","u","snBend","inFlat","sn","z","tSrc","srcP","bulgeUV","radius","distance","length","effectRadius","innerRadius","smoothFalloff","smoothstep","normalizedDist","distSq","quadraticFalloff","falloffTotal","negStrength","displacementAmount","scaleFactor","bulgedDelta","bulgedUV","twirlUV","intensity","acd","cosA","sinA","rotatedX","rotatedY","kaleidoscopeUV","segments","currentAngle","atan2","rotatedAngle","segmentAngle","TAU","segTwo","wrappedAngle","floor","finalAngle","kaleidoscopeX","kaleidoscopeY","kaleidoscopePos","stretchUV","directionVector","projection","parallel","perpendicular","transitionWidth","mix","effectMask","scaledStrength","stretchFactor","finalProjection","stretchedDelta","stretchedUV","wavePhase","frequency","t","centeredUV","waveApply","wave","displacement","displacementX","displacementY","waveformSine","phase","waveformTriangle","normalizedPhase","fract","waveformSquare","waveformSawtooth","waveformBounce","waveDistortSine","waveDistortTriangle","waveDistortSquare","waveDistortSawtooth","waveDistortBounce","polarCoordsUV","wrap","theta","normalizedAngle","PI$1","r","rectCoordsUV","scale","rectX","rectY","EPS","cornerPinSafeDiv","n","dv","cornerSideOf","a","bax","bay","pax","pay","cornerInsideTri","c","d1","d2","d3","allPos","allNeg","cornerProjectToDiagonal","refSide","ab","foot","nudge","sign","cornerConvexify","inside","cornerPinSample","coord","amount","c0","c1","c2","c3","amt","r0","r1","r2","r3","q0","q1","q2","q3","dx1","dx2","dx3","dy1","dy2","dy3","denA","a13","a23","a11","a21","a31","a12","a22","a32","c00","c10","c20","c01","c11","c21","c02","c12","c22","px","py","den","su","sv","det","perspectiveUV","pan","tilt","fov","zoom","offset","x","y","panRad","tiltRad","fovRad","cosPan","sinPan","cosTilt","sinTilt","perspectiveFactor","tan","safePanDivisor","afterPanX","afterPanY","safeTiltDivisor","finalX","finalY","offsetPos","csRotateUV","dx","dy","rotX","rotY","concentricSpinUV","rings","smoothness","seed","speedRandomness","animTime","dist","ringCoord","ringIndex","ringFrac","maxAngle","seedOffset","staticA","legacySinHash11","staticB","ringSpeedA","ringSpeedB","animA","animB","totalA","totalB","wrapArg","diff","halfEdge","blend","flowFieldUV","time","evolutionTime","drift1","evolve1","angle1","mxNoiseFloat3","TWO_PI$1","flow1","drift2","evolve2","angle2","flow2","drift3","evolve3","angle3","flow3","combinedFlow","flowLength","normalizedFlow","finalFlow","sliceWipeUV","angleDeg","sliceCount","progress","grad","ext","idx","sign$1","extPerp","slide","q","barSampleUV","au","av","cu","cv","projectedU","projectedV","distPV","dcu","dcv","barShiftUV","count","longestAxis","barIndex","staticOffset","barSpeed","animOffset","gridCellSnap","gridSize","isWide","cellsX","cellsY","cellIndexX","cellIndexY","gridDistortOffsetUV","disp","clamped","liquifyOffsetUV","scaled","maxDisp","dmDisplaceRG","vec4f$1","src","dmDisplaceLuminance","lum","scalar","FlutedGeom","struct","flutedGlassGeom","softness","waveAmp","waveFreq","refraction","aberration","shapeParams","expHi","expLo","wavesFlag","aspCorr","v","waveTerm","fluteU","flutePos","cellPos","absCell","exponent","slope","pow","halfCell","refrU","refractedUV","chrU","blinnHighlight","lightAngleDeg","slopeSq","min","nz","half","hx","hy","nDotH","shininess","exp2","fresnel","fresnelMix","PagePeelGeom","pagePeelGeom","cornerX","cornerY","oppX","oppY","pA","cornerA","axisVec","L","axis","peel","cFold","R","thetaMax","X","asin","inBand","paper","cCurl","sourceA","curlUV","curlInBounds","liftFrac","HALF_PI","lipHeight","flatReach","distPastCrease","peelReach","curlShade","shading","facing","curlSheen","thetaN","specSigma","specDelta","exp","liftShadowStrength","shadowFalloff","reach","overhangShade","shadow","fall","revealShadow","pagePeelCompose","curlSample","flatSample","curlBright","spec","flatShade","peelAlpha","foldBlend","showCurl","curlColor","flatColor","SphereBulge","sphereBulge","viewport","depth","centerX","centerY","cuX","cuY","sphereX","sphereY","radiusSq","sphereAlpha","depthFactor","transformedX","transformedY","normal","normalize","rimLight","lightPos","viewDir","fresnelPower","lightDir2Dx","lightDir2Dy","normalDir","lightDirNorm","directionalBias","rimComposite","straight","lightColor","rim","coverage","rgbSplitTaps","sample","rS","gS","bS","vec4","edgeClipSample","edgeMode","call","edgeTransparentMask","edgeMirrorUV","edgeWrapUV","edgeClampUV","DEG_TO_RAD","DEG_TO_RAD$1","DEFAULT_HALF_KERNEL","DEFAULT_COMPUTE_WIDTH","PASSTHROUGH_THRESHOLD","INTERMEDIATE_FORMAT","OUTPUT_FORMAT","BLUR_MAP_FORMAT","buildFixedWeights","halfKernel","sigma","size","weights","sum","i","w","buildTruncatedWeights","activeHalf","total","fixedHParams","struct","i32","f32","fixedVParams","buildFixedBlurGraph","computeWidth","computeHeight","KERNEL_SIZE","HALF_KERNEL","HParams","VParams","hLayout","a","typegpu_default","texture2d","textureStorage2d","arrayOf","vLayout","u32","$","cx","cy","p","inputCx","inputCy","inputWm1","inputHm1","inputCxI","round","inputCyI","clamp","ah","count","vec4f$1","off","sampleX","texel","textureLoad","vec2u$1","textureStore","av","cyi","sampleY","createGaussianBlurCompute","root","inputTexture","inputWidth","inputHeight","onCleanup","DEFAULT_HALF_KERNEL","DEFAULT_COMPUTE_WIDTH","graph","kernelH","kernelV","intermediateTex","outputTex","weightsHBuf","weightsVBuf","paramsH","paramsV","vBindGroup","hPipeline","createGuardedCompute","computeSteps","setInputTexture","input","hBindGroup","scaleY","curInputWidth","curInputHeight","lastRadius","updateWeights","pixelRadius","sigmaH","sigmaV","h","v","updateRadius","newW","newH","newScaleY","variableHParams","variableVParams","buildVariableBlurGraph","jitterTaps","invHalf","blurRadius","cxClamp","jitterH","fract","offset","yi","radiusComputeY","jitterV","createVariableGaussianBlurCompute","options","blurMapTex","weightsBuf","gaussianTapWeights","variance","last","raw","_","t","b","unrolledTapGather","config","tapCoord","sample","component","weighted","MAP_SOURCE_DIM_FIELDS","REMAP_WINDOW_FIELDS","mapSourceScalarCache","mapSourceScalar","channel","cached","fn","dot","vec3f$1","applyRemapWindow","inputMin","inputMax","outputMin","outputMax","curve","inputRange","max","mix","pow","remapWindowValues","window","bloomExtractSoftKnee","vec2f$1","childTexture","inputSize","computeSize","threshold","iw","ih","ty","tx","su","sv","sx","sy","knee","lum","soft","softCurve","mask","BRIGHT_FORMAT","buildBloomExtractGraph","kernelName","Params","layout","bright","buildBloomExtractMapGraph","channelScalar","u","srcX","srcY","radius","aspectAwareComputeRes","canvasWidth","canvasHeight","LONG_EDGE","aspect","DEFAULT_BLURRED_KEY","canvasPixels","dimensions","withFixedBlurCompute","params","childNode","gpu","convertToTexture","registerComputeTexture","onResize","outputKey","canvas","gaussian","blurredTexture","width","height","next","resolve","src","withVariableBlurCompute","source","variable","fill","fillParams","blurMap","fillStepOpts","fillStep","mapSrc","bg","withBloomCompute","mapInfo","res","brightBuffer","prepassParams","prepassStep","entries","values","composeBlurredOverSharp","compose","computeOutputs","ctx","ZERO","blurred","sharp","call","unpremultiplyAlpha","sharpSample","INTENSITY_TO_RADIUS","intensityToRadius","intensity","CHANNEL_INTENSITY_TO_RADIUS","fillMapParams","buildFillBlurMapGraph","remapped","channelBlurCompose","redIntensity","greenIntensity","blueIntensity","redRadius","greenRadius","blueRadius","maxRadius","rMix","gMix","bMix","progressiveBlurAmount","angleDeg","centerX","centerY","falloff","uv","angleRad","DEG_TO_RAD","direction","cos","sin","centerPos","smoothstep","progressiveFillParams","progressiveFillMapParams","buildProgressiveBlurFillGraph","blurAmount","buildProgressiveBlurFillMapGraph","tiltShiftBlurAmount","center","perpVector","centeredUV","distFromLine","abs","focusWidth","tiltShiftFillParams","tiltShiftFillMapParams","buildTiltShiftFillGraph","buildTiltShiftFillMapGraph","glowCompose","original","bloom","finalColor","glowAlpha","buildGlowPrepassGraph","buildGlowPrepassMapGraph","GOLDEN_ANGLE","BOKEH_TWO_PI","BOKEH_RADIUS_SCALE","bokehRadiusToPixels","HIGHLIGHT_KNEE","EDGE_BOOST","EDGE_POWER","RIM_BAND","PASSTHROUGH_RADIUS","BOKEH_OUTPUT_FORMAT","resolvePoints","bladeCount","n","bokehPolygonRadius","theta","sides","a","BOKEH_TWO_PI","m","SQRT2_OVER_4","sdfHeart","dx","dy","S","px","py","ax","ay","b1y","dot1","b2x","b2y","sdfStar","innerRatio","len","angle","sector","bn","fpx","fpy","an","ex","ey","qx","qy","t","nx","ny","sdfFlower","tAngle","tFrac","CROSS_SIZE","CROSS_THICKNESS","CROSS_ROUNDING","sdfCross","dHoriz","dVert","RING_CENTERLINE","RING_HALF_WIDTH","sdfRing","halton","index","base","f","i","toTipUp","x","y","APERTURE_SDF_SHAPES","points","rx","ry","generateBokehTaps","shape","tapCount","taps","shapeSdf","rNorm","GOLDEN_ANGLE","r","EDGE_BOOST","EDGE_POWER","sdf","MAX_CANDIDATES","idx","dist","prox","RIM_BAND","maxLen","max$1","tap","inv","bokehParams","struct","f32","bokehMapParams","MAP_SOURCE_DIM_FIELDS","REMAP_WINDOW_FIELDS","bokehHighlightWeight","typegpu_default","vec4f$1","$","threshold","gain","rim","lum","dot","vec3f$1","hi","smoothstep","HIGHLIGHT_KNEE","buildBokehGraph","computeWidth","computeHeight","TAPS","Params","TapArray","arrayOf","layout","texture2d","textureStorage2d","BOKEH_OUTPUT_FORMAT","u32","cx","cy","p","radius","inputCx","inputCy","inputWm1","i32","inputHm1","PASSTHROUGH_RADIUS","sx","clamp","round","sy","texel","textureLoad","vec2u$1","textureStore","fringe","rotC","rotS","accum","alphaAccum","wSum","ox","oy","off","vec2f$1","colR","colB","offR","offB","bx","by","col","w","invW","max","buildBokehMapGraph","channel","channelScalar","mapSourceScalar","u","v","srcX","srcY","remapped","applyRemapWindow","DEG_TO_RAD","DEG_TO_RAD$1","MOTION_BLUR_WEIGHTS","gaussianTapWeights","linearBlurTapCoord","typegpu_default","vec2f$1","f32","$","uv","angleDeg","intensity","viewport","tapT","angleRad","aspect","dirX","cos","dirY","sin","bvX","bvY","angularBlurTapCoord","center","tapIndex","centerPos","angleStep","angle","cosA","sinA","initX","initY","acX","acY","rotX","rotY","zoomBlurTapCoord","radius","scale","deltaX","deltaY","acdX","acdY","scaledDeltaX","scaledDeltaY","motionBlurGather","kind","args","sample","focus","amount","viewportSize","unrolledTapGather","i","call","floatE","diffuseBlurUV","offset","hash22","scatterGather","applyEdgeHandlingExpr","WEIGHTS","WEIGHT_SUM","DROP_SHADOW_TAP_WEIGHTS","w","TAP_HALF","dropShadowUV","distance","dist","ox","oy","dropShadowTapUV","blurRadius","dropShadowComposite","vec4f$1","originalColor","shadowColor","shadowAlpha","cutout","shadowRgb","vec3f$1","shadowA","cutoutA","clamp","cutoutRgb","shadowPremulRgb","oneMinusOrigA","normalRgb","normalA","max","useCut","rgb","select","a","silhouetteBlur","at","convertToTexture","tapUV","base","horizontalTexture","vec4","coord","sharpnessTapUV","sharpnessCompose","top","bottom","left","right","centerWeight","neighborWeight","clamped","sharpenGather","pixelateSample","gap","roundness","isWide","pixelCountX","pixelCountY","sampleUV","floor","localUV","fract","halfSize","cornerRadius","qx","abs","qy","sdf","length","mask","pixelateGather","packed","sampled","glassTilesUV","baseTileCount","rotationDegrees","roundnessAmount","tileCount","aspectCorrectedUV","rotationRadians","centered","rotatedUV","gridUV","cellCoord","oneOverTile","fromCenter","distFromCenter","clampedRoundness","distortionFactor","scaleFactor","distortion","glassTilesDistortUV","glassTilesFragment","distortedUV","unpremultiplyAlpha","sampleCatmullRomExpr","glassTilesRemapUV","edgeClampUV","crtSampleUV","colorShift","dir","scaledColorShift","rgbSplitCombine","redSample","greenSample","blueSample","adjustShade","color","contrast","brightness","scanlineShade","uvY","scanlineFrequency","scanlineIntensity","scanlinePosition","scanlineWave","scanlineEffect","phosphorShade","pixelSize","phosphorScale","pixelPhase","redMask","greenMask","blueMask","vignetteShade","vignetteRadius","vignetteIntensity","centeredUV","vignetteDistance","innerEdge","outerEdge","vignette","mix","smoothstep","FIELD_LINES","hash2D","p","hash12","smoothNoise2D","f","u","b","c","dd","burstGate","rowJitter","t","scanlineNoise","burst","rowInt","h0","h1","fineGate","chromaRowOffset","tapeWave","wobble","wave1","wave2","creaseShift","creasePhase","creaseNoise","headSwitch","switchPhase","switchNoise","vhsSampleUVs","time","speed","jitter","sw","globalX","sy","vhsAcBeat","mod","vhsChromaTapUV","chromaUV","smearScale","yiqRecombine","luma","c1","c2","c3","c4","c5","sharpY","dot","iAxis","qAxis","accI","accQ","beatShade","acBeat","hash11","burstPulse","slowFrame","fastFrame","slowHash","slowPulse","fastHash","fastPulse","threshold","majorBurst","step","minorFlicker","bandJitter","bandY","frame","seedScale","frameScale","gateFactor","hashOffset","amplitude","glitchStrength","seed","bandHash","active","blockShift","colX","bandY1","blockSeed","blockHash","blockActive","mirrorFlips","displacedUV","bandActive1","mirrorChance","mirrorSeed","hMirrorHash","vMirrorHash","hMirrorActive","vMirrorActive","GlitchGeom","struct","glitchGeom","blockDensity","band1","band2","band3","block","totalDisplaceX","vertJitter","mirroredUV","spread","anyDistortion","glitchSplitUVs","rgbShift","rgbOffset","redX","blueX","fillBarsShade","colorBarMix","strength","bandGate","blockGate","fillStyleHash","barOffset","barX","barIndex","smpteColor","solidHue","sh6","fillColor","colorBarStrength","withBars","distortScanShade","viewportY","scanlines","pixelY","shaded","EPS","segmentArcPerp","typegpu_default","vec2f$1","vec3f$1","$","p","a","b","pax","pay","bax","bay","len","max","length","f32","t","overshoot","h","clamp","dSeg","sqrt","lineMask","uv","viewport","pointA","pointB","thickness","style","dashLength","gapLength","capStart","capEnd","aspect","aspectOf","seg","aspectCorrectedUV","aspectCentrePosition","perp","halfT","cSolid","axSolid","rawDash","rawPeriod","nDash","floor","scale","dashL","period","kDash","cDash","axDashRound","axDashSquare","rawDotPeriod","nDot","dotPeriod","kDot","cDot","isPattern","isDotted","c","select","axRound","axSquare","capHere","sdRound","abs","qx","qy","sd","min","feather","smoothstep","sineWaveMask","angle","position","frequency","amplitude","softness","animTime","centered","aspectCenteredDelta","angleRad","DEG_TO_RAD$1","rotated","rotate2","cos","sin","waveInput","TAU","sineWave","distanceFromWave","halfThickness","halfSoftness","lensFlareSpectral","FlareFrame","struct","flareFrame","lightPosRaw","intensity","edgeFade","lightPos","flareAxis","shimmer","edgeDist","fadeStart","edgeFadeV","mix","masterFade","toLightAR","atan2","lensFlareGhost","vec4f$1","ghostSpread","ghostChroma","ghostInt","disc","tint","offset","size","bright","hollow","r","g","gPhase","ghostPos","dist","sz","discShape","innerFade","shape","gShimmer","ring","chromaticRingBand","rRing","gRing","bRing","brightness","flareHalo","haloInt","haloRad","haloChroma","haloSoft","antiLight","toAntiLight","halo","haloAngle","haloAngVar","flareStarburst","lightAngle","lightDist","starburstPts","starburstInt","axisAng","rotation","spikeAngle","primarySpikes","angularCosineSpikes","secondarySpikes","radialFall","starSpectral","flareStreak","streakLen","streakInt","dy","dx","vertFall","exp","lenSq","rStreak","gStreak","bStreak","flareGlare","glareSz","glareInt","glareFalloff","radialGaussianFalloff","flareCore","coreSoft","coreSharp","flareComposite","flareTotal","finalColor","luma601Dot","watercolorUvBase","typegpu_default","vec2f$1","f32","$","uv","viewport","bleed","time","t","wob","value12","texel","watercolorTapUV","uvBase","ox","oy","watercolorGrain","watercolorCompose","vec4f$1","vec3f$1","sum0","sum1","sum2","sum3","sq0","sq1","sq2","sq3","invN","originalBleed","paperColor","paper","strength","grain","mean0","mean1","mean2","mean3","rgb0","rgb1","rgb2","rgb3","var0","var1","var2","var3","sigma0","sigma1","sigma2","sigma3","picked","best","select","min","straight","unpremultiplyAlpha","result","paperMul","mix","paperTint","SIN_045","COS_045","SIN_N45","COS_N45","chalkHash21","p","hash12","chalkVnoise","i","floor","f","fract","u","b","c","dd","chalkLuma","color","dot","chalkOffsetUV","edgeThickness","texelX","texelY","chalkHatchLine","P","hatchScale","shade","sa","ca","thr","ry","hl","abs","line","smoothstep","step","chalkboardCompose","sobelA","sobelB","misc","params","boardColor","chalkColor","tl","tr","l","r","bl","bo","br","centerLum","centerAlpha","edgeSensitivity","shading","gx","gy","edgeMag","sqrt","edgeHigh","edge","hatch","max","dust","chalkMask","clamp","boardGrain","REFERENCE_HEIGHT","AsciiGrid","a","struct","asciiGrid","cellSize","spacing","scaleFactor","effectiveCellSize","mainGridSize","gridCoords","cellCoords","rawCellUV","centeredU","centeredV","cellUV","half","isOutside","asciiAtlasUV","cellRgb","gamma","charCount","atlasSize","atlasScale","adjustedBrightness","pow","invertedBrightness","charIndex","atlasCol","atlasRow","atlasCellSize","baseU","baseV","asciiCompose","asciiRgb","cellColor","alphaThreshold","preserveAlpha","isBackground","sourceAlpha","isBelowThreshold","outputAlpha","hide","finalAlpha","shared","build","cache","hit","v","bleedWarp","slots","asLocal","call","uniformOf","kuwahara","R","taps","lvp","quadrant","dx","dy","sum","expr","sq","j","floatE","rgb","paperGrain","wash","gather","ref","original","q0","q1","q2","q3","vec4","sobelTaps","sampleStraight","ctx","lumAt","centre","centreLum","chalkSketch","tuning","charGrid","cellSample","glyphFor","atlasKit","atlasUV","glyphTint","ZERO","OBF_DEG_TO_RAD","DEG_TO_RAD$1","orientedBoxField","aspect","center","rotationDeg","halfW","halfH","aspectUV","centerPos","rotRad","cosR","cos","sinR","sin","rdx","rdy","localU","localV","HP_TAU","TAU","HP_DEG_TO_RAD","hatchPlate","angleDeg","frequency","reliefPhase","level","aa","angleRad","s","w","spiralPlate","dv","length","theta","atan2","makeLineworkComposite","style","childColor","ink","p0","p1","relief","waviness","contrast","viewportY","lum","pa","nx","mxNoiseFloat2","ny","cover","ink1","level2","ink2","level3","alpha","LINEWORK_MODES","linework","uniforms","propValues","raw","composite","glass_exports","__export$1","BLUR_DISK","GlassLensUVs","applyGlassEffect","glassBlurOffset","glassBorderHighlight","glassComposite","glassFresnelRim","glassGradient","glassLensUVs","glassRefrStrength","glassSpecular","glassTint","offsetUV","sdfSpaceUV","DEG_TO_RAD","INV_HLEN_GLASS","GOLDEN_ANGLE","BLUR_SAMPLE_COUNT","i","angle","r","typegpu_default","vec2f$1","f32","$","center","scale","rotation","uv","aspect","centerX","centerY","dxAc","dy","rotRad","cosR","cos","sinR","sin","rdx","rdy","ox","oy","sdfRaw","sdfX","sdfY","sdf","thickness","volumetric","thicknessRange","max","depthNorm","clamp","vol","smoothstep","select","a","struct","gradX","gradY","refraction","innerZoom","aberration","refrStrength","refrScale","slopeLen","sqrt","slopeScale","min","offsetX","offsetY","zoomedX","zoomedY","lensX","lensY","chrScale","chrOffX","chrOffY","viewportSize","blur","m","vec3f$1","rgb","tintColor","tintIntensity","preserveLum","lumWeights","origLum","dot","tinted","mix","tintedLum","edgeSoftness","pxH","lightAngle","highlight","sharp","w2","sdfOuter","rb2base","lx","ly","normalDotLight","lightFacing","highlightSoftness","nz","nLen","nx","ny","nnz","nDotH","shininess","exp2","pow","fresnel","fresnelSoftness","rb1","slopeSq","cosView","exponent","volRim","fresnelWidth","fresnelDepth","vec4f$1","baseColor","blurred","highlightColor","fresnelColor","tintPreserveLuminosity","cutout","w1","rb2","tintedRgb","specGlint","fresnelRim","lighting","transition","composited","cutoutAlpha","params","sdfSampler","childTexture","blurredTexture","options","uniforms","propValues","ctx","bakedGradients","volFlag","floatE","sdfUV","asLocal","call","surf0","surfX","surfY","grad","lens","lensUV","rUV","bUV","blurVal","blurEnabled","abVal","aberrationEnabled","blurTap","tex","offOx","offOy","vogelAccum","acc","vec4","accR","accG","accB","blurredStraight","unpremultiplyAlpha","lighting_exports","__export$1","TangentFrame","WardSpecularInput","bevelledFlatNormal","cosinePalette","fieldGradient","insideMask","orthonormalTangentFrame","outsideShape","patternCoords","perspectiveViewRay","volumetricNormal","wardAnisotropicSpecular","typegpu_default","vec4f$1","f32","vec2f$1","$","surf0","surfX","surfY","eps","vec3f$1","gradClamp","normalize","clamp","grad","sinTilt","glen","max","length","sB","min","sqrt","sdfUV","volumetric","select","bool","sdf","pxH","sharpEdge","minPixels","w","uv","aspect","fov","a","struct","normal","dir","T3","dot","p","frame","H","hT","hB","hN","abs","aT","aB","expo","exp","phaseR","phaseG","phaseB","cos","TWO_PI$1","silhouetteAlpha","edgeSoftness","smoothstep","KeyLight","keyLight","lx","ly","lz","L","grazingView","n","sharpGlint$1","ndh","sharp","cfg","pow","mix","clampedPerlinGrad","q","gain","gMax","nd","perlin12d","nudgeNormal$1","dx","dy","opticalThickness$1","thickVol","beerLambert$1","thickness","absorb","flowWarpOffset","warpInput","flowT","sin","studio5Softbox","rx","ry","envC","envS","keyRad","drift","envStr","skyGain","ex","ey","sky","lum","r0","r1","r2","r3","r4","bevel_exports","bevelSin","shape","sRound","k1","k2","sdfSpaceUV","offsetUV","glass_exports","ANALYTIC_SDF_EXTRA_FIELDS","sdf_exports","createVolumetricFieldComputeNode","resolveShapeFieldSampler","VOLUMETRIC_FIELD_EXTRA_FIELDS","sdf3d_exports","guardCounter","guarded","cond","inner","fallback","hint","deps","id","Expr","ctx","name","condText","fallbackText","dep","stmts","innerText","v","h","k","f","insideShape","outside","call","shapedSurface","spec","pattern","chord","stencil","compute","params","fragment","childNode","computeOutputs","convertToTexture","uniforms","childTexture","ZERO","sampler","gradSampler","texelSampler","bakedGradients","floatE","screenUV","local","kind","surfaceField","opts","s0","div","geometricNormal","field","float","rimT","neg","surfacePattern","fieldSlope","viewRay","grazingOf","view","sub","tiltNormal","slopes","terms","axis","out","mul","sum","base","extra","acc","e","add","vec3","studioSoftboxes","x","y","toE","grainNoise","coords","mxNoiseFloat2","vec2","smearAlong","sample","taps","sigma","half","raw","_","i","b","weights","step","off","lightVec3","z","wardAlphas","roughness","anisotropy","baseA","anisoSpecular","tiltAlong","amount","fresnelBoost","grazing","tintRamp","t","dark","light","splat3","silhouette","neutralTone","rgb","neutral","nudgeNormal","marchedNormal","sharpness","keyLightAt","elevation","keyLightXY","grazingFlat","sharpGlint","perlinSlope","opticalThickness","beerLambert","flowWarp","surfaceNoise","surfaceNoiseAt","volumeNoiseAt","mxNoiseFloat3","cosineRainbow","phases","cellNoiseAt","mxWorleyNoiseFloat2Pub","fdSlope","sampleAt","value","hashNoise","hash12","valueNoise","value12","rotationSensor","s0C","shellRefract","cx","cy","schlickFresnel","twinkle","phase","pointStars","variation","shimmer","glint","placementPoint","position","continuedField","uv$1","beyond","outward","continued","border","dist","nearestEdge","slope","pointLightFrom","at","delta","distance","toLight","lambert","ndl","inverseSquare","range","r","exposureTone","dualLobeGlint","widen","exp2","exponent","registry","listeners","registerNaturalSize","key","width","height","prev","fn","getNaturalSize","onNaturalSizeChange","mipLevelCountFor","createSwappableMediaTexture","params","opts","createMediaTexture","registerMediaTexture","onCleanup","wantsMipmaps","make","current","isDisposed","kit","w","h","next","previous","source","createUrlSourceLoader","getCpuValue","onBeforeRender","currentUrl","isLoading","lastFailedUrl","run","url","loadCtx","error","readUrl","initialUrl","newUrl","SVG_RASTER_SIZE","isSvgUrl","rasterizeSvg","resolve","reject","img","naturalW","naturalH","aspect","canvasW","canvasH","canvas","ctx","decodeImageSource","response","blob","bitmap","closed","makeVideoElement","video","awaitMetadata","timeoutMs","createVideoElementSource","metadataTimeoutMs","autoplayRequired","videoElement","mediaStream","readLoop","raw","adopt","urlProp","loopValue","constraints","isInitialized","startWebcam","track","debugWarn","createCanvasRasterTarget","params","opts","hostCanvas","dimensions","onCleanup","maxAxis","supersample","el","ctx","isDisposed","context","dimW","cssWidth","cssHeight","scale","w","h","c","createRasterInvalidator","minIntervalMs","lastKey","lastCheck","now","key","createFontDependentRaster","loadedKey","googleFontCss2Url","family","weight","italic","text","url","loadedFonts","pendingLoads","loadGoogleFont","key","pending","promise","loadFontLink","href","resolve","reject","link","spec","e","isFontAvailable","L","formatFloat","overPremul","dst","rgb","a","roundRectSD","names","opts","q","sd","pp","half","radius","cornerBracketMask","bl","inCorner","blInit","px","py","hx","hy","stroke","straightFromPremul","ATLAS_GLYPHS","ATLAS_SLOTS","ATLAS_CELL_W","ATLAS_CELL_H","ATLAS_W","ATLAS_H","WALK_SCAN","LEAF_SCAN","LUM","num$1","v","f","createGlyphStripAtlas","params","getCpuValue","glyphTex","createSwappableMediaTexture","target","createCanvasRasterTarget","readFont","build","family","weight","c","glyphs","i","fp0","rebuild","fp","font","createFontDependentRaster","loadGoogleFont","createRasterInvalidator","contentPredicate","sVar","uVar","p","L$1","modeStr","cellScanStmts","sfx","originX","originY","sizeV","N","wantBounds","s","sampleChild","UN","inv","k","sy","sx","pxX","pxY","partitionWalkStmts","layoutStr","D","lvl","contentBBoxStmts","detectionBoxStmts","cornerStyle","U","cRExpr","digitsOf","digitAt","e","x","glyphPillLabelStmts","labelStr","labelPos","atlasKey","isRight","isTop","leftIn","leftOut","topIn","topOut","diamondStamp","pathSegmentStamp","every","ringTrailStmts","slots","maxAge","stage","bracketGizmo","MAX_TRACKERS","TRAIL_LEN","TRAIL_EVERY","AABB_COL","STATE_W","STATE_FORMAT","FEAT_GRID","TWO_PI","TWO_PI$1","TrackParams","struct","f32","featureLayout","typegpu_default","texture2d","textureStorage2d","trackLayout","trackHash","$","fract","sin","featureScoreFn","mode","vec4f$1","max","lumaU","clamp","score","select","buildFeatureGridKernel","scoreFn","u32","gx","gy","srcDims","textureDimensions","srcW","srcH","g","cu","cv","u","tx","ty","textureLoad","vec2u$1","textureStore","buildPursuitKernel","ti","P","iF","head","meta","posX","posY","frame","genStart","missStreak","gen","crowdStreak","minFeat","Lpref","sumW","sumX","sumY","dy","dx","ox","oy","cx01","cy01","gate","dBand","aff","exp","off","sqrt","w","locked","bestX","bestY","bestW","tgtX","tgtY","cs","cGate","dB","cx","cy","ddx","ddy","pref","wgt","ang","cos","maxStep","dX","dY","dist","stepK","min","crowded","iN","i32","kF","other","odx","ody","near","hopAng","hopDist","lifeFrames","expired","lost","writeIdx","floor","shouldWrite","bbMinX","bbMinY","bbMaxX","bbMaxY","j","jF","isSlot","abs","doWrite","mix","live","bbOut","headOut","metaOut","createTrackerPursuitSim","childNode","gpu","root","featureKernel","trackKernel","paramsBuf","sim","createFeedbackTrailSim","childTexture","display","textures","read","write","featurePipeline","createGuardedCompute","simPipeline","frameParams","groups","shared","dt","num","DETECTION_REFERENCE_HEIGHT","detectionOverlay","uniforms","ctx","convertToTexture","propValues","ZERO","texKey","modeMap","layoutMap","labelMap","posMap","rawMode","rawLayout","rawBox","rawLabel","labelsOn","rawPos","Expr","ec","name","n","uvWgsl","unpremultiplyAlpha","uvE","line","motionTrackerHud","computeOutputs","stateKit","stateKey","load","col","crosses","value","recompileWhen","predicate","isZero","prop","isValue","allOf","rules","instanceParts_exports","__export$1","accumulateInstances","formatFloat","gridPlacement","instanceHueShift","instanceVariation","linePlacement","placementField","radialPlacement","sourceRect","PI","f","src","crop","p$1","L","own","slots","flipMode","out","anchorSq","hash","off","hueShift","body","sample","s","b","grid","radial","line","byMode","mode","members","MODE_MAP","FLIP_MAP","repeatInstances","recipe","params","uniforms","childNode","ctx","propValues","childBoundsParams","ownBoundsParams","convertToTexture","ZERO","texKey","structural","ref","map","v","spec","zBack","hueActive","Expr","ec","R","accessor","stmts","placement","call","unpremultiplyAlpha","expr","componentDefinition","defineStd","value","transformBoolean","crosses","p","LENS_MAX_TAPS","isMobileGpuViewport","valueNoiseStmts","em","lines","inputExpr","outName","n","k","off","lensGeometryStmts","uvExpr","aspectExpr","p","stmts","U","spreadAxisStmts","l","frameAAMaskStmts","body","spectralFanStmts","texKey","L","PI","b","grainOverlayStmts","c1","s1","c2","s2","chromaticOffsetUV","typegpu_default","vec2f$1","f32","$","uv","angle","strength","aspect","channelOffset","angleRad","radians","direction","cos","sin","scaledStrength","offsetBase","chromaticFan","opts","params","tapUV","offset","call","resolveArg","redSample","greenSample","blueSample","vec4","spectralLens","slots","uniforms","childNode","ctx","convertToTexture","ZERO","Expr","ec","name","formatFloat","s","unpremultiplyAlpha","expr","reliefPos","typegpu_default","vec2f$1","f32","$","uv","aspect","scale","seed","aspectUV","freq","reliefDisplacedUV","pos","distortion","grad","perlin12d","disp","reliefBrightness","h","contrast","intensity","hAdj","clamp","applyNoiseReliefExpr","params","heightFn","heightHint","childNode","uniforms","ctx","convertToTexture","ZERO","texture","call","displacedUV","straight","unpremultiplyAlpha","brightness","vec4","waves","axes","schedule","axisTerm","axis","k","name","mul","waveExpr","w","parts","part","sin","a","b","add","terms","term","product","wavyLine","opts","seededPlane","field","slots","viewport","paintFrame","aspectScaledDomain","uniformOf","rawPlane","rawAspectScaledDomain","pixelGrid","pixelGridDomain","evolving","coord","timeAxisDomain","animatedTime","floatE","gaborGrains","gabor12","waveletBands","wavelet12","blueSpeckle","_params","blue12","erosionRidges","erosion12","curlSpeed","curlMagnitude","scratchStreaks","scratches12","unitized","signedToUnit","noiseTone","noiseToneKColor","signedTone","toneSignedInverted","gainTone","worleyTone","linearPair","t","mixColorsLinear","fractalNoise","rampOver","fbmNormalize","fractalSum","rotatedCenteredDomain","stops","worleyNoise","modeNum","worleyModeNum","distNum","worleyDistNum","octavesNum","worleyNormalize","worleyCells","aspectPlane","worleyModeScale","cellDistances","voronoiCells","cellFill","cells","cellBorders","borderOverlay","paint","mask","base","asLocal","mixExpr","overRgb","stages","rgb","stage","backToP3","backConvertToP3","colorSpaceModeOf","tonePow","toneLift","ribbons","waveT","colorT","packed1","packed2","packed3","ribbonsField","reliefBases","stone12","wool12","noiseRelief","basis","transformWorleyMode","transformWorleyDistance","revealMask","typegpu_default","f32","$","coord","progress","feather","invert","c","select","f","max","front","smoothstep","applyReveal","vec4f$1","color","reveal$1","directionalCoord","vec2f$1","uv","aspect","angleDeg","a","DEG_TO_RAD$1","dir","cos","sin","grad","dot","ext","abs","radialCornerNormCoord","center","cx","cy","dist","length","maxDist","angularCoord","startDeg","mode","rel","ang","atan2","start","frac","TWO_PI$1","floor","ccwCoord","bothCoord","min","CellGrid","struct","cellGrid","size","gridX","gridY","sx","sy","fract","foldAboutCenter","tilePhase","count","bandMidpointCoord","n","clamp","bandShuffleCoord","idx","hash11","cellDiamondCoord","g","cellCheckerCoord","parity","diag","cellShuffleCoord","hash12","fbmCoverageCoord","scale","seed","p","n1","mxNoiseFloat2","n2","n3","Coverage","build","params","call","resolveArg","BandedCoverage","base","CellCoverage","ANGULAR_MODES","coverage","direction","floatE","reveal","slots","VOXEL_GRID_MAX","isMobileGpuViewport","OCC_BUFFER_WORDS","VOXEL_SHADOW_RES","VOXEL_SHADOW_FORMAT","DEG","HALF_DIAGONAL","CLEARANCE_MARGIN","GOLDEN_ANGLE","SOFT_TAN","SHADOW_FAR","VoxelMarchParams","a","struct","align","size","RotStruct","vec3f$1","f32","makeVoxelLayout","typegpu_default","arrayOf","u32","textureStorage2d","makeVoxelBakeLayout","buildVoxelBakeFn","sdfFn","marchLayout","bakeLayout","gridSpace","gridToShape","$","pG","rotateVec3","wx","iy","iz","vx","n","w","v","o","word","scale","k","ix","val","dd","clear","clamp","select","floor","buildVoxelTraversal","voxLayout","style","cellValue","cx","cy","cz","out","sub$1","idx","extractBits","cellCentre","occupied","SubHit","subShapeHit","ro","rd","c","tNow","h","hit","t","oc","b","dot","cc","disc","ts","sqrt","sx","sy","sz","max","abs","t1x","t2x","t1y","t2y","t1z","t2z","tIn","min","tOut","r","s","i","sdRoundBox","DdaHit","i32","tStart","tEnd","skip","maxSteps","p0","ax","ay","az","dtx","dty","dtz","bx","by","bz","tmx","tmy","tmz","tHit","minClear","same","step","sh","pj","stepCap","buildVoxelShadowMapFn","voxelDda","RES","STEP_CAP","j","rB","L","depth","perp2","half","none","hh","textureStore","vec2u$1","vec4f$1","shadowCompare","texture2d","tex","mx","my","ref","maxT","x0","y0","fx","fy","cx0","cx1","cy0","cy1","s00","textureLoad","s10","s01","s11","mix","voxelShadowLookup","p$1","T1","T2","rBound","softness","voxel","texelWorld","u","dL","shadow","rSearch","sum","count","th","cos","sin","dep","avgBlocker","penumbra","acc","voxelRayBox","ok","voxelRaySphere","voxelRayRoundedBox","tBox","buildVoxelFieldFn","opts","viewToGrid","rot","vertexAo","s1","s2","vec2f$1","fuv","halfSpan","mp","texel","fieldVal","payload","cellPacked","hp","l","alx","aly","alz","axis","la","sgn","isX","isZ","isY","nx","ny","nz","bxv","byv","eyv","ezv","lb","lc","fz","sB1","sB2","sC1","sC2","k11","k21","k12","k22","ao","faceId","VOXEL_FIELD_EXTRA_FIELDS","clampVoxel","size$1","minCell","cross","normalize$1","clampNum","lo","hi","createVoxelFieldComputeNode","params","spec","root","cfg","parseShapeConfigValue","shapeSdfUrl","shapeType","values","lastRBound","extraPad","setup","createSvg3dSdfSetup","isSvg3dShapeType","is3dShapeType","createAnalytic3dSdfSetup","createAnalytic2dExtrudeSetup","resolveShapeType","voxUniform","occBuffer","createStateBuffer","shadowTexture","voxBindGroup","bakeBindGroup","march","kernel","buildVolumetricFieldKernel","compute","createVolumetricFieldCompute","fieldTexture","shadowMap","bakeFn","setupBindGroup","bake","createGuardedCompute","shadowFn","shadowPass","activeRes","lastMarchKey","lastBakeKey","lastShadowKey","marchEvery","changedFrames","frameParams","fp","resolveActiveFieldRes","pitch","yaw","cam","R","x","y","z","rotateVecCpu","Mx","My","Mz","el","LV","LG","gridOrigin","gridN","gridW","fill","voxelScale","bevel","geometryKey","gridKey","subShapeKey","lightKey","bakeKey","shadowKey","marchKey","rebake","reshadow","remarch","steps","SUBSAMPLES","FAR","styleOf","gridSpaceOf","voxelSurface","spine","shapedSurface","frame","field","surfaceField","view","viewRay","toGrid","add","mul","toView","vec3","suv","roG","local","sub","rdG","pxUV","div","ex","ey","neg","uniformOf","rEff","span","rayHit","centre","call","res","ox","oy","px","py","x1","y1","texelUV","tx","ty","vec2","cands","name","uvC","cov","lt","g","bCh","bRest","cell","texDepth","texHp","gt","valid","al","ge","faceN","sign","tangentMask","nGraw","normalize","q","nG","nV","normal","lt2","edge","cellHash","hash13","heightT","depthT","tSort","sameAs0","floatE","allOne","shadowTex","pick","aWins","best","hpS","nS","lookup","facing","guarded","shadeDeps","shade0","shaded","alpha","rgb","dx","dy","si","t23","t123","col","resolved","vec4$1","interior","insideShape","ZERO","num","fallback","raw","clock","DEG_TO_RAD","DEG_TO_RAD$1","DEFAULT_SHAPE_CONFIG","KEY_WRAP","GROUND_GAIN","GLOSS_EXP_RANGE","VARIATION_RANGE","SEAM_WIDTH","SEAM_DARKEN","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformColor","transformColorSpace","colorSpaceOptions","p","vox","_frame","propValues","mixVariant","mixColorsIn","mixAB","upness","base","smoothstep","jitter","albedo","cosEl","ndl","lambert","lit","keyRgb","direct","occlusion","sky","ambient","specRgb","pow","exp2","rimRgb","schlickFresnel","grazingOf","seamLine","seamShade","neon_exports","__export$1","applyNeonEffect$1","neonComposite","neonFlicker","neonFlow","neonGlow","neonSmoothEPS","DEG_TO_RAD","_LZ","_INV_LIGHT_LEN","_LZN","_HZ","_INV_H_LEN","typegpu_default","f32","$","tubeThickness","cornerSmoothing","volumetric","vol","max","select","sdf","glowRadius","glowIntensity","glowR","sdfOutside","innerGlow","exp","outerGlow","totalGlow","outsideFactor","smoothstep","time","flickerSpeed","flickerAmount","flickerTime","f1","sin","f2","f3","combined","threshold","mix","vec2f$1","sdfUV","flowSpeed","flowAmount","flowDx","flowAngle","atan2","flowPhase","vec4f$1","vec3f$1","sC","sR","sL","sU","sD","smoothEPS","scale","viewportSize","color","secondaryColor","secondaryBlend","glowColor","intensity","hotCoreIntensity","lightAngle","specularIntensity","specularSize","sdfCenter","sdfRight","sdfLeft","sdfUp","sdfDown","pxH","softPx","gradX","gradY","gxRaw","gyRaw","gradLen","sqrt","gnx","gny","depthNorm2D","clamp","innerMask2D","lap","abs","slopeMag","crease","innerMaskVol","depthNorm","innerMask","outerMask","tubeMask","t","cylinderZ","cylinderR","nx","ny","nz","lightRad","lx","cos","ly","lxn","lyn","lzn","diffuse","NdotH","shininess","exp2","specular","pow","flowMod","baseColor","ambient","selfEmission","shadedRgb","tubeRgb","coreProfile","hotCoreAmt","tubeFlowed","glowMasked","flickerValue","intensityMul","finalTubeRgb","finalGlowRgb","result","threshOut","params","sdfSampler","options","uniforms","ctx","gradSampler","volFlag","floatE","call","sdfSpaceUV","negEPS","offsetUV","applyNeonEffect","DEFAULT_SHAPE_CONFIG","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","transformPosition","transformColor","v","emboss_exports","__export$1","applyEmbossEffect$1","embossComposite","embossEdgeLighting","embossHeight","embossTraceUV","embossWarpUV","DEG_TO_RAD","_INV_LIGHT_LEN","_LZN","typegpu_default","f32","$","s","depth","transitionW","volumetric","vol","clamp","select","smoothstep","vec2f$1","sdfUV","lightAngle","frac","lx","cos","ly","sin","absDepth","max","abs","spread","uv","center","sdfC","inside","dispScale","centerX","centerY","sdfR","sdfL","sdfU","sdfD","lightIntensity","hR","hL","hU","hD","dhx","dhy","nLen","sqrt","nx","ny","nz","lxn","lyn","lzn","NdotL","edgeLighting","vec4f$1","childColor","h1raw","h2raw","shadowIntensity","light","highlight","edgeShadow","hC","shadowTw","h1","h2","diff1","diff2","castShadow","totalShadow","childRgb","vec3f$1","highlightRgb","finalRgb","params","sdfSampler","childTexture","options","uniforms","ctx","gradSampler","volFlag","floatE","eps","call","sdfSpaceUV","offsetUV","warpedUV","unpremultiplyAlpha","applyEmbossEffect","DEFAULT_SHAPE_CONFIG","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","transformPosition","raymarch3d_exports","__export$1","Distortion3DTrace","applyUVMode3d$1","buildParamThreadedTrace$1","distortion3dLighting$1","a","struct","vec3f$1","f32","typegpu_default","vec2f$1","$","uv","uvMode","stretched","clamp","mirrored","abs","fract","wrapped","tv1","select","tv2","tv3","transparentVisible","finalUV","visible","vec4f$1","surfaceColor","normal","rd","hit","uvVisible","glossAmt","lightAmt","lightDir","normalize","viewDir","diffuse","dot","halfVec","specPow","specular","pow","nDotV","fresnel","litClamped","mix","colClamped","alpha","sdf","opts","STEPS","STEP_CAP","HIT_EPS","MAX_DIST","aspect","center","zoom","rp0","rp1","rp2","t","cx","cy","camDist","ro","rayT","maxDistF","i","dd","min","hitPos","hh","hn","k0","k1","k2","k3","applyUVMode3d","distortion3dLighting","buildParamThreadedTrace","DEG","DEG_TO_RAD$1","TAU_RATE","DEFAULT_RIBBON","SHAPES","paramSphereSdf","sphereSurfaceUV","paramTorusSdf","torusSurfaceUV","paramBoxSdf","boxFaceUV","paramCapsuleSdf","capsuleSurfaceUV","paramMobiusSdf","mobiusSurfaceUV","paramTwistedRibbonSdf","twistedRibbonSurfaceUV","SPIN_DEFAULTS","componentDefinition","defineStd","packedParamExtraFields","transformPosition","transformEdges","params","childNode","convertToTexture","uniforms","propValues","getCpuValue","onBeforeRender","ctx","ZERO","childTexture","shapeType","shape","spinX","spinY","spinZ","lastJson","cfg","num","k","f","drive","deltaTime","raw","speed","angle","twist","width","halfW","thickness","seed","lipschitz","dfl","aX","aY","aZ","rot0","cz","sz","fp","animatedTime","traceRes","call","uvm","unpremultiplyAlpha","thinFilm_exports","__export$1","applyThinFilmEffect$1","thinFilmCompose","thinFilmCustomParams","thinFilmRainbow","thinFilmShade","DEG_TO_RAD","TWO_PI","typegpu_default","f32","vec2f$1","$","sdfRaw","scale","gradX","gradY","edgeSoftness","rimWidthUniform","thickness","dispersion","hueShift","lightAngle","animTime","volumetric","sdf","sharp","max","gLen","sqrt","nx","ny","rb1","clamp","rimWidth","depth","cosView","exponent","mix","volRim","pow","rim","select","lx","cos","ly","sin","baseCos","baseSin","theta","rotatedDot","thickVol","thicknessTerm","vec3f$1","phase","cosinePalette","t","fract","t3","si","floorT3","floor","vec4f$1","baseColor","intensity","saturation","rgb","alpha","params","sdfSampler","options","uniforms","propValues","ctx","gradSampler","volFlag","floatE","sdfUV","call","sdfSpaceUV","surf0","surfX","offsetUV","surfY","grad","glassGradient","shade","mixFn","mixColorsVariants","mixColorsLinear","cp","gate12","gate01","c01","c12","mixExpr","applyThinFilmEffect","DEFAULT_SHAPE_CONFIG","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","transformPosition","transformColor","transformColorSpace","colorSpaceOptions","scaleCover","typegpu_default","vec2f$1","$","dims","vp","aspect","viewportAspect","coverScale","max","scaleContain","containScale","min","scaleFill","scaleScaleDown","scaleDownScale","scaleNone","noneScale","sampleUV","uv","uvScale","centeredUV","applyMirror","f32","mirror","select","alphaCutLinear","vec4f$1","color","linear","srgbToLinear","vec3f$1","outOfBounds","alpha","OBJECT_FIT_MODES","OBJECT_FIT_MODES_ALLOW_NONE","mediaSurface","opts","table","fallback","mode","call","fitUV","finalUV","fitSurface","params","slots","texture","extra","ctx","propValues","uvContext","effectiveViewportSize","imageMedia","tex","createSwappableMediaTexture","createUrlSourceLoader","url","loadCtx","decoded","decodeImageSource","registerNaturalSize","videoMedia","source","createVideoElementSource","webcamMedia","softBand","opts","mul","smoothstep","sub","softDisc","width","curve","pow","add","crispFill","half","neg","crispStroke","abs","radialMask","slots","Scalar","pointer","opts","pointerSpeed","driveUnitDirection","params","props","fields","x","y","z","len","cpuHash01","v","op","config","GridSim","name","waves","p","pointer","pointerSpeed","componentDefinition","defineStd","transformEdges","displaceBy","gatherStack","sample","overlays","opts","params","color","stage","frameOf","make","cache","hit","made","rgbSplit","amount","resolveArg","redUV","call","crtSampleUV","floatE","blueUV","rgbSplitCombine","tapeWarp","vhsSampleUVs","chromaSmearTaps","uvs","asLocal","chromaUV","lumaSample","smearScale","tap","i","vhsChromaTapUV","vec4","yiqRecombine","adjust","adjustShade","scanlines","scanlineShade","phosphorMask","phosphorShade","vignetteOverlay","vignetteShade","opaque","beatPulse","beatShade","vhsAcBeat","blurPath","angle","center","motionBlur","path","motionBlurGather","coord","scatter","edges","scatterGather","sharpen","sharpenGather","pixelate","scale","gap","roundness","pixelateGather","sphereFrame","sphereBulge","crispTap","frame","unpremultiplyAlpha","sampleCatmullRomExpr","rimLit","rim","rimLight","rimComposite","glitchFrame","glitchGeom","glitchRgbSplit","geom","splitUVs","glitchSplitUVs","greenSample","colorBarFills","fillBarsShade","distortedScanlines","distortScanShade","gaussianBlur","prop","getCpuValue","getMapInfo","mapInfo","withVariableBlurCompute","cw","ch","buildFillBlurMapGraph","dims","window","remapWindowValues","withFixedBlurCompute","raw","intensityToRadius","composeBlurredOverSharp","blurred","sharp","channelBlur","red","green","blue","r","CHANNEL_INTENSITY_TO_RADIUS","g","b","channelBlurCompose","uniformOf","progressiveBlur","intensity","falloff","readGeometry","centerValue","buildProgressiveBlurFillMapGraph","buildProgressiveBlurFillGraph","tiltShift","width","buildTiltShiftFillMapGraph","buildTiltShiftFillGraph","mixExpr","tiltShiftBlurAmount","bloom","threshold","size","withBloomCompute","buildGlowPrepassGraph","buildGlowPrepassMapGraph","bloomSample","original","glowCompose","childTap","shadowOffset","dropShadowUV","silhouetteCoverage","silhouetteBlur","shadowComposite","shadowAlpha","dropShadowComposite","PEEL_CORNERS","fluteFrame","shapeId","expHi","expLo","wavesFlag","t","animatedTime","flutedGlassGeom","expr","formatFloat","refractedTaps","edgeMode","aberrationEnabled","sampleAt","uvE","edgeClipSample","uv","refractedUV","rgbSplitTaps","fluteHighlight","specA","blinnHighlight","peelFrame","cornerGeom","pagePeelGeom","curlShading","curlShade","curlSheen","overhangShadow","overhangShade","revealShadow","peelCompose","parts","pagePeelCompose","mirrorRowUV","typegpu_default","vec2f$1","f32","$","lineY","planarReflectionCompose","vec4f$1","refl","uvY","distance","distBelow","max","distanceMax","fadeWidth","fadeStart","visibility","smoothstep","effReflA","oneMinusReflA","mix","step","DEPTH_RAMP_RADIUS_PX","depthRampFillParams","struct","buildDepthRampFillGraph","computeWidth","computeHeight","Params","layout","a","textureStorage2d","BLUR_MAP_FORMAT","u32","cx","cy","p","v","distBelowAtOutput","ramp","radius","textureStore","vec2u$1","mirrorAcrossRow","line","ctx","uniforms","depthRampBlur","planarReflection","reflection","reflectedUV","propValues","applyEdgeHandlingExpr","tintedScreenGlow","base","glow","tintStrength","strength","bloomC","clamp","vec3f$1","one","screened","screenedBloom","slots","w","h","buildBloomExtractGraph","at","glowTex","swayUV","amp","ox","sin","oy","ang","cos","s","rx","ry","frameSway","acc","deltaTime","BOKEH_DEG_TO_RAD","DEG_TO_RAD$1","BOKEH_GATHER_FORMAT","apertureTable","tapsUniform","key","shape","count","next","generateBokehTaps","bokehDefocus","childNode","gpu","convertToTexture","registerComputeTexture","onCleanup","onResize","dimensions","root","childTexture","curWidth","curHeight","LONG_EDGE","DEFAULT_COMPUTE_WIDTH","aspect","outputTex","blurredTexture","height","readLook","rot","graph$1","buildBokehMapGraph","kernelParams$1","tapsUniform$1","ensureTaps$1","bokehPass$1","createGuardedCompute","resolve","src","mapSrc","bindGroup","graph","buildBokehGraph","kernelParams","ensureTaps","bokehPass","bokehRadiusToPixels","computeOutputs","ZERO","componentDefinition","defineStd","transformPosition","motionBlur","blurPath","p","toE","v","floatE","field","fn","hint","args","call","circle","circleSdf","ellipse","ellipseSdf","roundedRect","roundedRectSdf","polygon","polygonSdf","star","starSdf","flower","flowerSdf","heart","heartSdf","cross","crossSdf","ring","ringSdf","vesica","vesicaSdf","crescent","crescentSdf","trapezoid","trapezoidSdf","teardrop","teardropSdf","parallelogram","parallelogramSdf","arc","arcSdf","APERTURE_TO_HALF_ANGLE","APERTURE_TO_HALFANGLE","componentDefinition","defineStd","x","y","u","arc","mul","APERTURE_TO_HALF_ANGLE","ATLAS_TEXTURE_SIZE","GOOGLE_FONTS_MAP","loadedFonts","loadAsciiFont","fontFamily","googleFontName","link","spec","r","num","v","f","setupGlyphAtlas","params","getCpuValue","setExtraField","glyphTex","createSwappableMediaTexture","target","createCanvasRasterTarget","buildAtlas","characters","spacing","charCount","atlasSize","baseAtlasCellSize","spacingMultiplier","actualCellSize","fontSize","c","i","row","col","uvScale","readProps","componentDefinition","rebuild","p$1","font","createFontDependentRaster","createRasterInvalidator","grid","charGrid","p","cell","cellSample","defineStd","f32","value","transformBoolean","glyphTint","glyphFor","DEG_TO_RAD","DEG_TO_RAD$1","surfaceOf","params","uv","viewport","local","div","rawSurfaceOf","centredFrame","slots","surface","center","uniformOf","aspect","delta","vec2","sub","mul","length","segmentFrame","from","to","cx","cy","rel","toRel","len","max","dir","dot","add","neg","direction","angleDeg","hint","rad","cos","sin","directionFrame","tangent","perp","p","sectorFold","x","y","sectorAngle","PI","dx","dy","r","sqrt","inSector","fract","atan2","folded","min","rayBands","opts","arg$1","add","mul","pow","sin","glowAt","e","v","floatE","call","radialGaussianGlow","domeNormal","tilt","drop","slope","asLocal","smoothstep","leaned","normalize","vec3","sub","shine","max","reflect","arg","spec","params","Scalar","resolveScalar","paintFrame","radialFrame","center","uv","viewport","radialBurstFrame","uniformOf","seamlessRadialFrame","godraysFrame","beamFrame","anchor","beamLocalFrame","withFrame","frame","part","hint","modulate","first","rest","acc","softRayLobes","slots","animatedTime","featherMask","radialFeatherMask","noiseRays","godraysRayStack","slowDrift","clock","leakDrift","beamBloom","drift","leakBloom","beamStreaks","leakStreaks","dithered","heat","heatDither","glowSpot","du","dv","sharpness","anisotropicGaussianSpot","flareFrame","lensGhost","flare","disc","tint","lensFlareGhost","vec4","flareHalo","flareStarburst","flareStreak","flareGlare","flareCore","flareComposite","total","vignetteMask","strength","additive","heatRamp","colors","chromaticHeatTaps","coverageMix","alpha","col","bg","mixExpr","coverageOver","coverageOverComposite","screenGlow","glow","screenGlowComposite","layered","layerData","build","weightedSum","totalWeight","layer","index","value","weight","contribution","mul","add","layers","entries","acc","entry","spec","term","sub","emissiveAlpha","rgb","hint","c","local","a","clamp","max","vec4$1","div","dithered","color","params","uv","viewport","paintFrame","call","rgbDither","animatedTime","ARC_WAVES","RAY_SALT","LAYERS","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","transformPosition","params","uv","viewport","surfaceOf","aspect","local","div","max","t","animatedTime","seed","uniformOf","p","center","centerX","centerY","sub","wav","mul","rayAmt","auroraHeight","intens","balanceExp","mix","curtain","layerIdx","timeOffset","tSlow","add","lSeed","wx","arc","wavyLine","w","hashPhase","noiseWarp","volumeNoiseAt","vec3","pathY","rays","rayBands","localHeight","distFromPath","topExtent","envelope","softBand","colorT","clamp","sectionBright","coreD","coreBright","exp","count","weightedSum","totalWeight","layered","weight","alpha","total","avgT","pow","color","colorLadder3","smoothstep","brightness","vec4$1","splat3","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","arg","spec","params","floatE","Scalar","resolveScalar","uniformOf","mirrorLine","slots","reflect","uv","aspect","call","mirrorReflect","selectMap","flip","flipUV","bend","bendRemap","bulge","bulgeUV","twirl","twirlUV","kaleidoscope","kaleidoscopeUV","stretch","stretchUV","WAVE_MODES","waveTypeMode","raw","waveBodyFor","waveType","waveDistortTriangle","waveDistortSquare","waveDistortSawtooth","waveDistortBounce","waveDistortSine","wave","fn","hint","t","animatedTime","toPolar","lerpToIdentity","polarCoordsUV","fromPolar","rectCoordsUV","cornerPin","packed","cornerPinSample","perspective","perspectiveUV","concentricRings","concentricSpinUV","flowNoise","time","evolutionTime","flowFieldUV","slicedSlide","sliceWipeUV","barOffset","barShiftUV","gridCellDisplace","dispTex","gridCellUV","gridCellSnap","gridDistortOffsetUV","expr","liquidDisplace","liquifyOffsetUV","DISPLACE_CHANNEL_MODES","displaceChannelMode","displaceByLayer","source","edgeMode","src","distorted","dmDisplaceLuminance","dmDisplaceRG","sampleRemappedExpr","componentDefinition","defineStd","transformAngle","edgesPropConfig","barOffset","p","arg","spec","params","floatE","Scalar","resolveScalar","paintFrame","structural","ref","solidColor","color","uniformOf","colorWheel","slots","uv","viewport","animTime","animatedTime","t","call","colorWheelT","colorWheelRainbow","phase","local","colorWheelPhase","si","floorT3","variant","mixColorsVariants","mixColorsLinear","colorWheelSelect","pointCloudGradient","factors","mpgFactors","pt","acc","channels","i","beamPreconvertedFields","vec3f$1","beam","mode","field","beamField","colorT","alpha","inside","outside","beamColorRGB","lastKey","a","b","key","ca","convertP3ToMixSpaceCPU","cb","mixPreconvertedVariants","mixPreconvertedLinear","avgAlpha","vec4","componentDefinition","defineStd","beamPreconvertedFields","transformPosition","transformColor","transformColorSpace","colorSpaceOptions","beam","p","componentDefinition","defineStd","edgesPropConfig","bend","p","WOBBLE","FILL_DRIFT_A","FILL_DRIFT_B","componentDefinition","defineStd","f32","props","cw","ch","size","cx","cy","diameter","bounds","currentProps","newSize","v","_","px","transformColor","colorStopsPropConfig","transformPosition","transformColorSpace","colorSpaceOptions","params","uniforms","scalar","ref","resolveScalar","driveUnitDirection","t","local","animatedTime","delta","dist","centredFrame","p","rawSurfaceOf","axes","deform","radius","add","schedule","amount","mul","waves","a","b","softness","mask","softDisc","highlight","shine","domeNormal","vec3","smoothstep","fillAxes","drift","fill","stops","highlightColor","uniformOf","avgAlpha","vec4$1","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","noiseColorProps","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","noiseColorPropsAB","noiseToneProps","noiseSpeedProp","defaultValue","componentDefinition","defineStd","noiseColorProps","noiseToneProps","noiseSpeedProp","rampOver","noiseTone","seededPlane","evolving","noiseField","p","stops","componentDefinition","defineStd","noiseColorProps","noiseToneProps","rampOver","noiseTone","pixelGrid","blueSpeckle","p","stops","componentDefinition","defineStd","gaussianBlur","p","MAX_AGENTS","COUNT_MAX_MOBILE","RES","resolveRenderRes","STATE_FORMAT","SPLAT_R","BASE_SPEED","FORCE_RATIO","AGIT_REST","AGIT_GAIN","AGIT_COOL","SimParams","a","struct","vec4f$1","f32","simLayout","typegpu_default","arrayOf","atomic","u32","textureStorage2d","boidsInitKernel","makeClusterFormationInit","boidsUpdateKernel","integrator","force","boidsRender","shape","colorSpaceMode","renderAgents","makeBoidsSplatKernel","makeBoidsResolveKernel","mode","boidsSplatKernel","boidsResolveKernel","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","orientedShapeOptions","agentSim","getCpuValue","render","sys","g","makeCpuValueGetter","frameParams","dt","aspect","pointerX","pointerY","readAgentFrame","domainX","count","seed","maxSpeed","maxForce","perception","cursorModeStr","cursorMode","cursorX","cursorY","cursorRadius","colA","colB","bodyR","SIZE_REF_RES","componentDefinition","defineStd","transformAngle","bokehDefocus","p","field","brickCourses","p","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","strokeOver","vary","componentDefinition","defineStd","crosses","brightnessContrast","p","allOf","isZero","DEFAULT_SHAPE_CONFIG","BRUSHED_SKY_GAIN","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformColor","glassShellProps","shapedSurface","frame","params","u","t","animatedTime","field","surfaceField","nGeo","geometricNormal","brush","directionFrame","gc","surfacePattern","aniso","local","dens","mul","driftA","sin","sheenAmt","add","sheen","grainNoise","lines","n","tiltNormal","view","viewRay","rough","clamp","R","reflect","studio","direction","mix","sub","rgb","tintRamp","smearAlong","x","y","studioSoftboxes","anisoSpecular","lightVec3","wardAlphas","fresnelBoost","grazingOf","guarded","insideShape","vec4$1","silhouette","ZERO","componentDefinition","defineStd","centerPropConfig","edgesPropConfig","bulge","p","PI","PI$1","TWO_PI_SEVEN","DEFAULT_SHAPE_CONFIG","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformColor","glassShellProps","shapedSurface","frame","params","u","propValues","weaveStyle","field","surfaceField","sdf","pxH","nGeo","geometricNormal","weave","directionFrame","warp","weft","surfacePattern","wA","local","mul","wB","cellX","floor","cellY","fA","sub","fract","fB","parity","s2","add","div","s4","select","ge","float","fiber","mix","crossAxis","acrossLocal","alongLocal","reliefAmt","bulge","sin","filJit","surfaceNoise","n","tiltAlong","ao","smoothstep","min","abs","viewI","viewRay","grazing","grazingOf","R","reflect","rough","clamp","L","lightVec3","direction","baseA","sheen","anisoSpecular","bodyLum","dot","rgb","splat3","studioSoftboxes","pow","transition","silhouette","guarded","insideShape","vec4$1","ZERO","componentDefinition","defineStd","transformColor","chalkSketch","sobelTaps","p","componentDefinition","defineStd","channelBlur","p","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","strokeOver","p","checkerCells","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","bands","zigzagBands","p","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","withAlpha","strokeOver","mixOf","alphaOf","gridSim","build","params","gpu","getCpuValue","root","cfg","num","key","fallback","v","frameParams","s","fp","dt","f","nodes","op","name","run","opts","simSinceActive","skip","fn","step","_f","n","i","cur","tick","trackedViewport","curW","curH","width","height","hostStep","hostGridProgram","lastTime","pointer","now","hostFieldTexture","texData","tex","GRID_SIZE","num","v","f","componentDefinition","defineStd","transformColor","params","uniforms","ctx","uvContext","onBeforeRender","dimensions","getCpuValue","fieldData","tempFieldData","field","hostFieldTexture","fieldKit","mouseVelX","mouseVelY","prevX","prevY","fieldMax","aspect","injecting","newMax","intensity","radius","hostGridProgram","hostStep","velX","velY","momentum","flowFadeRate","liquidFadeRate","flowSpeed","i","j","idx","fx0","fy0","advectX","advectY","x0","y0","x1","y1","fx","fy","idx00","idx01","idx10","idx11","sampledLiquid","m","speed","speedScale","effectiveRadius","maxDistSq","radSq","addScale","speedMultiplier","cellX","cellY","dx","dy","distSq","influence","k","toHalfFloat","uv","px","clamp","tap","add","vec2","call","flowDirectionColor","componentDefinition","defineStd","transformAngle","gatherStack","chromaticFan","p","bevelSin","bevel_exports","fieldGradient","lighting_exports","isMobileGpuViewport","sdf3d_exports","DEG_TO_RAD","DEG_TO_RAD$1","DEFAULT_SHAPE_CONFIG","chromeStudio","exIn","eyIn","ezIn","boxSoftIn","stripSoft","spectral","shadows","warmC","coolC","ex","local","ey","ez","horiz","div","add","length","vec2","warmSide","mul","smoothstep","coolSide","up","graphite","vec3","env","mix","splat3","ceil","cd","coolBand","exp","facing","pz","max","sub","px","py","bx","abs","by","inside","min","dbox","boxSoft","box","flagMask","flagDepth","float","gw","dOut","warmGlow","fb","cbx","cby","dcard","card","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","u","t","animatedTime","vol","mobile","EPS","PR","field","surfaceField","s0","sX","sY","sdf","pxH","pat","surfacePattern","fx","fy","nGeo","marchedNormal","grad","call","glen","gx","gy","bw","depth","t0","clamp","sBev","perlin12d","sPillow","flen","dgx","dgy","sSphere","sEdge","txy","tl","tn","cz","sqrt","wg","perlinSlope","wAmt","n","nudgeNormal","viewI","viewRay","R","reflect","tiltV","grazingOf","rotA","sin","envC","cos","envS","upY","rx0","ry0","orbit","oc","os","rx","rz0","nod","nc","ns","ry","rz","faceness","soft","softEff","envG","envR","envB","delta","envRt","envBt","rgb","neutralTone","guarded","insideShape","vec4$1","silhouette","ZERO","transformPosition","transformColor","glassShellProps","componentDefinition","defineStd","x","y","u","circle","mul","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","colorWheel","p","N_LUMA","SCALE_N","STRIDE","MAX_CELLS","CELL_FORMAT","buildCompressionGraph","buildBlockQuantizeGraph","jpegBlockRgb","makeJpegBlockRgb","cellFetchComposite","cellTex","sharp","params","ctx","center","call","unpremultiplyAlpha","pPix","local","floor","mul","cellX","clamp","div","cellY","cellUV","vec2","add","vec4","jpegCompress","opts","childNode","gpu","convertToTexture","registerComputeTexture","getCpuValue","onCleanup","onResize","dimensions","root","childTexture","jpegCellTexture","graph","compParams","curW","curH","cellsFor","w","h","cellsX","cellsY","pipeline","createGridKernelPass","bound","inputBound","width","height","resolve","src","bg","q","computeOutputs","ZERO","componentDefinition","defineStd","p","componentDefinition","defineStd","edgesPropConfig","centerPropConfig","concentricRings","p","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformPosition","transformColorSpace","colorSpaceOptions","rampOver","tiles","dist","p","stops","transformSource","value","transformColorMode","componentDefinition","defineStd","transformBoolean","transformColor","isolines","p","componentDefinition","defineStd","transformPosition","edgesPropConfig","cornerPin","p","componentDefinition","defineStd","x","y","u","crescent","componentDefinition","defineStd","x","y","u","cross","componentDefinition","defineStd","gatherStack","rgbSplit","p","adjust","scanlines","phosphorMask","vignetteOverlay","opaque","insideMask","lighting_exports","unpremultiplyAlpha","blend_exports","DEG_TO_RAD","DEG_TO_RAD$1","TWO_PI","TWO_PI$1","DEFAULT_SHAPE_CONFIG","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","u","propValues","ctx","childTexture","vol","field","surfaceField","suv","local","aspect","div","sharp","max","mul","sdf","pxH","cpx","cpy","sub","grad","fieldSlope","gradX","gradY","rb1","call","float","lightRad","lx","add","cos","ly","sin","kl1","keyLightXY","L","H","kl2","L2","H2","depthNorm","clamp","outerWarp","smoothstep","refrScale","haloOffX","haloOffY","pat","surfacePattern","pdx","pdy","sAngle","fUv","sectorFold","crystalRNorm","sqrt","tableMask","radialDensity","tableSuppress","nSurf","marchedNormal","bevelSlope","normalize","vec3","grazing","grazingFlat","feps","vScale1","fUvS1","facet1","fdSlope","cellNoiseAt","gx1","gy1","gLen1","nx1","ny1","cellId1","floor","cellRand","fract","nF1","ndlS","dot","ndl1","facet2","vec2","gx2","gy2","gLen2","nx2","ny2","nF2","ndl2","I","facetRefrAmp","refr","refract","thickEff","offMag","totalOffX","totalOffY","bounce","reflect","bounceMag","bounceOffX","abs","bounceOffY","innerW","pbx","pby","fUvS3","facet3","gx3","gy3","gLen3","nx3","ny3","cellId3","cellRand3","w3","wedgeLit","mosaicMul","mosaicFire","zoomedX","zoomedY","lensX","lensY","lit1","shadow1","bright1","lit2","shadow2","bright2","surfBright","combinedBright","chrScale","chrOffX","chrOffY","edgeDarken","mix","facetMul","ndh1","ndh2","spec1","pow","spec2","glint","flashContrib","fresnelRim","fresnelContrib","lightFacing","rb2","transition","cutoutOn","outerUV","baseSampleUV","sampledR","sampledG","sampledB","innerSample","baseColor","refractedRgb","splat3","refractedA","litRgb","lumWeights","origLum","tinted","lumPreserved","composited","vec4$1","select","gt","cutoutAlpha","transformPosition","transformBoolean","glassShellProps","transformColor","componentDefinition","defineStd","noiseColorProps","noiseToneProps","noiseSpeedProp","rampOver","noiseTone","seededPlane","curlSpeed","p","stops","MAX_POINTS","HALF_ONE","toHalfFloat","WIDTH_MIN","SPEED_FULL","cursorTrailScan","makeStrokePolylineScan","polylineRecorder","params","createDataTexture","registerMediaTexture","onBeforeRender","onCleanup","onResize","getCpuValue","dimensions","pts","texData","i","dataTex","pointsKit","tracker","createPointerVelocityTracker","curW","curH","width","height","headDist","wasActive","fp","pointer","deltaTime","rawDt","dt","length","drawRadius","aspect","move","ageRate","p","stepDist","widthNow","head","n","active","count","base","ageColorRamp","trailAge","propValues","uniforms","colorSpaceMode","mixColorStopsRuntime","cm","colorMixing_exports","call","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","ctx","gpu","ZERO","scan","coverage","trailColor","vec4","feedbackSim","build","params","childNode","gpu","root","cfg","paramsU","sim","createFeedbackTrailSim","ctx","read","write","pipeline","createFluidKernelPass","frameParams","t","STATE_RES","STATE_FORMAT","decoder","buildMacroblockAdvectKernel","moshKernel","componentDefinition","defineStd","feedbackSim","params","root","getCpuValue","childTexture","display","paramsBuffer","read","write","dt","localTime","childNode","ctx","computeOutputs","uniforms","convertToTexture","ZERO","live","call","unpremultiplyAlpha","mixExpr","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformPosition","transformColorSpace","colorSpaceOptions","rampOver","rings","dist","p","stops","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","componentDefinition","defineStd","transformEdges","scatter","p","CHANNEL_MODES","componentDefinition","defineStd","value","transformEdges","displaceByLayer","p","transformPattern","value","transformColorMode","grid","pixelGrid","p","componentDefinition","defineStd","transformColor","ditherInks","quantise","componentDefinition","defineStd","transformColor","sampleMapsAtCellCentres","p","withAlpha","dotLattice","componentDefinition","defineStd","transformColor","transformBoolean","gatherStack","childTap","shadowComposite","silhouetteCoverage","shadowOffset","p","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","duotone","p","componentDefinition","defineStd","x","y","u","ellipse","transformStyle","value","componentDefinition","defineStd","transformAngle","transformPosition","transformColor","linework","p","componentDefinition","defineStd","noiseColorProps","noiseToneProps","rampOver","noiseTone","seededPlane","unitized","erosionRidges","p","stops","componentDefinition","defineStd","crosses","exposure","p","isValue","streaks","fallingStreaks","p","streakColor","strokeOver","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","withAlpha","times","alphaOf","componentDefinition","defineStd","f32","crosses","value","filmGrain","p","isZero","STOCK_OPTIONS","STOCK_LUTS","decodeStockLut","slug","b64","bin","n","out","b","g","r","src","dst","HAL_TINT","HALATION_THRESHOLD","weaveStage","frameSway","p","gradeStage","lutAtlasGrade","halationStage","screenedBloom","componentDefinition","defineStd","f32","value","crosses","params","childNode","computeOutputs","convertToTexture","ZERO","childTex","wovenUv","straight","call","unpremultiplyAlpha","componentDefinition","defineStd","transformBoolean","flip","p","MAX_MOTES","COUNT_MAX_MOBILE","RES","resolveRenderRes","STATE_FORMAT","DEG_TO_RAD","DEG_TO_RAD$1","BASE_DRIFT","ORBIT_RAD","ORBIT_RATE","TWINKLE_FREQ","CURSOR_FORCE_K","CURSOR_DRAG","ANGLE_FLIP","PI$1","SimParams","a","struct","vec4f$1","f32","simLayout","typegpu_default","arrayOf","atomic","u32","textureStorage2d","floatingParticlesInitKernel","makeUniformScatterInit","floatingParticlesUpdateKernel","integrator","drift","force","floatingParticlesRender","shape","renderAgents","pointSlot","makeFloatingParticlesSplatKernel","floatingParticlesSplatKernel","floatingParticlesResolveKernel","particleOverChild","straightAlphaOver","componentDefinition","defineStd","transformColor","pointShapeOptions","agentSim","getCpuValue","render","sys","g","makeCpuValueGetter","localTime","frameParams","dt","aspect","pointerX","pointerY","readAgentFrame","domainX","count","cursorX","cursorY","cursorRadius","col","bodyR","SIZE_REF_RES","expDecay","field","childNode","call","componentDefinition","defineStd","x","y","u","flower","componentDefinition","defineStd","transformEdges","flowNoise","p","FOUR_PI","WARP_LEVELS","componentDefinition","defineStd","vec3f$1","transformColor","transformColorSpace","colorSpaceOptions","params","uv","viewport","surfaceOf","aspect","local","div","max","t","mul","animatedTime","seedOff","uniformOf","p","strength","centred","sub","angle","volumeNoiseAt","vec3","add","spun","rotate2","vec2","cos","sin","rot","shearT","shearX","level1","warpStep","tz","level2","zoneNoise","edgeHardness","pow","edgeWidth","mix","t1","smoothstep","t2","base","quadBlend","foldMask","blend","abs","foldHighlight","litScale","vec4$1","clamp","splat3","flute","fluteFrame","p","componentDefinition","defineStd","value","recompileWhen","prev","next","transformColor","transformEdges","gatherStack","refractedTaps","fluteHighlight","ambientForce","kernel","restoreToward","STATE_FORMAT","fluidSim","build","params","gpu","getCpuValue","registerComputeTexture","onCleanup","root","cfg","n","count","velA","createStateBuffer","vec4f$1","velB","dyeA","dyeB","pressure","f32","divergence","maskBuf","outTex","outputTexture","paramsU","entries","fluidBg","outputBg","ctx","bindGroup","createFluidKernelPass","containerParts","emitters","e","solvePre","s","solvePost","solver","createStableFluidsPasses","outputPass","solveInto","nodes","jacobiIters","tracker","createPointerVelocityTracker","maxDt","lastTime","elapsed","num","key","fallback","v","writeParams","frameParams","fp","preNodes","now","dt","f","t","ranInit","v$1","splat","opts","pass","_f","cursorRibbon","idle","createIdleGate","ptr","scale","isActive","skip","values","spec","pathStampRibbon","seededFieldInit","initialized","lastSeed","io","warmTime","w","wt","N","COUNT","JACOBI_ITERS","WARM_JACOBI_ITERS","WARM_STEPS","VELOCITY_DISSIPATION","INTERNAL_MAX_VEL","NOISE_FREQ","STATE_FORMAT","cm","colorMixing_exports","FogParams","a","struct","f32","fluidLayout","typegpu_default","arrayOf","vec4f$1","outputLayout","textureStorage2d","initKernel","buildNoiseFieldInitKernel","forceKernel","buildTrigTurbulenceKernel","solverKernels","buildStableFluidsKernels","curlKernel","vorticityKernel","divergenceKernel","jacobiKernel","gradSubtractKernel","advectVelKernel","copyVelKernel","advectDensKernel","copyDensKernel","colorRestoreKernel","buildNoiseRestoreKernel","outputKernel","buildFluidOutputKernel","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","fluidSim","fieldValues","f","seededFieldInit","ambientForce","restoreToward","mouseInf","mouseRadGrid","ptr","active","ctx","computeOutputs","propValues","uniforms","fogField","ZERO","s","fogDensity","colorVar","colorSpaceMode","fogColor","call","vec4","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformAngle","transformColorSpace","colorSpaceOptions","fractalNoise","p","DEFAULT_SHAPE_CONFIG","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","u","t","animatedTime","vol","EPS","field","surfaceField","s0","sX","sY","sdf","pxH","grad","fieldSlope","transition","silhouette","pat","surfacePattern","pdx","pdy","depthNorm","local","clamp","div","mul","max","nBase","steepAtten","ddx","sub","ddy","normalize","vec3","add","bevelSlope","sqrt","float","thickness","opticalThickness","depthT","transmit","beerLambert","scatteredRgb","mix","splat3","frostField","smoothstep","frostScale","feps","fn0","surfaceNoise","fnx","fny","frostNormalAmp","wScale","wc","call","mxWorleyNoiseFloat2Pub","vec2","fx3","guarded","gt","n","nudgeNormal","kl","keyLightAt","direction","L","ndl","dot","ndh","sssDiffuse","pow","forwardGlow","sssRgb","glintField","twinkle","sin","sparkleGlint","frostRgb","fres","grazingFlat","fresnelRgb","broadSpec","iceRgb","insideShape","vec4$1","ZERO","transformPosition","transformColor","componentDefinition","defineStd","noiseColorProps","noiseToneProps","noiseSpeedProp","rampOver","noiseTone","seededPlane","unitized","gaborGrains","p","stops","applyGlassEffect","glass_exports","DEFAULT_SHAPE_CONFIG","frostBlurCompute","params","childNode","gpu","convertToTexture","registerComputeTexture","getCpuValue","onCleanup","onResize","dimensions","root","blurValue","childTexture","curWidth","curHeight","gaussian","createGaussianBlurCompute","blurredTexture","width","height","resolve","src","b","spine","shapedSurface","frame","glassCompute","fieldResult","blurResult","frameParams","nodes","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformBoolean","glassShellProps","recompileWhen","prev","next","v","transformColor","componentDefinition","defineStd","params","glassTilesFragment","uniformOf","p","ZERO","uv","mask","uniforms","aspect","glassTilesRemapUV","glitchGeometry","glitchFrame","p","componentDefinition","defineStd","gatherStack","glitchRgbSplit","colorBarFills","distortedScanlines","componentDefinition","defineStd","crosses","bloom","p","componentDefinition","defineStd","transformPosition","transformColor","coverageOver","p","withFrame","seamlessRadialFrame","noiseRays","DEFAULT_SHAPE_CONFIG","N_CHARGES","jhash","x","s","POS_FREQ","PHASE","i","theta","rr","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformColor","shapedSurface","frame","params","u","t","local","animatedTime","EPS","s0","sdfUV","px","sub","py","distC","sqrt","add","mul","spread","driftAmp","breatheAmp","radiusMul","baseR","maxReach","potC","potX","potY","pf","ph","cx","sin","cy","cos","rVal","invR2","div","max","dcx","dcy","termC","exp","dxx","termX","dyy","termY","inside0","smoothstep","insideX","insideY","contain","H0","mix","float","Hx","Hy","soft","coverage","gradHx","gradHy","metaSlope","reliefGate","min","shapeRelief","gradAx","clamp","gradAy","n","normalize","vec3","thick","kl","keyLightAt","direction","ndl","dot","ndh","specCore","pow","specHalo","glint","fres","grazingFlat","specRgb","transmit","gooRgb","sss","rgb","guarded","le","vec4$1","ZERO","componentDefinition","defineStd","transformColor","crosses","transformColorSpace","colorSpaceOptions","gradientMap","p","isZero","componentDefinition","defineStd","grayscale","field","gridLines","cellFrame","p","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","sampleMapsAtCellCentres","strokeOver","vary","STATE_FORMAT","SPLAT_MAX_CELLS","clampSplatGridSize","v","splatUpdateLayout","a","typegpu_default","arrayOf","vec4f$1","struct","f32","splatOutputLayout","textureStorage2d","makeSplatUpdateKernel","gridSize","u32","$","cx","cy","p","idx","cell","dx","dy","cellX","cellY","ddx","select","ddy","distSq","radius2","abs","influence","exp","clamp","makeSplatOutputKernel","textureStore","vec2u$1","pointerSplatField","slots","params","root","getCpuValue","registerComputeTexture","onCleanup","buffer","createStateBuffer","dispTex","displacement","updateParams","viewport","trackedViewport","size","updateKernel","outputKernel","updateBg","outputBg","update","createGuardedCompute","output","prevX","prevY","smoothVelX","smoothVelY","px","py","active","op","f","velX","velY","decayVal","safe","LATTICE_GRID","LATTICE_CELLS","LATTICE_MAX","latticeLayout","latticeOutputLayout","springLatticeKernel","gs","current","dispX","dispY","nL","nR","nU","nD","nUL","nUR","nDL","nDR","fx","fy","shearK","newVelX","newVelY","influenceRadius","forceMag","newDispX","newDispY","springLatticeOutputKernel","springLatticeField","bufferA","bufferB","springParams","springBgAB","springBgBA","spring","outputBgA","rawVelX","rawVelY","speed","clampedSpeed","damping","subDt","componentDefinition","defineStd","recompileWhen","prev","next","clampSplatGridSize","edgesPropConfig","gridSim","pointerSplatField","p","gridCellDisplace","computeOutputs","componentDefinition","defineStd","childNode","ZERO","transformStyle","value","styleOf","raw","componentDefinition","defineStd","transformAngle","transformColor","chosenBy","p","dotScreen","cmykPress","componentDefinition","defineStd","x","y","u","heart","DEFAULT_SHAPE_CONFIG","DEFAULT_STOPS","heatmapShadow","a","b","tk","phase","posS","mix","wob","sub","valueNoise","add","mul","float","aEff","local","clamp","exp","div","smoothstep","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","uniforms","propValues","t","animatedTime","suv","scl","max","f","inside","travel","directionFrame","rel","vec2","dot","tBase","inner","fract","abs","min","pow","outerBlur","t3","yy","animatedMask","outer","heat","frameFade","hashNoise","coverage","colorSpaceMode","stopCount","ramp","mixColorStopsRuntime","call","mixColorsVariants","mixColorsLinear","rampL","vec4$1","vec3","transformPosition","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","field","hexLines","cellFrame","p","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","strokeOver","vary","DEFAULT_SHAPE_CONFIG","TWO_PI","TWO_PI$1","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","params","u","ctx","t","animatedTime","uvY","wob","add","mul","sin","sub","vec2","frame","local","vol","EPS","sC","pxH","div","sdf","sR","sL","sU","sD","sharp","max","gradX","thickness","thin","exp","rimBase","depthMetric","surfFres","pow","clamp","abs","normalize","vec3","rim","bodyFill","f","fract","contour","smoothstep","min","scan","scanMask","mix","float","sweepPos","sweepD","sweepGlow","shimmer","drop","surfaceNoise","flick","grainMul","hashNoise","core","ca","fringe","rCore","bCore","color","rgb","hot","hotRgb","splat3","transition","alpha","guarded","insideShape","vec4$1","ZERO","transformPosition","transformColor","DEFAULT_SHAPE_CONFIG","THIRD","TWOTHIRD","LIGHT_X","LIGHT_Y","L_X","L_Y","L_Z","holoRainbow","t","cosineRainbow","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","u","local","animatedTime","vol","EPS","field","surfaceField","s0","sX","sY","sdf","pxH","transition","silhouette","suv","pat","surfacePattern","pdx","pdy","qdx","sub","qdy","baseNx","baseNy","steepAtten","bx","clamp","div","by","add","mul","grad","fieldSlope","domeSlope","float","crScale","crAmp","neps","w0","surfaceNoise","wx","wy","n","normalize","vec3","fScale","drift","blotch","normalTilt","ramp","hue","saturationC","spectral","foilTint","mix","splat3","roughnessC","L","H","ndl","dot","ndh","sheen","pow","specCore","specRgb","flakeN","flakePhase","twinkle","sin","flakeMask","smoothstep","flakeRgb","grainMul","foilRgb","guarded","insideShape","vec4$1","ZERO","transformPosition","createDomCaptureHost","params","gpu","domCanvas","onBeforeRender","onResize","onCleanup","device","initialDpr","tex","createSwappableMediaTexture","contentElement","hasLoggedError","paintSetup","hasFreshSnapshot","useLegacySignature","ensureTexSize","w","h","rect","physW","physH","copyFn","e","newDpr","componentDefinition","defineStd","sampled","vec4","call","srgbToLinear","componentDefinition","defineStd","crosses","hueRotate","p","isZero","componentDefinition","defineStd","objectFitProp","imageMedia","p","error","url","isRelative","N","COUNT","JACOBI_ITERS","STATE_FORMAT","IMPULSE_K","MAX_STEPS","CYCLE_PER_SPLAT","CYCLE_TIME_RATE","VEL_FADE_MAX","VEL_FADE_MIN","GAIN","FlowParams","a","struct","f32","SplatParams","fluidLayout","typegpu_default","arrayOf","vec4f$1","splatLayout","outputLayout","textureStorage2d","makeSplatKernel","colorSpaceMode","buildBrushSplatKernel","splatKernelVariants","splatKernel","solverKernels","buildStableFluidsKernels","curlKernel","vorticityKernel","divergenceKernel","jacobiKernel","gradSubtractKernel","advectVelKernel","copyVelKernel","advectDyeKernel","copyDyeKernel","outputKernel","buildFluidOutputKernel","srgbToLinear","c","hueToLinearRgb","hue","h","i","f","q","r","g","b","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","fluidSim","params","root","getCpuValue","propValues","spaceMode","activeSplatKernel","splatU","hueCursor","toRgb","v","fallback","conv","convertP3ToMixSpaceCPU","strokes","cursorRibbon","ptr","decayFadeSeconds","ctx","splatBg","force","radiusGrid","colorSpeed","mode","customStops","brushSplat","seg","c$1","velX","velY","posX","posY","_t","bc","momentum","computeOutputs","dyeField","ZERO","dye","local","vec4","clamp","mul","max","componentDefinition","defineStd","invert","componentDefinition","defineStd","transformPosition","transformBoolean","reveal","coverage","p","sdfSpaceUV","glass_exports","IRRADIANCE_FORMAT","IrradianceParams","a","struct","vec2f$1","arrayOf","vec4f$1","f32","outEntry","textureStorage2d","irradianceAnalyticLayout","typegpu_default","irradianceSvgLayout","texture2d","irradianceFieldLayout","FAR","sane","$","v","max","min","beyondSquare","uv","c","clamp","length","analyticField","shapeType","sdfFn","buildAnalyticSdfFn","p","svgField","border","textureSampleLevel","beyond","select","volumetricField","cx","cy","outside","circle","tuv","sil","inDomain","SilhouetteParams","silhouetteSeedLayout","silhouetteStepLayout","fieldSampleFastArg","buildFieldSampleGraphArgs","silhouetteInside","tx","ty","silhouetteSeedKernel","u32","fx","fy","s0","maxT","sL","sR","sD","sU","boundary","sx","sy","seed","textureStore","vec2u$1","silhouetteStepKernel","here","self","textureLoad","best","j","i","nx","ny","n","dist","buildIrradianceKernel","layout","fieldAt","opts","steps","shadowSteps","namePrefix","RAY_SPAN","shadows","shadowLoop","lay","visibility","from","toward","eps","soft","seg","len","dir","vis","t","dd","sdfUV","d0","o","gx","gy","g","normalize","start","tMax","ign","fract","u","rays","i32","rayStep","TAU","lightCount","acc","vec3f$1","ang","cos","sin","hitD","s","pos","hitP","shadowFrom","l","lp","lc","lightUV","toL","dirL","facing","dot","r","struck","fade","smoothstep","m","irr","createIrradiancePass","root","kernel","createGuardedCompute","AccumulateParams","accumulateLayout","accumulateKernel","at","prev","w","copyLayout","copyKernel","radianceCounter","raw$1","name","Expr","num","ctx","formatFloat","scopedInto","into","h","k","f","shadowVisibility","spec","id","hint","marchStmts","fieldAtPos","DENOISE_RADIUS","DENOISE_HALF_KERNEL","WARMUP_FRAMES","createSdfDataTexture","analyticSubPropValues","parseShapeConfigValue","sdf_exports","createVolumetricFieldComputeNode","sdf3d_exports","toPlacement","center","scale","rotationDeg","aspect","stored","dxAc","dy","sc","lightLanes","items","fields","placement","list","color","item","intensity","irradianceField","outputKey","kernelOpts","res","params","gpu","getCpuValue","registerComputeTexture","onCleanup","onResize","shapeSdfUrl","resolveShapeType","vf","mkTex","outTex","meanTex","prevTex","denoise","createGaussianBlurCompute","outputTexture","paramsU","accumU","accumulate$1","keepMean","pass","fieldVersion","silhouette$1","jfaA","jfaB","silU","seedPass","stepAB","stepBA","jumps","step","finalTex","domain","nodes","base","samp","sdfTex","width","height","num$1","key","fallback","lastKey","silhouetteReady","frame","warmup","samples","changedLastFrame","frameParams","pre","silhouettePasses","dom$1","rotation","lights","sub$1","dom","values","warming","changed","sampleIndex","weight","_version","abi","tex","local","div","listCounter","raw","listOf","prop","lane","field","arr","listFieldName","count","listCountName","accumulate","body","zero","dep","countText","stmts","term","DEFAULT_SHAPE_CONFIG","DEFAULT_LIGHTS","MAX_LIGHTS","RAYS","MOBILE_RAY_DIVISOR","MARCH_STEPS","SHADOW_STEPS","FIELD_RES","FIELD_RES_MOBILE","CORE_WIDTH_PX","STENCIL_EPS","BODY_AMBIENT","GLINT_EXPONENT","GLINT_GAIN","gatherSettings","propValues","shadowsRaw","mobile","isMobileGpuViewport","div$1","GATHER_PROPS","spine","shapedSurface","surfaceField","stencilled","add","vec2","px","far","continuedField","lightAt","placementPoint","mul","irradiance","splat3","rim","sub","rimLight","edge","nearestEdge","fieldSlope","light","onEdge","pointLightFrom","lambert","inverseSquare","glow","emissiveAlpha","exposureTone","guarded","gt","shadeBody","geometricNormal","float","lit","onBody","bodyLit","glint","pow","vec3","insideShape","cov","silhouette","vec4$1","mix","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","listPropConfig","transformBoolean","transformColor","glassShellProps","faces","isoCubeFaces","cellFrame","p","cubeColor","strokeOver","times","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","opaque","mixOf","rgbOf","componentDefinition","defineStd","centerPropConfig","edgesPropConfig","kaleidoscope","p","componentDefinition","defineStd","transformColor","params","createTrackerPursuitSim","motionTrackerHud","p","componentDefinition","defineStd","transformPosition","transformAngle","spectralLens","p","componentDefinition","defineStd","transformPosition","params","flare","asLocal","flareFrame","p","ghost","lensGhost","flareComposite","additive","flareHalo","flareStarburst","flareStreak","flareGlare","flareCore","TWO_PI","TWO_PI$1","BAND_THICKNESS_REF","heartbeatPulse","typegpu_default","f32","$","animTime","time","first","pow","abs","sin","second","clamp","edgeGlowBand","vec2f$1","fieldRaw","sdfUV","viewport","scale","thickness","softness","smokeSize","smokeAmt","pulse","beat","t","th","max","bd","mix","borderTh","aa","e0","min","e1","border","smoothstep","suv","drift","n1","value12","n2","smoke","smokeTh","smokeBand","angle01","atan2","orbitSpotsAccum","spotsF","spotSize","intensity","seed","colorIdxF","intensityEff","overAcc","addAcc","s","sF","gate","select","randVal","hash22","speedFactor","cos","dir","sTime","evenCond","floor","sinVal","cosVal","mask","pWeight","atg","fract","ss","sector","EdgeGlowAccum","a","struct","vec3f$1","edgeGlowAccumZero","accumFnByMode","makeAccumFn","mode","variant","mixColorsVariants","mixColorsLinear","vec4f$1","st","color","sectors","wNew","mixed","ba","ac","edgeGlowAccumColorFor","fn","colorAtIndex","arrayOf","colors","idx","c","i32","edgeGlowCompose","bloom","k","accumC","accumA","DEFAULT_SHAPE_CONFIG","DEFAULT_STOPS","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","uniforms","propValues","animatedTime","asLocal","call","bAndA","stopCount","colorCount","accumColorFn","accumFor","floatE","colorFor","state","i","transformPosition","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","componentDefinition","defineStd","transformPosition","transformColor","screenGlow","params","asLocal","animatedTime","resolveArg","p","frame","beamFrame","drift","slowDrift","bloom","beamBloom","streaks","beamStreaks","heat","heatRamp","dithered","arg","spec","params","floatE","Scalar","resolveScalar","maskedColor","color","mask","c","uniformOf","vec4","strokedSegment","slots","uv","viewport","paintFrame","call","lineMask","sineStroke","sineWaveMask","animatedTime","LINE_STYLE_MODES","transformLineStyle","value","LINE_CAP_MODES","transformLineCap","CAP_OPTIONS","componentDefinition","defineStd","transformColor","transformPosition","strokedSegment","p","componentDefinition","defineStd","transformAngle","motionBlur","blurPath","p","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformPosition","transformAngle","transformEdges","transformColorSpace","colorSpaceOptions","rampOver","dist","p","stops","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","isMobileGpuViewport","sdf3d_exports","DEFAULT_SHAPE_CONFIG","liquidStudio","rx","ry","envC","envS","keyRad","drift","envStr","ex","local","sub","mul","ey","add","p","vec2","sky","smoothstep","lum","r0","box0","length","r1","box1","r2","box2","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","u","t","animatedTime","mobile","field","surfaceField","sdf","pxH","nGeo","geometricNormal","pat","surfacePattern","freq","flowT","q","wAmt","hg","perlinSlope","flowWarp","relief","n","nudgeNormal","R","reflect","viewRay","sharp","clamp","mix","sin","env","direction","Hh","keyLightAt","spec","sharpGlint","vec4$1","lumG","lumR","lumB","grazeD","dth","lumBoffset","dark","light","rgb","silhouette","guarded","insideShape","ZERO","transformPosition","transformColor","glassShellProps","componentDefinition","defineStd","edgesPropConfig","gridSim","springLatticeField","p","liquidDisplace","computeOutputs","MAX_FILINGS","RES","resolveRenderRes","STATE_FORMAT","SPLAT_R","ALIGN_BASE","REST_K","DAMP_MIN","DAMP_SPAN","OMEGA_REF","AGIT_COOL","HOME_K","PULL_K","MAX_OFFSET","OVERSCAN","SimParams","a","struct","vec4f$1","f32","simLayout","typegpu_default","arrayOf","atomic","u32","textureStorage2d","filingsInitKernel","makeRestingDirectorInit","filingsHome","field","filingsField","filingsUpdateKernel","integrator","torque","filingsRender","shape","colorSpaceMode","renderAgents","makeFilingsSplatKernel","makeFilingsResolveKernel","mode","filingsSplatKernel","filingsResolveKernel","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","orientedShapeOptions","agentSim","getCpuValue","render","sys","g","makeCpuValueGetter","motionAxis","createMotionAxis","frameParams","dt","aspect","pointerX","pointerY","readAgentFrame","domainX","count","cols","cellW","cellH","fitJitteredGrid","cursorX","cursorY","axis","fieldType","restStr","restMode","strength","reach","response","colA","colB","bodyR","SIZE_REF_RES","PI","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","params","uv","viewport","surfaceOf","aspect","local","div","max","t","animatedTime","seed","uniformOf","p","pos","mul","vec2","x","y","turbulence","add","surfaceNoiseAt","vein","sin","depth","colorLadder3","smoothstep","DOMAIN_SCALE","WARP_AMOUNT","WARP_RATE","SWIRL_MAX","VAR_FREQ","VAR_STRENGTH","VAR_RATE","WRAP_CYCLES","DEFAULT_STOPS","componentDefinition","defineStd","arrayOf","vec4f$1","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","crosses","params","uv","viewport","surfaceOf","aspect","local","div","max","t","animatedTime","seed","uniformOf","p","centred","vec2","sub","mul","swirlAngle","smoothstep","length","swirled","rotate2","cos","sin","uvS","add","warped","warpedPoint","vec3","isMobileGpuViewport","q","basePower","variation","softness","clamp","exp","volumeNoiseAt","anchors","scatteredAnchors","dithered","standardPalette","wrapRamp","scatterField","componentDefinition","defineStd","centerPropConfig","edgesPropConfig","mirrorLine","p","componentDefinition","defineStd","transformColor","transformPosition","transformColorSpace","colorSpaceOptions","pointCloudGradient","p","interiorRay","field","frame","opts","entry","local","mul","length","opticalThickness","shearX","shearY","z","add","parallaxPlane","ray","hint","base","rate","turbulentMedium","p","h","drift","seed","axis","v","freqScale","driftScale","seedScale","e","q","vec3","warp","volumeNoiseAt","qw","mid","fine","volumeMarch","sample","transmit","splat3","color","i","t","emit","absorb","contribution","exp","neg","isMobileGpuViewport","VOLUMETRIC_FIELD_EXTRA_FIELDS","sdf3d_exports","ANALYTIC_SDF_EXTRA_FIELDS","sdf_exports","DEFAULT_SHAPE_CONFIG","NEBULA_STEPS_DESKTOP","NEBULA_STEPS_MOBILE","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","params","u","animatedTime","steps","spaceMode","veilGasMix","rampMix","lastKey","cols","name","c","key","fields","idx","conv","convertP3ToMixSpaceCPU","back","mixPreconvertedVariants","mixPreconvertedLinear","tv","call","t1","t2","ab","mixPreconvertedInSpace","mixColorsLinear","surfaceField","sdf","pxH","n","geometricNormal","float","view","viewRay","interior","shellRefract","sx","sy","sensor","rotationSensor","pathLen","freq","seedOff","jit","hashNoise","macro","surfaceNoiseAt","vec2","cav","mix","billowAmt","core","veil","eGain","aGain","march","fi","pos","gasN","wall","smoothstep","ridge","sub","clamp","abs","dens","dustD","cB","dim","haze","pow","starFreq","twinkleAmt","farPlane","far","pointStars","bv","twinkle","nearPlane","nearFreq","near","lightDir","direction","ndh","dot","keyLightAt","R","reflect","envLum","studioSoftboxes","spec","dualLobeGlint","rgb","neutralTone","layers","guarded","insideShape","vec4$1","silhouette","ZERO","vec3f$1","transformPosition","transformColor","transformColorSpace","colorSpaceOptions","glassShellProps","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","componentDefinition","defineStd","transformColor","transformBoolean","detectionOverlay","p","DEFAULT_SHAPE_CONFIG","DEFAULT_STOPS","ANGLE_SHIFT","FLOW_CYCLE","GLASS_SKY_GAIN","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","glassShellProps","shapedSurface","frame","params","u","t","animatedTime","field","surfaceField","n","geometricNormal","view","viewRay","grazing","grazingOf","rimEdge","local","sub","rim","smoothstep","add","along","directionFrame","surfacePattern","phase","mul","iri","stops","p","foldRamp","R","reflect","shine","studioSoftboxes","direction","schlickFresnel","rgb","mix","splat3","guarded","insideShape","vec4$1","silhouette","ZERO","peel","peelFrame","p","componentDefinition","defineStd","gatherStack","peelCompose","curlShading","curlSheen","overhangShadow","revealShadow","componentDefinition","defineStd","params","childNode","ctx","uniforms","convertToTexture","ZERO","texture","surface","call","paperSurface","straight","unpremultiplyAlpha","vec4","componentDefinition","defineStd","x","y","u","parallelogram","GRID_DIM_MAX","MAX_PARTICLES","COUNT_MAX","COUNT_MAX_MOBILE","OUT_MAX","resolveRenderRes","OUT_CELLS","SPLAT_R","AA_W","MIN_ALPHA","STATE_FORMAT","FP","WOBBLE_FREQ","ALPHA_K","PERSP_K","STIFF","DRAG","MAX_SPEED","CURSOR_FORCE_K","CURSOR_ZFORCE_K","SimParams","a","struct","vec4f$1","f32","fieldLayout","typegpu_default","arrayOf","atomic","u32","texture2d","textureStorage2d","DEPTH_SOURCE_MODES","makeParticleFieldSimKernel","channelMode","integrator","channel","force","particleFieldRender","shape","out","renderAgents","makeParticleFieldSplatKernel","particleFieldSplatKernel","particleFieldResolveKernel","componentDefinition","defineStd","pointShapeOptions","agentSim","params","getCpuValue","dimensions","aspect0","outW","outH","render","sys","setupRaw","g","makeCpuValueGetter","localTime","frameIdx","DEG_TO_RAD$1","frameParams","frame","readAgentFrame","dt","aspect","count","GW","GH","fitIsoGrid","cursorMode","cursorSign","cursorStrength","cursorRadius","rows","cameraRowsYDown","expDecay","N","FLUID_COUNT","JACOBI_ITERS","resolveRenderRes","VEL_FORMAT","RES","STATE_FORMAT","MAX_PARTICLES","COUNT_MAX_MOBILE","SPLAT_R","IMPULSE_K","MAX_STEPS","FORCE_RADIUS_GRID","VEL_FADE_MAX","VEL_FADE_MIN","AMBIENT_K","AMBIENT_FREQ","AMBIENT_DRIFT","INERTIA_RATE","SPEED_NORM","HOME_RATE","WARMUP_FRAMES","FlowParams","a","struct","f32","SplatParams","SimParams","vec4f$1","fluidLayout","typegpu_default","arrayOf","textureStorage2d","pfLayout","atomic","u32","texture2d","particleFlowForceKernel","buildVelocityImpulseKernel","solverKernels","buildStableFluidsKernels","particleFlowCurlKernel","particleFlowDivergenceKernel","particleFlowJacobiKernel","particleFlowGradSubtractKernel","particleFlowAdvectVelKernel","particleFlowCopyVelKernel","particleFlowVorticityKernel","particleFlowInitKernel","makeUniformScatterInit","particleFlowIntegrateKernel","integrator","particleFlowRender","shape","colorSpaceMode","trailsOn","renderAgents","makeParticleFlowSplatKernel","makeParticleFlowResolveKernel","mode","particleFlowSplatKernel","particleFlowResolveKernel","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","orientedShapeOptions","recompileWhen","previousValue","newValue","agentSim","params","gpu","getCpuValue","onCleanup","root","velTex","paramsU","splatU","fluidBg","createStateBuffer","force","createFluidKernelPass","vorticity","solver","createStableFluidsPasses","trailsCpu","render","sys","setupRaw","lastTime","ambientTime","initialized","pointer","createPointerVelocityTracker","idle","createIdleGate","num","key","fallback","v","frameParams","fp","now","dt","h","aspect","domainX","forceVal","swirl","ambient","momentum","advect","count","bodyR","SIZE_REF_RES","ptr","active","velFade","colA","colB","nodes","velX","velY","pathStampRibbon","posX","posY","buildAnalyticSdfFn","createSdfDataTexture","SVG_SDF_SIZE","sdf_exports","createAnalytic3dSdfSetup","createSvg3dSdfSetup","is3dShapeType","isSvg3dShapeType","resolveShapeSubProp","SHAPE3D_DEFAULTS","SVG3D_DEFAULTS","VOLUMETRIC_FIELD_FORMAT","sdf3d_exports","DEG_TO_RAD","DEG_TO_RAD$1","DEFAULT_SHAPE_CONFIG","parseShapeConfig","raw","MAX_PARTICLES","DGRID","DCELLS","DOMAIN","OUT_RES","resolveRenderRes","SIZE_SCALE","SIZE_REF_RES","EXTQ","MAX_SPLAT_SIZE","MAX_SPEED","STATE_FORMAT","SimParams","a","struct","vec4f$1","f32","simLayout","typegpu_default","arrayOf","atomic","u32","textureStorage2d","svgSdfLayout","texture2d","particleInitKernel","makeBallCloudInit","pressure","force","particleClearDensityKernel","particleDensityKernel","makeParticleUpdateKernel","evalSdf","integrator","particlesRender","shape","colorSpaceMode","renderAgents","makeParticleSplatKernel","particleSplatKernel","makeParticleSplatKernel","resolveShapeField","params","shapeSdfUrl","shapeType","gpu","getCpuValue","onCleanup","root","isSvg3dShapeType","setup3d","createSvg3dSdfSetup","dummyField","a","VOLUMETRIC_FIELD_FORMAT","extraBindGroup","shapeField","sdfTex","createSdfDataTexture","svgSdfLayout","simLayout","SVG_SDF_SIZE","is3dShapeType","createAnalytic3dSdfSetup","parseShapeConfig","sdf2d","buildAnalyticSdfFn","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformColor","MAX_PARTICLES","pointShapeOptions","transformColorSpace","colorSpaceOptions","DEFAULT_SHAPE_CONFIG","agentSim","SimParams","OUT_RES","STATE_FORMAT","resolveShapeType","shapeField$1","render","particlesRender","particleInitKernel","pressure","makeParticleUpdateKernel","sys","setupRaw","elapsed","springs","num","v","f","frame","k","resolveShapeSubProp","time","frameIdx","prevRot","CELL","DOMAIN","DGRID","g","makeCpuValueGetter","frameParams","dt","aspect","pointerX","pointerY","readAgentFrame","centerView","centerX","centerYv","scale","rotRad","DEG_TO_RAD","rotC","rotS","cursor","pointerToShapeLocal","gravMag","gravX","gravY","cfg","isSvg3d","halfDepth","SVG3D_DEFAULTS","saRotationV","om","d3","SHAPE3D_DEFAULTS","next","omegaFromRotationDeltas","omegaX","omegaY","omegaZ","entrain","entrainmentFromOmega","damping","mouseRadius","colA","colB","gridOff","r3SubCellOffset","vec4f$1","expDecay","SIZE_SCALE","MAX_SPEED","componentDefinition","defineStd","noiseColorProps","noiseToneProps","noiseSpeedProp","rampOver","noiseTone","seededPlane","evolving","noiseField","p","stops","componentDefinition","defineStd","centerPropConfig","transformPosition","edgesPropConfig","perspective","p","componentDefinition","defineStd","pixelate","p","WORK","CELL_COUNT","STATE_FORMAT","makePixelSortKernels","vertical","direction","buildOddEvenSortSet","componentDefinition","defineStd","gridSim","params","root","childNode","convertToTexture","registerComputeTexture","propValues","onCleanup","dir","childTexture","bufferA","createStateBuffer","f32","bufferB","lumaBuf","stateTex","state","set","lumaParams","swapParams","viewport","trackedViewport","size","lumaPipeline","createGridKernelPass","lumaReady","swapBgAB","swapBgBA","swap0","swap1","outputBgA","outputBgB","outputPass","frame","passes","sort","op","parity","side","resolve","src","lumaBg","f","fp","safe","tracked","strength","decayProp","ctx","computeOutputs","ZERO","childTex","call","unpremultiplyAlpha","srcCoord","childUV","vec2","transformThrowKey","value","GRID","num","v","f","offsetUV","uv","flowVec","scale","sub","mul","PixelThrowBicubicTaps","pixelThrowBicubicSetup","bSplineTapSetup","keyScaleOf","keyMode","rgb","keyInfluence","lum","vec3","mix","clamp","dot","componentDefinition","defineStd","transformEdges","params","uniforms","ctx","childNode","convertToTexture","onBeforeRender","dimensions","propValues","getCpuValue","ZERO","child","edgeMode","rawKey","flow","temp","field","hostFieldTexture","flowKit","prevX","prevY","velX","velY","speed","maxThrow","sampleFlow","gx","gy","ch","x0","y0","x1","y1","fx","fy","i00","i01","i10","i11","aspectOf","hostGridProgram","hostStep","rawVelX","rawVelY","friction","momentum","decay","advect","i","j","idx","srcX","srcY","aspect","r","r2","EDGE","INV_EDGE","minI","maxI","minJ","maxJ","cellX","cellY","dx","dy","distSq","influence","k","len","s","toHalfFloat","taps","call","tapW","local","probeUV","unpremultiplyAlpha","applyEdgeHandlingExpr","u","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","rampOver","tone","scaledVolume","warped","noiseField","p","stops","DEFAULT_SHAPE_CONFIG","envBox","x","lo","hi","softE","hint","s","local","xx","mul","smoothstep","sub","add","crumpleField","px","py","cScale","seedOff","p1","vec2","p2","abs","surfaceNoiseAt","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","shapedSurface","frame","params","u","propValues","t","animatedTime","vol","field","surfaceField","sdf","pxH","sdfUV","gDir","direction","gT","clamp","div","dot","colorSpaceMode","stopCount","baseColor","mixColorStopsRuntime","call","mixColorsVariants","mixColorsLinear","baseRgb","light","lx","ly","grad","fieldSlope","transition","silhouette","pat","surfacePattern","pdx","pdy","thicknessRange","max","depthNorm","nBase","marchedNormal","bevelSlope","sqrt","normalize","vec3","cAmp","neps","cr0","crx","cry","coverage","covNoise","surfaceNoise","covThreshold","crumpleW","n","nudgeNormal","grazing","grazingFlat","R","reflect","rough","rJit","eu","ev","soft","mix","keyBank","strip","fill","dome","env","fresnel","pow","specW","kl","keyLightAt","L","specular","exp2","lit","diffuse","ao","rimGlow","plasticRgb","splat3","guarded","insideShape","vec4$1","ZERO","transformPosition","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","componentDefinition","defineStd","centerPropConfig","edgesPropConfig","toPolar","p","componentDefinition","defineStd","x","y","u","mix","polygon","circle","componentDefinition","defineStd","posterize","p","componentDefinition","defineStd","transformPosition","transformColor","params","u","name","uniformOf","p","beam","segmentFrame","surfaceOf","soft","local","max","past","softPlus","sub","mul","longEnv","smoothstep","exp","neg","div","fanWidth","add","an","profile","gaussBell","splitSat","hue","animatedTime","col","mix","hueWheel","splat3","amt","vec4$1","clamp","componentDefinition","defineStd","transformAngle","transformPosition","progressiveBlur","p","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformPosition","transformColorSpace","colorSpaceOptions","rampOver","rings","dist","p","stops","componentDefinition","defineStd","transformPosition","transformBoolean","reveal","coverage","p","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","cm","colorMixing_exports","N","COUNT","STATE_FORMAT","MAX_ITERATIONS","SEED_DENSITY","RELIEF_EPS","RELIEF_STRENGTH","RELIEF_AMBIENT","RELIEF_LIGHT_XY","RELIEF_LIGHT_Z","RELIEF_SHININESS","RELIEF_SPEC","DEG2RAD","DEG_TO_RAD$1","PRESETS","CHILD_CONTRAST_MAX","CHILD_DFEED","CHILD_DKILL","CHILD_FEED_MIN","CHILD_FEED_MAX","CHILD_KILL_MIN","CHILD_KILL_MAX","grayScott","buildGrayScottStep","grayScottChild","seedSet","buildScatterSeedKernel","outputSet","buildPairPublishKernel","reactionKernel","reactionKernelChild","seedKernel","outputKernel","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","transformBoolean","gridSim","params","root","getCpuValue","registerComputeTexture","onCleanup","childNode","hasChild","bufferA","createStateBuffer","vec2f$1","bufferB","outTex","rdTexture","variant","paramsU","size","state","createPingPongPair","output","createGridKernelPass","outGroup","srcBuf","seed","reaction","generatorGroup","readBuf","writeBuf","child","createLateBoundChildInput","childTex","needsSeed","lastPreset","pointer","createPointerVelocityTracker","reactGroup","iters","op","f","fp","g","hgt","aspect","preset","pk","feed","kill","view","sx","sy","move","fieldX","fieldY","cursorSpeed","velScale","brushRadGrid","invRaw","_i","nodes","ctx","computeOutputs","propValues","uniforms","rdField","ZERO","local","div","min","sampleUV","vec2","add","mul","sub","V","w","max","t","smoothstep","colorSpaceMode","lowSeg","call","clamp","highSeg","color","select","gt","vL","vR","vT","vB","gx","gy","n","normalize","vec3","neg","ang","lightDir","cos","sin","diff","dot","shade","spec","pow","litRgb","splat3","vec4$1","mix","componentDefinition","defineStd","centerPropConfig","edgesPropConfig","fromPolar","p","componentDefinition","defineStd","transformEdges","depthRampBlur","p","params","childNode","ctx","computeOutputs","convertToTexture","ZERO","blurred","source","reflectionTex","call","unpremultiplyAlpha","planarReflection","uv","mirrorAcrossRow","componentDefinition","defineStd","x","y","u","ring","props","cw","ch","radius","thickness","cx","cy","diameter","bounds","currentProps","newOuter","componentDefinition","defineStd","transformPosition","transformColor","strokeOver","p","ringWaves","componentDefinition","defineStd","transformPosition","transformBoolean","reveal","coverage","p","componentDefinition","defineStd","x","y","u","roundedRect","componentDefinition","defineStd","crosses","saturate","p","isValue","componentDefinition","defineStd","noiseColorPropsAB","noiseSpeedProp","rampOver","noiseTone","rawPlane","scratchStreaks","p","linearPair","componentDefinition","defineStd","crosses","isZero","sharpen","p","VORONOI_FORMAT","makeVoronoiGraph","count","size","layout","a","typegpu_default","arrayOf","f32","textureStorage2d","u32","$","cx","cy","u","v","d1","d2","idx1","idx2","i","cellX","cellY","ddx","ddy","distSq","textureStore","vec2u$1","vec4f$1","voronoiGraphCache","voronoiNearest2Graph","key","g","cellLaneUVCache","makeCellLaneUV","laneWidth","vec2f$1","idx","field","cellLaneUVFor","fn","CrackGeom","struct","crackGeom","uv","nPosX","nPosY","sPosX","sPosY","dispX","dispY","crackWidth","nearestPos","secondPos","disp","fromNearest","minDist1","length","minDist2","displacementMag","edgeDiff","crackThreshold","baseCrackIntensity","smoothstep","displacementFactor","crackIntensity","toNearest","max","crackRefractUV","displacedUV","edgeNormal","refractionStrength","chromaticSplit","channel","refractionOffset","chromaticOffset","chromaShift","offset","SHARD_LIGHT_DIR_X","SHARD_LIGHT_DIR_Y","crackShardCompose","normalColor","rFinal","gFinal","bFinal","shardLighting","refractedRGB","vec3f$1","shadedRGB","displacementLength","tiltX","tiltY","normalDot","lightingFactor","lightingIntensity","finalLighting","voronoiRegionField","opts","params","gpu","registerComputeTexture","getCpuValue","onCleanup","root","kernel","cellPos","createStateBuffer","voronoiTex","bindGroup","pipeline","createGuardedCompute","generateCells","seed","currentSeed","needsDispatch","newSeed","seededRandom","x","SHARD_COUNT","VORONOI_SIZE","DATA_WIDTH","cellLaneUV","shardSites","positions","shardPhysics","cellData","displacementData","sites","FRICTION","prevX","prevY","pointer","deltaTime","aspect","dt","intensity","radius","decay","velX","velY","speed","maxVelocity","scale","randomDirX","randomDirY","dx","dy","dist","currentDx","currentDy","decayTime","decayFactor","velocityDx","velocityDy","influence","influenceCurve","pushForce","jitterForce","lerpFactor","shardDataTexture","physics","createDataTexture","registerMediaTexture","dataMirror","texData","packMirror","toHalfFloat","dataTex","componentDefinition","defineStd","transformEdges","childNode","ctx","computeOutputs","propValues","convertToTexture","ZERO","child","voronoiField","call","unpremultiplyAlpha","onBeforeRender","dimensions","edgeMode","cells","dataKit","fp","vSample","nearestI","secondI","nearestClamp","dataAt","floatE","geom","sample","applyEdgeHandlingExpr","refractUV","componentDefinition","defineStd","noiseColorProps","rampOver","signedTone","seededPlane","evolving","noiseField","p","stops","componentDefinition","defineStd","transformColor","transformAngle","transformPosition","sineStroke","p","componentDefinition","defineStd","slicedSlide","p","N","COUNT","JACOBI_ITERS","VELOCITY_DISSIPATION","STATE_FORMAT","cm","colorMixing_exports","FluidParams","a","struct","f32","fluidLayout","typegpu_default","arrayOf","vec4f$1","outputLayout","textureStorage2d","splatKernel","buildEmitterSplatKernel","solverKernels","buildStableFluidsKernels","curlKernel","vorticityKernel","divergenceKernel","jacobiKernel","gradSubtractKernel","advectVelKernel","copyVelKernel","advectDensKernel","copyDensKernel","outputKernel","buildFluidOutputKernel","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformPosition","transformColorSpace","colorSpaceOptions","fluidSim","splat","f","speed","dirRad","spreadHalf","emitPos","epx","epy","velMag","mouseInf","mouseRad","ptr","mouseRadGrid","active","ctx","computeOutputs","propValues","uniforms","smokeField","ZERO","s","smokeDensity","smokeAge","colorSpaceMode","stopCount","smokeColor","mixColorStopsRuntime","call","vec4","sdfSpaceUV","glass_exports","createSvgSdfSampler","createSdfDataTexture","createAnalyticSdfSampler","driveAnalyticSubProps","ANALYTIC_SDF_EXTRA_FIELDS","sdf_exports","createVolumetricFieldComputeNode","buildVolumetricFieldSampler","VOLUMETRIC_FIELD_EXTRA_FIELDS","sdf3d_exports","DEFAULT_SHAPE_CONFIG","N","COUNT","JACOBI_ITERS","VELOCITY_DISSIPATION","STATE_FORMAT","cm","colorMixing_exports","FillParams","a","struct","f32","fluidLayout","typegpu_default","arrayOf","vec4f$1","outputLayout","textureStorage2d","maskSet","makeShapeMaskSet","makeMaskKernel","svgMaskKernel","vfMaskKernel","splatKernel","buildEmitterSplatKernel","solverKernels","buildStableFluidsKernels","curlKernel","vorticityKernel","divergenceKernel","jacobiKernel","gradSubtractKernel","advectVelKernel","copyVelKernel","advectDensKernel","copyDensKernel","outputKernel","buildFluidOutputKernel","shapeContainerField","params","getCpuValue","shapeSdfUrl","shapeType","resolveShapeType","vf","ctx","root","maskBuf","paramsBuffer","maskPass","maskVfBg","sdfTex","maskSvgBg","maskBg","fp","makeSubPropResolver","num","v","f","raw","c","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformColor","transformPosition","transformColorSpace","colorSpaceOptions","fluidSim","container","resolveSub","splat","speed","dirRad","spreadHalf","centerView","emitView","h","aspect","velMag","sub","mouseInf","mouseRad","ptr","active","mouseRadGrid","dom","computeOutputs","propValues","uniforms","smokeField","ZERO","sampler","fieldTex","sdfUV","call","shapeMask","clamp","mul","s","smokeDensity","smokeAge","colorSpaceMode","smokeColor","vec4","N","COUNT","JACOBI_ITERS","VELOCITY_DISSIPATION","MAX_STEPS","STATE_FORMAT","cm","colorMixing_exports","FlowParams","a","struct","f32","fluidLayout","typegpu_default","arrayOf","vec4f$1","outputLayout","textureStorage2d","splatKernel","buildEmitterSplatKernel","solverKernels","buildStableFluidsKernels","curlKernel","vorticityKernel","divergenceKernel","jacobiKernel","gradSubtractKernel","advectVelKernel","copyVelKernel","advectDensKernel","copyDensKernel","outputKernel","buildFluidOutputKernel","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","fluidSim","speedGateOf","smoothSpeed","strokes","cursorRibbon","ptr","f","decayFadeSeconds","_ptr","values","emitX","emitY","momentumScale","speedGate","isActive","emitRadiusUv","ctx","computeOutputs","propValues","uniforms","smokeField","ZERO","s","smokeDensity","smokeAge","colorSpaceMode","stopCount","smokeColor","mixColorStopsRuntime","call","vec4","componentDefinition","defineStd","crosses","solarize","p","isZero","componentDefinition","defineStd","transformColor","solidColor","p","sphere","sphereFrame","p","componentDefinition","defineStd","transformPosition","transformColor","gatherStack","crispTap","rimLit","componentDefinition","defineStd","transformColor","transformPosition","transformColorSpace","colorSpaceOptions","rampOver","dist","p","pair","componentDefinition","defineStd","x","y","u","star","reliefStylizeProps","defaults","componentDefinition","defineStd","reliefStylizeProps","noiseRelief","reliefBases","componentDefinition","defineStd","transformBoolean","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","transformPosition","overRgb","ribbons","p","backToP3","tonePow","componentDefinition","defineStd","centerPropConfig","edgesPropConfig","stretch","p","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","strokeOver","p","stripeBands","TAU","componentDefinition","defineStd","vec4f$1","transformColor","transformPosition","params","uniforms","uv","viewport","surfaceOf","aspect","local","div","max","u","name","uniformOf","p","brightness","mul","keyInt","fillInt","fillOffset","backInt","lightTarget","curvature","keyDecay","mix","fillDecay","backDecay","centerX","centerY","sub","transitionWidth","isFloor","smoothstep","add","notFloor","wallNormY","clamp","wallNormY2","floorNormY","uvXCentered","coneWidth","wallFallY","wallFallY2","floorPoolY","floorDy","floorDy2","ambient","curveDist","neutralBase","exp","wallBias","floorBias","downSpot","sourceX","decay","beamX","wDx","wall","neg","poolX","fDx","light","vec3","fills","backFloor","glowSpot","backWall","bounce","float","splat3","ambAnchorY","orbits","glowAt","ambTime","lastSeed","orbitConsts","fp","seed","i","sd","sizeVal","cpuHash01","off","c","vig","vignetteMask","vec4$1","componentDefinition","defineStd","transformColor","transformPosition","coverageMix","p","withFrame","radialFrame","modulate","softRayLobes","featherMask","COMPUTE_MAX","isMobileGpuViewport","COMPUTE_FALLBACK_W","COMPUTE_FALLBACK_H","MARCH_STEPS","MARCH_REFINE","DEG_TO_RAD","DEG_TO_RAD$1","componentDefinition","defineStd","recompileWhen","prev","next","transformEdges","transformColor","params","gpu","getCpuValue","registerComputeTexture","onCleanup","onResize","dimensions","root","waveType","octaveCount","edgeMode","lightingEnabled","cursorEnabled","canvasW","canvasH","computeW","computeH","fit","uvMaskTex","HEIGHT_FIELD_STATE_FORMAT","litTex","uvMaskMap","litMap","bufferA","bufferB","readBuf","createWaveStateBuffers","paramsU","createHeightFieldParamsUniform","curW","curH","width","height","computeKernel","makeHeightFieldMarchKernel","computeBg","heightFieldMarchLayout","computePass","createKernelPass","propagate","makeWaveEquationKernel","wave","createPingPongPair","propGroup","readSrc","writeBuf","waveEquationLayout","propagatePass","prevPx","prevPy","lastTime","simSinceActive","animT","lastSig","writeParams","fp","mouseSpeed","cursorActive","aspect","tilt","roll","camHeight","zoom","camPos","fwd","camRight","camUp","focal","resolveOrbitCamera","px","py","cNdcX","cNdcY","rd","norm3","cRayDownZ","cT0","cWX0","cWY0","cursorWorldUVx","cursorWorldUVy","lc","amp","cursorIntensity","freq","seed","edgePin","lighting","glossiness","highlights","lightX","lightY","lightZ","nearCutoff","farCutoff","waveSpeed","cursorWaveX","cursorWaveY","heightEnvelope","HEIGHT_SLAB_PAD","frameParams","now","dt","rawVelX","rawVelY","waveSettled","WAVE_SETTLE_MS","sig","prop","childNode","ctx","computeOutputs","convertToTexture","ZERO","uvMaskSample","local","litSample","lookedUpUV","vec4$1","mask","lit","childColor","call","unpremultiplyAlpha","clamp","mul","vec3","cross3","a","b","l","camDist","camY","orbitZ","right0","up0","cr","sr","swirlPatternField","share","flowField","p","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","shimmered","rampOver","threshold","stops","pulse","componentDefinition","defineStd","x","y","u","teardrop","applyTextTransform","text","mode","_","ws","ch","generation","bumpMeasureGeneration","measureCtx","letterSpacingSupported","getMeasureContext","canvas","supportsCanvasLetterSpacing","MAX_CACHE_ENTRIES","cache","measureText","spec","ctx","fontLoaded","isFontAvailable","key","cached","metrics","widthPer100","ascentPer100","descentPer100","rawInkAsc","rawInkDesc","hasInk","result","wrapLines","maxWidthPer100","measureLine","explicit","out","line","words","current","word","candidate","measureTextBlock","lineHeightEm","lines","l","per","n","first","last","pitchPer100","m","w","MAX_TEXTURE_AXIS","TEXT_SUPERSAMPLE","wrapWidthPxOf","v","canvasWidth","measureBlockOf","props","cw","fontSizePx","fontSizePxOf","widthPx","canvasHeight","createGlyphRasterHost","params","dimensions","getCpuValue","setExtraField","target","createCanvasRasterTarget","rasterCtx","glyphTex","createSwappableMediaTexture","defaults","componentDefinition","readProps","raster","dimW","dimH","wrapWidthPx","f","contentWPx","pitchPx","lineBoxPx","blockHPx","ascentPx","descentPx","padPx","cssW","cssH","scale","texW","texH","blockTopY","contentLeftX","i","lineWPx","drawX","baselineY","font","createFontDependentRaster","loadGoogleFont","createRasterInvalidator","glyphFrame","uniforms","uvContext","call","orientedBoxField","glyphTap","glyph","frame","sampleCatmullRomExpr","tintGlyph","sampled","color","vec4","defineStd","f32","cx","cy","inkShiftPx","bounds","currentProps","oldFontPx","oldWidthPx","oldInkPx","sW","sH","newFontPx","rawFont","fontSize","updates","rawW","value","transformColor","transformPosition","componentDefinition","defineStd","transformAngle","transformPosition","tiltShift","p","STATE_RES","isMobileGpuViewport","STATE_FORMAT","DIFFUSE_HALF_UV","DRIFT_SCALE","RAINBOW_RATE","TINT_MODES","SOURCE_MODES","buildTrailKernel","source","hueCycle","buildFeedbackTrailStep","timeTrailKernel","resolveBlendKey","v","key","blendModes","stampModeFor","componentDefinition","defineStd","transformColor","feedbackSim","params","root","getCpuValue","propValues","tintMode","blendMode","isMotion","trailSampler","trail","childTexture","display","paramsBuffer","read","write","dt","zoom","trailLength","childNode","ctx","computeOutputs","uniforms","convertToTexture","ZERO","live","call","unpremultiplyAlpha","blendKey","blendFn","sourceMode","local","a","max","lum","dot","div","vec3","vec4$1","mul","liveStraight","trailStraight$1","trailStraight","floatE","componentDefinition","defineStd","transformColor","v","tint","p","halfUvFromProp","value","canvasHeight","fallback","safeFallback","dv","componentDefinition","defineStd","x","y","u","trapezoid","props","cw","ch","bottom","top","halfH","cx","cy","bounds","currentProps","keepUnit","cur","newHalfUV","oldMax","newMax","factor","prevCenter","field","triangleLines","cellFrame","p","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","strokeOver","vary","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","tritone","p","componentDefinition","defineStd","transformColor","transformAngle","transformColorSpace","colorSpaceOptions","strokeOver","p","truchetArcs","cellFrame","componentDefinition","defineStd","centerPropConfig","edgesPropConfig","twirl","p","componentDefinition","defineStd","transformBoolean","reveal","coverage","p","componentDefinition","defineStd","x","y","u","vesica","componentDefinition","defineStd","gatherStack","chromaSmearTaps","tapeWarp","p","beatPulse","componentDefinition","defineStd","crosses","vibrance","p","isZero","componentDefinition","defineStd","objectFitProp","videoMedia","p","error","stage","componentDefinition","defineStd","transformColor","transformPosition","crosses","tintToward","p","radialMask","isZero","cells","share","cellDistances","p","componentDefinition","defineStd","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","borderOverlay","rampOver","cellFill","stops","cellBorders","DEFAULT_SHAPE_CONFIG","waterFbm","uvE","hint","uv","local","n0","surfaceNoiseAt","n1","mul","add","vec2","n2","waterNoise1","waterSky","rx","ry","lx","ly","envC","envS","sharp","ex","sub","ey","up","clamp","horizon","vec3","zenith","base","mix","splat3","smoothstep","sunCenter","sunRad","sd","length","sun","componentDefinition","defineStd","shapeEffectBoundingBoxDeclaration","transformPosition","transformColor","shapedSurface","frame","params","u","t","animatedTime","vol","field","surfaceField","sdf","pxH","light","direction","env","grad","fieldSlope","nGeo","marchedNormal","rimBevel","div","normalize","pat","surfacePattern","fx","fy","freq","flowT","q","wAmt","qw","flowWarp","re","h0","h0n1","hx","hy","fineRe","qf","f0n1","fxg","fyg","relief","reliefFine","n","R","reflect","reflCol","thickness","opticalThickness","depthT","wc","transmit","beerLambert","shallowsC","bodyTint","kl","keyLightAt","diffuse","pow","dot","tDir","refract","float","transSky","clarityT","body0","causT","causP","sin","c1","abs","c2","causV","causMask","surface0","schlickFresnel","grazingFlat","spec","sharpGlint","vec4$1","surface1","foamMask","surface2","transition","silhouette","guarded","insideShape","ZERO","wet","bleedWarp","p","componentDefinition","defineStd","crosses","transformColor","wash","kuwahara","paperGrain","componentDefinition","defineStd","value","edgesPropConfig","wave","p","SPECTRUM","EDGE_LEVEL","ENVELOPE_FALLOFF","LEVEL_FLOOR","LEVEL_SWING","SLOPE_EPS","STYLE_MODES","ALIGN_MODES","styleOf","raw","alignOf","componentDefinition","defineStd","value","transformColor","colorStopsPropConfig","transformColorSpace","colorSpaceOptions","transformPosition","params","style","align","viewport","surfaceOf","u","name","uniformOf","p","along","across","length","segmentFrame","x","local","div","px","t","animatedTime","amplitude","frequency","height","rawAt","xs","waves","mul","envelopeAt","mix","gaussBell","sub","signalAt","clamp","levelAt","add","mirrored","dy","neg","rise","abs","extentOf","level","bandDistance","extent","max","count","cell","xCells","columnX","floor","acrossColumn","fract","coverage","halfW","halfH","crispFill","roundedRect","rows","rowCentre","lit","smoothstep","step","radius","circle","curveAt","curve","slope","crispStroke","sqrt","inSpan","color","stops","vec4$1","componentDefinition","defineStd","noiseColorProps","noiseToneProps","noiseSpeedProp","rampOver","noiseTone","seededPlane","unitized","waveletBands","p","stops","componentDefinition","defineStd","transformColor","weaveThreads","cellFrame","p","componentDefinition","defineStd","objectFitProp","webcamMedia","p","error","componentDefinition","defineStd","reliefStylizeProps","noiseRelief","reliefBases","componentDefinition","defineStd","transformColor","transformColorSpace","colorSpaceOptions","transformWorleyMode","transformWorleyDistance","worleyNoise","p","componentDefinition","defineStd","transformPosition","motionBlur","blurPath","p","createShaderRegistry","registry","componentDefinition","fileName","def","propsMetadata","propName","propConfig","shaderRegistry","deprecatedShaderNames","map","entry","oldName","resolveShaderName","name","getAllShaders","getShaderByName","fullScreenTriangle","a","vertexFn","builtin","vec2f","warn","OPTIONAL_FEATURES","rootsByDevice","lostCallbacks","lostDevices","defaultRootPromise","destroyedDefaultRoots","acquireRoot","options","device","root","typegpu_default","release$1","wireDeviceLost","debugWarn","ctx","acquireDefaultRoot","release","cached","pending","createOwnRoot","error","createOwnRoot","GpuUnavailableError","root","typegpu_default","OPTIONAL_FEATURES","error","info","getWebGPUSupport","rootsByDevice","configureCanvasContext","canvas","options","wireDeviceLost","onDeviceLost","device","callbacks","lostCallbacks","lostDevices","cb","set","createAnimatedTimeState","state","deltaTime","speed","accumulatedTimeCache","getAnimatedTimeState","key","SystemUniforms","a","struct","f32","vec2f$1","$","uv","viewportSize","mul","structuralHash","inputs","h","joined","i","createPipelineCache","maxSize","dispose","entries","clock","activeHash","pendingHash","touch","entry","evictIfNeeded","victim","e","hash","buildFn","existing","value","LABEL","createPassManager","textureManager","dispatcher","canvasFormat","preferredCanvasFormat","rttFormat","deviceMaxSampled","maxSampled","vertex","fullScreenTriangle","rttTextures","liveTextures","current","buildSamplerBindGroup","s","SHARED_SAMPLER_LAYOUT","debugError","allocateRttTextures","ir","size","needed","t","rt","buildTextureBindGroup","fragment","mediaResources","media","resource","debugWarn","buildPipeline","targetFormat","buildExternalBinding","externalSources","keys","getSource","current$1","source","buildExecutablePass","target","mediaReads","k","mediaSnapshot","setComposition","uniformBindGroup","spec","samplerBindGroup","rttPasses","p","finalPass","execPass","pass","view","swapped","bg","render","canvasView","frameParams","afterCompute","step","steps","repaintRtt","renderView","rebindPassTextures","resize","width","height","recreated","srgbViewFormat","format","createTextureManager","live","createRaw","props","usages","linearClamp","nearestClamp","linearRepeat","nearestRepeat","samplers","wrap","texture","srgb","managed","createMediaTexture","mipLevelCount","createDataTexture","data","createRenderTexture","build","w","inner","createExternalTextureBinding","layout","entryKey","staticEntries","external","mediaKey","type","decl","getShaderByName","explicitBoxSize","bbox","cw","ch","dimPx","d","dim","measureNode","input","boundingBox","b","pb","bindingSizePx","boxed","natural","getNaturalSize","gapToPx","gap","mainAxisDim","resolveLayoutConfig","cfg","anchorEdges","origin","anchorTopLeft","edge","blockSize","canvasDim","offsetPx","layoutBlockSize","items","main","cross","item","m","c","computeLayout","placements","block","ox","oy","blockLeft","blockTop","crossPos","childCross","blockCross","cursor","x","y","measureChild","nested","flowItems","group","child","computeBoundsShift","cx","cy","placeChild","centerXPx","centerYPx","out","rects","placeGroup","posProp","shift","at","precomputedItems","effective","computeTreeLayout","roots","cw","ch","rects","out","walk","view","layout","resolveLayoutConfig","items","flowItems","placeGroup","placed","i","child","root","PerformanceTracker","buffer","value","index","_count","maxSize","count","frameTimeMs","result","now","interval","intervalResult","timeMs","nodeCount","rttNodeCount","rendering","bytes","entry","len","oldestIdx","newestIdx","oldest","newest","timeDeltaSeconds","values","mean","a","b","sumSquaredDiff","i","diff","current","j","frameTimes","frameCount","avgFrameTime","frameTimeScore","complexity","complexityScore","gpuTimeScore","weights","finalScore","label","rendererInfo","intervals","fps","minFrameTime","maxFrameTime","p99FrameTime","stdDevFrameTime","jankPercent","memory","memoryUsedMB","memoryGrowthRate","budgetUsed","drawCalls","shaderPrograms","textureCount","intensity","MAX_UNCAPTURED_VALIDATION_ERRORS","MAX_CONSECUTIVE_RENDER_ERRORS","globalEventManager","instanceCount","callbacks","fan","key","arg","cb","error","debugError","onMove","e","onTouch","onDown","onStart","onUp","onEnd","handlers","shapeConfigUsesMouse","raw","cfg","v","shaderRendererGPU","rootCtx","root","context","textureManager","dispatcher","canvasElement","isInitialized","isInitializing","isRendererReady","initializationAbortController","nodes","rootId","parentToChildren","pendingRegistrationQueue","pendingNodeUpdates","pipelineCache","createPipelineCache","bc","disposeComposition","liveCompositions","boundComposition","desiredHash","structuralDirty","currentWidth","currentHeight","logicalWidth","logicalHeight","pixelRatio","cachedMaxTextureDim","lastRequestedWidth","lastRequestedHeight","hasInitialDimensions","pxResWidth","pxResHeight","shouldAnimate","isVisible","forceFullFrameRate","lastRenderTime","frameIntervalCap","globalElapsedTime","sharedTimeOrigin","pendingRenderRAF","pointerX","pointerY","pointerActive","pointerSeen","cachedCanvasRect","mouseListenersNeeded","globalEventUnregister","resizeObserver","intersectionObserver","unloadHandler","windowResizeHandler","pendingResize","isResizeScheduled","rendererColorSpace","rendererToneMapping","enablePerformanceTracking","setColorSpaceModeFn","onReadyCallback","hasEmittedReady","firstRenderPending","onDeviceLostCallback","deviceLostFired","failureReason","onUnavailableCallback","hasNotifiedUnavailable","uncapturedErrorDevice","uncapturedErrorHandler","uncapturedValidationErrors","consecutiveRenderErrors","performanceTracker","frameParams","frameLoop","createFrameLoop","renderFrame","sanitizeId","id","findChildNodes","parentId","childIds","out","cid","info","findNodeByCustomId","customId","sanitized","nodeId","computeDimExtent","node","origin","decl","snap","k","u","subscribeSdfBoundsReresolve","boxHalfExtentsUV","sdfBoundsSubscribed","url","isSdfContentBoundsScanned","seen","getSdfContentBounds","reresolveDimensionalUniforms","anyLayoutGroups","markLayoutDirty","requestRender","extra","plan","buildDimensionalPlan","he","names","name","resolved","resolveDimensionalProp","writePropHandle","resolveDynamicBound","propName","bound","aspectRatio","width","height","bufferSize","transformFieldValues","t","bboxFieldValues","bbox","p","boundingBoxToUVParams","bboxActive","isIdentityBoundingBox","computeNodeBoundsUV","cx","cy","posProp","posValue","driver","s","childBoundsValues","children","child","updateChildBounds","writeSyntheticScalar","layoutDirty","m","buildLayoutView","positionDriven","runLayoutPass","cw","ch","roots","writes","computeTreeLayout","w","prev","next","wasActive","markStructuralDirty","bb","runLayoutPassIfDirty","unsubscribeNaturalSize","onFontsLoadedLayout","attachLayoutListeners","onNaturalSizeChange","transformActive","needsTransformation","ensureMapValues","prop","mv","c","ensureMouseState","trackX","trackY","ensureDriverState","maps","animatedTimeKey","at","extraAnimatedTimeKey","speedProp","buildFieldInits","inits","f32","getAnimatedTimeState","extraFields","f","tf","vec2f$1","h","updateFieldValue","field","FieldHandle","writeExtraFieldValue","ArrayFieldHandle","nodeColorSpaceMode","transformColorSpace","repackColorStops","stops","colorStopsTransform","packed","packStops","colorToRGBA","converted","packConvertedStops","write","repackListProp","spec","driven","items","resolveListItems","listDriverPath","st","path","parseListDriverPath","packList","lanes","listFieldName","listCountName","driverForKey","top","isPositionDriver","listsUseMouse","listHasDrivers","writeNodeSynthetic","propHandleView","handles","sotHandleView","makeRegistryNode","buildRegistryView","store","handlesById","cache","build","getNode","hit","rn","pid","n","layoutVar","composeOptions","opts","extraHashInputs","parts","sc","fp","dr","computeStructuralHash","structuralHash","collectStructuralHashInputs","mediaResourcesFromIr","ir","buildComposition","hash","createUniformStore","SystemUniforms","composeNodeTree","pm","createPassManager","bindComposition","repointed","registerNode","fragmentNodeFunc","metadata","uniforms","componentDefinition","domCanvas","queueIndex","item","removeNode","existing","defaultRenderOrder","siblings","maxOrder","siblingId","sibling","nodeMetadata","extraDimProps","buildExtraSizeProps","childrenSet","updateMouseListenerRegistration","deferUntilRegistered","update","q","updateUniformValue","uniformName","isDimensionalProp","listPropTransform","affectsExtent","isPositionProp","updateNodeMetadata","needsRecompose","oldOpacity","newOpacity","newVisible","oldMaps","newMaps","oldKeys","newKeys","oldCfg","newCfg","oc","nc","merged","nowActive","restore","siblingSet","updateMouseDrivers","deltaTime","deriveElapsedTime","state","smoothing","momentum","finalX","finalY","nx","vx","applySpring","ny","vy","reach","originX","originY","xSign","ySign","scaledX","scaledY","localX","localY","bl","screenUVToBoxLocal","target","smoothed01","globalT","phase","easing","applyEasing$1","t01","outputMin","outputMax","newValue","updateAnimatedTime","dt","speedU","speed","extras","su","sp","clampToTextureCap$1","clampToTextureCap","basePixelRatio","deviceRatio","maxPixelRatioForDevice","applyRendererDimensions","rawWidth","rawHeight","curBufW","curBufH","setShaderCanvasDimensions","bufW","bufH","anyTextureRecreated","writeSystemUniforms","updateRendererDimensions","handleResize","entries","boxSize","handleVisibilityChange","canRender","sys","bpr","set","runCallbacks","renderFrameInternal","overrideDeltaTime","delta","gate","frameGate","hasRealPointer","built","renderComp","runFrameSequence","gpuMeasure","noteRenderFailure","cpuMeasure","renderAndWait","options","wasAnimating","stopAnimation","awaitGpuIdle","startAnimation","renderSyntheticFrame","deltaSeconds","updatePointerCoords","event","clientX","clientY","onPointerMove","onTouchMove","onPointerUp","onTouchEnd","pressWithinCanvas","rect","onPointerDown","onTouchStart","needsMouse","processQueuedRegistrations","queue","updates","fail","reason","markGpuUnusable","cleanup","isGpuUnavailableError","attachUncapturedErrorHandler","device","detachUncapturedErrorHandler","gpuError","fireDeviceLost","initialize","pageWide","getGpuUnusableReason","canvas","resizeTarget","enableTracking","colorSpace","toneMapping","gpu","forceFullFps","shouldObserveElement","initialTimeOrigin","abort","setColorSpaceModeGpu","acquireRoot","lim","createTextureManager","createComputeDispatcher","rawW","rawH","roundedRawWidth","roundedRawHeight","configureCanvasContext","elementToObserve","enabled","previous","targetWidth","targetHeight","ratio","prevRatio","prevWidth","prevHeight","prevLogicalWidth","prevLogicalHeight","prevLastRequestedWidth","prevLastRequestedHeight","scale","clampedScale","targetRatio","logicalW","logicalH","callback","dims","TELEMETRY_CONFIG","detectBrowserFamily","userAgent","detectDeviceType","collectEnvironment","TelemetryCollector","renderer","version","sourceType","stats","error","debugError","payload","ms","resolve","performance","components","environment","frameTimes","s","jankPercents","budgetUseds","fpsValues","fps","avgFrameTime","minFrameTime","maxFrameTime","p99FrameTime","jankPercent","budgetUsed","latestSample","nodeRegistry","_","nodeInfo","a","b","response","debugWarn","values","sorted","mid","percentile","index","shouldCollectTelemetry","disableTelemetry","isPreview","startTelemetry","isExternalUser","hostname","isPropDriver","value","maybe","METADATA_PROPS","createShader","canvas","preset","options","componentRegistry","getAllShaders","shader","oldName","rect","w","h","cloneComponent","c","livePreset","current","destroyed","rebuilding","MAX_DEVICE_LOSS_REBUILDS","DEVICE_LOSS_BURST_WINDOW_MS","rebuildAttempts","lastDeviceLossAt","unavailable","notify","reason","e","debugError","reportedTerminal","goDown","registerComponent","renderer","nodeEntryMap","component","parentId","renderOrder","componentDef","nodeId","mapsFromProps","key","val","uniforms","createGpuUniformsMap","propConfig","metadata","resolveBoundingBox","child","index","build","shaderRendererGPU","state","now","teardownState","next","rebuildErr","rootId","rootPassthrough","isExternalUser","telemetryPolls","checkRendering","startTelemetry","update","componentId","props","entry","live","resize","width","height","destroy","pause","resume","PREVIEW_KEY","xorCrypt","data","key","keyBytes","result","i","decodePreviewDefinition","encoded","binaryString","encrypted","decrypted","json","DEFAULT_API_BASE","WATERMARK_TEXT","WATERMARK_LINK","RESERVED_IDENTIFIERS","slugifyIdentifier","label","fallback","cleaned","camel","part","safe","buildKeyPropIdentifierMap","keyProps","used","map","kp","i","base","ident","suffix","findInTree","id","list","c","children","hit","applyConfigurationInPlace","components","configuration","identMap","value","t","comp","createPreview","canvas","options","apiBase","versionParam","url","response","payload","item","definition","decodePreviewDefinition","baselineMap","instance","createShader","overlay","savedPosition","parentEl","createWatermarkOverlay","originalDestroy","previewInstance","hasNewValue","parent","link","createSharedDevice","options","adapter","err","debugWarn"],"sources":["../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/support-GJphyuEe.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/transformations-CzFmhZww.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/lower-Bd2jez_2.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/device-m0ud8-Fn.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/porters-OTkIMOyl.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/sdf3d-2AWC_wdn.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/agents-DXoEcto0.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/agents-CBSp2UK_.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/tone-BKhfiOBn.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/lightfields-DvrUaH_6.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/gradientPaints-5HpJVNfb.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/math-D864seEs.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/fields-DgADOKsP.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/filter-BrhpSs3Z.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/patterns-Bg8lSdqH.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/noisePaints-CfHcXL02.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/color-Do6tU0ry.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/warpMaps-Y8xSo-QJ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/blur-7yjVyMvI.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/motionBlur-g_WSi2iq.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/shapePaints-Bg2UwCZo.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/stylize-DiuoSq16.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/glass-ABppDbYG.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/materials-4Oqvm_9m.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/mediaLifecycle-BTPb5i1-.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/canvasRaster-DDBkrdY8.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/fonts-BUXTd9qb.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/overlay-D5w0585O.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/slots-BqIef2iV.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Repeater-C5LILb_Y.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/lens-DJQNJKCW.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/noise-d7rmP9yc.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/reveal-CfaAg-rg.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Voxels-Ca-6rRrz.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Neon-Cf95sJ7W.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Emboss-BjOlYydL.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Form3D-D-eUD4_k.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ThinFilm-CTQeVw7E.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/media-DXUY3ltG.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/mask-CeSwL79Q.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/signal-emJuvOI3.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CursorRipples-C1PNyYcB.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/blurs-d4B9aUyx.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/AngularBlur-g4-fDx1N.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/shape-CAkSlCi8.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Arc-B4VGPOtO.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Ascii-DxiduEzP.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/frames-BLqt7oaW.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/light-D3BIVkxy.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/compose-Dkf3v-xS.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Aurora-FgWLcSkh.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BarnDoors-BC0LM0aD.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/warps-P5O3NWLe.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BarShift-BukEd3jr.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/gradients-CIxKrfME.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Beam-CxAXVlAf.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Bend-BfVVIo2C.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Blob-D_IbcUCc.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BlockDissolve-C9nsgIz9.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/noiseColor-DuWjYRmO.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BlockNoise-BgwbD0rx.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BlueNoise-BdwOaq4G.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Blur-ceuv7ZTm.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Boids-DEHsYo46.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BokehBlur-C8xJ0xA8.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BrickPattern-C-6QFzp6.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BrightnessContrast-CMUaNvo0.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/BrushedMetal-CQsu_96R.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Bulge-CgO7_0fe.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CarbonFiber-D0vgwlrV.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Chalkboard-CDUJz_Ae.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ChannelBlur-Z8ZvN6W3.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Checkerboard-DZAABNKo.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CheckerWipe-DXm9kDaS.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Chevron-Dn1iHSiS.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/grids-Cv99xcJg.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ChromaFlow-lnaJ4o1Y.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ChromaticAberration-CGOQe4Pp.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Chrome-DPAmErfN.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Circle-DVPhvXdr.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ColorWheel-DXkVOQl2.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CompressionArtifacts-CEw9gfTu.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ConcentricSpin-GtNEq1T1.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ConicGradient-DYPNJAOg.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ContourLines-DEmEepvT.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CornerPin-CJJeGyVf.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Crescent-C7yy9-xf.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Cross-DyYrdTVw.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CRTScreen-DNqe2klB.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Crystal-DQJd5oAd.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CurlNoise-Bjc6hhjR.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/CursorTrail-C6v97bId.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/feedback-Dro_hxd4.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/DataMosh-AX4kIi4R.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/DiamondGradient-Bj6mUxOy.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/DiamondWipe-BNSkpUn9.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/DiffuseBlur-C7l-5Dw3.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/DisplacementMap-DGpLSlxs.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Dither-C9KDpqgP.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/DotGrid-CkAtf-j_.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/DropShadow-BxI_a7dC.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Duotone-CrJ0P0SL.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Ellipse-C2Tie_19.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Engraving-RpxXPqQq.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ErosionNoise-D0qefxhq.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Exposure-B7W7AVbY.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FallingLines-Cxhmtqf4.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FilmGrain-CghUJIeK.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FilmStock-DmOaROtC.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Flip-BuOdbWjK.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FloatingParticles-BfFlt06Y.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Flower-CwdJOVR1.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FlowField-A2njOtGx.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FlowingGradient-D3BG2FW9.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FlutedGlass-BWlTrLF-.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/fluids-umEWgdvj.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Fog-CpmIyRtJ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/FractalNoise-DsESU8cP.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Frost-B1s1W_Qm.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/GaborNoise-D3U1iz9E.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Glass-O5o5OxlN.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/GlassTiles-BxdT6Ee8.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Glitch-DQeLaNdU.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Glow-DksG7wdu.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Godrays-D2Pzd9K9.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Goo-BL_ifIPI.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/GradientMap-B-5yUYjX.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Grayscale-g7jQsxgi.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Grid-DAglpJFP.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/pointerFields-CRecZwuZ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/GridDistortion-CNlIESbs.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Group-CeOfFv2K.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Halftone-DCiP4EDq.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Heart-CQhtzwFu.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Heatmap-e-lF_uZu.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/HexGrid-BY_BPH8J.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Hologram-BA_LJPm0.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Holographic-CX8OG-Wa.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/HTMLInCanvas-BgwCnbYn.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/HueShift-BnwOshrg.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ImageTexture-Cd6vH2Z0.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/InkFlow-B7F9i3Kd.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Invert-6Q5kX8vd.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/IrisWipe-Cl5yYdEi.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Irradiance-B36wYze9.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/IsometricCubes-BhK9MhCy.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Kaleidoscope-D4X5N_qk.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/KeyFrames-Dv1vFfMa.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LensDistortion-BqVp5WBS.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LensFlare-z0k68uJ1.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LightEdge-AFfkNhDP.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LightLeak-BgFq4bLG.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/figures-B3lUGP8u.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Line--Ur3CJp1.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LinearBlur-BkHF6lVm.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LinearGradient-DIdq_fiw.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LinearWipe-DuCB9oV_.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/LiquidMetal-B2Cz80Ka.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Liquify-CvPn1ze-.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/MagneticFilings-BOgYrPhz.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Marble-c2QGDXxB.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/MeshGradient-DMsza5tg.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Mirror-Ck8qk1Km.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/MultiPointGradient-DwO6snxn.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Nebula-3a9pYBDC.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/NoiseDissolve-DgvzEFOD.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ObjectTracker-IopW8Jvf.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Obsidian-BL_0ordp.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/PagePeel-BeAr_n0U.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Paper-BDEsyIPI.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Parallelogram-Duj-0MLr.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ParticleField-gk7JuNx4.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ParticleFlow-BzWOl7Hm.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Particles-DYAtR6jZ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/PerlinNoise-BHQ318g4.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Perspective-xBfd9BSE.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Pixelate-CvCzoA0h.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/PixelSort-Bx9sUnGm.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/PixelThrow-0nJiGsmZ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Plasma-Be1yxNcP.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Plastic-Bom1oFFR.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/PolarCoordinates-BGwTZ6NO.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Polygon-Byw5C7Qy.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Posterize-BHOstvyj.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Prism-pNsLhW8w.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ProgressiveBlur-CR1IbvKQ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/RadialGradient-BFOrMAK1.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/RadialWipe-BYnlbrNm.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/RandomBars-B7erRRHx.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ReactionDiffusion-BnY40jHs.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/RectangularCoordinates-D9-3PQAz.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ReflectivePlane-BI-LIR2c.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Ring-CvvtJYAf.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Ripples-BFLep1r1.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/RippleWipe-kAzZWsjR.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/RoundedRect-DirNijIY.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Saturation-CfkRhJpe.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Scratches-Dchfw1_5.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Sharpness-DZzAnlsl.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Shatter-Dz3sH2ON.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/SimplexNoise-CmV42gYT.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/SineWave-TqnpIKO4.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/SliceWipe-Dz8vj6bi.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Smoke-B1TnZnG6.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/SmokeFill-C8gSZ22X.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/SmokeFlow-dd5uLztm.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Solarize-CIQa9pKw.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/SolidColor-DuoQVKGk.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Spherize-FWwWEUyE.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Spiral-DI1eG0E3.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Star-DT-hnlIJ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/noiseStylize-CUrW_HiC.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Stone-oW35zD22.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Strands-asB3fUr9.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Stretch-Cm_B4WGY.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Stripes-BnJiniJY.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/StudioBackground-DwSO5KNV.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/SunBurst-BL-BryZO.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Surface3D-DSvh7Zof.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Swirl-BVPy039a.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Teardrop-CR1UqYaF.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Text-fP5temat.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/TiltShift-BvYpYELk.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/TimeTrail-DqdYuHn7.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Tint-BXJMHYvg.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Trapezoid--AgyKOWQ.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/TriangularGrid-CmDApxz9.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Tritone-DCd_IRp7.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Truchet-g1_jcoZ4.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Twirl-JY-PXDS2.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/VenetianBlinds-B7laTyPO.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Vesica-BTNW2p5u.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/VHS-ZWR6D4Da.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Vibrance-DmhtRT2D.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/VideoTexture-DK3EaAHY.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Vignette-hyFfUS20.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Voronoi-DhexPwNM.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Water-BsBnXYYB.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Watercolor-C1HipGGO.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/WaveDistortion-VXyHFcJ3.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Waveform-CSP_4nZF.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/WaveletNoise-CQqAufyv.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Weave-DwX8T4_Q.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/WebcamTexture-B4SLwIP1.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/Wool-qg-z_TFC.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/WorleyNoise-CjVw20Fl.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/ZoomBlur-Lm_pVpMf.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/shaderRegistry-BUvL8ZZS.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/index.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/core/telemetry/index.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/js/createShader.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/js/decode.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/js/createPreview.js","../esm/npm/shaders@3.2.470/node_modules/shaders/dist/js/createSharedDevice.js"],"sourcesContent":["var GpuUnavailableError = class extends Error {\n\treason;\n\tconstructor(reason, message, options) {\n\t\tsuper(message ?? `[gpu] WebGPU unavailable (${reason})`);\n\t\tthis.name = \"GpuUnavailableError\";\n\t\tthis.reason = reason;\n\t\tif (options?.cause !== void 0) this.cause = options.cause;\n\t}\n};\nfunction isGpuUnavailableError(error) {\n\treturn !!error \u0026\u0026 typeof error === \"object\" \u0026\u0026 error.name === \"GpuUnavailableError\" \u0026\u0026 typeof error.reason === \"string\";\n}\nvar debugOverride = null;\nfunction setShadersDebug(enabled) {\n\tdebugOverride = enabled;\n}\nfunction isShadersDebug() {\n\tif (debugOverride !== null) return debugOverride;\n\tconst flag = globalThis.__SHADERS_DEBUG__;\n\tif (flag !== void 0 \u0026\u0026 flag !== null) return !!flag;\n\ttry {\n\t\tif (typeof localStorage !== \"undefined\" \u0026\u0026 localStorage.getItem(\"shaders:debug\") === \"1\") return true;\n\t} catch {}\n\treturn false;\n}\nfunction debugWarn(...args) {\n\tif (isShadersDebug()) console.warn(...args);\n}\nfunction debugError(...args) {\n\tif (isShadersDebug()) console.error(...args);\n}\nfunction isWebGPUSupported() {\n\treturn typeof navigator !== \"undefined\" \u0026\u0026 !!navigator.gpu;\n}\nvar probeCache = null;\nfunction getWebGPUSupport() {\n\tif (probeCache) return probeCache;\n\tprobeCache = (async () =\u003e {\n\t\tif (!isWebGPUSupported()) return {\n\t\t\tsupported: false,\n\t\t\treason: \"unsupported\"\n\t\t};\n\t\ttry {\n\t\t\tif (!await navigator.gpu.requestAdapter({ powerPreference: \"high-performance\" })) return {\n\t\t\t\tsupported: false,\n\t\t\t\treason: \"no-adapter\"\n\t\t\t};\n\t\t\treturn { supported: true };\n\t\t} catch (error) {\n\t\t\tdebugError(\"[gpu] adapter probe threw:\", error);\n\t\t\treturn {\n\t\t\t\tsupported: false,\n\t\t\t\treason: \"no-adapter\"\n\t\t\t};\n\t\t}\n\t})();\n\treturn probeCache;\n}\nvar PAGE_WIDE_REASONS = new Set([\n\t\"unsupported\",\n\t\"no-adapter\",\n\t\"no-device\",\n\t\"out-of-memory\",\n\t\"gpu-error\"\n]);\nvar gpuUnusableReason = null;\nfunction markGpuUnusable(reason) {\n\tif (gpuUnusableReason || !PAGE_WIDE_REASONS.has(reason)) return;\n\tgpuUnusableReason = reason;\n}\nfunction getGpuUnusableReason() {\n\treturn gpuUnusableReason;\n}\nexport { getWebGPUSupport as a, isWebGPUSupported as c, getGpuUnusableReason as i, markGpuUnusable as l, debugError as n, isGpuUnavailableError as o, debugWarn as r, isShadersDebug as s, GpuUnavailableError as t, setShadersDebug as u };\n","function multiplyMatrices(A, B) {\n\tlet m$1 = A.length;\n\tif (!Array.isArray(A[0])) A = [A];\n\tif (!Array.isArray(B[0])) B = B.map((x) =\u003e [x]);\n\tlet p$1 = B[0].length;\n\tlet B_cols = B[0].map((_, i) =\u003e B.map((x) =\u003e x[i]));\n\tlet product = A.map((row) =\u003e B_cols.map((col) =\u003e {\n\t\tlet ret = 0;\n\t\tif (!Array.isArray(row)) {\n\t\t\tfor (let c$1 of col) ret += row * c$1;\n\t\t\treturn ret;\n\t\t}\n\t\tfor (let i = 0; i \u003c row.length; i++) ret += row[i] * (col[i] || 0);\n\t\treturn ret;\n\t}));\n\tif (m$1 === 1) product = product[0];\n\tif (p$1 === 1) return product.map((x) =\u003e x[0]);\n\treturn product;\n}\nfunction isString(str) {\n\treturn type(str) === \"string\";\n}\nfunction type(o) {\n\treturn (Object.prototype.toString.call(o).match(/^\\[object\\s+(.*?)\\]$/)[1] || \"\").toLowerCase();\n}\nfunction serializeNumber(n$2, { precision, unit }) {\n\tif (isNone(n$2)) return \"none\";\n\treturn toPrecision(n$2, precision) + (unit ?? \"\");\n}\nfunction isNone(n$2) {\n\treturn Number.isNaN(n$2) || n$2 instanceof Number \u0026\u0026 n$2?.none;\n}\nfunction skipNone(n$2) {\n\treturn isNone(n$2) ? 0 : n$2;\n}\nfunction toPrecision(n$2, precision) {\n\tif (n$2 === 0) return 0;\n\tlet integer = ~~n$2;\n\tlet digits = 0;\n\tif (integer \u0026\u0026 precision) digits = ~~Math.log10(Math.abs(integer)) + 1;\n\tconst multiplier = 10 ** (precision - digits);\n\treturn Math.floor(n$2 * multiplier + .5) / multiplier;\n}\nvar angleFactor = {\n\tdeg: 1,\n\tgrad: .9,\n\trad: 180 / Math.PI,\n\tturn: 360\n};\nfunction parseFunction(str) {\n\tif (!str) return;\n\tstr = str.trim();\n\tconst isFunctionRegex = /^([a-z]+)\\((.+?)\\)$/i;\n\tconst isNumberRegex = /^-?[\\d.]+$/;\n\tconst unitValueRegex = /%|deg|g?rad|turn$/;\n\tconst singleArgument = /\\/?\\s*(none|[-\\w.]+(?:%|deg|g?rad|turn)?)/g;\n\tlet parts = str.match(isFunctionRegex);\n\tif (parts) {\n\t\tlet args = [];\n\t\tparts[2].replace(singleArgument, ($0, rawArg) =\u003e {\n\t\t\tlet match = rawArg.match(unitValueRegex);\n\t\t\tlet arg = rawArg;\n\t\t\tif (match) {\n\t\t\t\tlet unit = match[0];\n\t\t\t\tlet unitlessArg = arg.slice(0, -unit.length);\n\t\t\t\tif (unit === \"%\") {\n\t\t\t\t\targ = /* @__PURE__ */ new Number(unitlessArg / 100);\n\t\t\t\t\targ.type = \"\u003cpercentage\u003e\";\n\t\t\t\t} else {\n\t\t\t\t\targ = new Number(unitlessArg * angleFactor[unit]);\n\t\t\t\t\targ.type = \"\u003cangle\u003e\";\n\t\t\t\t\targ.unit = unit;\n\t\t\t\t}\n\t\t\t} else if (isNumberRegex.test(arg)) {\n\t\t\t\targ = new Number(arg);\n\t\t\t\targ.type = \"\u003cnumber\u003e\";\n\t\t\t} else if (arg === \"none\") {\n\t\t\t\targ = /* @__PURE__ */ new Number(NaN);\n\t\t\t\targ.none = true;\n\t\t\t}\n\t\t\tif ($0.startsWith(\"/\")) {\n\t\t\t\targ = arg instanceof Number ? arg : new Number(arg);\n\t\t\t\targ.alpha = true;\n\t\t\t}\n\t\t\tif (typeof arg === \"object\" \u0026\u0026 arg instanceof Number) arg.raw = rawArg;\n\t\t\targs.push(arg);\n\t\t});\n\t\treturn {\n\t\t\tname: parts[1].toLowerCase(),\n\t\t\trawName: parts[1],\n\t\t\trawArgs: parts[2],\n\t\t\targs\n\t\t};\n\t}\n}\nfunction last(arr) {\n\treturn arr[arr.length - 1];\n}\nfunction interpolate(start, end, p$1) {\n\tif (isNaN(start)) return end;\n\tif (isNaN(end)) return start;\n\treturn start + (end - start) * p$1;\n}\nfunction interpolateInv(start, end, value) {\n\treturn (value - start) / (end - start);\n}\nfunction mapRange(from, to$1, value) {\n\treturn interpolate(to$1[0], to$1[1], interpolateInv(from[0], from[1], value));\n}\nfunction parseCoordGrammar(coordGrammars) {\n\treturn coordGrammars.map((coordGrammar$1) =\u003e {\n\t\treturn coordGrammar$1.split(\"|\").map((type$1) =\u003e {\n\t\t\ttype$1 = type$1.trim();\n\t\t\tlet range$1 = type$1.match(/^(\u003c[a-z]+\u003e)\\[(-?[.\\d]+),\\s*(-?[.\\d]+)\\]?$/);\n\t\t\tif (range$1) {\n\t\t\t\tlet ret = new String(range$1[1]);\n\t\t\t\tret.range = [+range$1[2], +range$1[3]];\n\t\t\t\treturn ret;\n\t\t\t}\n\t\t\treturn type$1;\n\t\t});\n\t});\n}\nfunction clamp(min, val, max$1) {\n\treturn Math.max(Math.min(max$1, val), min);\n}\nfunction copySign(to$1, from) {\n\treturn Math.sign(to$1) === Math.sign(from) ? to$1 : -to$1;\n}\nfunction spow(base, exp) {\n\treturn copySign(Math.abs(base) ** exp, base);\n}\nfunction zdiv(n$2, d$1) {\n\treturn d$1 === 0 ? 0 : n$2 / d$1;\n}\nfunction bisectLeft(arr, value, lo = 0, hi = arr.length) {\n\twhile (lo \u003c hi) {\n\t\tconst mid = lo + hi \u003e\u003e 1;\n\t\tif (arr[mid] \u003c value) lo = mid + 1;\n\t\telse hi = mid;\n\t}\n\treturn lo;\n}\nvar util = /* @__PURE__ */ Object.freeze({\n\t__proto__: null,\n\tbisectLeft,\n\tclamp,\n\tcopySign,\n\tinterpolate,\n\tinterpolateInv,\n\tisNone,\n\tisString,\n\tlast,\n\tmapRange,\n\tmultiplyMatrices,\n\tparseCoordGrammar,\n\tparseFunction,\n\tserializeNumber,\n\tskipNone,\n\tspow,\n\ttoPrecision,\n\ttype,\n\tzdiv\n});\nvar Hooks = class {\n\tadd(name, callback, first) {\n\t\tif (typeof arguments[0] != \"string\") {\n\t\t\tfor (var name in arguments[0]) this.add(name, arguments[0][name], arguments[1]);\n\t\t\treturn;\n\t\t}\n\t\t(Array.isArray(name) ? name : [name]).forEach(function(name$1) {\n\t\t\tthis[name$1] = this[name$1] || [];\n\t\t\tif (callback) this[name$1][first ? \"unshift\" : \"push\"](callback);\n\t\t}, this);\n\t}\n\trun(name, env) {\n\t\tthis[name] = this[name] || [];\n\t\tthis[name].forEach(function(callback) {\n\t\t\tcallback.call(env \u0026\u0026 env.context ? env.context : env, env);\n\t\t});\n\t}\n};\nvar hooks = new Hooks();\nvar defaults = {\n\tgamut_mapping: \"css\",\n\tprecision: 5,\n\tdeltaE: \"76\",\n\tverbose: globalThis?.process?.env?.NODE_ENV?.toLowerCase() !== \"test\",\n\twarn: function warn(msg) {\n\t\tif (this.verbose) globalThis?.console?.warn?.(msg);\n\t}\n};\nvar WHITES = {\n\tD50: [\n\t\t.3457 / .3585,\n\t\t1,\n\t\t.2958 / .3585\n\t],\n\tD65: [\n\t\t.3127 / .329,\n\t\t1,\n\t\t.3583 / .329\n\t]\n};\nfunction getWhite(name) {\n\tif (Array.isArray(name)) return name;\n\treturn WHITES[name];\n}\nfunction adapt$2(W1, W2, XYZ, options = {}) {\n\tW1 = getWhite(W1);\n\tW2 = getWhite(W2);\n\tif (!W1 || !W2) throw new TypeError(`Missing white point to convert ${!W1 ? \"from\" : \"\"}${!W1 \u0026\u0026 !W2 ? \"/\" : \"\"}${!W2 ? \"to\" : \"\"}`);\n\tif (W1 === W2) return XYZ;\n\tlet env = {\n\t\tW1,\n\t\tW2,\n\t\tXYZ,\n\t\toptions\n\t};\n\thooks.run(\"chromatic-adaptation-start\", env);\n\tif (!env.M) {\n\t\tif (env.W1 === WHITES.D65 \u0026\u0026 env.W2 === WHITES.D50) env.M = [\n\t\t\t[\n\t\t\t\t1.0479297925449969,\n\t\t\t\t.022946870601609652,\n\t\t\t\t-.05019226628920524\n\t\t\t],\n\t\t\t[\n\t\t\t\t.02962780877005599,\n\t\t\t\t.9904344267538799,\n\t\t\t\t-.017073799063418826\n\t\t\t],\n\t\t\t[\n\t\t\t\t-.009243040646204504,\n\t\t\t\t.015055191490298152,\n\t\t\t\t.7518742814281371\n\t\t\t]\n\t\t];\n\t\telse if (env.W1 === WHITES.D50 \u0026\u0026 env.W2 === WHITES.D65) env.M = [\n\t\t\t[\n\t\t\t\t.955473421488075,\n\t\t\t\t-.02309845494876471,\n\t\t\t\t.06325924320057072\n\t\t\t],\n\t\t\t[\n\t\t\t\t-.0283697093338637,\n\t\t\t\t1.0099953980813041,\n\t\t\t\t.021041441191917323\n\t\t\t],\n\t\t\t[\n\t\t\t\t.012314014864481998,\n\t\t\t\t-.020507649298898964,\n\t\t\t\t1.330365926242124\n\t\t\t]\n\t\t];\n\t}\n\thooks.run(\"chromatic-adaptation-end\", env);\n\tif (env.M) return multiplyMatrices(env.M, env.XYZ);\n\telse throw new TypeError(\"Only Bradford CAT with white points D50 and D65 supported for now.\");\n}\nvar noneTypes = new Set([\n\t\"\u003cnumber\u003e\",\n\t\"\u003cpercentage\u003e\",\n\t\"\u003cangle\u003e\"\n]);\nfunction coerceCoords(space, format, name, coords) {\n\treturn Object.entries(space.coords).map(([id, coordMeta], i) =\u003e {\n\t\tlet coordGrammar$1 = format.coordGrammar[i];\n\t\tlet arg = coords[i];\n\t\tlet providedType = arg?.type;\n\t\tlet type$1;\n\t\tif (arg.none) type$1 = coordGrammar$1.find((c$1) =\u003e noneTypes.has(c$1));\n\t\telse type$1 = coordGrammar$1.find((c$1) =\u003e c$1 == providedType);\n\t\tif (!type$1) {\n\t\t\tlet coordName = coordMeta.name || id;\n\t\t\tthrow new TypeError(`${providedType ?? arg.raw} not allowed for ${coordName} in ${name}()`);\n\t\t}\n\t\tlet fromRange = type$1.range;\n\t\tif (providedType === \"\u003cpercentage\u003e\") fromRange ||= [0, 1];\n\t\tlet toRange = coordMeta.range || coordMeta.refRange;\n\t\tif (fromRange \u0026\u0026 toRange) coords[i] = mapRange(fromRange, toRange, coords[i]);\n\t\treturn type$1;\n\t});\n}\nfunction parse(str, { meta } = {}) {\n\tlet env = { \"str\": String(str)?.trim() };\n\thooks.run(\"parse-start\", env);\n\tif (env.color) return env.color;\n\tenv.parsed = parseFunction(env.str);\n\tif (env.parsed) {\n\t\tlet name = env.parsed.name;\n\t\tif (name === \"color\") {\n\t\t\tlet id = env.parsed.args.shift();\n\t\t\tlet alternateId = id.startsWith(\"--\") ? id.substring(2) : `--${id}`;\n\t\t\tlet ids = [id, alternateId];\n\t\t\tlet alpha = env.parsed.rawArgs.indexOf(\"/\") \u003e 0 ? env.parsed.args.pop() : 1;\n\t\t\tfor (let space of ColorSpace.all) {\n\t\t\t\tlet colorSpec = space.getFormat(\"color\");\n\t\t\t\tif (colorSpec) {\n\t\t\t\t\tif (ids.includes(colorSpec.id) || colorSpec.ids?.filter((specId) =\u003e ids.includes(specId)).length) {\n\t\t\t\t\t\tconst coords = Object.keys(space.coords).map((_, i) =\u003e env.parsed.args[i] || 0);\n\t\t\t\t\t\tlet types;\n\t\t\t\t\t\tif (colorSpec.coordGrammar) types = coerceCoords(space, colorSpec, \"color\", coords);\n\t\t\t\t\t\tif (meta) Object.assign(meta, {\n\t\t\t\t\t\t\tformatId: \"color\",\n\t\t\t\t\t\t\ttypes\n\t\t\t\t\t\t});\n\t\t\t\t\t\tif (colorSpec.id.startsWith(\"--\") \u0026\u0026 !id.startsWith(\"--\")) defaults.warn(`${space.name} is a non-standard space and not currently supported in the CSS spec. Use prefixed color(${colorSpec.id}) instead of color(${id}).`);\n\t\t\t\t\t\tif (id.startsWith(\"--\") \u0026\u0026 !colorSpec.id.startsWith(\"--\")) defaults.warn(`${space.name} is a standard space and supported in the CSS spec. Use color(${colorSpec.id}) instead of prefixed color(${id}).`);\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tspaceId: space.id,\n\t\t\t\t\t\t\tcoords,\n\t\t\t\t\t\t\talpha\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet didYouMean = \"\";\n\t\t\tlet registryId = id in ColorSpace.registry ? id : alternateId;\n\t\t\tif (registryId in ColorSpace.registry) {\n\t\t\t\tlet cssId = ColorSpace.registry[registryId].formats?.color?.id;\n\t\t\t\tif (cssId) didYouMean = `Did you mean color(${cssId})?`;\n\t\t\t}\n\t\t\tthrow new TypeError(`Cannot parse color(${id}). ` + (didYouMean || \"Missing a plugin?\"));\n\t\t} else for (let space of ColorSpace.all) {\n\t\t\tlet format = space.getFormat(name);\n\t\t\tif (format \u0026\u0026 format.type === \"function\") {\n\t\t\t\tlet alpha = 1;\n\t\t\t\tif (format.lastAlpha || last(env.parsed.args).alpha) alpha = env.parsed.args.pop();\n\t\t\t\tlet coords = env.parsed.args;\n\t\t\t\tlet types;\n\t\t\t\tif (format.coordGrammar) types = coerceCoords(space, format, name, coords);\n\t\t\t\tif (meta) Object.assign(meta, {\n\t\t\t\t\tformatId: format.name,\n\t\t\t\t\ttypes\n\t\t\t\t});\n\t\t\t\treturn {\n\t\t\t\t\tspaceId: space.id,\n\t\t\t\t\tcoords,\n\t\t\t\t\talpha\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t} else for (let space of ColorSpace.all) for (let formatId in space.formats) {\n\t\tlet format = space.formats[formatId];\n\t\tif (format.type !== \"custom\") continue;\n\t\tif (format.test \u0026\u0026 !format.test(env.str)) continue;\n\t\tlet color = format.parse(env.str);\n\t\tif (color) {\n\t\t\tcolor.alpha ??= 1;\n\t\t\tif (meta) meta.formatId = formatId;\n\t\t\treturn color;\n\t\t}\n\t}\n\tthrow new TypeError(`Could not parse ${str} as a color. Missing a plugin?`);\n}\nfunction getColor(color) {\n\tif (Array.isArray(color)) return color.map(getColor);\n\tif (!color) throw new TypeError(\"Empty color reference\");\n\tif (isString(color)) color = parse(color);\n\tlet space = color.space || color.spaceId;\n\tif (!(space instanceof ColorSpace)) color.space = ColorSpace.get(space);\n\tif (color.alpha === void 0) color.alpha = 1;\n\treturn color;\n}\nvar ε$7 = 75e-6;\nvar ColorSpace = class ColorSpace {\n\tconstructor(options) {\n\t\tthis.id = options.id;\n\t\tthis.name = options.name;\n\t\tthis.base = options.base ? ColorSpace.get(options.base) : null;\n\t\tthis.aliases = options.aliases;\n\t\tif (this.base) {\n\t\t\tthis.fromBase = options.fromBase;\n\t\t\tthis.toBase = options.toBase;\n\t\t}\n\t\tlet coords = options.coords ?? this.base.coords;\n\t\tfor (let name in coords) if (!(\"name\" in coords[name])) coords[name].name = name;\n\t\tthis.coords = coords;\n\t\tthis.white = getWhite(options.white ?? this.base.white ?? \"D65\");\n\t\tthis.formats = options.formats ?? {};\n\t\tfor (let name in this.formats) {\n\t\t\tlet format = this.formats[name];\n\t\t\tformat.type ||= \"function\";\n\t\t\tformat.name ||= name;\n\t\t}\n\t\tif (!this.formats.color?.id) this.formats.color = {\n\t\t\t...this.formats.color ?? {},\n\t\t\tid: options.cssId || this.id\n\t\t};\n\t\tif (options.gamutSpace) this.gamutSpace = options.gamutSpace === \"self\" ? this : ColorSpace.get(options.gamutSpace);\n\t\telse if (this.isPolar) this.gamutSpace = this.base;\n\t\telse this.gamutSpace = this;\n\t\tif (this.gamutSpace.isUnbounded) this.inGamut = (coords$1, options$1) =\u003e {\n\t\t\treturn true;\n\t\t};\n\t\tthis.referred = options.referred;\n\t\tObject.defineProperty(this, \"path\", {\n\t\t\tvalue: getPath(this).reverse(),\n\t\t\twritable: false,\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true\n\t\t});\n\t\thooks.run(\"colorspace-init-end\", this);\n\t}\n\tinGamut(coords, { epsilon = ε$7 } = {}) {\n\t\tif (!this.equals(this.gamutSpace)) {\n\t\t\tcoords = this.to(this.gamutSpace, coords);\n\t\t\treturn this.gamutSpace.inGamut(coords, { epsilon });\n\t\t}\n\t\tlet coordMeta = Object.values(this.coords);\n\t\treturn coords.every((c$1, i) =\u003e {\n\t\t\tlet meta = coordMeta[i];\n\t\t\tif (meta.type !== \"angle\" \u0026\u0026 meta.range) {\n\t\t\t\tif (Number.isNaN(c$1)) return true;\n\t\t\t\tlet [min, max$1] = meta.range;\n\t\t\t\treturn (min === void 0 || c$1 \u003e= min - epsilon) \u0026\u0026 (max$1 === void 0 || c$1 \u003c= max$1 + epsilon);\n\t\t\t}\n\t\t\treturn true;\n\t\t});\n\t}\n\tget isUnbounded() {\n\t\treturn Object.values(this.coords).every((coord) =\u003e !(\"range\" in coord));\n\t}\n\tget cssId() {\n\t\treturn this.formats?.color?.id || this.id;\n\t}\n\tget isPolar() {\n\t\tfor (let id in this.coords) if (this.coords[id].type === \"angle\") return true;\n\t\treturn false;\n\t}\n\tgetFormat(format) {\n\t\tif (typeof format === \"object\") {\n\t\t\tformat = processFormat(format, this);\n\t\t\treturn format;\n\t\t}\n\t\tlet ret;\n\t\tif (format === \"default\") ret = Object.values(this.formats)[0];\n\t\telse ret = this.formats[format];\n\t\tif (ret) {\n\t\t\tret = processFormat(ret, this);\n\t\t\treturn ret;\n\t\t}\n\t\treturn null;\n\t}\n\tequals(space) {\n\t\tif (!space) return false;\n\t\treturn this === space || this.id === space || this.id === space.id;\n\t}\n\tto(space, coords) {\n\t\tif (arguments.length === 1) {\n\t\t\tconst color = getColor(space);\n\t\t\t[space, coords] = [color.space, color.coords];\n\t\t}\n\t\tspace = ColorSpace.get(space);\n\t\tif (this.equals(space)) return coords;\n\t\tcoords = coords.map((c$1) =\u003e Number.isNaN(c$1) ? 0 : c$1);\n\t\tlet myPath = this.path;\n\t\tlet otherPath = space.path;\n\t\tlet connectionSpace, connectionSpaceIndex;\n\t\tfor (let i = 0; i \u003c myPath.length; i++) if (myPath[i].equals(otherPath[i])) {\n\t\t\tconnectionSpace = myPath[i];\n\t\t\tconnectionSpaceIndex = i;\n\t\t} else break;\n\t\tif (!connectionSpace) throw new Error(`Cannot convert between color spaces ${this} and ${space}: no connection space was found`);\n\t\tfor (let i = myPath.length - 1; i \u003e connectionSpaceIndex; i--) coords = myPath[i].toBase(coords);\n\t\tfor (let i = connectionSpaceIndex + 1; i \u003c otherPath.length; i++) coords = otherPath[i].fromBase(coords);\n\t\treturn coords;\n\t}\n\tfrom(space, coords) {\n\t\tif (arguments.length === 1) {\n\t\t\tconst color = getColor(space);\n\t\t\t[space, coords] = [color.space, color.coords];\n\t\t}\n\t\tspace = ColorSpace.get(space);\n\t\treturn space.to(this, coords);\n\t}\n\ttoString() {\n\t\treturn `${this.name} (${this.id})`;\n\t}\n\tgetMinCoords() {\n\t\tlet ret = [];\n\t\tfor (let id in this.coords) {\n\t\t\tlet meta = this.coords[id];\n\t\t\tlet range$1 = meta.range || meta.refRange;\n\t\t\tret.push(range$1?.min ?? 0);\n\t\t}\n\t\treturn ret;\n\t}\n\tstatic registry = {};\n\tstatic get all() {\n\t\treturn [...new Set(Object.values(ColorSpace.registry))];\n\t}\n\tstatic register(id, space) {\n\t\tif (arguments.length === 1) {\n\t\t\tspace = arguments[0];\n\t\t\tid = space.id;\n\t\t}\n\t\tspace = this.get(space);\n\t\tif (this.registry[id] \u0026\u0026 this.registry[id] !== space) throw new Error(`Duplicate color space registration: '${id}'`);\n\t\tthis.registry[id] = space;\n\t\tif (arguments.length === 1 \u0026\u0026 space.aliases) for (let alias of space.aliases) this.register(alias, space);\n\t\treturn space;\n\t}\n\tstatic get(space, ...alternatives) {\n\t\tif (!space || space instanceof ColorSpace) return space;\n\t\tif (type(space) === \"string\") {\n\t\t\tlet ret = ColorSpace.registry[space.toLowerCase()];\n\t\t\tif (!ret) throw new TypeError(`No color space found with id = \"${space}\"`);\n\t\t\treturn ret;\n\t\t}\n\t\tif (alternatives.length) return ColorSpace.get(...alternatives);\n\t\tthrow new TypeError(`${space} is not a valid color space`);\n\t}\n\tstatic resolveCoord(ref, workingSpace) {\n\t\tlet coordType = type(ref);\n\t\tlet space, coord;\n\t\tif (coordType === \"string\") if (ref.includes(\".\")) [space, coord] = ref.split(\".\");\n\t\telse [space, coord] = [, ref];\n\t\telse if (Array.isArray(ref)) [space, coord] = ref;\n\t\telse {\n\t\t\tspace = ref.space;\n\t\t\tcoord = ref.coordId;\n\t\t}\n\t\tspace = ColorSpace.get(space);\n\t\tif (!space) space = workingSpace;\n\t\tif (!space) throw new TypeError(`Cannot resolve coordinate reference ${ref}: No color space specified and relative references are not allowed here`);\n\t\tcoordType = type(coord);\n\t\tif (coordType === \"number\" || coordType === \"string\" \u0026\u0026 coord \u003e= 0) {\n\t\t\tlet meta = Object.entries(space.coords)[coord];\n\t\t\tif (meta) return {\n\t\t\t\tspace,\n\t\t\t\tid: meta[0],\n\t\t\t\tindex: coord,\n\t\t\t\t...meta[1]\n\t\t\t};\n\t\t}\n\t\tspace = ColorSpace.get(space);\n\t\tlet normalizedCoord = coord.toLowerCase();\n\t\tlet i = 0;\n\t\tfor (let id in space.coords) {\n\t\t\tlet meta = space.coords[id];\n\t\t\tif (id.toLowerCase() === normalizedCoord || meta.name?.toLowerCase() === normalizedCoord) return {\n\t\t\t\tspace,\n\t\t\t\tid,\n\t\t\t\tindex: i,\n\t\t\t\t...meta\n\t\t\t};\n\t\t\ti++;\n\t\t}\n\t\tthrow new TypeError(`No \"${coord}\" coordinate found in ${space.name}. Its coordinates are: ${Object.keys(space.coords).join(\", \")}`);\n\t}\n\tstatic DEFAULT_FORMAT = {\n\t\ttype: \"functions\",\n\t\tname: \"color\"\n\t};\n};\nfunction getPath(space) {\n\tlet ret = [space];\n\tfor (let s = space; s = s.base;) ret.push(s);\n\treturn ret;\n}\nfunction processFormat(format, { coords } = {}) {\n\tif (format.coords \u0026\u0026 !format.coordGrammar) {\n\t\tformat.type ||= \"function\";\n\t\tformat.name ||= \"color\";\n\t\tformat.coordGrammar = parseCoordGrammar(format.coords);\n\t\tlet coordFormats = Object.entries(coords).map(([id, coordMeta], i) =\u003e {\n\t\t\tlet outputType = format.coordGrammar[i][0];\n\t\t\tlet fromRange = coordMeta.range || coordMeta.refRange;\n\t\t\tlet toRange = outputType.range, suffix = \"\";\n\t\t\tif (outputType == \"\u003cpercentage\u003e\") {\n\t\t\t\ttoRange = [0, 100];\n\t\t\t\tsuffix = \"%\";\n\t\t\t} else if (outputType == \"\u003cangle\u003e\") suffix = \"deg\";\n\t\t\treturn {\n\t\t\t\tfromRange,\n\t\t\t\ttoRange,\n\t\t\t\tsuffix\n\t\t\t};\n\t\t});\n\t\tformat.serializeCoords = (coords$1, precision) =\u003e {\n\t\t\treturn coords$1.map((c$1, i) =\u003e {\n\t\t\t\tlet { fromRange, toRange, suffix } = coordFormats[i];\n\t\t\t\tif (fromRange \u0026\u0026 toRange) c$1 = mapRange(fromRange, toRange, c$1);\n\t\t\t\tc$1 = serializeNumber(c$1, {\n\t\t\t\t\tprecision,\n\t\t\t\t\tunit: suffix\n\t\t\t\t});\n\t\t\t\treturn c$1;\n\t\t\t});\n\t\t};\n\t}\n\treturn format;\n}\nvar xyz_d65 = new ColorSpace({\n\tid: \"xyz-d65\",\n\tname: \"XYZ D65\",\n\tcoords: {\n\t\tx: { name: \"X\" },\n\t\ty: { name: \"Y\" },\n\t\tz: { name: \"Z\" }\n\t},\n\twhite: \"D65\",\n\tformats: { color: { ids: [\"xyz-d65\", \"xyz\"] } },\n\taliases: [\"xyz\"]\n});\nvar RGBColorSpace = class extends ColorSpace {\n\tconstructor(options) {\n\t\tif (!options.coords) options.coords = {\n\t\t\tr: {\n\t\t\t\trange: [0, 1],\n\t\t\t\tname: \"Red\"\n\t\t\t},\n\t\t\tg: {\n\t\t\t\trange: [0, 1],\n\t\t\t\tname: \"Green\"\n\t\t\t},\n\t\t\tb: {\n\t\t\t\trange: [0, 1],\n\t\t\t\tname: \"Blue\"\n\t\t\t}\n\t\t};\n\t\tif (!options.base) options.base = xyz_d65;\n\t\tif (options.toXYZ_M \u0026\u0026 options.fromXYZ_M) {\n\t\t\toptions.toBase ??= (rgb) =\u003e {\n\t\t\t\tlet xyz = multiplyMatrices(options.toXYZ_M, rgb);\n\t\t\t\tif (this.white !== this.base.white) xyz = adapt$2(this.white, this.base.white, xyz);\n\t\t\t\treturn xyz;\n\t\t\t};\n\t\t\toptions.fromBase ??= (xyz) =\u003e {\n\t\t\t\txyz = adapt$2(this.base.white, this.white, xyz);\n\t\t\t\treturn multiplyMatrices(options.fromXYZ_M, xyz);\n\t\t\t};\n\t\t}\n\t\toptions.referred ??= \"display\";\n\t\tsuper(options);\n\t}\n};\nfunction getAll(color, space) {\n\tcolor = getColor(color);\n\tif (!space || color.space.equals(space)) return color.coords.slice();\n\tspace = ColorSpace.get(space);\n\treturn space.from(color);\n}\nfunction get(color, prop) {\n\tcolor = getColor(color);\n\tlet { space, index } = ColorSpace.resolveCoord(prop, color.space);\n\treturn getAll(color, space)[index];\n}\nfunction setAll(color, space, coords) {\n\tcolor = getColor(color);\n\tspace = ColorSpace.get(space);\n\tcolor.coords = space.to(color.space, coords);\n\treturn color;\n}\nsetAll.returns = \"color\";\nfunction set(color, prop, value) {\n\tcolor = getColor(color);\n\tif (arguments.length === 2 \u0026\u0026 type(arguments[1]) === \"object\") {\n\t\tlet object = arguments[1];\n\t\tfor (let p$1 in object) set(color, p$1, object[p$1]);\n\t} else {\n\t\tif (typeof value === \"function\") value = value(get(color, prop));\n\t\tlet { space, index } = ColorSpace.resolveCoord(prop, color.space);\n\t\tlet coords = getAll(color, space);\n\t\tcoords[index] = value;\n\t\tsetAll(color, space, coords);\n\t}\n\treturn color;\n}\nset.returns = \"color\";\nvar XYZ_D50 = new ColorSpace({\n\tid: \"xyz-d50\",\n\tname: \"XYZ D50\",\n\twhite: \"D50\",\n\tbase: xyz_d65,\n\tfromBase: (coords) =\u003e adapt$2(xyz_d65.white, \"D50\", coords),\n\ttoBase: (coords) =\u003e adapt$2(\"D50\", xyz_d65.white, coords)\n});\nvar ε$6 = 216 / 24389;\nvar ε3$1 = 24 / 116;\nvar κ$4 = 24389 / 27;\nvar white$4 = WHITES.D50;\nvar lab = new ColorSpace({\n\tid: \"lab\",\n\tname: \"Lab\",\n\tcoords: {\n\t\tl: {\n\t\t\trefRange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t},\n\t\ta: { refRange: [-125, 125] },\n\t\tb: { refRange: [-125, 125] }\n\t},\n\twhite: white$4,\n\tbase: XYZ_D50,\n\tfromBase(XYZ) {\n\t\tlet f = XYZ.map((value, i) =\u003e value / white$4[i]).map((value) =\u003e value \u003e ε$6 ? Math.cbrt(value) : (κ$4 * value + 16) / 116);\n\t\treturn [\n\t\t\t116 * f[1] - 16,\n\t\t\t500 * (f[0] - f[1]),\n\t\t\t200 * (f[1] - f[2])\n\t\t];\n\t},\n\ttoBase(Lab) {\n\t\tlet f = [];\n\t\tf[1] = (Lab[0] + 16) / 116;\n\t\tf[0] = Lab[1] / 500 + f[1];\n\t\tf[2] = f[1] - Lab[2] / 200;\n\t\treturn [\n\t\t\tf[0] \u003e ε3$1 ? Math.pow(f[0], 3) : (116 * f[0] - 16) / κ$4,\n\t\t\tLab[0] \u003e 8 ? Math.pow((Lab[0] + 16) / 116, 3) : Lab[0] / κ$4,\n\t\t\tf[2] \u003e ε3$1 ? Math.pow(f[2], 3) : (116 * f[2] - 16) / κ$4\n\t\t].map((value, i) =\u003e value * white$4[i]);\n\t},\n\tformats: { \"lab\": { coords: [\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\"\n\t] } }\n});\nfunction constrain(angle) {\n\treturn (angle % 360 + 360) % 360;\n}\nfunction adjust(arc, angles) {\n\tif (arc === \"raw\") return angles;\n\tlet [a1, a2] = angles.map(constrain);\n\tlet angleDiff = a2 - a1;\n\tif (arc === \"increasing\") {\n\t\tif (angleDiff \u003c 0) a2 += 360;\n\t} else if (arc === \"decreasing\") {\n\t\tif (angleDiff \u003e 0) a1 += 360;\n\t} else if (arc === \"longer\") {\n\t\tif (-180 \u003c angleDiff \u0026\u0026 angleDiff \u003c 180) if (angleDiff \u003e 0) a1 += 360;\n\t\telse a2 += 360;\n\t} else if (arc === \"shorter\") {\n\t\tif (angleDiff \u003e 180) a1 += 360;\n\t\telse if (angleDiff \u003c -180) a2 += 360;\n\t}\n\treturn [a1, a2];\n}\nvar lch = new ColorSpace({\n\tid: \"lch\",\n\tname: \"LCH\",\n\tcoords: {\n\t\tl: {\n\t\t\trefRange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t},\n\t\tc: {\n\t\t\trefRange: [0, 150],\n\t\t\tname: \"Chroma\"\n\t\t},\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t}\n\t},\n\tbase: lab,\n\tfromBase(Lab) {\n\t\tlet [L, a$1, b$2] = Lab;\n\t\tlet hue;\n\t\tconst ε$8 = .02;\n\t\tif (Math.abs(a$1) \u003c ε$8 \u0026\u0026 Math.abs(b$2) \u003c ε$8) hue = NaN;\n\t\telse hue = Math.atan2(b$2, a$1) * 180 / Math.PI;\n\t\treturn [\n\t\t\tL,\n\t\t\tMath.sqrt(a$1 ** 2 + b$2 ** 2),\n\t\t\tconstrain(hue)\n\t\t];\n\t},\n\ttoBase(LCH) {\n\t\tlet [Lightness, Chroma, Hue] = LCH;\n\t\tif (Chroma \u003c 0) Chroma = 0;\n\t\tif (isNaN(Hue)) Hue = 0;\n\t\treturn [\n\t\t\tLightness,\n\t\t\tChroma * Math.cos(Hue * Math.PI / 180),\n\t\t\tChroma * Math.sin(Hue * Math.PI / 180)\n\t\t];\n\t},\n\tformats: { \"lch\": { coords: [\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\"\u003cnumber\u003e | \u003cangle\u003e\"\n\t] } }\n});\nvar Gfactor = 25 ** 7;\nvar π$1 = Math.PI;\nvar r2d = 180 / π$1;\nvar d2r$1 = π$1 / 180;\nfunction pow7(x) {\n\tconst x2 = x * x;\n\treturn x2 * x2 * x2 * x;\n}\nfunction deltaE2000(color, sample, { kL = 1, kC = 1, kH = 1 } = {}) {\n\t[color, sample] = getColor([color, sample]);\n\tlet [L1, a1, b1] = lab.from(color);\n\tlet C1 = lch.from(lab, [\n\t\tL1,\n\t\ta1,\n\t\tb1\n\t])[1];\n\tlet [L2, a2, b2] = lab.from(sample);\n\tlet C2 = lch.from(lab, [\n\t\tL2,\n\t\ta2,\n\t\tb2\n\t])[1];\n\tif (C1 \u003c 0) C1 = 0;\n\tif (C2 \u003c 0) C2 = 0;\n\tlet C7 = pow7((C1 + C2) / 2);\n\tlet G = .5 * (1 - Math.sqrt(C7 / (C7 + Gfactor)));\n\tlet adash1 = (1 + G) * a1;\n\tlet adash2 = (1 + G) * a2;\n\tlet Cdash1 = Math.sqrt(adash1 ** 2 + b1 ** 2);\n\tlet Cdash2 = Math.sqrt(adash2 ** 2 + b2 ** 2);\n\tlet h1 = adash1 === 0 \u0026\u0026 b1 === 0 ? 0 : Math.atan2(b1, adash1);\n\tlet h2 = adash2 === 0 \u0026\u0026 b2 === 0 ? 0 : Math.atan2(b2, adash2);\n\tif (h1 \u003c 0) h1 += 2 * π$1;\n\tif (h2 \u003c 0) h2 += 2 * π$1;\n\th1 *= r2d;\n\th2 *= r2d;\n\tlet ΔL = L2 - L1;\n\tlet ΔC = Cdash2 - Cdash1;\n\tlet hdiff = h2 - h1;\n\tlet hsum = h1 + h2;\n\tlet habs = Math.abs(hdiff);\n\tlet Δh;\n\tif (Cdash1 * Cdash2 === 0) Δh = 0;\n\telse if (habs \u003c= 180) Δh = hdiff;\n\telse if (hdiff \u003e 180) Δh = hdiff - 360;\n\telse if (hdiff \u003c -180) Δh = hdiff + 360;\n\telse defaults.warn(\"the unthinkable has happened\");\n\tlet ΔH = 2 * Math.sqrt(Cdash2 * Cdash1) * Math.sin(Δh * d2r$1 / 2);\n\tlet Ldash = (L1 + L2) / 2;\n\tlet Cdash = (Cdash1 + Cdash2) / 2;\n\tlet Cdash7 = pow7(Cdash);\n\tlet hdash;\n\tif (Cdash1 * Cdash2 === 0) hdash = hsum;\n\telse if (habs \u003c= 180) hdash = hsum / 2;\n\telse if (hsum \u003c 360) hdash = (hsum + 360) / 2;\n\telse hdash = (hsum - 360) / 2;\n\tlet lsq = (Ldash - 50) ** 2;\n\tlet SL = 1 + .015 * lsq / Math.sqrt(20 + lsq);\n\tlet SC = 1 + .045 * Cdash;\n\tlet T = 1;\n\tT -= .17 * Math.cos((hdash - 30) * d2r$1);\n\tT += .24 * Math.cos(2 * hdash * d2r$1);\n\tT += .32 * Math.cos((3 * hdash + 6) * d2r$1);\n\tT -= .2 * Math.cos((4 * hdash - 63) * d2r$1);\n\tlet SH = 1 + .015 * Cdash * T;\n\tlet Δθ = 30 * Math.exp(-1 * ((hdash - 275) / 25) ** 2);\n\tlet RC = 2 * Math.sqrt(Cdash7 / (Cdash7 + Gfactor));\n\tlet RT = -1 * Math.sin(2 * Δθ * d2r$1) * RC;\n\tlet dE = (ΔL / (kL * SL)) ** 2;\n\tdE += (ΔC / (kC * SC)) ** 2;\n\tdE += (ΔH / (kH * SH)) ** 2;\n\tdE += RT * (ΔC / (kC * SC)) * (ΔH / (kH * SH));\n\treturn Math.sqrt(dE);\n}\nvar XYZtoLMS_M$1 = [\n\t[\n\t\t.819022437996703,\n\t\t.3619062600528904,\n\t\t-.1288737815209879\n\t],\n\t[\n\t\t.0329836539323885,\n\t\t.9292868615863434,\n\t\t.0361446663506424\n\t],\n\t[\n\t\t.0481771893596242,\n\t\t.2642395317527308,\n\t\t.6335478284694309\n\t]\n];\nvar LMStoXYZ_M$1 = [\n\t[\n\t\t1.2268798758459243,\n\t\t-.5578149944602171,\n\t\t.2813910456659647\n\t],\n\t[\n\t\t-.0405757452148008,\n\t\t1.112286803280317,\n\t\t-.0717110580655164\n\t],\n\t[\n\t\t-.0763729366746601,\n\t\t-.4214933324022432,\n\t\t1.5869240198367816\n\t]\n];\nvar LMStoLab_M = [\n\t[\n\t\t.210454268309314,\n\t\t.7936177747023054,\n\t\t-.0040720430116193\n\t],\n\t[\n\t\t1.9779985324311684,\n\t\t-2.42859224204858,\n\t\t.450593709617411\n\t],\n\t[\n\t\t.0259040424655478,\n\t\t.7827717124575296,\n\t\t-.8086757549230774\n\t]\n];\nvar LabtoLMS_M = [\n\t[\n\t\t1,\n\t\t.3963377773761749,\n\t\t.2158037573099136\n\t],\n\t[\n\t\t1,\n\t\t-.1055613458156586,\n\t\t-.0638541728258133\n\t],\n\t[\n\t\t1,\n\t\t-.0894841775298119,\n\t\t-1.2914855480194092\n\t]\n];\nvar OKLab = new ColorSpace({\n\tid: \"oklab\",\n\tname: \"Oklab\",\n\tcoords: {\n\t\tl: {\n\t\t\trefRange: [0, 1],\n\t\t\tname: \"Lightness\"\n\t\t},\n\t\ta: { refRange: [-.4, .4] },\n\t\tb: { refRange: [-.4, .4] }\n\t},\n\twhite: \"D65\",\n\tbase: xyz_d65,\n\tfromBase(XYZ) {\n\t\treturn multiplyMatrices(LMStoLab_M, multiplyMatrices(XYZtoLMS_M$1, XYZ).map((val) =\u003e Math.cbrt(val)));\n\t},\n\ttoBase(OKLab$1) {\n\t\treturn multiplyMatrices(LMStoXYZ_M$1, multiplyMatrices(LabtoLMS_M, OKLab$1).map((val) =\u003e val ** 3));\n\t},\n\tformats: { \"oklab\": { coords: [\n\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\"\n\t] } }\n});\nfunction deltaEOK(color, sample) {\n\t[color, sample] = getColor([color, sample]);\n\tlet [L1, a1, b1] = OKLab.from(color);\n\tlet [L2, a2, b2] = OKLab.from(sample);\n\tlet ΔL = L1 - L2;\n\tlet Δa = a1 - a2;\n\tlet Δb = b1 - b2;\n\treturn Math.sqrt(ΔL ** 2 + Δa ** 2 + Δb ** 2);\n}\nvar ε$5 = 75e-6;\nfunction inGamut(color, space, { epsilon = ε$5 } = {}) {\n\tcolor = getColor(color);\n\tif (!space) space = color.space;\n\tspace = ColorSpace.get(space);\n\tlet coords = color.coords;\n\tif (space !== color.space) coords = space.from(color);\n\treturn space.inGamut(coords, { epsilon });\n}\nfunction clone(color) {\n\treturn {\n\t\tspace: color.space,\n\t\tcoords: color.coords.slice(),\n\t\talpha: color.alpha\n\t};\n}\nfunction distance(color1, color2, space = \"lab\") {\n\tspace = ColorSpace.get(space);\n\tlet coords1 = space.from(color1);\n\tlet coords2 = space.from(color2);\n\treturn Math.sqrt(coords1.reduce((acc, c1$3, i) =\u003e {\n\t\tlet c2$3 = coords2[i];\n\t\tif (isNaN(c1$3) || isNaN(c2$3)) return acc;\n\t\treturn acc + (c2$3 - c1$3) ** 2;\n\t}, 0));\n}\nfunction deltaE76(color, sample) {\n\treturn distance(color, sample, \"lab\");\n}\nvar d2r = Math.PI / 180;\nfunction deltaECMC(color, sample, { l = 2, c: c$1 = 1 } = {}) {\n\t[color, sample] = getColor([color, sample]);\n\tlet [L1, a1, b1] = lab.from(color);\n\tlet [, C1, H1] = lch.from(lab, [\n\t\tL1,\n\t\ta1,\n\t\tb1\n\t]);\n\tlet [L2, a2, b2] = lab.from(sample);\n\tlet C2 = lch.from(lab, [\n\t\tL2,\n\t\ta2,\n\t\tb2\n\t])[1];\n\tif (C1 \u003c 0) C1 = 0;\n\tif (C2 \u003c 0) C2 = 0;\n\tlet ΔL = L1 - L2;\n\tlet ΔC = C1 - C2;\n\tlet Δa = a1 - a2;\n\tlet Δb = b1 - b2;\n\tlet H2 = Δa ** 2 + Δb ** 2 - ΔC ** 2;\n\tlet SL = .511;\n\tif (L1 \u003e= 16) SL = .040975 * L1 / (1 + .01765 * L1);\n\tlet SC = .0638 * C1 / (1 + .0131 * C1) + .638;\n\tlet T;\n\tif (Number.isNaN(H1)) H1 = 0;\n\tif (H1 \u003e= 164 \u0026\u0026 H1 \u003c= 345) T = .56 + Math.abs(.2 * Math.cos((H1 + 168) * d2r));\n\telse T = .36 + Math.abs(.4 * Math.cos((H1 + 35) * d2r));\n\tlet C4 = Math.pow(C1, 4);\n\tlet F = Math.sqrt(C4 / (C4 + 1900));\n\tlet SH = SC * (F * T + 1 - F);\n\tlet dE = (ΔL / (l * SL)) ** 2;\n\tdE += (ΔC / (c$1 * SC)) ** 2;\n\tdE += H2 / SH ** 2;\n\treturn Math.sqrt(dE);\n}\nvar Yw$1 = 203;\nvar XYZ_Abs_D65 = new ColorSpace({\n\tid: \"xyz-abs-d65\",\n\tcssId: \"--xyz-abs-d65\",\n\tname: \"Absolute XYZ D65\",\n\tcoords: {\n\t\tx: {\n\t\t\trefRange: [0, 9504.7],\n\t\t\tname: \"Xa\"\n\t\t},\n\t\ty: {\n\t\t\trefRange: [0, 1e4],\n\t\t\tname: \"Ya\"\n\t\t},\n\t\tz: {\n\t\t\trefRange: [0, 10888.3],\n\t\t\tname: \"Za\"\n\t\t}\n\t},\n\tbase: xyz_d65,\n\tfromBase(XYZ) {\n\t\treturn XYZ.map((v) =\u003e Math.max(v * Yw$1, 0));\n\t},\n\ttoBase(AbsXYZ) {\n\t\treturn AbsXYZ.map((v) =\u003e Math.max(v / Yw$1, 0));\n\t}\n});\nvar b$1 = 1.15;\nvar g = .66;\nvar n$1 = 2610 / 2 ** 14;\nvar ninv$1 = 2 ** 14 / 2610;\nvar c1$2 = 3424 / 2 ** 12;\nvar c2$2 = 2413 / 2 ** 7;\nvar c3$2 = 2392 / 2 ** 7;\nvar p = 1.7 * 2523 / 2 ** 5;\nvar pinv = 2 ** 5 / (1.7 * 2523);\nvar d = -.56;\nvar d0 = 16295499532821565e-27;\nvar XYZtoCone_M = [\n\t[\n\t\t.41478972,\n\t\t.579999,\n\t\t.014648\n\t],\n\t[\n\t\t-.20151,\n\t\t1.120649,\n\t\t.0531008\n\t],\n\t[\n\t\t-.0166008,\n\t\t.2648,\n\t\t.6684799\n\t]\n];\nvar ConetoXYZ_M = [\n\t[\n\t\t1.9242264357876067,\n\t\t-1.0047923125953657,\n\t\t.037651404030618\n\t],\n\t[\n\t\t.35031676209499907,\n\t\t.7264811939316552,\n\t\t-.06538442294808501\n\t],\n\t[\n\t\t-.09098281098284752,\n\t\t-.3127282905230739,\n\t\t1.5227665613052603\n\t]\n];\nvar ConetoIab_M = [\n\t[\n\t\t.5,\n\t\t.5,\n\t\t0\n\t],\n\t[\n\t\t3.524,\n\t\t-4.066708,\n\t\t.542708\n\t],\n\t[\n\t\t.199076,\n\t\t1.096799,\n\t\t-1.295875\n\t]\n];\nvar IabtoCone_M = [\n\t[\n\t\t1,\n\t\t.1386050432715393,\n\t\t.05804731615611886\n\t],\n\t[\n\t\t.9999999999999999,\n\t\t-.1386050432715393,\n\t\t-.05804731615611886\n\t],\n\t[\n\t\t.9999999999999998,\n\t\t-.09601924202631895,\n\t\t-.8118918960560388\n\t]\n];\nvar Jzazbz = new ColorSpace({\n\tid: \"jzazbz\",\n\tname: \"Jzazbz\",\n\tcoords: {\n\t\tjz: {\n\t\t\trefRange: [0, 1],\n\t\t\tname: \"Jz\"\n\t\t},\n\t\taz: { refRange: [-.5, .5] },\n\t\tbz: { refRange: [-.5, .5] }\n\t},\n\tbase: XYZ_Abs_D65,\n\tfromBase(XYZ) {\n\t\tlet [Xa, Ya, Za] = XYZ;\n\t\tlet [Iz, az, bz] = multiplyMatrices(ConetoIab_M, multiplyMatrices(XYZtoCone_M, [\n\t\t\tb$1 * Xa - (b$1 - 1) * Za,\n\t\t\tg * Ya - (g - 1) * Xa,\n\t\t\tZa\n\t\t]).map(function(val) {\n\t\t\treturn ((c1$2 + c2$2 * (val / 1e4) ** n$1) / (1 + c3$2 * (val / 1e4) ** n$1)) ** p;\n\t\t}));\n\t\treturn [\n\t\t\t(1 + d) * Iz / (1 + d * Iz) - d0,\n\t\t\taz,\n\t\t\tbz\n\t\t];\n\t},\n\ttoBase(Jzazbz$1) {\n\t\tlet [Jz, az, bz] = Jzazbz$1;\n\t\tlet [Xm, Ym, Za] = multiplyMatrices(ConetoXYZ_M, multiplyMatrices(IabtoCone_M, [\n\t\t\t(Jz + d0) / (1 + d - d * (Jz + d0)),\n\t\t\taz,\n\t\t\tbz\n\t\t]).map(function(val) {\n\t\t\treturn 1e4 * ((c1$2 - val ** pinv) / (c3$2 * val ** pinv - c2$2)) ** ninv$1;\n\t\t}));\n\t\tlet Xa = (Xm + (b$1 - 1) * Za) / b$1;\n\t\treturn [\n\t\t\tXa,\n\t\t\t(Ym + (g - 1) * Xa) / g,\n\t\t\tZa\n\t\t];\n\t},\n\tformats: { \"color\": { coords: [\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\"\n\t] } }\n});\nvar jzczhz = new ColorSpace({\n\tid: \"jzczhz\",\n\tname: \"JzCzHz\",\n\tcoords: {\n\t\tjz: {\n\t\t\trefRange: [0, 1],\n\t\t\tname: \"Jz\"\n\t\t},\n\t\tcz: {\n\t\t\trefRange: [0, 1],\n\t\t\tname: \"Chroma\"\n\t\t},\n\t\thz: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t}\n\t},\n\tbase: Jzazbz,\n\tfromBase(jzazbz) {\n\t\tlet [Jz, az, bz] = jzazbz;\n\t\tlet hue;\n\t\tconst ε$8 = 2e-4;\n\t\tif (Math.abs(az) \u003c ε$8 \u0026\u0026 Math.abs(bz) \u003c ε$8) hue = NaN;\n\t\telse hue = Math.atan2(bz, az) * 180 / Math.PI;\n\t\treturn [\n\t\t\tJz,\n\t\t\tMath.sqrt(az ** 2 + bz ** 2),\n\t\t\tconstrain(hue)\n\t\t];\n\t},\n\ttoBase(jzczhz$1) {\n\t\treturn [\n\t\t\tjzczhz$1[0],\n\t\t\tjzczhz$1[1] * Math.cos(jzczhz$1[2] * Math.PI / 180),\n\t\t\tjzczhz$1[1] * Math.sin(jzczhz$1[2] * Math.PI / 180)\n\t\t];\n\t}\n});\nfunction deltaEJz(color, sample) {\n\t[color, sample] = getColor([color, sample]);\n\tlet [Jz1, Cz1, Hz1] = jzczhz.from(color);\n\tlet [Jz2, Cz2, Hz2] = jzczhz.from(sample);\n\tlet ΔJ = Jz1 - Jz2;\n\tlet ΔC = Cz1 - Cz2;\n\tif (Number.isNaN(Hz1) \u0026\u0026 Number.isNaN(Hz2)) {\n\t\tHz1 = 0;\n\t\tHz2 = 0;\n\t} else if (Number.isNaN(Hz1)) Hz1 = Hz2;\n\telse if (Number.isNaN(Hz2)) Hz2 = Hz1;\n\tlet Δh = Hz1 - Hz2;\n\tlet ΔH = 2 * Math.sqrt(Cz1 * Cz2) * Math.sin(Δh / 2 * (Math.PI / 180));\n\treturn Math.sqrt(ΔJ ** 2 + ΔC ** 2 + ΔH ** 2);\n}\nvar c1$1 = 3424 / 4096;\nvar c2$1 = 2413 / 128;\nvar c3$1 = 2392 / 128;\nvar m1$1 = 2610 / 16384;\nvar m2 = 2523 / 32;\nvar im1 = 16384 / 2610;\nvar im2 = 32 / 2523;\nvar XYZtoLMS_M = [\n\t[\n\t\t.3592832590121217,\n\t\t.6976051147779502,\n\t\t-.035891593232029\n\t],\n\t[\n\t\t-.1920808463704993,\n\t\t1.100476797037432,\n\t\t.0753748658519118\n\t],\n\t[\n\t\t.0070797844607479,\n\t\t.0748396662186362,\n\t\t.8433265453898765\n\t]\n];\nvar LMStoIPT_M = [\n\t[\n\t\t2048 / 4096,\n\t\t2048 / 4096,\n\t\t0\n\t],\n\t[\n\t\t6610 / 4096,\n\t\t-13613 / 4096,\n\t\t7003 / 4096\n\t],\n\t[\n\t\t17933 / 4096,\n\t\t-17390 / 4096,\n\t\t-543 / 4096\n\t]\n];\nvar IPTtoLMS_M = [\n\t[\n\t\t.9999999999999998,\n\t\t.0086090370379328,\n\t\t.111029625003026\n\t],\n\t[\n\t\t.9999999999999998,\n\t\t-.0086090370379328,\n\t\t-.1110296250030259\n\t],\n\t[\n\t\t.9999999999999998,\n\t\t.5600313357106791,\n\t\t-.3206271749873188\n\t]\n];\nvar LMStoXYZ_M = [\n\t[\n\t\t2.0701522183894223,\n\t\t-1.3263473389671563,\n\t\t.2066510476294053\n\t],\n\t[\n\t\t.3647385209748072,\n\t\t.6805660249472273,\n\t\t-.0453045459220347\n\t],\n\t[\n\t\t-.0497472075358123,\n\t\t-.0492609666966131,\n\t\t1.1880659249923042\n\t]\n];\nvar ictcp = new ColorSpace({\n\tid: \"ictcp\",\n\tname: \"ICTCP\",\n\tcoords: {\n\t\ti: {\n\t\t\trefRange: [0, 1],\n\t\t\tname: \"I\"\n\t\t},\n\t\tct: {\n\t\t\trefRange: [-.5, .5],\n\t\t\tname: \"CT\"\n\t\t},\n\t\tcp: {\n\t\t\trefRange: [-.5, .5],\n\t\t\tname: \"CP\"\n\t\t}\n\t},\n\tbase: XYZ_Abs_D65,\n\tfromBase(XYZ) {\n\t\treturn LMStoICtCp(multiplyMatrices(XYZtoLMS_M, XYZ));\n\t},\n\ttoBase(ICtCp) {\n\t\treturn multiplyMatrices(LMStoXYZ_M, ICtCptoLMS(ICtCp));\n\t}\n});\nfunction LMStoICtCp(LMS) {\n\treturn multiplyMatrices(LMStoIPT_M, LMS.map(function(val) {\n\t\treturn ((c1$1 + c2$1 * (val / 1e4) ** m1$1) / (1 + c3$1 * (val / 1e4) ** m1$1)) ** m2;\n\t}));\n}\nfunction ICtCptoLMS(ICtCp) {\n\treturn multiplyMatrices(IPTtoLMS_M, ICtCp).map(function(val) {\n\t\treturn 1e4 * (Math.max(val ** im2 - c1$1, 0) / (c2$1 - c3$1 * val ** im2)) ** im1;\n\t});\n}\nfunction deltaEITP(color, sample) {\n\t[color, sample] = getColor([color, sample]);\n\tlet [I1, T1, P1] = ictcp.from(color);\n\tlet [I2, T2, P2] = ictcp.from(sample);\n\treturn 720 * Math.sqrt((I1 - I2) ** 2 + .25 * (T1 - T2) ** 2 + (P1 - P2) ** 2);\n}\nvar white$3 = WHITES.D65;\nvar adaptedCoef = .42;\nvar adaptedCoefInv = 1 / adaptedCoef;\nvar tau = 2 * Math.PI;\nvar cat16 = [\n\t[\n\t\t.401288,\n\t\t.650173,\n\t\t-.051461\n\t],\n\t[\n\t\t-.250268,\n\t\t1.204414,\n\t\t.045854\n\t],\n\t[\n\t\t-.002079,\n\t\t.048952,\n\t\t.953127\n\t]\n];\nvar cat16Inv = [\n\t[\n\t\t1.8620678550872327,\n\t\t-1.0112546305316843,\n\t\t.14918677544445175\n\t],\n\t[\n\t\t.38752654323613717,\n\t\t.6214474419314753,\n\t\t-.008973985167612518\n\t],\n\t[\n\t\t-.015841498849333856,\n\t\t-.03412293802851557,\n\t\t1.0499644368778496\n\t]\n];\nvar m1 = [\n\t[\n\t\t460,\n\t\t451,\n\t\t288\n\t],\n\t[\n\t\t460,\n\t\t-891,\n\t\t-261\n\t],\n\t[\n\t\t460,\n\t\t-220,\n\t\t-6300\n\t]\n];\nvar surroundMap = {\n\tdark: [\n\t\t.8,\n\t\t.525,\n\t\t.8\n\t],\n\tdim: [\n\t\t.9,\n\t\t.59,\n\t\t.9\n\t],\n\taverage: [\n\t\t1,\n\t\t.69,\n\t\t1\n\t]\n};\nvar hueQuadMap = {\n\th: [\n\t\t20.14,\n\t\t90,\n\t\t164.25,\n\t\t237.53,\n\t\t380.14\n\t],\n\te: [\n\t\t.8,\n\t\t.7,\n\t\t1,\n\t\t1.2,\n\t\t.8\n\t],\n\tH: [\n\t\t0,\n\t\t100,\n\t\t200,\n\t\t300,\n\t\t400\n\t]\n};\nvar rad2deg = 180 / Math.PI;\nvar deg2rad$1 = Math.PI / 180;\nfunction adapt$1(coords, fl) {\n\treturn coords.map((c$1) =\u003e {\n\t\tconst x = spow(fl * Math.abs(c$1) * .01, adaptedCoef);\n\t\treturn 400 * copySign(x, c$1) / (x + 27.13);\n\t});\n}\nfunction unadapt(adapted, fl) {\n\tconst constant = 100 / fl * 27.13 ** adaptedCoefInv;\n\treturn adapted.map((c$1) =\u003e {\n\t\tconst cabs = Math.abs(c$1);\n\t\treturn copySign(constant * spow(cabs / (400 - cabs), adaptedCoefInv), c$1);\n\t});\n}\nfunction hueQuadrature(h) {\n\tlet hp = constrain(h);\n\tif (hp \u003c= hueQuadMap.h[0]) hp += 360;\n\tconst i = bisectLeft(hueQuadMap.h, hp) - 1;\n\tconst [hi, hii] = hueQuadMap.h.slice(i, i + 2);\n\tconst [ei, eii] = hueQuadMap.e.slice(i, i + 2);\n\tconst Hi = hueQuadMap.H[i];\n\tconst t = (hp - hi) / ei;\n\treturn Hi + 100 * t / (t + (hii - hp) / eii);\n}\nfunction invHueQuadrature(H) {\n\tlet Hp = (H % 400 + 400) % 400;\n\tconst i = Math.floor(.01 * Hp);\n\tHp = Hp % 100;\n\tconst [hi, hii] = hueQuadMap.h.slice(i, i + 2);\n\tconst [ei, eii] = hueQuadMap.e.slice(i, i + 2);\n\treturn constrain((Hp * (eii * hi - ei * hii) - 100 * hi * eii) / (Hp * (eii - ei) - 100 * eii));\n}\nfunction environment(refWhite, adaptingLuminance, backgroundLuminance, surround, discounting) {\n\tconst env = {};\n\tenv.discounting = discounting;\n\tenv.refWhite = refWhite;\n\tenv.surround = surround;\n\tconst xyzW = refWhite.map((c$1) =\u003e {\n\t\treturn c$1 * 100;\n\t});\n\tenv.la = adaptingLuminance;\n\tenv.yb = backgroundLuminance;\n\tconst yw = xyzW[1];\n\tconst rgbW = multiplyMatrices(cat16, xyzW);\n\tsurround = surroundMap[env.surround];\n\tconst f = surround[0];\n\tenv.c = surround[1];\n\tenv.nc = surround[2];\n\tconst k4 = (1 / (5 * env.la + 1)) ** 4;\n\tenv.fl = k4 * env.la + .1 * (1 - k4) * (1 - k4) * Math.cbrt(5 * env.la);\n\tenv.flRoot = env.fl ** .25;\n\tenv.n = env.yb / yw;\n\tenv.z = 1.48 + Math.sqrt(env.n);\n\tenv.nbb = .725 * env.n ** -.2;\n\tenv.ncb = env.nbb;\n\tconst d$1 = discounting ? 1 : Math.max(Math.min(f * (1 - 1 / 3.6 * Math.exp((-env.la - 42) / 92)), 1), 0);\n\tenv.dRgb = rgbW.map((c$1) =\u003e {\n\t\treturn interpolate(1, yw / c$1, d$1);\n\t});\n\tenv.dRgbInv = env.dRgb.map((c$1) =\u003e {\n\t\treturn 1 / c$1;\n\t});\n\tconst rgbAW = adapt$1(rgbW.map((c$1, i) =\u003e {\n\t\treturn c$1 * env.dRgb[i];\n\t}), env.fl);\n\tenv.aW = env.nbb * (2 * rgbAW[0] + rgbAW[1] + .05 * rgbAW[2]);\n\treturn env;\n}\nvar viewingConditions$1 = environment(white$3, 64 / Math.PI * .2, 20, \"average\", false);\nfunction fromCam16(cam16$1, env) {\n\tif (!(cam16$1.J !== void 0 ^ cam16$1.Q !== void 0)) throw new Error(\"Conversion requires one and only one: 'J' or 'Q'\");\n\tif (!(cam16$1.C !== void 0 ^ cam16$1.M !== void 0 ^ cam16$1.s !== void 0)) throw new Error(\"Conversion requires one and only one: 'C', 'M' or 's'\");\n\tif (!(cam16$1.h !== void 0 ^ cam16$1.H !== void 0)) throw new Error(\"Conversion requires one and only one: 'h' or 'H'\");\n\tif (cam16$1.J === 0 || cam16$1.Q === 0) return [\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\tlet hRad = 0;\n\tif (cam16$1.h !== void 0) hRad = constrain(cam16$1.h) * deg2rad$1;\n\telse hRad = invHueQuadrature(cam16$1.H) * deg2rad$1;\n\tconst cosh = Math.cos(hRad);\n\tconst sinh = Math.sin(hRad);\n\tlet Jroot = 0;\n\tif (cam16$1.J !== void 0) Jroot = spow(cam16$1.J, 1 / 2) * .1;\n\telse if (cam16$1.Q !== void 0) Jroot = .25 * env.c * cam16$1.Q / ((env.aW + 4) * env.flRoot);\n\tlet alpha = 0;\n\tif (cam16$1.C !== void 0) alpha = cam16$1.C / Jroot;\n\telse if (cam16$1.M !== void 0) alpha = cam16$1.M / env.flRoot / Jroot;\n\telse if (cam16$1.s !== void 0) alpha = 4e-4 * cam16$1.s ** 2 * (env.aW + 4) / env.c;\n\tconst t = spow(alpha * Math.pow(1.64 - Math.pow(.29, env.n), -.73), 10 / 9);\n\tconst et = .25 * (Math.cos(hRad + 2) + 3.8);\n\tconst A = env.aW * spow(Jroot, 2 / env.c / env.z);\n\tconst p1 = 5e4 / 13 * env.nc * env.ncb * et;\n\tconst p2 = A / env.nbb;\n\tconst r = 23 * (p2 + .305) * zdiv(t, 23 * p1 + t * (11 * cosh + 108 * sinh));\n\treturn multiplyMatrices(cat16Inv, unadapt(multiplyMatrices(m1, [\n\t\tp2,\n\t\tr * cosh,\n\t\tr * sinh\n\t]).map((c$1) =\u003e {\n\t\treturn c$1 * 1 / 1403;\n\t}), env.fl).map((c$1, i) =\u003e {\n\t\treturn c$1 * env.dRgbInv[i];\n\t})).map((c$1) =\u003e {\n\t\treturn c$1 / 100;\n\t});\n}\nfunction toCam16(xyzd65, env) {\n\tconst rgbA = adapt$1(multiplyMatrices(cat16, xyzd65.map((c$1) =\u003e {\n\t\treturn c$1 * 100;\n\t})).map((c$1, i) =\u003e {\n\t\treturn c$1 * env.dRgb[i];\n\t}), env.fl);\n\tconst a$1 = rgbA[0] + (-12 * rgbA[1] + rgbA[2]) / 11;\n\tconst b$2 = (rgbA[0] + rgbA[1] - 2 * rgbA[2]) / 9;\n\tconst hRad = (Math.atan2(b$2, a$1) % tau + tau) % tau;\n\tconst et = .25 * (Math.cos(hRad + 2) + 3.8);\n\tconst alpha = spow(5e4 / 13 * env.nc * env.ncb * zdiv(et * Math.sqrt(a$1 ** 2 + b$2 ** 2), rgbA[0] + rgbA[1] + 1.05 * rgbA[2] + .305), .9) * Math.pow(1.64 - Math.pow(.29, env.n), .73);\n\tconst Jroot = spow(env.nbb * (2 * rgbA[0] + rgbA[1] + .05 * rgbA[2]) / env.aW, .5 * env.c * env.z);\n\tconst J = 100 * spow(Jroot, 2);\n\tconst Q = 4 / env.c * Jroot * (env.aW + 4) * env.flRoot;\n\tconst C = alpha * Jroot;\n\tconst M = C * env.flRoot;\n\tconst h = constrain(hRad * rad2deg);\n\tconst H = hueQuadrature(h);\n\treturn {\n\t\tJ,\n\t\tC,\n\t\th,\n\t\ts: 50 * spow(env.c * alpha / (env.aW + 4), 1 / 2),\n\t\tQ,\n\t\tM,\n\t\tH\n\t};\n}\nvar cam16 = new ColorSpace({\n\tid: \"cam16-jmh\",\n\tcssId: \"--cam16-jmh\",\n\tname: \"CAM16-JMh\",\n\tcoords: {\n\t\tj: {\n\t\t\trefRange: [0, 100],\n\t\t\tname: \"J\"\n\t\t},\n\t\tm: {\n\t\t\trefRange: [0, 105],\n\t\t\tname: \"Colorfulness\"\n\t\t},\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t}\n\t},\n\tbase: xyz_d65,\n\tfromBase(xyz) {\n\t\tconst cam16$1 = toCam16(xyz, viewingConditions$1);\n\t\treturn [\n\t\t\tcam16$1.J,\n\t\t\tcam16$1.M,\n\t\t\tcam16$1.h\n\t\t];\n\t},\n\ttoBase(cam16$1) {\n\t\treturn fromCam16({\n\t\t\tJ: cam16$1[0],\n\t\t\tM: cam16$1[1],\n\t\t\th: cam16$1[2]\n\t\t}, viewingConditions$1);\n\t}\n});\nvar white$2 = WHITES.D65;\nvar ε$4 = 216 / 24389;\nvar κ$3 = 24389 / 27;\nfunction toLstar(y) {\n\treturn 116 * (y \u003e ε$4 ? Math.cbrt(y) : (κ$3 * y + 16) / 116) - 16;\n}\nfunction fromLstar(lstar) {\n\treturn lstar \u003e 8 ? Math.pow((lstar + 16) / 116, 3) : lstar / κ$3;\n}\nfunction fromHct(coords, env) {\n\tlet [h, c$1, t] = coords;\n\tlet xyz = [];\n\tlet j = 0;\n\tif (t === 0) return [\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\tlet y = fromLstar(t);\n\tif (t \u003e 0) j = .00379058511492914 * t ** 2 + .608983189401032 * t + .9155088574762233;\n\telse j = 9514440756550361e-21 * t ** 2 + .08693057439788597 * t - 21.928975842194614;\n\tconst threshold = 2e-12;\n\tconst max_attempts = 15;\n\tlet attempt = 0;\n\tlet last$1 = Infinity;\n\twhile (attempt \u003c= max_attempts) {\n\t\txyz = fromCam16({\n\t\t\tJ: j,\n\t\t\tC: c$1,\n\t\t\th\n\t\t}, env);\n\t\tconst delta = Math.abs(xyz[1] - y);\n\t\tif (delta \u003c last$1) {\n\t\t\tif (delta \u003c= threshold) return xyz;\n\t\t\tlast$1 = delta;\n\t\t}\n\t\tj = j - (xyz[1] - y) * j / (2 * xyz[1]);\n\t\tattempt += 1;\n\t}\n\treturn fromCam16({\n\t\tJ: j,\n\t\tC: c$1,\n\t\th\n\t}, env);\n}\nfunction toHct(xyz, env) {\n\tconst t = toLstar(xyz[1]);\n\tif (t === 0) return [\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\tconst cam16$1 = toCam16(xyz, viewingConditions);\n\treturn [\n\t\tconstrain(cam16$1.h),\n\t\tcam16$1.C,\n\t\tt\n\t];\n}\nvar viewingConditions = environment(white$2, 200 / Math.PI * fromLstar(50), fromLstar(50) * 100, \"average\", false);\nvar hct = new ColorSpace({\n\tid: \"hct\",\n\tname: \"HCT\",\n\tcoords: {\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t},\n\t\tc: {\n\t\t\trefRange: [0, 145],\n\t\t\tname: \"Colorfulness\"\n\t\t},\n\t\tt: {\n\t\t\trefRange: [0, 100],\n\t\t\tname: \"Tone\"\n\t\t}\n\t},\n\tbase: xyz_d65,\n\tfromBase(xyz) {\n\t\treturn toHct(xyz);\n\t},\n\ttoBase(hct$1) {\n\t\treturn fromHct(hct$1, viewingConditions);\n\t},\n\tformats: { color: {\n\t\tid: \"--hct\",\n\t\tcoords: [\n\t\t\t\"\u003cnumber\u003e | \u003cangle\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\"\n\t\t]\n\t} }\n});\nvar deg2rad = Math.PI / 180;\nvar ucsCoeff = [\n\t1,\n\t.007,\n\t.0228\n];\nfunction convertUcsAb(coords) {\n\tif (coords[1] \u003c 0) coords = hct.fromBase(hct.toBase(coords));\n\tconst M = Math.log(Math.max(1 + ucsCoeff[2] * coords[1] * viewingConditions.flRoot, 1)) / ucsCoeff[2];\n\tconst hrad = coords[0] * deg2rad;\n\tconst a$1 = M * Math.cos(hrad);\n\tconst b$2 = M * Math.sin(hrad);\n\treturn [\n\t\tcoords[2],\n\t\ta$1,\n\t\tb$2\n\t];\n}\nfunction deltaEHCT(color, sample) {\n\t[color, sample] = getColor([color, sample]);\n\tlet [t1, a1, b1] = convertUcsAb(hct.from(color));\n\tlet [t2, a2, b2] = convertUcsAb(hct.from(sample));\n\treturn Math.sqrt((t1 - t2) ** 2 + (a1 - a2) ** 2 + (b1 - b2) ** 2);\n}\nvar deltaEMethods = {\n\tdeltaE76,\n\tdeltaECMC,\n\tdeltaE2000,\n\tdeltaEJz,\n\tdeltaEITP,\n\tdeltaEOK,\n\tdeltaEHCT\n};\nfunction calcEpsilon(jnd) {\n\tconst order = !jnd ? 0 : Math.floor(Math.log10(Math.abs(jnd)));\n\treturn Math.max(parseFloat(`1e${order - 2}`), 1e-6);\n}\nvar GMAPPRESET = {\n\t\"hct\": {\n\t\tmethod: \"hct.c\",\n\t\tjnd: 2,\n\t\tdeltaEMethod: \"hct\",\n\t\tblackWhiteClamp: {}\n\t},\n\t\"hct-tonal\": {\n\t\tmethod: \"hct.c\",\n\t\tjnd: 0,\n\t\tdeltaEMethod: \"hct\",\n\t\tblackWhiteClamp: {\n\t\t\tchannel: \"hct.t\",\n\t\t\tmin: 0,\n\t\t\tmax: 100\n\t\t}\n\t}\n};\nfunction toGamut(color, { method = defaults.gamut_mapping, space = void 0, deltaEMethod = \"\", jnd = 2, blackWhiteClamp = {} } = {}) {\n\tcolor = getColor(color);\n\tif (isString(arguments[1])) space = arguments[1];\n\telse if (!space) space = color.space;\n\tspace = ColorSpace.get(space);\n\tif (inGamut(color, space, { epsilon: 0 })) return color;\n\tlet spaceColor;\n\tif (method === \"css\") spaceColor = toGamutCSS(color, { space });\n\telse {\n\t\tif (method !== \"clip\" \u0026\u0026 !inGamut(color, space)) {\n\t\t\tif (Object.prototype.hasOwnProperty.call(GMAPPRESET, method)) ({method, jnd, deltaEMethod, blackWhiteClamp} = GMAPPRESET[method]);\n\t\t\tlet de = deltaE2000;\n\t\t\tif (deltaEMethod !== \"\") {\n\t\t\t\tfor (let m$1 in deltaEMethods) if (\"deltae\" + deltaEMethod.toLowerCase() === m$1.toLowerCase()) {\n\t\t\t\t\tde = deltaEMethods[m$1];\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet clipped = toGamut(to(color, space), {\n\t\t\t\tmethod: \"clip\",\n\t\t\t\tspace\n\t\t\t});\n\t\t\tif (de(color, clipped) \u003e jnd) {\n\t\t\t\tif (Object.keys(blackWhiteClamp).length === 3) {\n\t\t\t\t\tlet channelMeta = ColorSpace.resolveCoord(blackWhiteClamp.channel);\n\t\t\t\t\tlet channel = get(to(color, channelMeta.space), channelMeta.id);\n\t\t\t\t\tif (isNone(channel)) channel = 0;\n\t\t\t\t\tif (channel \u003e= blackWhiteClamp.max) return to({\n\t\t\t\t\t\tspace: \"xyz-d65\",\n\t\t\t\t\t\tcoords: WHITES[\"D65\"]\n\t\t\t\t\t}, color.space);\n\t\t\t\t\telse if (channel \u003c= blackWhiteClamp.min) return to({\n\t\t\t\t\t\tspace: \"xyz-d65\",\n\t\t\t\t\t\tcoords: [\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t0\n\t\t\t\t\t\t]\n\t\t\t\t\t}, color.space);\n\t\t\t\t}\n\t\t\t\tlet coordMeta = ColorSpace.resolveCoord(method);\n\t\t\t\tlet mapSpace = coordMeta.space;\n\t\t\t\tlet coordId = coordMeta.id;\n\t\t\t\tlet mappedColor = to(color, mapSpace);\n\t\t\t\tmappedColor.coords.forEach((c$1, i) =\u003e {\n\t\t\t\t\tif (isNone(c$1)) mappedColor.coords[i] = 0;\n\t\t\t\t});\n\t\t\t\tlet min = (coordMeta.range || coordMeta.refRange)[0];\n\t\t\t\tlet ε$8 = calcEpsilon(jnd);\n\t\t\t\tlet low = min;\n\t\t\t\tlet high = get(mappedColor, coordId);\n\t\t\t\twhile (high - low \u003e ε$8) {\n\t\t\t\t\tlet clipped$1 = clone(mappedColor);\n\t\t\t\t\tclipped$1 = toGamut(clipped$1, {\n\t\t\t\t\t\tspace,\n\t\t\t\t\t\tmethod: \"clip\"\n\t\t\t\t\t});\n\t\t\t\t\tif (de(mappedColor, clipped$1) - jnd \u003c ε$8) low = get(mappedColor, coordId);\n\t\t\t\t\telse high = get(mappedColor, coordId);\n\t\t\t\t\tset(mappedColor, coordId, (low + high) / 2);\n\t\t\t\t}\n\t\t\t\tspaceColor = to(mappedColor, space);\n\t\t\t} else spaceColor = clipped;\n\t\t} else spaceColor = to(color, space);\n\t\tif (method === \"clip\" || !inGamut(spaceColor, space, { epsilon: 0 })) {\n\t\t\tlet bounds = Object.values(space.coords).map((c$1) =\u003e c$1.range || []);\n\t\t\tspaceColor.coords = spaceColor.coords.map((c$1, i) =\u003e {\n\t\t\t\tlet [min, max$1] = bounds[i];\n\t\t\t\tif (min !== void 0) c$1 = Math.max(min, c$1);\n\t\t\t\tif (max$1 !== void 0) c$1 = Math.min(c$1, max$1);\n\t\t\t\treturn c$1;\n\t\t\t});\n\t\t}\n\t}\n\tif (space !== color.space) spaceColor = to(spaceColor, color.space);\n\tcolor.coords = spaceColor.coords;\n\treturn color;\n}\ntoGamut.returns = \"color\";\nvar COLORS = {\n\tWHITE: {\n\t\tspace: OKLab,\n\t\tcoords: [\n\t\t\t1,\n\t\t\t0,\n\t\t\t0\n\t\t]\n\t},\n\tBLACK: {\n\t\tspace: OKLab,\n\t\tcoords: [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t]\n\t}\n};\nfunction toGamutCSS(origin, { space } = {}) {\n\tconst JND = .02;\n\tconst ε$8 = 1e-4;\n\torigin = getColor(origin);\n\tif (!space) space = origin.space;\n\tspace = ColorSpace.get(space);\n\tconst oklchSpace = ColorSpace.get(\"oklch\");\n\tif (space.isUnbounded) return to(origin, space);\n\tconst origin_OKLCH = to(origin, oklchSpace);\n\tlet L = origin_OKLCH.coords[0];\n\tif (L \u003e= 1) {\n\t\tconst white$5 = to(COLORS.WHITE, space);\n\t\twhite$5.alpha = origin.alpha;\n\t\treturn to(white$5, space);\n\t}\n\tif (L \u003c= 0) {\n\t\tconst black = to(COLORS.BLACK, space);\n\t\tblack.alpha = origin.alpha;\n\t\treturn to(black, space);\n\t}\n\tif (inGamut(origin_OKLCH, space, { epsilon: 0 })) return to(origin_OKLCH, space);\n\tfunction clip(_color) {\n\t\tconst destColor = to(_color, space);\n\t\tconst spaceCoords = Object.values(space.coords);\n\t\tdestColor.coords = destColor.coords.map((coord, index) =\u003e {\n\t\t\tif (\"range\" in spaceCoords[index]) {\n\t\t\t\tconst [min$1, max$2] = spaceCoords[index].range;\n\t\t\t\treturn clamp(min$1, coord, max$2);\n\t\t\t}\n\t\t\treturn coord;\n\t\t});\n\t\treturn destColor;\n\t}\n\tlet min = 0;\n\tlet max$1 = origin_OKLCH.coords[1];\n\tlet min_inGamut = true;\n\tlet current = clone(origin_OKLCH);\n\tlet clipped = clip(current);\n\tlet E = deltaEOK(clipped, current);\n\tif (E \u003c JND) return clipped;\n\twhile (max$1 - min \u003e ε$8) {\n\t\tconst chroma = (min + max$1) / 2;\n\t\tcurrent.coords[1] = chroma;\n\t\tif (min_inGamut \u0026\u0026 inGamut(current, space, { epsilon: 0 })) min = chroma;\n\t\telse {\n\t\t\tclipped = clip(current);\n\t\t\tE = deltaEOK(clipped, current);\n\t\t\tif (E \u003c JND) if (JND - E \u003c ε$8) break;\n\t\t\telse {\n\t\t\t\tmin_inGamut = false;\n\t\t\t\tmin = chroma;\n\t\t\t}\n\t\t\telse max$1 = chroma;\n\t\t}\n\t}\n\treturn clipped;\n}\nfunction to(color, space, { inGamut: inGamut$1 } = {}) {\n\tcolor = getColor(color);\n\tspace = ColorSpace.get(space);\n\tlet coords = space.from(color);\n\tlet ret = {\n\t\tspace,\n\t\tcoords,\n\t\talpha: color.alpha\n\t};\n\tif (inGamut$1) ret = toGamut(ret, inGamut$1 === true ? void 0 : inGamut$1);\n\treturn ret;\n}\nto.returns = \"color\";\nfunction serialize(color, { precision = defaults.precision, format = \"default\", inGamut: inGamut$1 = true,...customOptions } = {}) {\n\tlet ret;\n\tcolor = getColor(color);\n\tlet formatId = format;\n\tformat = color.space.getFormat(format) ?? color.space.getFormat(\"default\") ?? ColorSpace.DEFAULT_FORMAT;\n\tlet coords = color.coords.slice();\n\tinGamut$1 ||= format.toGamut;\n\tif (inGamut$1 \u0026\u0026 !inGamut(color)) coords = toGamut(clone(color), inGamut$1 === true ? void 0 : inGamut$1).coords;\n\tif (format.type === \"custom\") {\n\t\tcustomOptions.precision = precision;\n\t\tif (format.serialize) ret = format.serialize(coords, color.alpha, customOptions);\n\t\telse throw new TypeError(`format ${formatId} can only be used to parse colors, not for serialization`);\n\t} else {\n\t\tlet name = format.name || \"color\";\n\t\tif (format.serializeCoords) coords = format.serializeCoords(coords, precision);\n\t\telse if (precision !== null) coords = coords.map((c$1) =\u003e {\n\t\t\treturn serializeNumber(c$1, { precision });\n\t\t});\n\t\tlet args = [...coords];\n\t\tif (name === \"color\") {\n\t\t\tlet cssId = format.id || format.ids?.[0] || color.space.id;\n\t\t\targs.unshift(cssId);\n\t\t}\n\t\tlet alpha = color.alpha;\n\t\tif (precision !== null) alpha = serializeNumber(alpha, { precision });\n\t\tlet strAlpha = color.alpha \u003e= 1 || format.noAlpha ? \"\" : `${format.commas ? \",\" : \" /\"} ${alpha}`;\n\t\tret = `${name}(${args.join(format.commas ? \", \" : \" \")}${strAlpha})`;\n\t}\n\treturn ret;\n}\nvar REC2020Linear = new RGBColorSpace({\n\tid: \"rec2020-linear\",\n\tcssId: \"--rec2020-linear\",\n\tname: \"Linear REC.2020\",\n\twhite: \"D65\",\n\ttoXYZ_M: [\n\t\t[\n\t\t\t.6369580483012914,\n\t\t\t.14461690358620832,\n\t\t\t.1688809751641721\n\t\t],\n\t\t[\n\t\t\t.2627002120112671,\n\t\t\t.6779980715188708,\n\t\t\t.05930171646986196\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\t.028072693049087428,\n\t\t\t1.060985057710791\n\t\t]\n\t],\n\tfromXYZ_M: [\n\t\t[\n\t\t\t1.716651187971268,\n\t\t\t-.355670783776392,\n\t\t\t-.25336628137366\n\t\t],\n\t\t[\n\t\t\t-.666684351832489,\n\t\t\t1.616481236634939,\n\t\t\t.0157685458139111\n\t\t],\n\t\t[\n\t\t\t.017639857445311,\n\t\t\t-.042770613257809,\n\t\t\t.942103121235474\n\t\t]\n\t]\n});\nvar α = 1.09929682680944;\nvar β = .018053968510807;\nvar REC2020 = new RGBColorSpace({\n\tid: \"rec2020\",\n\tname: \"REC.2020\",\n\tbase: REC2020Linear,\n\ttoBase(RGB) {\n\t\treturn RGB.map(function(val) {\n\t\t\tif (val \u003c β * 4.5) return val / 4.5;\n\t\t\treturn Math.pow((val + α - 1) / α, 1 / .45);\n\t\t});\n\t},\n\tfromBase(RGB) {\n\t\treturn RGB.map(function(val) {\n\t\t\tif (val \u003e= β) return α * Math.pow(val, .45) - (α - 1);\n\t\t\treturn 4.5 * val;\n\t\t});\n\t}\n});\nvar P3Linear = new RGBColorSpace({\n\tid: \"p3-linear\",\n\tcssId: \"--display-p3-linear\",\n\tname: \"Linear P3\",\n\twhite: \"D65\",\n\ttoXYZ_M: [\n\t\t[\n\t\t\t.4865709486482162,\n\t\t\t.26566769316909306,\n\t\t\t.1982172852343625\n\t\t],\n\t\t[\n\t\t\t.2289745640697488,\n\t\t\t.6917385218365064,\n\t\t\t.079286914093745\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\t.04511338185890264,\n\t\t\t1.043944368900976\n\t\t]\n\t],\n\tfromXYZ_M: [\n\t\t[\n\t\t\t2.493496911941425,\n\t\t\t-.9313836179191239,\n\t\t\t-.40271078445071684\n\t\t],\n\t\t[\n\t\t\t-.8294889695615747,\n\t\t\t1.7626640603183463,\n\t\t\t.023624685841943577\n\t\t],\n\t\t[\n\t\t\t.03584583024378447,\n\t\t\t-.07617238926804182,\n\t\t\t.9568845240076872\n\t\t]\n\t]\n});\nvar toXYZ_M$3 = [\n\t[\n\t\t.41239079926595934,\n\t\t.357584339383878,\n\t\t.1804807884018343\n\t],\n\t[\n\t\t.21263900587151027,\n\t\t.715168678767756,\n\t\t.07219231536073371\n\t],\n\t[\n\t\t.01933081871559182,\n\t\t.11919477979462598,\n\t\t.9505321522496607\n\t]\n];\nvar fromXYZ_M$3 = [\n\t[\n\t\t3.2409699419045226,\n\t\t-1.537383177570094,\n\t\t-.4986107602930034\n\t],\n\t[\n\t\t-.9692436362808796,\n\t\t1.8759675015077202,\n\t\t.04155505740717559\n\t],\n\t[\n\t\t.05563007969699366,\n\t\t-.20397695888897652,\n\t\t1.0569715142428786\n\t]\n];\nvar sRGBLinear = new RGBColorSpace({\n\tid: \"srgb-linear\",\n\tname: \"Linear sRGB\",\n\twhite: \"D65\",\n\ttoXYZ_M: toXYZ_M$3,\n\tfromXYZ_M: fromXYZ_M$3\n});\nvar KEYWORDS = {\n\t\"aliceblue\": [\n\t\t240 / 255,\n\t\t248 / 255,\n\t\t1\n\t],\n\t\"antiquewhite\": [\n\t\t250 / 255,\n\t\t235 / 255,\n\t\t215 / 255\n\t],\n\t\"aqua\": [\n\t\t0,\n\t\t1,\n\t\t1\n\t],\n\t\"aquamarine\": [\n\t\t127 / 255,\n\t\t1,\n\t\t212 / 255\n\t],\n\t\"azure\": [\n\t\t240 / 255,\n\t\t1,\n\t\t1\n\t],\n\t\"beige\": [\n\t\t245 / 255,\n\t\t245 / 255,\n\t\t220 / 255\n\t],\n\t\"bisque\": [\n\t\t1,\n\t\t228 / 255,\n\t\t196 / 255\n\t],\n\t\"black\": [\n\t\t0,\n\t\t0,\n\t\t0\n\t],\n\t\"blanchedalmond\": [\n\t\t1,\n\t\t235 / 255,\n\t\t205 / 255\n\t],\n\t\"blue\": [\n\t\t0,\n\t\t0,\n\t\t1\n\t],\n\t\"blueviolet\": [\n\t\t138 / 255,\n\t\t43 / 255,\n\t\t226 / 255\n\t],\n\t\"brown\": [\n\t\t165 / 255,\n\t\t42 / 255,\n\t\t42 / 255\n\t],\n\t\"burlywood\": [\n\t\t222 / 255,\n\t\t184 / 255,\n\t\t135 / 255\n\t],\n\t\"cadetblue\": [\n\t\t95 / 255,\n\t\t158 / 255,\n\t\t160 / 255\n\t],\n\t\"chartreuse\": [\n\t\t127 / 255,\n\t\t1,\n\t\t0\n\t],\n\t\"chocolate\": [\n\t\t210 / 255,\n\t\t105 / 255,\n\t\t30 / 255\n\t],\n\t\"coral\": [\n\t\t1,\n\t\t127 / 255,\n\t\t80 / 255\n\t],\n\t\"cornflowerblue\": [\n\t\t100 / 255,\n\t\t149 / 255,\n\t\t237 / 255\n\t],\n\t\"cornsilk\": [\n\t\t1,\n\t\t248 / 255,\n\t\t220 / 255\n\t],\n\t\"crimson\": [\n\t\t220 / 255,\n\t\t20 / 255,\n\t\t60 / 255\n\t],\n\t\"cyan\": [\n\t\t0,\n\t\t1,\n\t\t1\n\t],\n\t\"darkblue\": [\n\t\t0,\n\t\t0,\n\t\t139 / 255\n\t],\n\t\"darkcyan\": [\n\t\t0,\n\t\t139 / 255,\n\t\t139 / 255\n\t],\n\t\"darkgoldenrod\": [\n\t\t184 / 255,\n\t\t134 / 255,\n\t\t11 / 255\n\t],\n\t\"darkgray\": [\n\t\t169 / 255,\n\t\t169 / 255,\n\t\t169 / 255\n\t],\n\t\"darkgreen\": [\n\t\t0,\n\t\t100 / 255,\n\t\t0\n\t],\n\t\"darkgrey\": [\n\t\t169 / 255,\n\t\t169 / 255,\n\t\t169 / 255\n\t],\n\t\"darkkhaki\": [\n\t\t189 / 255,\n\t\t183 / 255,\n\t\t107 / 255\n\t],\n\t\"darkmagenta\": [\n\t\t139 / 255,\n\t\t0,\n\t\t139 / 255\n\t],\n\t\"darkolivegreen\": [\n\t\t85 / 255,\n\t\t107 / 255,\n\t\t47 / 255\n\t],\n\t\"darkorange\": [\n\t\t1,\n\t\t140 / 255,\n\t\t0\n\t],\n\t\"darkorchid\": [\n\t\t153 / 255,\n\t\t50 / 255,\n\t\t204 / 255\n\t],\n\t\"darkred\": [\n\t\t139 / 255,\n\t\t0,\n\t\t0\n\t],\n\t\"darksalmon\": [\n\t\t233 / 255,\n\t\t150 / 255,\n\t\t122 / 255\n\t],\n\t\"darkseagreen\": [\n\t\t143 / 255,\n\t\t188 / 255,\n\t\t143 / 255\n\t],\n\t\"darkslateblue\": [\n\t\t72 / 255,\n\t\t61 / 255,\n\t\t139 / 255\n\t],\n\t\"darkslategray\": [\n\t\t47 / 255,\n\t\t79 / 255,\n\t\t79 / 255\n\t],\n\t\"darkslategrey\": [\n\t\t47 / 255,\n\t\t79 / 255,\n\t\t79 / 255\n\t],\n\t\"darkturquoise\": [\n\t\t0,\n\t\t206 / 255,\n\t\t209 / 255\n\t],\n\t\"darkviolet\": [\n\t\t148 / 255,\n\t\t0,\n\t\t211 / 255\n\t],\n\t\"deeppink\": [\n\t\t1,\n\t\t20 / 255,\n\t\t147 / 255\n\t],\n\t\"deepskyblue\": [\n\t\t0,\n\t\t191 / 255,\n\t\t1\n\t],\n\t\"dimgray\": [\n\t\t105 / 255,\n\t\t105 / 255,\n\t\t105 / 255\n\t],\n\t\"dimgrey\": [\n\t\t105 / 255,\n\t\t105 / 255,\n\t\t105 / 255\n\t],\n\t\"dodgerblue\": [\n\t\t30 / 255,\n\t\t144 / 255,\n\t\t1\n\t],\n\t\"firebrick\": [\n\t\t178 / 255,\n\t\t34 / 255,\n\t\t34 / 255\n\t],\n\t\"floralwhite\": [\n\t\t1,\n\t\t250 / 255,\n\t\t240 / 255\n\t],\n\t\"forestgreen\": [\n\t\t34 / 255,\n\t\t139 / 255,\n\t\t34 / 255\n\t],\n\t\"fuchsia\": [\n\t\t1,\n\t\t0,\n\t\t1\n\t],\n\t\"gainsboro\": [\n\t\t220 / 255,\n\t\t220 / 255,\n\t\t220 / 255\n\t],\n\t\"ghostwhite\": [\n\t\t248 / 255,\n\t\t248 / 255,\n\t\t1\n\t],\n\t\"gold\": [\n\t\t1,\n\t\t215 / 255,\n\t\t0\n\t],\n\t\"goldenrod\": [\n\t\t218 / 255,\n\t\t165 / 255,\n\t\t32 / 255\n\t],\n\t\"gray\": [\n\t\t128 / 255,\n\t\t128 / 255,\n\t\t128 / 255\n\t],\n\t\"green\": [\n\t\t0,\n\t\t128 / 255,\n\t\t0\n\t],\n\t\"greenyellow\": [\n\t\t173 / 255,\n\t\t1,\n\t\t47 / 255\n\t],\n\t\"grey\": [\n\t\t128 / 255,\n\t\t128 / 255,\n\t\t128 / 255\n\t],\n\t\"honeydew\": [\n\t\t240 / 255,\n\t\t1,\n\t\t240 / 255\n\t],\n\t\"hotpink\": [\n\t\t1,\n\t\t105 / 255,\n\t\t180 / 255\n\t],\n\t\"indianred\": [\n\t\t205 / 255,\n\t\t92 / 255,\n\t\t92 / 255\n\t],\n\t\"indigo\": [\n\t\t75 / 255,\n\t\t0,\n\t\t130 / 255\n\t],\n\t\"ivory\": [\n\t\t1,\n\t\t1,\n\t\t240 / 255\n\t],\n\t\"khaki\": [\n\t\t240 / 255,\n\t\t230 / 255,\n\t\t140 / 255\n\t],\n\t\"lavender\": [\n\t\t230 / 255,\n\t\t230 / 255,\n\t\t250 / 255\n\t],\n\t\"lavenderblush\": [\n\t\t1,\n\t\t240 / 255,\n\t\t245 / 255\n\t],\n\t\"lawngreen\": [\n\t\t124 / 255,\n\t\t252 / 255,\n\t\t0\n\t],\n\t\"lemonchiffon\": [\n\t\t1,\n\t\t250 / 255,\n\t\t205 / 255\n\t],\n\t\"lightblue\": [\n\t\t173 / 255,\n\t\t216 / 255,\n\t\t230 / 255\n\t],\n\t\"lightcoral\": [\n\t\t240 / 255,\n\t\t128 / 255,\n\t\t128 / 255\n\t],\n\t\"lightcyan\": [\n\t\t224 / 255,\n\t\t1,\n\t\t1\n\t],\n\t\"lightgoldenrodyellow\": [\n\t\t250 / 255,\n\t\t250 / 255,\n\t\t210 / 255\n\t],\n\t\"lightgray\": [\n\t\t211 / 255,\n\t\t211 / 255,\n\t\t211 / 255\n\t],\n\t\"lightgreen\": [\n\t\t144 / 255,\n\t\t238 / 255,\n\t\t144 / 255\n\t],\n\t\"lightgrey\": [\n\t\t211 / 255,\n\t\t211 / 255,\n\t\t211 / 255\n\t],\n\t\"lightpink\": [\n\t\t1,\n\t\t182 / 255,\n\t\t193 / 255\n\t],\n\t\"lightsalmon\": [\n\t\t1,\n\t\t160 / 255,\n\t\t122 / 255\n\t],\n\t\"lightseagreen\": [\n\t\t32 / 255,\n\t\t178 / 255,\n\t\t170 / 255\n\t],\n\t\"lightskyblue\": [\n\t\t135 / 255,\n\t\t206 / 255,\n\t\t250 / 255\n\t],\n\t\"lightslategray\": [\n\t\t119 / 255,\n\t\t136 / 255,\n\t\t153 / 255\n\t],\n\t\"lightslategrey\": [\n\t\t119 / 255,\n\t\t136 / 255,\n\t\t153 / 255\n\t],\n\t\"lightsteelblue\": [\n\t\t176 / 255,\n\t\t196 / 255,\n\t\t222 / 255\n\t],\n\t\"lightyellow\": [\n\t\t1,\n\t\t1,\n\t\t224 / 255\n\t],\n\t\"lime\": [\n\t\t0,\n\t\t1,\n\t\t0\n\t],\n\t\"limegreen\": [\n\t\t50 / 255,\n\t\t205 / 255,\n\t\t50 / 255\n\t],\n\t\"linen\": [\n\t\t250 / 255,\n\t\t240 / 255,\n\t\t230 / 255\n\t],\n\t\"magenta\": [\n\t\t1,\n\t\t0,\n\t\t1\n\t],\n\t\"maroon\": [\n\t\t128 / 255,\n\t\t0,\n\t\t0\n\t],\n\t\"mediumaquamarine\": [\n\t\t102 / 255,\n\t\t205 / 255,\n\t\t170 / 255\n\t],\n\t\"mediumblue\": [\n\t\t0,\n\t\t0,\n\t\t205 / 255\n\t],\n\t\"mediumorchid\": [\n\t\t186 / 255,\n\t\t85 / 255,\n\t\t211 / 255\n\t],\n\t\"mediumpurple\": [\n\t\t147 / 255,\n\t\t112 / 255,\n\t\t219 / 255\n\t],\n\t\"mediumseagreen\": [\n\t\t60 / 255,\n\t\t179 / 255,\n\t\t113 / 255\n\t],\n\t\"mediumslateblue\": [\n\t\t123 / 255,\n\t\t104 / 255,\n\t\t238 / 255\n\t],\n\t\"mediumspringgreen\": [\n\t\t0,\n\t\t250 / 255,\n\t\t154 / 255\n\t],\n\t\"mediumturquoise\": [\n\t\t72 / 255,\n\t\t209 / 255,\n\t\t204 / 255\n\t],\n\t\"mediumvioletred\": [\n\t\t199 / 255,\n\t\t21 / 255,\n\t\t133 / 255\n\t],\n\t\"midnightblue\": [\n\t\t25 / 255,\n\t\t25 / 255,\n\t\t112 / 255\n\t],\n\t\"mintcream\": [\n\t\t245 / 255,\n\t\t1,\n\t\t250 / 255\n\t],\n\t\"mistyrose\": [\n\t\t1,\n\t\t228 / 255,\n\t\t225 / 255\n\t],\n\t\"moccasin\": [\n\t\t1,\n\t\t228 / 255,\n\t\t181 / 255\n\t],\n\t\"navajowhite\": [\n\t\t1,\n\t\t222 / 255,\n\t\t173 / 255\n\t],\n\t\"navy\": [\n\t\t0,\n\t\t0,\n\t\t128 / 255\n\t],\n\t\"oldlace\": [\n\t\t253 / 255,\n\t\t245 / 255,\n\t\t230 / 255\n\t],\n\t\"olive\": [\n\t\t128 / 255,\n\t\t128 / 255,\n\t\t0\n\t],\n\t\"olivedrab\": [\n\t\t107 / 255,\n\t\t142 / 255,\n\t\t35 / 255\n\t],\n\t\"orange\": [\n\t\t1,\n\t\t165 / 255,\n\t\t0\n\t],\n\t\"orangered\": [\n\t\t1,\n\t\t69 / 255,\n\t\t0\n\t],\n\t\"orchid\": [\n\t\t218 / 255,\n\t\t112 / 255,\n\t\t214 / 255\n\t],\n\t\"palegoldenrod\": [\n\t\t238 / 255,\n\t\t232 / 255,\n\t\t170 / 255\n\t],\n\t\"palegreen\": [\n\t\t152 / 255,\n\t\t251 / 255,\n\t\t152 / 255\n\t],\n\t\"paleturquoise\": [\n\t\t175 / 255,\n\t\t238 / 255,\n\t\t238 / 255\n\t],\n\t\"palevioletred\": [\n\t\t219 / 255,\n\t\t112 / 255,\n\t\t147 / 255\n\t],\n\t\"papayawhip\": [\n\t\t1,\n\t\t239 / 255,\n\t\t213 / 255\n\t],\n\t\"peachpuff\": [\n\t\t1,\n\t\t218 / 255,\n\t\t185 / 255\n\t],\n\t\"peru\": [\n\t\t205 / 255,\n\t\t133 / 255,\n\t\t63 / 255\n\t],\n\t\"pink\": [\n\t\t1,\n\t\t192 / 255,\n\t\t203 / 255\n\t],\n\t\"plum\": [\n\t\t221 / 255,\n\t\t160 / 255,\n\t\t221 / 255\n\t],\n\t\"powderblue\": [\n\t\t176 / 255,\n\t\t224 / 255,\n\t\t230 / 255\n\t],\n\t\"purple\": [\n\t\t128 / 255,\n\t\t0,\n\t\t128 / 255\n\t],\n\t\"rebeccapurple\": [\n\t\t102 / 255,\n\t\t51 / 255,\n\t\t153 / 255\n\t],\n\t\"red\": [\n\t\t1,\n\t\t0,\n\t\t0\n\t],\n\t\"rosybrown\": [\n\t\t188 / 255,\n\t\t143 / 255,\n\t\t143 / 255\n\t],\n\t\"royalblue\": [\n\t\t65 / 255,\n\t\t105 / 255,\n\t\t225 / 255\n\t],\n\t\"saddlebrown\": [\n\t\t139 / 255,\n\t\t69 / 255,\n\t\t19 / 255\n\t],\n\t\"salmon\": [\n\t\t250 / 255,\n\t\t128 / 255,\n\t\t114 / 255\n\t],\n\t\"sandybrown\": [\n\t\t244 / 255,\n\t\t164 / 255,\n\t\t96 / 255\n\t],\n\t\"seagreen\": [\n\t\t46 / 255,\n\t\t139 / 255,\n\t\t87 / 255\n\t],\n\t\"seashell\": [\n\t\t1,\n\t\t245 / 255,\n\t\t238 / 255\n\t],\n\t\"sienna\": [\n\t\t160 / 255,\n\t\t82 / 255,\n\t\t45 / 255\n\t],\n\t\"silver\": [\n\t\t192 / 255,\n\t\t192 / 255,\n\t\t192 / 255\n\t],\n\t\"skyblue\": [\n\t\t135 / 255,\n\t\t206 / 255,\n\t\t235 / 255\n\t],\n\t\"slateblue\": [\n\t\t106 / 255,\n\t\t90 / 255,\n\t\t205 / 255\n\t],\n\t\"slategray\": [\n\t\t112 / 255,\n\t\t128 / 255,\n\t\t144 / 255\n\t],\n\t\"slategrey\": [\n\t\t112 / 255,\n\t\t128 / 255,\n\t\t144 / 255\n\t],\n\t\"snow\": [\n\t\t1,\n\t\t250 / 255,\n\t\t250 / 255\n\t],\n\t\"springgreen\": [\n\t\t0,\n\t\t1,\n\t\t127 / 255\n\t],\n\t\"steelblue\": [\n\t\t70 / 255,\n\t\t130 / 255,\n\t\t180 / 255\n\t],\n\t\"tan\": [\n\t\t210 / 255,\n\t\t180 / 255,\n\t\t140 / 255\n\t],\n\t\"teal\": [\n\t\t0,\n\t\t128 / 255,\n\t\t128 / 255\n\t],\n\t\"thistle\": [\n\t\t216 / 255,\n\t\t191 / 255,\n\t\t216 / 255\n\t],\n\t\"tomato\": [\n\t\t1,\n\t\t99 / 255,\n\t\t71 / 255\n\t],\n\t\"turquoise\": [\n\t\t64 / 255,\n\t\t224 / 255,\n\t\t208 / 255\n\t],\n\t\"violet\": [\n\t\t238 / 255,\n\t\t130 / 255,\n\t\t238 / 255\n\t],\n\t\"wheat\": [\n\t\t245 / 255,\n\t\t222 / 255,\n\t\t179 / 255\n\t],\n\t\"white\": [\n\t\t1,\n\t\t1,\n\t\t1\n\t],\n\t\"whitesmoke\": [\n\t\t245 / 255,\n\t\t245 / 255,\n\t\t245 / 255\n\t],\n\t\"yellow\": [\n\t\t1,\n\t\t1,\n\t\t0\n\t],\n\t\"yellowgreen\": [\n\t\t154 / 255,\n\t\t205 / 255,\n\t\t50 / 255\n\t]\n};\nvar coordGrammar = Array(3).fill(\"\u003cpercentage\u003e | \u003cnumber\u003e[0, 255]\");\nvar coordGrammarNumber = Array(3).fill(\"\u003cnumber\u003e[0, 255]\");\nvar sRGB = new RGBColorSpace({\n\tid: \"srgb\",\n\tname: \"sRGB\",\n\tbase: sRGBLinear,\n\tfromBase: (rgb) =\u003e {\n\t\treturn rgb.map((val) =\u003e {\n\t\t\tlet sign = val \u003c 0 ? -1 : 1;\n\t\t\tlet abs = val * sign;\n\t\t\tif (abs \u003e .0031308) return sign * (1.055 * abs ** (1 / 2.4) - .055);\n\t\t\treturn 12.92 * val;\n\t\t});\n\t},\n\ttoBase: (rgb) =\u003e {\n\t\treturn rgb.map((val) =\u003e {\n\t\t\tlet sign = val \u003c 0 ? -1 : 1;\n\t\t\tlet abs = val * sign;\n\t\t\tif (abs \u003c= .04045) return val / 12.92;\n\t\t\treturn sign * ((abs + .055) / 1.055) ** 2.4;\n\t\t});\n\t},\n\tformats: {\n\t\t\"rgb\": { coords: coordGrammar },\n\t\t\"rgb_number\": {\n\t\t\tname: \"rgb\",\n\t\t\tcommas: true,\n\t\t\tcoords: coordGrammarNumber,\n\t\t\tnoAlpha: true\n\t\t},\n\t\t\"color\": {},\n\t\t\"rgba\": {\n\t\t\tcoords: coordGrammar,\n\t\t\tcommas: true,\n\t\t\tlastAlpha: true\n\t\t},\n\t\t\"rgba_number\": {\n\t\t\tname: \"rgba\",\n\t\t\tcommas: true,\n\t\t\tcoords: coordGrammarNumber\n\t\t},\n\t\t\"hex\": {\n\t\t\ttype: \"custom\",\n\t\t\ttoGamut: true,\n\t\t\ttest: (str) =\u003e /^#([a-f0-9]{3,4}){1,2}$/i.test(str),\n\t\t\tparse(str) {\n\t\t\t\tif (str.length \u003c= 5) str = str.replace(/[a-f0-9]/gi, \"$\u0026$\u0026\");\n\t\t\t\tlet rgba = [];\n\t\t\t\tstr.replace(/[a-f0-9]{2}/gi, (component) =\u003e {\n\t\t\t\t\trgba.push(parseInt(component, 16) / 255);\n\t\t\t\t});\n\t\t\t\treturn {\n\t\t\t\t\tspaceId: \"srgb\",\n\t\t\t\t\tcoords: rgba.slice(0, 3),\n\t\t\t\t\talpha: rgba.slice(3)[0]\n\t\t\t\t};\n\t\t\t},\n\t\t\tserialize: (coords, alpha, { collapse = true } = {}) =\u003e {\n\t\t\t\tif (alpha \u003c 1) coords.push(alpha);\n\t\t\t\tcoords = coords.map((c$1) =\u003e Math.round(c$1 * 255));\n\t\t\t\tlet collapsible = collapse \u0026\u0026 coords.every((c$1) =\u003e c$1 % 17 === 0);\n\t\t\t\treturn \"#\" + coords.map((c$1) =\u003e {\n\t\t\t\t\tif (collapsible) return (c$1 / 17).toString(16);\n\t\t\t\t\treturn c$1.toString(16).padStart(2, \"0\");\n\t\t\t\t}).join(\"\");\n\t\t\t}\n\t\t},\n\t\t\"keyword\": {\n\t\t\ttype: \"custom\",\n\t\t\ttest: (str) =\u003e /^[a-z]+$/i.test(str),\n\t\t\tparse(str) {\n\t\t\t\tstr = str.toLowerCase();\n\t\t\t\tlet ret = {\n\t\t\t\t\tspaceId: \"srgb\",\n\t\t\t\t\tcoords: null,\n\t\t\t\t\talpha: 1\n\t\t\t\t};\n\t\t\t\tif (str === \"transparent\") {\n\t\t\t\t\tret.coords = KEYWORDS.black;\n\t\t\t\t\tret.alpha = 0;\n\t\t\t\t} else ret.coords = KEYWORDS[str];\n\t\t\t\tif (ret.coords) return ret;\n\t\t\t}\n\t\t}\n\t}\n});\nvar P3 = new RGBColorSpace({\n\tid: \"p3\",\n\tcssId: \"display-p3\",\n\tname: \"P3\",\n\tbase: P3Linear,\n\tfromBase: sRGB.fromBase,\n\ttoBase: sRGB.toBase\n});\ndefaults.display_space = sRGB;\nvar supportsNone;\nif (typeof CSS !== \"undefined\" \u0026\u0026 CSS.supports) for (let space of [\n\tlab,\n\tREC2020,\n\tP3\n]) {\n\tlet str = serialize({\n\t\tspace,\n\t\tcoords: space.getMinCoords(),\n\t\talpha: 1\n\t});\n\tif (CSS.supports(\"color\", str)) {\n\t\tdefaults.display_space = space;\n\t\tbreak;\n\t}\n}\nfunction display(color, { space = defaults.display_space,...options } = {}) {\n\tlet ret = serialize(color, options);\n\tif (typeof CSS === \"undefined\" || CSS.supports(\"color\", ret) || !defaults.display_space) {\n\t\tret = new String(ret);\n\t\tret.color = color;\n\t} else {\n\t\tlet fallbackColor = color;\n\t\tif (color.coords.some(isNone) || isNone(color.alpha)) {\n\t\t\tif (!(supportsNone ??= CSS.supports(\"color\", \"hsl(none 50% 50%)\"))) {\n\t\t\t\tfallbackColor = clone(color);\n\t\t\t\tfallbackColor.coords = fallbackColor.coords.map(skipNone);\n\t\t\t\tfallbackColor.alpha = skipNone(fallbackColor.alpha);\n\t\t\t\tret = serialize(fallbackColor, options);\n\t\t\t\tif (CSS.supports(\"color\", ret)) {\n\t\t\t\t\tret = new String(ret);\n\t\t\t\t\tret.color = fallbackColor;\n\t\t\t\t\treturn ret;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfallbackColor = to(fallbackColor, space);\n\t\tret = new String(serialize(fallbackColor, options));\n\t\tret.color = fallbackColor;\n\t}\n\treturn ret;\n}\nfunction equals(color1, color2) {\n\tcolor1 = getColor(color1);\n\tcolor2 = getColor(color2);\n\treturn color1.space === color2.space \u0026\u0026 color1.alpha === color2.alpha \u0026\u0026 color1.coords.every((c$1, i) =\u003e c$1 === color2.coords[i]);\n}\nfunction getLuminance(color) {\n\treturn get(color, [xyz_d65, \"y\"]);\n}\nfunction setLuminance(color, value) {\n\tset(color, [xyz_d65, \"y\"], value);\n}\nfunction register$2(Color$1) {\n\tObject.defineProperty(Color$1.prototype, \"luminance\", {\n\t\tget() {\n\t\t\treturn getLuminance(this);\n\t\t},\n\t\tset(value) {\n\t\t\tsetLuminance(this, value);\n\t\t}\n\t});\n}\nvar luminance = /* @__PURE__ */ Object.freeze({\n\t__proto__: null,\n\tgetLuminance,\n\tregister: register$2,\n\tsetLuminance\n});\nfunction contrastWCAG21(color1, color2) {\n\tcolor1 = getColor(color1);\n\tcolor2 = getColor(color2);\n\tlet Y1 = Math.max(getLuminance(color1), 0);\n\tlet Y2 = Math.max(getLuminance(color2), 0);\n\tif (Y2 \u003e Y1) [Y1, Y2] = [Y2, Y1];\n\treturn (Y1 + .05) / (Y2 + .05);\n}\nvar normBG = .56;\nvar normTXT = .57;\nvar revTXT = .62;\nvar revBG = .65;\nvar blkThrs = .022;\nvar blkClmp = 1.414;\nvar loClip = .1;\nvar deltaYmin = 5e-4;\nvar scaleBoW = 1.14;\nvar loBoWoffset = .027;\nvar scaleWoB = 1.14;\nfunction fclamp(Y) {\n\tif (Y \u003e= blkThrs) return Y;\n\treturn Y + (blkThrs - Y) ** blkClmp;\n}\nfunction linearize(val) {\n\tlet sign = val \u003c 0 ? -1 : 1;\n\tlet abs = Math.abs(val);\n\treturn sign * Math.pow(abs, 2.4);\n}\nfunction contrastAPCA(background, foreground) {\n\tforeground = getColor(foreground);\n\tbackground = getColor(background);\n\tlet S;\n\tlet C;\n\tlet Sapc;\n\tlet R, G, B;\n\tforeground = to(foreground, \"srgb\");\n\t[R, G, B] = foreground.coords;\n\tlet lumTxt = linearize(R) * .2126729 + linearize(G) * .7151522 + linearize(B) * .072175;\n\tbackground = to(background, \"srgb\");\n\t[R, G, B] = background.coords;\n\tlet lumBg = linearize(R) * .2126729 + linearize(G) * .7151522 + linearize(B) * .072175;\n\tlet Ytxt = fclamp(lumTxt);\n\tlet Ybg = fclamp(lumBg);\n\tlet BoW = Ybg \u003e Ytxt;\n\tif (Math.abs(Ybg - Ytxt) \u003c deltaYmin) C = 0;\n\telse if (BoW) {\n\t\tS = Ybg ** normBG - Ytxt ** normTXT;\n\t\tC = S * scaleBoW;\n\t} else {\n\t\tS = Ybg ** revBG - Ytxt ** revTXT;\n\t\tC = S * scaleWoB;\n\t}\n\tif (Math.abs(C) \u003c loClip) Sapc = 0;\n\telse if (C \u003e 0) Sapc = C - loBoWoffset;\n\telse Sapc = C + loBoWoffset;\n\treturn Sapc * 100;\n}\nfunction contrastMichelson(color1, color2) {\n\tcolor1 = getColor(color1);\n\tcolor2 = getColor(color2);\n\tlet Y1 = Math.max(getLuminance(color1), 0);\n\tlet Y2 = Math.max(getLuminance(color2), 0);\n\tif (Y2 \u003e Y1) [Y1, Y2] = [Y2, Y1];\n\tlet denom = Y1 + Y2;\n\treturn denom === 0 ? 0 : (Y1 - Y2) / denom;\n}\nvar max = 5e4;\nfunction contrastWeber(color1, color2) {\n\tcolor1 = getColor(color1);\n\tcolor2 = getColor(color2);\n\tlet Y1 = Math.max(getLuminance(color1), 0);\n\tlet Y2 = Math.max(getLuminance(color2), 0);\n\tif (Y2 \u003e Y1) [Y1, Y2] = [Y2, Y1];\n\treturn Y2 === 0 ? max : (Y1 - Y2) / Y2;\n}\nfunction contrastLstar(color1, color2) {\n\tcolor1 = getColor(color1);\n\tcolor2 = getColor(color2);\n\tlet L1 = get(color1, [lab, \"l\"]);\n\tlet L2 = get(color2, [lab, \"l\"]);\n\treturn Math.abs(L1 - L2);\n}\nvar ε$3 = 216 / 24389;\nvar ε3 = 24 / 116;\nvar κ$2 = 24389 / 27;\nvar white$1 = WHITES.D65;\nvar lab_d65 = new ColorSpace({\n\tid: \"lab-d65\",\n\tname: \"Lab D65\",\n\tcoords: {\n\t\tl: {\n\t\t\trefRange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t},\n\t\ta: { refRange: [-125, 125] },\n\t\tb: { refRange: [-125, 125] }\n\t},\n\twhite: white$1,\n\tbase: xyz_d65,\n\tfromBase(XYZ) {\n\t\tlet f = XYZ.map((value, i) =\u003e value / white$1[i]).map((value) =\u003e value \u003e ε$3 ? Math.cbrt(value) : (κ$2 * value + 16) / 116);\n\t\treturn [\n\t\t\t116 * f[1] - 16,\n\t\t\t500 * (f[0] - f[1]),\n\t\t\t200 * (f[1] - f[2])\n\t\t];\n\t},\n\ttoBase(Lab) {\n\t\tlet f = [];\n\t\tf[1] = (Lab[0] + 16) / 116;\n\t\tf[0] = Lab[1] / 500 + f[1];\n\t\tf[2] = f[1] - Lab[2] / 200;\n\t\treturn [\n\t\t\tf[0] \u003e ε3 ? Math.pow(f[0], 3) : (116 * f[0] - 16) / κ$2,\n\t\t\tLab[0] \u003e 8 ? Math.pow((Lab[0] + 16) / 116, 3) : Lab[0] / κ$2,\n\t\t\tf[2] \u003e ε3 ? Math.pow(f[2], 3) : (116 * f[2] - 16) / κ$2\n\t\t].map((value, i) =\u003e value * white$1[i]);\n\t},\n\tformats: { \"lab-d65\": { coords: [\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\"\n\t] } }\n});\nvar phi = Math.pow(5, .5) * .5 + .5;\nfunction contrastDeltaPhi(color1, color2) {\n\tcolor1 = getColor(color1);\n\tcolor2 = getColor(color2);\n\tlet Lstr1 = get(color1, [lab_d65, \"l\"]);\n\tlet Lstr2 = get(color2, [lab_d65, \"l\"]);\n\tlet deltaPhiStar = Math.abs(Math.pow(Lstr1, phi) - Math.pow(Lstr2, phi));\n\tlet contrast$1 = Math.pow(deltaPhiStar, 1 / phi) * Math.SQRT2 - 40;\n\treturn contrast$1 \u003c 7.5 ? 0 : contrast$1;\n}\nvar contrastMethods = /* @__PURE__ */ Object.freeze({\n\t__proto__: null,\n\tcontrastAPCA,\n\tcontrastDeltaPhi,\n\tcontrastLstar,\n\tcontrastMichelson,\n\tcontrastWCAG21,\n\tcontrastWeber\n});\nfunction contrast(background, foreground, o = {}) {\n\tif (isString(o)) o = { algorithm: o };\n\tlet { algorithm,...rest } = o;\n\tif (!algorithm) {\n\t\tlet algorithms = Object.keys(contrastMethods).map((a$1) =\u003e a$1.replace(/^contrast/, \"\")).join(\", \");\n\t\tthrow new TypeError(`contrast() function needs a contrast algorithm. Please specify one of: ${algorithms}`);\n\t}\n\tbackground = getColor(background);\n\tforeground = getColor(foreground);\n\tfor (let a$1 in contrastMethods) if (\"contrast\" + algorithm.toLowerCase() === a$1.toLowerCase()) return contrastMethods[a$1](background, foreground, rest);\n\tthrow new TypeError(`Unknown contrast algorithm: ${algorithm}`);\n}\nfunction uv(color) {\n\tlet [X, Y, Z] = getAll(color, xyz_d65);\n\tlet denom = X + 15 * Y + 3 * Z;\n\treturn [4 * X / denom, 9 * Y / denom];\n}\nfunction xy(color) {\n\tlet [X, Y, Z] = getAll(color, xyz_d65);\n\tlet sum = X + Y + Z;\n\treturn [X / sum, Y / sum];\n}\nfunction register$1(Color$1) {\n\tObject.defineProperty(Color$1.prototype, \"uv\", { get() {\n\t\treturn uv(this);\n\t} });\n\tObject.defineProperty(Color$1.prototype, \"xy\", { get() {\n\t\treturn xy(this);\n\t} });\n}\nvar chromaticity = /* @__PURE__ */ Object.freeze({\n\t__proto__: null,\n\tregister: register$1,\n\tuv,\n\txy\n});\nfunction deltaE(c1$3, c2$3, o = {}) {\n\tif (isString(o)) o = { method: o };\n\tlet { method = defaults.deltaE,...rest } = o;\n\tfor (let m$1 in deltaEMethods) if (\"deltae\" + method.toLowerCase() === m$1.toLowerCase()) return deltaEMethods[m$1](c1$3, c2$3, rest);\n\tthrow new TypeError(`Unknown deltaE method: ${method}`);\n}\nfunction lighten(color, amount = .25) {\n\treturn set(color, [ColorSpace.get(\"oklch\", \"lch\"), \"l\"], (l) =\u003e l * (1 + amount));\n}\nfunction darken(color, amount = .25) {\n\treturn set(color, [ColorSpace.get(\"oklch\", \"lch\"), \"l\"], (l) =\u003e l * (1 - amount));\n}\nvar variations = /* @__PURE__ */ Object.freeze({\n\t__proto__: null,\n\tdarken,\n\tlighten\n});\nfunction mix(c1$3, c2$3, p$1 = .5, o = {}) {\n\t[c1$3, c2$3] = [getColor(c1$3), getColor(c2$3)];\n\tif (type(p$1) === \"object\") [p$1, o] = [.5, p$1];\n\treturn range(c1$3, c2$3, o)(p$1);\n}\nfunction steps(c1$3, c2$3, options = {}) {\n\tlet colorRange;\n\tif (isRange(c1$3)) {\n\t\t[colorRange, options] = [c1$3, c2$3];\n\t\t[c1$3, c2$3] = colorRange.rangeArgs.colors;\n\t}\n\tlet { maxDeltaE, deltaEMethod, steps: steps$1 = 2, maxSteps = 1e3,...rangeOptions } = options;\n\tif (!colorRange) {\n\t\t[c1$3, c2$3] = [getColor(c1$3), getColor(c2$3)];\n\t\tcolorRange = range(c1$3, c2$3, rangeOptions);\n\t}\n\tlet totalDelta = deltaE(c1$3, c2$3);\n\tlet actualSteps = maxDeltaE \u003e 0 ? Math.max(steps$1, Math.ceil(totalDelta / maxDeltaE) + 1) : steps$1;\n\tlet ret = [];\n\tif (maxSteps !== void 0) actualSteps = Math.min(actualSteps, maxSteps);\n\tif (actualSteps === 1) ret = [{\n\t\tp: .5,\n\t\tcolor: colorRange(.5)\n\t}];\n\telse {\n\t\tlet step = 1 / (actualSteps - 1);\n\t\tret = Array.from({ length: actualSteps }, (_, i) =\u003e {\n\t\t\tlet p$1 = i * step;\n\t\t\treturn {\n\t\t\t\tp: p$1,\n\t\t\t\tcolor: colorRange(p$1)\n\t\t\t};\n\t\t});\n\t}\n\tif (maxDeltaE \u003e 0) {\n\t\tlet maxDelta = ret.reduce((acc, cur, i) =\u003e {\n\t\t\tif (i === 0) return 0;\n\t\t\tlet ΔΕ = deltaE(cur.color, ret[i - 1].color, deltaEMethod);\n\t\t\treturn Math.max(acc, ΔΕ);\n\t\t}, 0);\n\t\twhile (maxDelta \u003e maxDeltaE) {\n\t\t\tmaxDelta = 0;\n\t\t\tfor (let i = 1; i \u003c ret.length \u0026\u0026 ret.length \u003c maxSteps; i++) {\n\t\t\t\tlet prev = ret[i - 1];\n\t\t\t\tlet cur = ret[i];\n\t\t\t\tlet p$1 = (cur.p + prev.p) / 2;\n\t\t\t\tlet color = colorRange(p$1);\n\t\t\t\tmaxDelta = Math.max(maxDelta, deltaE(color, prev.color), deltaE(color, cur.color));\n\t\t\t\tret.splice(i, 0, {\n\t\t\t\t\tp: p$1,\n\t\t\t\t\tcolor: colorRange(p$1)\n\t\t\t\t});\n\t\t\t\ti++;\n\t\t\t}\n\t\t}\n\t}\n\tret = ret.map((a$1) =\u003e a$1.color);\n\treturn ret;\n}\nfunction range(color1, color2, options = {}) {\n\tif (isRange(color1)) {\n\t\tlet [r, options$1] = [color1, color2];\n\t\treturn range(...r.rangeArgs.colors, {\n\t\t\t...r.rangeArgs.options,\n\t\t\t...options$1\n\t\t});\n\t}\n\tlet { space, outputSpace, progression, premultiplied } = options;\n\tcolor1 = getColor(color1);\n\tcolor2 = getColor(color2);\n\tcolor1 = clone(color1);\n\tcolor2 = clone(color2);\n\tlet rangeArgs = {\n\t\tcolors: [color1, color2],\n\t\toptions\n\t};\n\tif (space) space = ColorSpace.get(space);\n\telse space = ColorSpace.registry[defaults.interpolationSpace] || color1.space;\n\toutputSpace = outputSpace ? ColorSpace.get(outputSpace) : space;\n\tcolor1 = to(color1, space);\n\tcolor2 = to(color2, space);\n\tcolor1 = toGamut(color1);\n\tcolor2 = toGamut(color2);\n\tif (space.coords.h \u0026\u0026 space.coords.h.type === \"angle\") {\n\t\tlet arc = options.hue = options.hue || \"shorter\";\n\t\tlet hue = [space, \"h\"];\n\t\tlet [θ1, θ2] = [get(color1, hue), get(color2, hue)];\n\t\tif (isNaN(θ1) \u0026\u0026 !isNaN(θ2)) θ1 = θ2;\n\t\telse if (isNaN(θ2) \u0026\u0026 !isNaN(θ1)) θ2 = θ1;\n\t\t[θ1, θ2] = adjust(arc, [θ1, θ2]);\n\t\tset(color1, hue, θ1);\n\t\tset(color2, hue, θ2);\n\t}\n\tif (premultiplied) {\n\t\tcolor1.coords = color1.coords.map((c$1) =\u003e c$1 * color1.alpha);\n\t\tcolor2.coords = color2.coords.map((c$1) =\u003e c$1 * color2.alpha);\n\t}\n\treturn Object.assign((p$1) =\u003e {\n\t\tp$1 = progression ? progression(p$1) : p$1;\n\t\tlet coords = color1.coords.map((start, i) =\u003e {\n\t\t\tlet end = color2.coords[i];\n\t\t\treturn interpolate(start, end, p$1);\n\t\t});\n\t\tlet alpha = interpolate(color1.alpha, color2.alpha, p$1);\n\t\tlet ret = {\n\t\t\tspace,\n\t\t\tcoords,\n\t\t\talpha\n\t\t};\n\t\tif (premultiplied) ret.coords = ret.coords.map((c$1) =\u003e c$1 / alpha);\n\t\tif (outputSpace !== space) ret = to(ret, outputSpace);\n\t\treturn ret;\n\t}, { rangeArgs });\n}\nfunction isRange(val) {\n\treturn type(val) === \"function\" \u0026\u0026 !!val.rangeArgs;\n}\ndefaults.interpolationSpace = \"lab\";\nfunction register(Color$1) {\n\tColor$1.defineFunction(\"mix\", mix, { returns: \"color\" });\n\tColor$1.defineFunction(\"range\", range, { returns: \"function\u003ccolor\u003e\" });\n\tColor$1.defineFunction(\"steps\", steps, { returns: \"array\u003ccolor\u003e\" });\n}\nvar interpolation = /* @__PURE__ */ Object.freeze({\n\t__proto__: null,\n\tisRange,\n\tmix,\n\trange,\n\tregister,\n\tsteps\n});\nvar HSL = new ColorSpace({\n\tid: \"hsl\",\n\tname: \"HSL\",\n\tcoords: {\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t},\n\t\ts: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Saturation\"\n\t\t},\n\t\tl: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t}\n\t},\n\tbase: sRGB,\n\tfromBase: (rgb) =\u003e {\n\t\tlet max$1 = Math.max(...rgb);\n\t\tlet min = Math.min(...rgb);\n\t\tlet [r, g$1, b$2] = rgb;\n\t\tlet [h, s, l] = [\n\t\t\tNaN,\n\t\t\t0,\n\t\t\t(min + max$1) / 2\n\t\t];\n\t\tlet d$1 = max$1 - min;\n\t\tif (d$1 !== 0) {\n\t\t\ts = l === 0 || l === 1 ? 0 : (max$1 - l) / Math.min(l, 1 - l);\n\t\t\tswitch (max$1) {\n\t\t\t\tcase r:\n\t\t\t\t\th = (g$1 - b$2) / d$1 + (g$1 \u003c b$2 ? 6 : 0);\n\t\t\t\t\tbreak;\n\t\t\t\tcase g$1:\n\t\t\t\t\th = (b$2 - r) / d$1 + 2;\n\t\t\t\t\tbreak;\n\t\t\t\tcase b$2: h = (r - g$1) / d$1 + 4;\n\t\t\t}\n\t\t\th = h * 60;\n\t\t}\n\t\tif (s \u003c 0) {\n\t\t\th += 180;\n\t\t\ts = Math.abs(s);\n\t\t}\n\t\tif (h \u003e= 360) h -= 360;\n\t\treturn [\n\t\t\th,\n\t\t\ts * 100,\n\t\t\tl * 100\n\t\t];\n\t},\n\ttoBase: (hsl) =\u003e {\n\t\tlet [h, s, l] = hsl;\n\t\th = h % 360;\n\t\tif (h \u003c 0) h += 360;\n\t\ts /= 100;\n\t\tl /= 100;\n\t\tfunction f(n$2) {\n\t\t\tlet k = (n$2 + h / 30) % 12;\n\t\t\tlet a$1 = s * Math.min(l, 1 - l);\n\t\t\treturn l - a$1 * Math.max(-1, Math.min(k - 3, 9 - k, 1));\n\t\t}\n\t\treturn [\n\t\t\tf(0),\n\t\t\tf(8),\n\t\t\tf(4)\n\t\t];\n\t},\n\tformats: {\n\t\t\"hsl\": { coords: [\n\t\t\t\"\u003cnumber\u003e | \u003cangle\u003e\",\n\t\t\t\"\u003cpercentage\u003e\",\n\t\t\t\"\u003cpercentage\u003e\"\n\t\t] },\n\t\t\"hsla\": {\n\t\t\tcoords: [\n\t\t\t\t\"\u003cnumber\u003e | \u003cangle\u003e\",\n\t\t\t\t\"\u003cpercentage\u003e\",\n\t\t\t\t\"\u003cpercentage\u003e\"\n\t\t\t],\n\t\t\tcommas: true,\n\t\t\tlastAlpha: true\n\t\t}\n\t}\n});\nvar HSV = new ColorSpace({\n\tid: \"hsv\",\n\tname: \"HSV\",\n\tcoords: {\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t},\n\t\ts: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Saturation\"\n\t\t},\n\t\tv: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Value\"\n\t\t}\n\t},\n\tbase: HSL,\n\tfromBase(hsl) {\n\t\tlet [h, s, l] = hsl;\n\t\ts /= 100;\n\t\tl /= 100;\n\t\tlet v = l + s * Math.min(l, 1 - l);\n\t\treturn [\n\t\t\th,\n\t\t\tv === 0 ? 0 : 200 * (1 - l / v),\n\t\t\t100 * v\n\t\t];\n\t},\n\ttoBase(hsv) {\n\t\tlet [h, s, v] = hsv;\n\t\ts /= 100;\n\t\tv /= 100;\n\t\tlet l = v * (1 - s / 2);\n\t\treturn [\n\t\t\th,\n\t\t\tl === 0 || l === 1 ? 0 : (v - l) / Math.min(l, 1 - l) * 100,\n\t\t\tl * 100\n\t\t];\n\t},\n\tformats: { color: {\n\t\tid: \"--hsv\",\n\t\tcoords: [\n\t\t\t\"\u003cnumber\u003e | \u003cangle\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\"\n\t\t]\n\t} }\n});\nvar hwb = new ColorSpace({\n\tid: \"hwb\",\n\tname: \"HWB\",\n\tcoords: {\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t},\n\t\tw: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Whiteness\"\n\t\t},\n\t\tb: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Blackness\"\n\t\t}\n\t},\n\tbase: HSV,\n\tfromBase(hsv) {\n\t\tlet [h, s, v] = hsv;\n\t\treturn [\n\t\t\th,\n\t\t\tv * (100 - s) / 100,\n\t\t\t100 - v\n\t\t];\n\t},\n\ttoBase(hwb$1) {\n\t\tlet [h, w, b$2] = hwb$1;\n\t\tw /= 100;\n\t\tb$2 /= 100;\n\t\tlet sum = w + b$2;\n\t\tif (sum \u003e= 1) return [\n\t\t\th,\n\t\t\t0,\n\t\t\tw / sum * 100\n\t\t];\n\t\tlet v = 1 - b$2;\n\t\treturn [\n\t\t\th,\n\t\t\t(v === 0 ? 0 : 1 - w / v) * 100,\n\t\t\tv * 100\n\t\t];\n\t},\n\tformats: { \"hwb\": { coords: [\n\t\t\"\u003cnumber\u003e | \u003cangle\u003e\",\n\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\",\n\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\"\n\t] } }\n});\nvar A98Linear = new RGBColorSpace({\n\tid: \"a98rgb-linear\",\n\tcssId: \"--a98-rgb-linear\",\n\tname: \"Linear Adobe® 98 RGB compatible\",\n\twhite: \"D65\",\n\ttoXYZ_M: [\n\t\t[\n\t\t\t.5766690429101305,\n\t\t\t.1855582379065463,\n\t\t\t.1882286462349947\n\t\t],\n\t\t[\n\t\t\t.29734497525053605,\n\t\t\t.6273635662554661,\n\t\t\t.07529145849399788\n\t\t],\n\t\t[\n\t\t\t.02703136138641234,\n\t\t\t.07068885253582723,\n\t\t\t.9913375368376388\n\t\t]\n\t],\n\tfromXYZ_M: [\n\t\t[\n\t\t\t2.0415879038107465,\n\t\t\t-.5650069742788596,\n\t\t\t-.34473135077832956\n\t\t],\n\t\t[\n\t\t\t-.9692436362808795,\n\t\t\t1.8759675015077202,\n\t\t\t.04155505740717557\n\t\t],\n\t\t[\n\t\t\t.013444280632031142,\n\t\t\t-.11836239223101838,\n\t\t\t1.0151749943912054\n\t\t]\n\t]\n});\nvar a98rgb = new RGBColorSpace({\n\tid: \"a98rgb\",\n\tcssId: \"a98-rgb\",\n\tname: \"Adobe® 98 RGB compatible\",\n\tbase: A98Linear,\n\ttoBase: (RGB) =\u003e RGB.map((val) =\u003e Math.pow(Math.abs(val), 563 / 256) * Math.sign(val)),\n\tfromBase: (RGB) =\u003e RGB.map((val) =\u003e Math.pow(Math.abs(val), 256 / 563) * Math.sign(val))\n});\nvar ProPhotoLinear = new RGBColorSpace({\n\tid: \"prophoto-linear\",\n\tcssId: \"--prophoto-rgb-linear\",\n\tname: \"Linear ProPhoto\",\n\twhite: \"D50\",\n\tbase: XYZ_D50,\n\ttoXYZ_M: [\n\t\t[\n\t\t\t.7977666449006423,\n\t\t\t.13518129740053308,\n\t\t\t.0313477341283922\n\t\t],\n\t\t[\n\t\t\t.2880748288194013,\n\t\t\t.711835234241873,\n\t\t\t8993693872564e-17\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\t0,\n\t\t\t.8251046025104602\n\t\t]\n\t],\n\tfromXYZ_M: [\n\t\t[\n\t\t\t1.3457868816471583,\n\t\t\t-.25557208737979464,\n\t\t\t-.05110186497554526\n\t\t],\n\t\t[\n\t\t\t-.5446307051249019,\n\t\t\t1.5082477428451468,\n\t\t\t.02052744743642139\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\t0,\n\t\t\t1.2119675456389452\n\t\t]\n\t]\n});\nvar Et = 1 / 512;\nvar Et2 = 16 / 512;\nvar prophoto = new RGBColorSpace({\n\tid: \"prophoto\",\n\tcssId: \"prophoto-rgb\",\n\tname: \"ProPhoto\",\n\tbase: ProPhotoLinear,\n\ttoBase(RGB) {\n\t\treturn RGB.map((v) =\u003e v \u003c Et2 ? v / 16 : v ** 1.8);\n\t},\n\tfromBase(RGB) {\n\t\treturn RGB.map((v) =\u003e v \u003e= Et ? v ** (1 / 1.8) : 16 * v);\n\t}\n});\nvar oklch = new ColorSpace({\n\tid: \"oklch\",\n\tname: \"Oklch\",\n\tcoords: {\n\t\tl: {\n\t\t\trefRange: [0, 1],\n\t\t\tname: \"Lightness\"\n\t\t},\n\t\tc: {\n\t\t\trefRange: [0, .4],\n\t\t\tname: \"Chroma\"\n\t\t},\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t}\n\t},\n\twhite: \"D65\",\n\tbase: OKLab,\n\tfromBase(oklab) {\n\t\tlet [L, a$1, b$2] = oklab;\n\t\tlet h;\n\t\tconst ε$8 = 2e-4;\n\t\tif (Math.abs(a$1) \u003c ε$8 \u0026\u0026 Math.abs(b$2) \u003c ε$8) h = NaN;\n\t\telse h = Math.atan2(b$2, a$1) * 180 / Math.PI;\n\t\treturn [\n\t\t\tL,\n\t\t\tMath.sqrt(a$1 ** 2 + b$2 ** 2),\n\t\t\tconstrain(h)\n\t\t];\n\t},\n\ttoBase(oklch$1) {\n\t\tlet [L, C, h] = oklch$1;\n\t\tlet a$1, b$2;\n\t\tif (isNaN(h)) {\n\t\t\ta$1 = 0;\n\t\t\tb$2 = 0;\n\t\t} else {\n\t\t\ta$1 = C * Math.cos(h * Math.PI / 180);\n\t\t\tb$2 = C * Math.sin(h * Math.PI / 180);\n\t\t}\n\t\treturn [\n\t\t\tL,\n\t\t\ta$1,\n\t\t\tb$2\n\t\t];\n\t},\n\tformats: { \"oklch\": { coords: [\n\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\",\n\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[0,1]\",\n\t\t\"\u003cnumber\u003e | \u003cangle\u003e\"\n\t] } }\n});\nvar white = WHITES.D65;\nvar ε$2 = 216 / 24389;\nvar κ$1 = 24389 / 27;\nvar [U_PRIME_WHITE, V_PRIME_WHITE] = uv({\n\tspace: xyz_d65,\n\tcoords: white\n});\nvar Luv = new ColorSpace({\n\tid: \"luv\",\n\tname: \"Luv\",\n\tcoords: {\n\t\tl: {\n\t\t\trefRange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t},\n\t\tu: { refRange: [-215, 215] },\n\t\tv: { refRange: [-215, 215] }\n\t},\n\twhite,\n\tbase: xyz_d65,\n\tfromBase(XYZ) {\n\t\tlet xyz = [\n\t\t\tskipNone(XYZ[0]),\n\t\t\tskipNone(XYZ[1]),\n\t\t\tskipNone(XYZ[2])\n\t\t];\n\t\tlet y = xyz[1];\n\t\tlet [up, vp] = uv({\n\t\t\tspace: xyz_d65,\n\t\t\tcoords: xyz\n\t\t});\n\t\tif (!Number.isFinite(up) || !Number.isFinite(vp)) return [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t];\n\t\tlet L = y \u003c= ε$2 ? κ$1 * y : 116 * Math.cbrt(y) - 16;\n\t\treturn [\n\t\t\tL,\n\t\t\t13 * L * (up - U_PRIME_WHITE),\n\t\t\t13 * L * (vp - V_PRIME_WHITE)\n\t\t];\n\t},\n\ttoBase(Luv$1) {\n\t\tlet [L, u, v] = Luv$1;\n\t\tif (L === 0 || isNone(L)) return [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t];\n\t\tu = skipNone(u);\n\t\tv = skipNone(v);\n\t\tlet up = u / (13 * L) + U_PRIME_WHITE;\n\t\tlet vp = v / (13 * L) + V_PRIME_WHITE;\n\t\tlet y = L \u003c= 8 ? L / κ$1 : Math.pow((L + 16) / 116, 3);\n\t\treturn [\n\t\t\ty * (9 * up / (4 * vp)),\n\t\t\ty,\n\t\t\ty * ((12 - 3 * up - 20 * vp) / (4 * vp))\n\t\t];\n\t},\n\tformats: { color: {\n\t\tid: \"--luv\",\n\t\tcoords: [\n\t\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\",\n\t\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e[-1,1]\"\n\t\t]\n\t} }\n});\nvar LCHuv = new ColorSpace({\n\tid: \"lchuv\",\n\tname: \"LChuv\",\n\tcoords: {\n\t\tl: {\n\t\t\trefRange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t},\n\t\tc: {\n\t\t\trefRange: [0, 220],\n\t\t\tname: \"Chroma\"\n\t\t},\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t}\n\t},\n\tbase: Luv,\n\tfromBase(Luv$1) {\n\t\tlet [L, u, v] = Luv$1;\n\t\tlet hue;\n\t\tconst ε$8 = .02;\n\t\tif (Math.abs(u) \u003c ε$8 \u0026\u0026 Math.abs(v) \u003c ε$8) hue = NaN;\n\t\telse hue = Math.atan2(v, u) * 180 / Math.PI;\n\t\treturn [\n\t\t\tL,\n\t\t\tMath.sqrt(u ** 2 + v ** 2),\n\t\t\tconstrain(hue)\n\t\t];\n\t},\n\ttoBase(LCH) {\n\t\tlet [Lightness, Chroma, Hue] = LCH;\n\t\tif (Chroma \u003c 0) Chroma = 0;\n\t\tif (isNaN(Hue)) Hue = 0;\n\t\treturn [\n\t\t\tLightness,\n\t\t\tChroma * Math.cos(Hue * Math.PI / 180),\n\t\t\tChroma * Math.sin(Hue * Math.PI / 180)\n\t\t];\n\t},\n\tformats: { color: {\n\t\tid: \"--lchuv\",\n\t\tcoords: [\n\t\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\t\"\u003cnumber\u003e | \u003cpercentage\u003e\",\n\t\t\t\"\u003cnumber\u003e | \u003cangle\u003e\"\n\t\t]\n\t} }\n});\nvar ε$1 = 216 / 24389;\nvar κ = 24389 / 27;\nvar m_r0 = fromXYZ_M$3[0][0];\nvar m_r1 = fromXYZ_M$3[0][1];\nvar m_r2 = fromXYZ_M$3[0][2];\nvar m_g0 = fromXYZ_M$3[1][0];\nvar m_g1 = fromXYZ_M$3[1][1];\nvar m_g2 = fromXYZ_M$3[1][2];\nvar m_b0 = fromXYZ_M$3[2][0];\nvar m_b1 = fromXYZ_M$3[2][1];\nvar m_b2 = fromXYZ_M$3[2][2];\nfunction distanceFromOriginAngle(slope, intercept, angle) {\n\tconst d$1 = intercept / (Math.sin(angle) - slope * Math.cos(angle));\n\treturn d$1 \u003c 0 ? Infinity : d$1;\n}\nfunction calculateBoundingLines(l) {\n\tconst sub1 = Math.pow(l + 16, 3) / 1560896;\n\tconst sub2 = sub1 \u003e ε$1 ? sub1 : l / κ;\n\tconst s1r = sub2 * (284517 * m_r0 - 94839 * m_r2);\n\tconst s2r = sub2 * (838422 * m_r2 + 769860 * m_r1 + 731718 * m_r0);\n\tconst s3r = sub2 * (632260 * m_r2 - 126452 * m_r1);\n\tconst s1g = sub2 * (284517 * m_g0 - 94839 * m_g2);\n\tconst s2g = sub2 * (838422 * m_g2 + 769860 * m_g1 + 731718 * m_g0);\n\tconst s3g = sub2 * (632260 * m_g2 - 126452 * m_g1);\n\tconst s1b = sub2 * (284517 * m_b0 - 94839 * m_b2);\n\tconst s2b = sub2 * (838422 * m_b2 + 769860 * m_b1 + 731718 * m_b0);\n\tconst s3b = sub2 * (632260 * m_b2 - 126452 * m_b1);\n\treturn {\n\t\tr0s: s1r / s3r,\n\t\tr0i: s2r * l / s3r,\n\t\tr1s: s1r / (s3r + 126452),\n\t\tr1i: (s2r - 769860) * l / (s3r + 126452),\n\t\tg0s: s1g / s3g,\n\t\tg0i: s2g * l / s3g,\n\t\tg1s: s1g / (s3g + 126452),\n\t\tg1i: (s2g - 769860) * l / (s3g + 126452),\n\t\tb0s: s1b / s3b,\n\t\tb0i: s2b * l / s3b,\n\t\tb1s: s1b / (s3b + 126452),\n\t\tb1i: (s2b - 769860) * l / (s3b + 126452)\n\t};\n}\nfunction calcMaxChromaHsluv(lines, h) {\n\tconst hueRad = h / 360 * Math.PI * 2;\n\tconst r0 = distanceFromOriginAngle(lines.r0s, lines.r0i, hueRad);\n\tconst r1 = distanceFromOriginAngle(lines.r1s, lines.r1i, hueRad);\n\tconst g0 = distanceFromOriginAngle(lines.g0s, lines.g0i, hueRad);\n\tconst g1 = distanceFromOriginAngle(lines.g1s, lines.g1i, hueRad);\n\tconst b0 = distanceFromOriginAngle(lines.b0s, lines.b0i, hueRad);\n\tconst b1 = distanceFromOriginAngle(lines.b1s, lines.b1i, hueRad);\n\treturn Math.min(r0, r1, g0, g1, b0, b1);\n}\nvar hsluv = new ColorSpace({\n\tid: \"hsluv\",\n\tname: \"HSLuv\",\n\tcoords: {\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t},\n\t\ts: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Saturation\"\n\t\t},\n\t\tl: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t}\n\t},\n\tbase: LCHuv,\n\tgamutSpace: sRGB,\n\tfromBase(lch$1) {\n\t\tlet [l, c$1, h] = [\n\t\t\tskipNone(lch$1[0]),\n\t\t\tskipNone(lch$1[1]),\n\t\t\tskipNone(lch$1[2])\n\t\t];\n\t\tlet s;\n\t\tif (l \u003e 99.9999999) {\n\t\t\ts = 0;\n\t\t\tl = 100;\n\t\t} else if (l \u003c 1e-8) {\n\t\t\ts = 0;\n\t\t\tl = 0;\n\t\t} else s = c$1 / calcMaxChromaHsluv(calculateBoundingLines(l), h) * 100;\n\t\treturn [\n\t\t\th,\n\t\t\ts,\n\t\t\tl\n\t\t];\n\t},\n\ttoBase(hsl) {\n\t\tlet [h, s, l] = [\n\t\t\tskipNone(hsl[0]),\n\t\t\tskipNone(hsl[1]),\n\t\t\tskipNone(hsl[2])\n\t\t];\n\t\tlet c$1;\n\t\tif (l \u003e 99.9999999) {\n\t\t\tl = 100;\n\t\t\tc$1 = 0;\n\t\t} else if (l \u003c 1e-8) {\n\t\t\tl = 0;\n\t\t\tc$1 = 0;\n\t\t} else c$1 = calcMaxChromaHsluv(calculateBoundingLines(l), h) / 100 * s;\n\t\treturn [\n\t\t\tl,\n\t\t\tc$1,\n\t\t\th\n\t\t];\n\t},\n\tformats: { color: {\n\t\tid: \"--hsluv\",\n\t\tcoords: [\n\t\t\t\"\u003cnumber\u003e | \u003cangle\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\"\n\t\t]\n\t} }\n});\nfromXYZ_M$3[0][0];\nfromXYZ_M$3[0][1];\nfromXYZ_M$3[0][2];\nfromXYZ_M$3[1][0];\nfromXYZ_M$3[1][1];\nfromXYZ_M$3[1][2];\nfromXYZ_M$3[2][0];\nfromXYZ_M$3[2][1];\nfromXYZ_M$3[2][2];\nfunction distanceFromOrigin(slope, intercept) {\n\treturn Math.abs(intercept) / Math.sqrt(Math.pow(slope, 2) + 1);\n}\nfunction calcMaxChromaHpluv(lines) {\n\tlet r0 = distanceFromOrigin(lines.r0s, lines.r0i);\n\tlet r1 = distanceFromOrigin(lines.r1s, lines.r1i);\n\tlet g0 = distanceFromOrigin(lines.g0s, lines.g0i);\n\tlet g1 = distanceFromOrigin(lines.g1s, lines.g1i);\n\tlet b0 = distanceFromOrigin(lines.b0s, lines.b0i);\n\tlet b1 = distanceFromOrigin(lines.b1s, lines.b1i);\n\treturn Math.min(r0, r1, g0, g1, b0, b1);\n}\nvar hpluv = new ColorSpace({\n\tid: \"hpluv\",\n\tname: \"HPLuv\",\n\tcoords: {\n\t\th: {\n\t\t\trefRange: [0, 360],\n\t\t\ttype: \"angle\",\n\t\t\tname: \"Hue\"\n\t\t},\n\t\ts: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Saturation\"\n\t\t},\n\t\tl: {\n\t\t\trange: [0, 100],\n\t\t\tname: \"Lightness\"\n\t\t}\n\t},\n\tbase: LCHuv,\n\tgamutSpace: \"self\",\n\tfromBase(lch$1) {\n\t\tlet [l, c$1, h] = [\n\t\t\tskipNone(lch$1[0]),\n\t\t\tskipNone(lch$1[1]),\n\t\t\tskipNone(lch$1[2])\n\t\t];\n\t\tlet s;\n\t\tif (l \u003e 99.9999999) {\n\t\t\ts = 0;\n\t\t\tl = 100;\n\t\t} else if (l \u003c 1e-8) {\n\t\t\ts = 0;\n\t\t\tl = 0;\n\t\t} else s = c$1 / calcMaxChromaHpluv(calculateBoundingLines(l)) * 100;\n\t\treturn [\n\t\t\th,\n\t\t\ts,\n\t\t\tl\n\t\t];\n\t},\n\ttoBase(hsl) {\n\t\tlet [h, s, l] = [\n\t\t\tskipNone(hsl[0]),\n\t\t\tskipNone(hsl[1]),\n\t\t\tskipNone(hsl[2])\n\t\t];\n\t\tlet c$1;\n\t\tif (l \u003e 99.9999999) {\n\t\t\tl = 100;\n\t\t\tc$1 = 0;\n\t\t} else if (l \u003c 1e-8) {\n\t\t\tl = 0;\n\t\t\tc$1 = 0;\n\t\t} else c$1 = calcMaxChromaHpluv(calculateBoundingLines(l)) / 100 * s;\n\t\treturn [\n\t\t\tl,\n\t\t\tc$1,\n\t\t\th\n\t\t];\n\t},\n\tformats: { color: {\n\t\tid: \"--hpluv\",\n\t\tcoords: [\n\t\t\t\"\u003cnumber\u003e | \u003cangle\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\",\n\t\t\t\"\u003cpercentage\u003e | \u003cnumber\u003e\"\n\t\t]\n\t} }\n});\nvar Yw = 203;\nvar n = 2610 / 2 ** 14;\nvar ninv = 2 ** 14 / 2610;\nvar m = 2523 / 2 ** 5;\nvar minv = 2 ** 5 / 2523;\nvar c1 = 3424 / 2 ** 12;\nvar c2 = 2413 / 2 ** 7;\nvar c3 = 2392 / 2 ** 7;\nvar rec2100Pq = new RGBColorSpace({\n\tid: \"rec2100pq\",\n\tcssId: \"rec2100-pq\",\n\tname: \"REC.2100-PQ\",\n\tbase: REC2020Linear,\n\ttoBase(RGB) {\n\t\treturn RGB.map(function(val) {\n\t\t\treturn (Math.max(val ** minv - c1, 0) / (c2 - c3 * val ** minv)) ** ninv * 1e4 / Yw;\n\t\t});\n\t},\n\tfromBase(RGB) {\n\t\treturn RGB.map(function(val) {\n\t\t\tlet x = Math.max(val * Yw / 1e4, 0);\n\t\t\treturn ((c1 + c2 * x ** n) / (1 + c3 * x ** n)) ** m;\n\t\t});\n\t}\n});\nvar a = .17883277;\nvar b = .28466892;\nvar c = .55991073;\nvar scale = 3.7743;\nvar rec2100Hlg = new RGBColorSpace({\n\tid: \"rec2100hlg\",\n\tcssId: \"rec2100-hlg\",\n\tname: \"REC.2100-HLG\",\n\treferred: \"scene\",\n\tbase: REC2020Linear,\n\ttoBase(RGB) {\n\t\treturn RGB.map(function(val) {\n\t\t\tif (val \u003c= .5) return val ** 2 / 3 * scale;\n\t\t\treturn (Math.exp((val - c) / a) + b) / 12 * scale;\n\t\t});\n\t},\n\tfromBase(RGB) {\n\t\treturn RGB.map(function(val) {\n\t\t\tval /= scale;\n\t\t\tif (val \u003c= 1 / 12) return Math.sqrt(3 * val);\n\t\t\treturn a * Math.log(12 * val - b) + c;\n\t\t});\n\t}\n});\nvar CATs = {};\nhooks.add(\"chromatic-adaptation-start\", (env) =\u003e {\n\tif (env.options.method) env.M = adapt(env.W1, env.W2, env.options.method);\n});\nhooks.add(\"chromatic-adaptation-end\", (env) =\u003e {\n\tif (!env.M) env.M = adapt(env.W1, env.W2, env.options.method);\n});\nfunction defineCAT({ id, toCone_M, fromCone_M }) {\n\tCATs[id] = arguments[0];\n}\nfunction adapt(W1, W2, id = \"Bradford\") {\n\tlet method = CATs[id];\n\tlet [ρs, γs, βs] = multiplyMatrices(method.toCone_M, W1);\n\tlet [ρd, γd, βd] = multiplyMatrices(method.toCone_M, W2);\n\tlet scaled_cone_M = multiplyMatrices([\n\t\t[\n\t\t\tρd / ρs,\n\t\t\t0,\n\t\t\t0\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\tγd / γs,\n\t\t\t0\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\t0,\n\t\t\tβd / βs\n\t\t]\n\t], method.toCone_M);\n\treturn multiplyMatrices(method.fromCone_M, scaled_cone_M);\n}\ndefineCAT({\n\tid: \"von Kries\",\n\ttoCone_M: [\n\t\t[\n\t\t\t.40024,\n\t\t\t.7076,\n\t\t\t-.08081\n\t\t],\n\t\t[\n\t\t\t-.2263,\n\t\t\t1.16532,\n\t\t\t.0457\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\t0,\n\t\t\t.91822\n\t\t]\n\t],\n\tfromCone_M: [\n\t\t[\n\t\t\t1.8599363874558397,\n\t\t\t-1.1293816185800916,\n\t\t\t.21989740959619328\n\t\t],\n\t\t[\n\t\t\t.3611914362417676,\n\t\t\t.6388124632850422,\n\t\t\t-6370596838649899e-21\n\t\t],\n\t\t[\n\t\t\t0,\n\t\t\t0,\n\t\t\t1.0890636230968613\n\t\t]\n\t]\n});\ndefineCAT({\n\tid: \"Bradford\",\n\ttoCone_M: [\n\t\t[\n\t\t\t.8951,\n\t\t\t.2664,\n\t\t\t-.1614\n\t\t],\n\t\t[\n\t\t\t-.7502,\n\t\t\t1.7135,\n\t\t\t.0367\n\t\t],\n\t\t[\n\t\t\t.0389,\n\t\t\t-.0685,\n\t\t\t1.0296\n\t\t]\n\t],\n\tfromCone_M: [\n\t\t[\n\t\t\t.9869929054667121,\n\t\t\t-.14705425642099013,\n\t\t\t.15996265166373122\n\t\t],\n\t\t[\n\t\t\t.4323052697233945,\n\t\t\t.5183602715367774,\n\t\t\t.049291228212855594\n\t\t],\n\t\t[\n\t\t\t-.00852866457517732,\n\t\t\t.04004282165408486,\n\t\t\t.96848669578755\n\t\t]\n\t]\n});\ndefineCAT({\n\tid: \"CAT02\",\n\ttoCone_M: [\n\t\t[\n\t\t\t.7328,\n\t\t\t.4296,\n\t\t\t-.1624\n\t\t],\n\t\t[\n\t\t\t-.7036,\n\t\t\t1.6975,\n\t\t\t.0061\n\t\t],\n\t\t[\n\t\t\t.003,\n\t\t\t.0136,\n\t\t\t.9834\n\t\t]\n\t],\n\tfromCone_M: [\n\t\t[\n\t\t\t1.0961238208355142,\n\t\t\t-.27886900021828726,\n\t\t\t.18274517938277307\n\t\t],\n\t\t[\n\t\t\t.4543690419753592,\n\t\t\t.4735331543074117,\n\t\t\t.07209780371722911\n\t\t],\n\t\t[\n\t\t\t-.009627608738429355,\n\t\t\t-.00569803121611342,\n\t\t\t1.0153256399545427\n\t\t]\n\t]\n});\ndefineCAT({\n\tid: \"CAT16\",\n\ttoCone_M: [\n\t\t[\n\t\t\t.401288,\n\t\t\t.650173,\n\t\t\t-.051461\n\t\t],\n\t\t[\n\t\t\t-.250268,\n\t\t\t1.204414,\n\t\t\t.045854\n\t\t],\n\t\t[\n\t\t\t-.002079,\n\t\t\t.048952,\n\t\t\t.953127\n\t\t]\n\t],\n\tfromCone_M: [\n\t\t[\n\t\t\t1.862067855087233,\n\t\t\t-1.0112546305316845,\n\t\t\t.14918677544445172\n\t\t],\n\t\t[\n\t\t\t.3875265432361372,\n\t\t\t.6214474419314753,\n\t\t\t-.008973985167612521\n\t\t],\n\t\t[\n\t\t\t-.01584149884933386,\n\t\t\t-.03412293802851557,\n\t\t\t1.0499644368778496\n\t\t]\n\t]\n});\nObject.assign(WHITES, {\n\tA: [\n\t\t1.0985,\n\t\t1,\n\t\t.35585\n\t],\n\tC: [\n\t\t.98074,\n\t\t1,\n\t\t1.18232\n\t],\n\tD55: [\n\t\t.95682,\n\t\t1,\n\t\t.92149\n\t],\n\tD75: [\n\t\t.94972,\n\t\t1,\n\t\t1.22638\n\t],\n\tE: [\n\t\t1,\n\t\t1,\n\t\t1\n\t],\n\tF2: [\n\t\t.99186,\n\t\t1,\n\t\t.67393\n\t],\n\tF7: [\n\t\t.95041,\n\t\t1,\n\t\t1.08747\n\t],\n\tF11: [\n\t\t1.00962,\n\t\t1,\n\t\t.6435\n\t]\n});\nWHITES.ACES = [\n\t.32168 / .33767,\n\t1,\n\t.34065 / .33767\n];\nvar ACEScg = new RGBColorSpace({\n\tid: \"acescg\",\n\tcssId: \"--acescg\",\n\tname: \"ACEScg\",\n\tcoords: {\n\t\tr: {\n\t\t\trange: [0, 65504],\n\t\t\tname: \"Red\"\n\t\t},\n\t\tg: {\n\t\t\trange: [0, 65504],\n\t\t\tname: \"Green\"\n\t\t},\n\t\tb: {\n\t\t\trange: [0, 65504],\n\t\t\tname: \"Blue\"\n\t\t}\n\t},\n\treferred: \"scene\",\n\twhite: WHITES.ACES,\n\ttoXYZ_M: [\n\t\t[\n\t\t\t.6624541811085053,\n\t\t\t.13400420645643313,\n\t\t\t.1561876870049078\n\t\t],\n\t\t[\n\t\t\t.27222871678091454,\n\t\t\t.6740817658111484,\n\t\t\t.05368951740793705\n\t\t],\n\t\t[\n\t\t\t-.005574649490394108,\n\t\t\t.004060733528982826,\n\t\t\t1.0103391003129971\n\t\t]\n\t],\n\tfromXYZ_M: [\n\t\t[\n\t\t\t1.6410233796943257,\n\t\t\t-.32480329418479,\n\t\t\t-.23642469523761225\n\t\t],\n\t\t[\n\t\t\t-.6636628587229829,\n\t\t\t1.6153315916573379,\n\t\t\t.016756347685530137\n\t\t],\n\t\t[\n\t\t\t.011721894328375376,\n\t\t\t-.008284441996237409,\n\t\t\t.9883948585390215\n\t\t]\n\t]\n});\nvar ε = 2 ** -16;\nvar ACES_min_nonzero = -.35828683;\nvar ACES_cc_max = (Math.log2(65504) + 9.72) / 17.52;\nvar acescc = new RGBColorSpace({\n\tid: \"acescc\",\n\tcssId: \"--acescc\",\n\tname: \"ACEScc\",\n\tcoords: {\n\t\tr: {\n\t\t\trange: [ACES_min_nonzero, ACES_cc_max],\n\t\t\tname: \"Red\"\n\t\t},\n\t\tg: {\n\t\t\trange: [ACES_min_nonzero, ACES_cc_max],\n\t\t\tname: \"Green\"\n\t\t},\n\t\tb: {\n\t\t\trange: [ACES_min_nonzero, ACES_cc_max],\n\t\t\tname: \"Blue\"\n\t\t}\n\t},\n\treferred: \"scene\",\n\tbase: ACEScg,\n\ttoBase(RGB) {\n\t\tconst low = -5.279999999999999 / 17.52;\n\t\treturn RGB.map(function(val) {\n\t\t\tif (val \u003c= low) return (2 ** (val * 17.52 - 9.72) - ε) * 2;\n\t\t\telse if (val \u003c ACES_cc_max) return 2 ** (val * 17.52 - 9.72);\n\t\t\telse return 65504;\n\t\t});\n\t},\n\tfromBase(RGB) {\n\t\treturn RGB.map(function(val) {\n\t\t\tif (val \u003c= 0) return (Math.log2(ε) + 9.72) / 17.52;\n\t\t\telse if (val \u003c ε) return (Math.log2(ε + val * .5) + 9.72) / 17.52;\n\t\t\telse return (Math.log2(val) + 9.72) / 17.52;\n\t\t});\n\t}\n});\nvar spaces = /* @__PURE__ */ Object.freeze({\n\t__proto__: null,\n\tA98RGB: a98rgb,\n\tA98RGB_Linear: A98Linear,\n\tACEScc: acescc,\n\tACEScg,\n\tCAM16_JMh: cam16,\n\tHCT: hct,\n\tHPLuv: hpluv,\n\tHSL,\n\tHSLuv: hsluv,\n\tHSV,\n\tHWB: hwb,\n\tICTCP: ictcp,\n\tJzCzHz: jzczhz,\n\tJzazbz,\n\tLCH: lch,\n\tLCHuv,\n\tLab: lab,\n\tLab_D65: lab_d65,\n\tLuv,\n\tOKLCH: oklch,\n\tOKLab,\n\tP3,\n\tP3_Linear: P3Linear,\n\tProPhoto: prophoto,\n\tProPhoto_Linear: ProPhotoLinear,\n\tREC_2020: REC2020,\n\tREC_2020_Linear: REC2020Linear,\n\tREC_2100_HLG: rec2100Hlg,\n\tREC_2100_PQ: rec2100Pq,\n\tXYZ_ABS_D65: XYZ_Abs_D65,\n\tXYZ_D50,\n\tXYZ_D65: xyz_d65,\n\tsRGB,\n\tsRGB_Linear: sRGBLinear\n});\nvar Color = class Color {\n\tconstructor(...args) {\n\t\tlet color;\n\t\tif (args.length === 1) color = getColor(args[0]);\n\t\tlet space, coords, alpha;\n\t\tif (color) {\n\t\t\tspace = color.space || color.spaceId;\n\t\t\tcoords = color.coords;\n\t\t\talpha = color.alpha;\n\t\t} else [space, coords, alpha] = args;\n\t\tObject.defineProperty(this, \"space\", {\n\t\t\tvalue: ColorSpace.get(space),\n\t\t\twritable: false,\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true\n\t\t});\n\t\tthis.coords = coords ? coords.slice() : [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t];\n\t\tthis.alpha = alpha \u003e 1 || alpha === void 0 ? 1 : alpha \u003c 0 ? 0 : alpha;\n\t\tfor (let i = 0; i \u003c this.coords.length; i++) if (this.coords[i] === \"NaN\") this.coords[i] = NaN;\n\t\tfor (let id in this.space.coords) Object.defineProperty(this, id, {\n\t\t\tget: () =\u003e this.get(id),\n\t\t\tset: (value) =\u003e this.set(id, value)\n\t\t});\n\t}\n\tget spaceId() {\n\t\treturn this.space.id;\n\t}\n\tclone() {\n\t\treturn new Color(this.space, this.coords, this.alpha);\n\t}\n\ttoJSON() {\n\t\treturn {\n\t\t\tspaceId: this.spaceId,\n\t\t\tcoords: this.coords,\n\t\t\talpha: this.alpha\n\t\t};\n\t}\n\tdisplay(...args) {\n\t\tlet ret = display(this, ...args);\n\t\tret.color = new Color(ret.color);\n\t\treturn ret;\n\t}\n\tstatic get(color, ...args) {\n\t\tif (color instanceof Color) return color;\n\t\treturn new Color(color, ...args);\n\t}\n\tstatic defineFunction(name, code, o = code) {\n\t\tlet { instance = true, returns } = o;\n\t\tlet func = function(...args) {\n\t\t\tlet ret = code(...args);\n\t\t\tif (returns === \"color\") ret = Color.get(ret);\n\t\t\telse if (returns === \"function\u003ccolor\u003e\") {\n\t\t\t\tlet f = ret;\n\t\t\t\tret = function(...args$1) {\n\t\t\t\t\tlet ret$1 = f(...args$1);\n\t\t\t\t\treturn Color.get(ret$1);\n\t\t\t\t};\n\t\t\t\tObject.assign(ret, f);\n\t\t\t} else if (returns === \"array\u003ccolor\u003e\") ret = ret.map((c$1) =\u003e Color.get(c$1));\n\t\t\treturn ret;\n\t\t};\n\t\tif (!(name in Color)) Color[name] = func;\n\t\tif (instance) Color.prototype[name] = function(...args) {\n\t\t\treturn func(this, ...args);\n\t\t};\n\t}\n\tstatic defineFunctions(o) {\n\t\tfor (let name in o) Color.defineFunction(name, o[name], o[name]);\n\t}\n\tstatic extend(exports) {\n\t\tif (exports.register) exports.register(Color);\n\t\telse for (let name in exports) Color.defineFunction(name, exports[name]);\n\t}\n};\nColor.defineFunctions({\n\tget,\n\tgetAll,\n\tset,\n\tsetAll,\n\tto,\n\tequals,\n\tinGamut,\n\ttoGamut,\n\tdistance,\n\ttoString: serialize\n});\nObject.assign(Color, {\n\tutil,\n\thooks,\n\tWHITES,\n\tSpace: ColorSpace,\n\tspaces: ColorSpace.registry,\n\tparse,\n\tdefaults\n});\nfor (let key of Object.keys(spaces)) ColorSpace.register(spaces[key]);\nfor (let id in ColorSpace.registry) addSpaceAccessors(id, ColorSpace.registry[id]);\nhooks.add(\"colorspace-init-end\", (space) =\u003e {\n\taddSpaceAccessors(space.id, space);\n\tspace.aliases?.forEach((alias) =\u003e {\n\t\taddSpaceAccessors(alias, space);\n\t});\n});\nfunction addSpaceAccessors(id, space) {\n\tlet propId = id.replace(/-/g, \"_\");\n\tObject.defineProperty(Color.prototype, propId, {\n\t\tget() {\n\t\t\tlet ret = this.getAll(id);\n\t\t\tif (typeof Proxy === \"undefined\") return ret;\n\t\t\treturn new Proxy(ret, {\n\t\t\t\thas: (obj, property) =\u003e {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tColorSpace.resolveCoord([space, property]);\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} catch (e) {}\n\t\t\t\t\treturn Reflect.has(obj, property);\n\t\t\t\t},\n\t\t\t\tget: (obj, property, receiver) =\u003e {\n\t\t\t\t\tif (property \u0026\u0026 typeof property !== \"symbol\" \u0026\u0026 !(property in obj)) {\n\t\t\t\t\t\tlet { index } = ColorSpace.resolveCoord([space, property]);\n\t\t\t\t\t\tif (index \u003e= 0) return obj[index];\n\t\t\t\t\t}\n\t\t\t\t\treturn Reflect.get(obj, property, receiver);\n\t\t\t\t},\n\t\t\t\tset: (obj, property, value, receiver) =\u003e {\n\t\t\t\t\tif (property \u0026\u0026 typeof property !== \"symbol\" \u0026\u0026 !(property in obj) || property \u003e= 0) {\n\t\t\t\t\t\tlet { index } = ColorSpace.resolveCoord([space, property]);\n\t\t\t\t\t\tif (index \u003e= 0) {\n\t\t\t\t\t\t\tobj[index] = value;\n\t\t\t\t\t\t\tthis.setAll(id, obj);\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn Reflect.set(obj, property, value, receiver);\n\t\t\t\t}\n\t\t\t});\n\t\t},\n\t\tset(coords) {\n\t\t\tthis.setAll(id, coords);\n\t\t},\n\t\tconfigurable: true,\n\t\tenumerable: true\n\t});\n}\nColor.extend(deltaEMethods);\nColor.extend({ deltaE });\nObject.assign(Color, { deltaEMethods });\nColor.extend(variations);\nColor.extend({ contrast });\nColor.extend(chromaticity);\nColor.extend(luminance);\nColor.extend(interpolation);\nColor.extend(contrastMethods);\nvar colorSpaceMode = \"p3-linear\";\nconst setColorSpaceMode = (mode) =\u003e {\n\tcolorSpaceMode = mode;\n};\nconst transformBoolean = (value) =\u003e value ? 1 : -1;\nfunction parseColorChannels(value) {\n\ttry {\n\t\tconst threeColor = new Color(value);\n\t\tconst targetSpace = colorSpaceMode === \"srgb\" ? \"srgb-linear\" : \"p3-linear\";\n\t\tconst coords = threeColor.to(targetSpace).coords;\n\t\tconst alpha = Number(threeColor.alpha);\n\t\treturn {\n\t\t\tr: Number.isFinite(coords?.[0]) ? coords[0] : 0,\n\t\t\tg: Number.isFinite(coords?.[1]) ? coords[1] : 0,\n\t\t\tb: Number.isFinite(coords?.[2]) ? coords[2] : 0,\n\t\t\ta: Number.isFinite(alpha) ? alpha : 1\n\t\t};\n\t} catch {\n\t\treturn {\n\t\t\tr: 0,\n\t\t\tg: 0,\n\t\t\tb: 0,\n\t\t\ta: 0\n\t\t};\n\t}\n}\nconst transformColor = (value) =\u003e parseColorChannels(value);\nconst transformPosition = (value) =\u003e {\n\tlet x = .5;\n\tlet y = .5;\n\tconst parsePositionValue = (val, isVertical = false) =\u003e {\n\t\tif (typeof val === \"number\") return val;\n\t\tif (typeof val === \"object\" \u0026\u0026 val !== null) return val.value;\n\t\tconst str = val.toLowerCase().trim();\n\t\tif (isVertical) {\n\t\t\tif (str === \"top\") return 0;\n\t\t\tif (str === \"bottom\") return 1;\n\t\t\tif (str === \"center\") return .5;\n\t\t} else {\n\t\t\tif (str === \"left\") return 0;\n\t\t\tif (str === \"right\") return 1;\n\t\t\tif (str === \"center\") return .5;\n\t\t}\n\t\tconsole.warn(`Invalid position value: ${val}. Defaulting to center.`);\n\t\treturn .5;\n\t};\n\tif (typeof value === \"string\") {\n\t\tconst parts = value.toLowerCase().trim().split(/\\s+/);\n\t\tif (parts.includes(\"left\")) x = 0;\n\t\telse if (parts.includes(\"right\")) x = 1;\n\t\telse if (parts.includes(\"center\") || parts.length === 1 \u0026\u0026 (parts[0] === \"top\" || parts[0] === \"bottom\")) x = .5;\n\t\tif (parts.includes(\"top\")) y = 0;\n\t\telse if (parts.includes(\"bottom\")) y = 1;\n\t\telse if (parts.includes(\"center\") || parts.length === 1 \u0026\u0026 (parts[0] === \"left\" || parts[0] === \"right\")) y = .5;\n\t\tif (parts.length === 1 \u0026\u0026 parts[0] === \"center\") {\n\t\t\tx = .5;\n\t\t\ty = .5;\n\t\t}\n\t} else if (typeof value === \"object\" \u0026\u0026 value !== null) {\n\t\tx = parsePositionValue(value.x, false);\n\t\ty = parsePositionValue(value.y, true);\n\t} else console.warn(`Invalid position value provided: ${value}. Defaulting to center.`);\n\tconst finalY = 1 - y;\n\treturn {\n\t\tx,\n\t\ty: finalY\n\t};\n};\nconst transformAngle = (value) =\u003e {\n\tif (typeof value === \"number\") return (value % 360 + 360) % 360;\n\tconst str = value.toLowerCase().trim();\n\tswitch (str) {\n\t\tcase \"to right\": return 0;\n\t\tcase \"to bottom\": return 90;\n\t\tcase \"to left\": return 180;\n\t\tcase \"to top\": return 270;\n\t\tcase \"to bottom right\":\n\t\tcase \"to right bottom\": return 45;\n\t\tcase \"to bottom left\":\n\t\tcase \"to left bottom\": return 135;\n\t\tcase \"to top left\":\n\t\tcase \"to left top\": return 225;\n\t\tcase \"to top right\":\n\t\tcase \"to right top\": return 315;\n\t\tcase \"from left\": return 0;\n\t\tcase \"from top\": return 90;\n\t\tcase \"from right\": return 180;\n\t\tcase \"from bottom\": return 270;\n\t\tcase \"from top left\": return 45;\n\t\tcase \"from top right\": return 135;\n\t\tcase \"from bottom right\": return 225;\n\t\tcase \"from bottom left\": return 315;\n\t\tdefault:\n\t\t\tconst numMatch = str.match(/^(-?\\d*\\.?\\d+)(deg|rad|turn)?$/);\n\t\t\tif (numMatch) {\n\t\t\t\tconst [, valueStr, unit = \"deg\"] = numMatch;\n\t\t\t\tconst numValue = parseFloat(valueStr);\n\t\t\t\tswitch (unit) {\n\t\t\t\t\tcase \"deg\": return (numValue % 360 + 360) % 360;\n\t\t\t\t\tcase \"rad\": return (numValue * 180 / Math.PI % 360 + 360) % 360;\n\t\t\t\t\tcase \"turn\": return (numValue * 360 % 360 + 360) % 360;\n\t\t\t\t\tdefault: return (numValue % 360 + 360) % 360;\n\t\t\t\t}\n\t\t\t}\n\t\t\tconsole.warn(`Invalid angle value: ${value}. Defaulting to 0 degrees.`);\n\t\t\treturn 0;\n\t}\n};\nconst transformEdges = (value) =\u003e {\n\tconst mode = {\n\t\t\"stretch\": 0,\n\t\t\"transparent\": 1,\n\t\t\"mirror\": 2,\n\t\t\"wrap\": 3\n\t}[value.toLowerCase()];\n\tif (mode === void 0) {\n\t\tconsole.warn(`Invalid edge mode: ${value}. Defaulting to 'stretch'.`);\n\t\treturn 0;\n\t}\n\treturn mode;\n};\nconst transformStrokePosition = (value) =\u003e {\n\treturn {\n\t\t\"outside\": 0,\n\t\t\"center\": 1,\n\t\t\"inside\": 2\n\t}[value?.toLowerCase()] ?? 1;\n};\nconst colorSpaceOptions = [\n\t{\n\t\tlabel: \"Linear RGB\",\n\t\tvalue: \"linear\"\n\t},\n\t{\n\t\tlabel: \"OKLCh\",\n\t\tvalue: \"oklch\"\n\t},\n\t{\n\t\tlabel: \"OKLAB\",\n\t\tvalue: \"oklab\"\n\t},\n\t{\n\t\tlabel: \"HSL\",\n\t\tvalue: \"hsl\"\n\t},\n\t{\n\t\tlabel: \"HSV\",\n\t\tvalue: \"hsv\"\n\t},\n\t{\n\t\tlabel: \"LCH\",\n\t\tvalue: \"lch\"\n\t}\n];\nconst transformColorSpace = (value) =\u003e {\n\tconst mode = {\n\t\t\"linear\": 0,\n\t\t\"oklch\": 1,\n\t\t\"oklab\": 2,\n\t\t\"hsl\": 3,\n\t\t\"hsv\": 4,\n\t\t\"lch\": 5\n\t}[value.toLowerCase()];\n\tif (mode === void 0) {\n\t\tconsole.warn(`Invalid color space mode: ${value}. Defaulting to 'linear'.`);\n\t\treturn 0;\n\t}\n\treturn mode;\n};\nexport { transformColor as a, transformPosition as c, transformBoolean as i, transformStrokePosition as l, setColorSpaceMode as n, transformColorSpace as o, transformAngle as r, transformEdges as s, colorSpaceOptions as t, Color as u };\n","import { n as debugError, r as debugWarn, t as GpuUnavailableError } from \"./support-GJphyuEe.js\";\nimport { a as transformColor, c as transformPosition, l as transformStrokePosition, o as transformColorSpace, s as transformEdges, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar __defProp$1 = Object.defineProperty;\nvar __export$1 = (all$1) =\u003e {\n\tlet target = {};\n\tfor (var name in all$1) __defProp$1(target, name, {\n\t\tget: all$1[name],\n\t\tenumerable: true\n\t});\n\treturn target;\n};\nfunction polyfillSymbol(name) {\n\tif (typeof Symbol[name] === \"undefined\") Object.defineProperty(Symbol, name, {\n\t\tvalue: Symbol.for(`Symbol.${name}`),\n\t\twritable: false,\n\t\tenumerable: false,\n\t\tconfigurable: false\n\t});\n}\nfunction hasOperator(value, operator) {\n\treturn typeof value?.[operator] === \"function\";\n}\nfunction binOp(a, b, opSymbol, fallback) {\n\tlet result = Operator.deferOperation;\n\tif (hasOperator(a, opSymbol)) result = a[opSymbol](a, b);\n\tif (result === Operator.deferOperation \u0026\u0026 hasOperator(b, opSymbol)) result = b[opSymbol](a, b);\n\tif (result === Operator.deferOperation) return fallback(a, b);\n\treturn result;\n}\nvar normalAdd = (a, b) =\u003e a + b;\nfunction add$1(a, b) {\n\tif ((typeof a === \"number\" || typeof a === \"string\") \u0026\u0026 (typeof b === \"number\" || typeof b === \"string\")) return a + b;\n\treturn binOp(a, b, Operator.plus, normalAdd);\n}\nvar normalSub = (a, b) =\u003e a - b;\nfunction sub$1(a, b) {\n\tif (typeof a === \"number\" \u0026\u0026 typeof b === \"number\") return a - b;\n\treturn binOp(a, b, Operator.minus, normalSub);\n}\nvar normalMul = (a, b) =\u003e a * b;\nfunction mul$1(a, b) {\n\tif (typeof a === \"number\" \u0026\u0026 typeof b === \"number\") return a * b;\n\treturn binOp(a, b, Operator.star, normalMul);\n}\nvar normalDiv = (a, b) =\u003e a / b;\nfunction div$1(a, b) {\n\tif (typeof a === \"number\" \u0026\u0026 typeof b === \"number\") return a / b;\n\treturn binOp(a, b, Operator.slash, normalDiv);\n}\nvar normalPow = (a, b) =\u003e a ** b;\nfunction pow$1(a, b) {\n\tif (typeof a === \"number\" \u0026\u0026 typeof b === \"number\") return a ** b;\n\treturn binOp(a, b, Operator.starStar, normalPow);\n}\nvar normalMod = (a, b) =\u003e a % b;\nfunction mod$1(a, b) {\n\tif (typeof a === \"number\" \u0026\u0026 typeof b === \"number\") return a % b;\n\treturn binOp(a, b, Operator.percent, normalMod);\n}\nvar Operator = /* @__PURE__ */ (() =\u003e {\n\tpolyfillSymbol(\"deferOperation\");\n\tpolyfillSymbol(\"operatorPlus\");\n\tpolyfillSymbol(\"operatorMinus\");\n\tpolyfillSymbol(\"operatorStar\");\n\tpolyfillSymbol(\"operatorSlash\");\n\tpolyfillSymbol(\"operatorStarStar\");\n\tpolyfillSymbol(\"operatorPercent\");\n\tpolyfillSymbol(\"operatorEqEq\");\n\tpolyfillSymbol(\"operatorPrePlusPlus\");\n\tpolyfillSymbol(\"operatorPreMinusMinus\");\n\tpolyfillSymbol(\"operatorPostPlusPlus\");\n\tpolyfillSymbol(\"operatorPostMinusMinus\");\n\tpolyfillSymbol(\"operatorPreMinus\");\n\tglobalThis.__tsover_add = add$1;\n\tglobalThis.__tsover_sub = sub$1;\n\tglobalThis.__tsover_mul = mul$1;\n\tglobalThis.__tsover_div = div$1;\n\tglobalThis.__tsover_pow = pow$1;\n\tglobalThis.__tsover_mod = mod$1;\n\treturn {\n\t\tdeferOperation: Symbol.deferOperation,\n\t\tplus: Symbol.operatorPlus,\n\t\tminus: Symbol.operatorMinus,\n\t\tstar: Symbol.operatorStar,\n\t\tslash: Symbol.operatorSlash,\n\t\tstarStar: Symbol.operatorStarStar,\n\t\tpercent: Symbol.operatorPercent,\n\t\teqEq: Symbol.operatorEqEq,\n\t\tprePlusPlus: Symbol.operatorPrePlusPlus,\n\t\tpreMinusMinus: Symbol.operatorPreMinusMinus,\n\t\tpostPlusPlus: Symbol.operatorPostPlusPlus,\n\t\tpostMinusMinus: Symbol.operatorPostMinusMinus,\n\t\tpreMinus: Symbol.operatorPreMinus\n\t};\n})();\nconst DEV = process.env.NODE_ENV === \"development\";\nconst TEST = process.env.NODE_ENV === \"test\";\nvar version$1 = \"0.12.3\";\nconst $internal = Symbol(`typegpu:${version$1}:$internal`);\nconst $soul = Symbol(`typegpu:${version$1}:$soul`);\nconst $gpuValueOf = Symbol(`typegpu:${version$1}:$gpuValueOf`);\nconst $getNameForward = Symbol(`typegpu:${version$1}:$getNameForward`);\nconst $providing = Symbol(`typegpu:${version$1}:$providing`);\nconst $ownSnippet = Symbol(`typegpu:${version$1}:$ownSnippet`);\nconst $resolve = Symbol(`typegpu:${version$1}:$resolve`);\nconst $cast = Symbol(`typegpu:${version$1}:$cast`);\nconst $gpuCallable = Symbol(`typegpu:${version$1}:$gpuCallable`);\nconst $repr = Symbol(`typegpu:${version$1}:$repr`);\nSymbol(`typegpu:${version$1}:$gpuRepr`);\nSymbol(`typegpu:${version$1}:$reprPartial`);\nSymbol(`typegpu:${version$1}:$reprPatch`);\nSymbol(`typegpu:${version$1}:$inRepr`);\nSymbol(`typegpu:${version$1}:$memIdent`);\nSymbol(`typegpu:${version$1}:$invalidStorageSchema`);\nSymbol(`typegpu:${version$1}:$validUniformSchema`);\nSymbol(`typegpu:${version$1}:$validVertexSchema`);\nSymbol(`typegpu:${version$1}:$invalidSchemaReason`);\nfunction isMarkedInternal(value) {\n\treturn !!value?.[$internal];\n}\nconst Void = {\n\t[$internal]: {},\n\ttype: \"void\",\n\ttoString() {\n\t\treturn \"void\";\n\t}\n};\nconst wgslTypeLiterals = [\n\t\"bool\",\n\t\"f32\",\n\t\"f16\",\n\t\"i32\",\n\t\"u32\",\n\t\"u16\",\n\t\"vec2f\",\n\t\"vec2h\",\n\t\"vec2i\",\n\t\"vec2u\",\n\t\"vec2\u003cbool\u003e\",\n\t\"vec3f\",\n\t\"vec3h\",\n\t\"vec3i\",\n\t\"vec3u\",\n\t\"vec3\u003cbool\u003e\",\n\t\"vec4f\",\n\t\"vec4h\",\n\t\"vec4i\",\n\t\"vec4u\",\n\t\"vec4\u003cbool\u003e\",\n\t\"mat2x2f\",\n\t\"mat3x3f\",\n\t\"mat4x4f\",\n\t\"struct\",\n\t\"array\",\n\t\"ptr\",\n\t\"atomic\",\n\t\"decorated\",\n\t\"abstractInt\",\n\t\"abstractFloat\",\n\t\"void\",\n\t\"texture_1d\",\n\t\"texture_storage_1d\",\n\t\"texture_2d\",\n\t\"texture_storage_2d\",\n\t\"texture_multisampled_2d\",\n\t\"texture_depth_2d\",\n\t\"texture_depth_multisampled_2d\",\n\t\"texture_2d_array\",\n\t\"texture_storage_2d_array\",\n\t\"texture_depth_2d_array\",\n\t\"texture_cube\",\n\t\"texture_depth_cube\",\n\t\"texture_cube_array\",\n\t\"texture_depth_cube_array\",\n\t\"texture_3d\",\n\t\"texture_storage_3d\",\n\t\"texture_external\",\n\t\"sampler\",\n\t\"sampler_comparison\"\n];\nfunction isVecInstance(value) {\n\tconst v = value;\n\treturn isMarkedInternal(v) \u0026\u0026 typeof v.kind === \"string\" \u0026\u0026 v.kind.startsWith(\"vec\");\n}\nfunction isVecBoolInstance(value) {\n\treturn isVecInstance(value) \u0026\u0026 value.kind.includes(\"b\");\n}\nfunction isVec2(value) {\n\tconst v = value;\n\treturn isMarkedInternal(v) \u0026\u0026 typeof v.type === \"string\" \u0026\u0026 v.type.startsWith(\"vec2\");\n}\nfunction isVec3(value) {\n\tconst v = value;\n\treturn isMarkedInternal(v) \u0026\u0026 typeof v.type === \"string\" \u0026\u0026 v.type.startsWith(\"vec3\");\n}\nfunction isVec4(value) {\n\tconst v = value;\n\treturn isMarkedInternal(v) \u0026\u0026 typeof v.type === \"string\" \u0026\u0026 v.type.startsWith(\"vec4\");\n}\nfunction isVec(value) {\n\treturn isVec2(value) || isVec3(value) || isVec4(value);\n}\nfunction isVecBool(value) {\n\treturn isVec(value) \u0026\u0026 value.type.includes(\"b\");\n}\nfunction isMatInstance(value) {\n\tconst v = value;\n\treturn isMarkedInternal(v) \u0026\u0026 typeof v.kind?.startsWith === \"function\" \u0026\u0026 v.kind.startsWith(\"mat\");\n}\nfunction isMat2x2f(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"mat2x2f\";\n}\nfunction isMat3x3f(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"mat3x3f\";\n}\nfunction isMat4x4f(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"mat4x4f\";\n}\nfunction isMat(value) {\n\treturn isMat2x2f(value) || isMat3x3f(value) || isMat4x4f(value);\n}\nfunction isInteger(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 [\n\t\t\"abstractInt\",\n\t\t\"i32\",\n\t\t\"u32\"\n\t].includes(value?.type);\n}\nfunction isIntegerVec(value) {\n\treturn isVec(value) \u0026\u0026 isInteger(value.primitive);\n}\nfunction isFloat32VecInstance(element) {\n\treturn isVecInstance(element) \u0026\u0026 [\n\t\t\"vec2f\",\n\t\t\"vec3f\",\n\t\t\"vec4f\"\n\t].includes(element.kind);\n}\nfunction isInteger32VecInstance(value) {\n\treturn isVecInstance(value) \u0026\u0026 /[iu]$/.test(value.kind);\n}\nfunction isUint32VecInstance(value) {\n\treturn isVecInstance(value) \u0026\u0026 /[u]$/.test(value.kind);\n}\nfunction isWgslData(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 wgslTypeLiterals.includes(value?.type);\n}\nfunction isWgslArray(schema) {\n\treturn isMarkedInternal(schema) \u0026\u0026 schema?.type === \"array\";\n}\nfunction isWgslStruct(schema) {\n\treturn isMarkedInternal(schema) \u0026\u0026 schema?.type === \"struct\";\n}\nfunction isPtr(schema) {\n\treturn isMarkedInternal(schema) \u0026\u0026 schema?.type === \"ptr\";\n}\nfunction isAtomic(schema) {\n\treturn isMarkedInternal(schema) \u0026\u0026 schema?.type === \"atomic\";\n}\nfunction isAlignAttrib(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"@align\";\n}\nfunction isSizeAttrib(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"@size\";\n}\nfunction isLocationAttrib(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"@location\";\n}\nfunction isBuiltinAttrib(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"@builtin\";\n}\nfunction isDecorated(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"decorated\";\n}\nfunction isVoid(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value.type === \"void\";\n}\nfunction isBool(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value.type === \"bool\";\n}\nfunction isNumericSchema(schema) {\n\tconst type = schema?.type;\n\treturn isMarkedInternal(schema) \u0026\u0026 (type === \"abstractInt\" || type === \"abstractFloat\" || type === \"f32\" || type === \"f16\" || type === \"i32\" || type === \"u32\");\n}\nfunction isHalfPrecisionSchema(schema) {\n\tconst type = schema?.type;\n\treturn isMarkedInternal(schema) \u0026\u0026 (type === \"f16\" || type === \"vec2h\" || type === \"vec3h\" || type === \"vec4h\");\n}\nvar ephemeralTypes = [\n\t\"abstractInt\",\n\t\"abstractFloat\",\n\t\"f32\",\n\t\"f16\",\n\t\"i32\",\n\t\"u32\",\n\t\"bool\"\n];\nfunction isNaturallyEphemeral(schema) {\n\treturn !isMarkedInternal(schema) || ephemeralTypes.includes(schema?.type);\n}\nfunction WORKAROUND_getSchema(vec) {\n\treturn vec.schema;\n}\nvar warningTypes = [\n\t\"deprecated\",\n\t\"suspicious\",\n\t\"fallback\",\n\t\"precision-loss\",\n\t\"implicit-conversion\",\n\t\"webgpu-feature-missing\",\n\t\"webgpu-limits-exceeded\",\n\t\"locations-mismatched\",\n\t\"log-limit-exceeded\",\n\t\"external-omitted\",\n\t\"uniform-schema-misaligned\"\n];\nvar TgpuLogger = class {\n\t#initialEnabledWarnings;\n\t#enabledWarnings;\n\t#warned = /* @__PURE__ */ new WeakMap();\n\tconstructor(prod) {\n\t\tif (prod) this.#initialEnabledWarnings = [\n\t\t\t\"webgpu-feature-missing\",\n\t\t\t\"webgpu-limits-exceeded\",\n\t\t\t\"locations-mismatched\",\n\t\t\t\"log-limit-exceeded\",\n\t\t\t\"external-omitted\"\n\t\t];\n\t\telse this.#initialEnabledWarnings = warningTypes;\n\t\tthis.#enabledWarnings = new Set(this.#initialEnabledWarnings);\n\t}\n\tdisable(type) {\n\t\tthis.#enabledWarnings.delete(type);\n\t}\n\treset() {\n\t\tthis.#enabledWarnings = new Set(this.#initialEnabledWarnings);\n\t}\n\twarn(type, ...args) {\n\t\tif (this.#enabledWarnings.has(type)) console.warn(`⚠️ [${type}] `, ...args);\n\t}\n\twarnOnce(type, key, tag, ...args) {\n\t\tif (!this.#enabledWarnings.has(type)) return;\n\t\tlet warnings = this.#warned.get(key);\n\t\tif (!warnings) {\n\t\t\twarnings = /* @__PURE__ */ new Set();\n\t\t\tthis.#warned.set(key, warnings);\n\t\t}\n\t\tconst warningId = `${type}:${tag}`;\n\t\tif (warnings.has(warningId)) return;\n\t\twarnings.add(warningId);\n\t\tthis.warn(type, ...args);\n\t}\n};\nvar tgpuLogger = new TgpuLogger(!(DEV || TEST));\nconst logger = tgpuLogger;\nconst warn = tgpuLogger;\nfunction safeStringify(item) {\n\tif (Array.isArray(item)) return `[${item.map(safeStringify).join(\", \")}]`;\n\tconst asString = String(item);\n\tif (asString !== \"[object Object]\") return asString;\n\ttry {\n\t\treturn JSON.stringify(item);\n\t} catch (error) {\n\t\tlogger.warn(\"suspicious\", \"Error parsing JSON:\", error);\n\t\treturn \"\u003cinvalid json\u003e\";\n\t}\n}\nfunction niceStringify(item) {\n\tif (isVecInstance(item) || isMatInstance(item)) return item.toString();\n\tif (Array.isArray(item)) return `[${item.map(niceStringify).join(\", \")}]`;\n\tif (item \u0026\u0026 typeof item === \"object\") return `{ ${Object.entries(item).map(([key, value]) =\u003e `${key}: ${niceStringify(value)}`).join(\", \")} }`;\n\treturn String(item);\n}\nfunction normalizeExternalsV2(externals) {\n\tconst result = {};\n\tfor (const [key, value] of Object.entries(externals)) Object.defineProperty(result, key, {\n\t\tget: value,\n\t\tenumerable: true\n\t});\n\treturn result;\n}\nfunction normalizeMetadata(meta) {\n\tif (meta.v === 1) {\n\t\tconst rawExternals = meta.externals;\n\t\tconst externals = typeof rawExternals === \"function\" ? rawExternals : () =\u003e rawExternals;\n\t\treturn {\n\t\t\t...meta,\n\t\t\texternals\n\t\t};\n\t}\n\tif (meta.v === 2) {\n\t\tconst externals = normalizeExternalsV2(meta?.externals);\n\t\treturn {\n\t\t\t...meta,\n\t\t\texternals: () =\u003e externals\n\t\t};\n\t}\n\tthrow new Error(`Unrecognized TypeGPU metadata format: ${safeStringify(meta)}`);\n}\nvar version = \"0.12.3\";\nvar globalExt = globalThis;\nif (globalExt.__TYPEGPU_VERSION__ !== void 0) console.warn(`Found duplicate TypeGPU version. First was ${globalExt.__TYPEGPU_VERSION__}, this one is ${version}. This may cause unexpected behavior.`);\nglobalExt.__TYPEGPU_VERSION__ = version;\nglobalExt.__TYPEGPU_AUTONAME__ = (exp$1, label) =\u003e isNamable(exp$1) \u0026\u0026 isMarkedInternal(exp$1) \u0026\u0026 !getName(exp$1) ? exp$1.$name(label) : exp$1;\nvar nameMap = /* @__PURE__ */ new WeakMap();\nfunction isNamable(value) {\n\treturn !!value?.$name;\n}\nfunction isForwarded(value) {\n\treturn !!value?.[$getNameForward];\n}\nfunction soulOf(value) {\n\treturn value?.[$soul];\n}\nfunction getName(definition) {\n\tif (isForwarded(definition)) return getName(definition[$getNameForward]);\n\treturn nameMap.get(definition) ?? soulOf(definition)?.label ?? globalExt.__TYPEGPU_META__?.get(definition)?.name;\n}\nfunction setName(definition, name) {\n\tif (isForwarded(definition)) {\n\t\tsetName(definition[$getNameForward], name);\n\t\treturn;\n\t}\n\tnameMap.set(definition, name);\n\tconst soul = soulOf(definition);\n\tif (soul) soul.label = name;\n}\nvar metadataMap = /* @__PURE__ */ new WeakMap();\nfunction getFunctionMetadata(definition) {\n\tconst maybeRawMeta = globalExt.__TYPEGPU_META__?.get(definition);\n\tif (maybeRawMeta) {\n\t\tglobalExt.__TYPEGPU_META__?.delete(definition);\n\t\tconst normalized = normalizeMetadata(maybeRawMeta);\n\t\tmetadataMap.set(definition, normalized);\n\t\tif (maybeRawMeta.name \u0026\u0026 nameMap.get(definition) === void 0) nameMap.set(definition, maybeRawMeta.name);\n\t}\n\treturn metadataMap.get(definition);\n}\nfunction hasTinyestMetadata(value) {\n\treturn typeof value === \"function\" \u0026\u0026 !!getFunctionMetadata(value);\n}\nconst PERF = (DEV || TEST) \u0026\u0026 {\n\tget enabled() {\n\t\treturn !!globalExt.__TYPEGPU_MEASURE_PERF__;\n\t},\n\trecord(name, data) {\n\t\tconst records = globalExt.__TYPEGPU_PERF_RECORDS__ ??= /* @__PURE__ */ new Map();\n\t\tlet entries = records.get(name);\n\t\tif (!entries) {\n\t\t\tentries = [];\n\t\t\trecords.set(name, entries);\n\t\t}\n\t\tentries.push(data);\n\t}\n} || void 0;\nvar prefix = \"Invariant failed\";\nfunction invariant(condition, message) {\n\tif (condition) return;\n\tif (!DEV \u0026\u0026 !TEST) throw new Error(prefix);\n\tconst provided = typeof message === \"function\" ? message() : message;\n\tconst value = provided ? `${prefix}: ${provided}` : prefix;\n\tthrow new Error(value);\n}\nvar ResolutionError = class ResolutionError extends Error {\n\tcause;\n\ttrace;\n\tconstructor(cause, trace) {\n\t\tlet entries = trace.map((ancestor) =\u003e `- ${hasTinyestMetadata(ancestor) ? `fn*:${getName(ancestor)}` : ancestor}`);\n\t\tif (entries.length \u003e 20) entries = [\n\t\t\t...entries.slice(0, 11),\n\t\t\t\"...\",\n\t\t\t...entries.slice(-10)\n\t\t];\n\t\tsuper(`Resolution of the following tree failed:\\n${entries.join(\"\\n\")}: ${cause \u0026\u0026 typeof cause === \"object\" \u0026\u0026 \"message\" in cause ? cause.message : cause}`);\n\t\tthis.cause = cause;\n\t\tthis.trace = trace;\n\t\tObject.setPrototypeOf(this, ResolutionError.prototype);\n\t}\n\tappendToTrace(ancestor) {\n\t\tconst newTrace = [ancestor, ...this.trace];\n\t\treturn new ResolutionError(this.cause, newTrace);\n\t}\n};\nvar ExecutionError = class ExecutionError extends Error {\n\tcause;\n\ttrace;\n\tconstructor(cause, trace) {\n\t\tlet entries = trace.map((ancestor) =\u003e `- ${ancestor}`);\n\t\tif (entries.length \u003e 20) entries = [\n\t\t\t...entries.slice(0, 11),\n\t\t\t\"...\",\n\t\t\t...entries.slice(-10)\n\t\t];\n\t\tsuper(`Execution of the following tree failed:\\n${entries.join(\"\\n\")}: ${cause \u0026\u0026 typeof cause === \"object\" \u0026\u0026 \"message\" in cause ? cause.message : cause}`);\n\t\tthis.cause = cause;\n\t\tthis.trace = trace;\n\t\tObject.setPrototypeOf(this, ExecutionError.prototype);\n\t}\n\tappendToTrace(ancestor) {\n\t\tconst newTrace = [ancestor, ...this.trace];\n\t\treturn new ExecutionError(this.cause, newTrace);\n\t}\n};\nvar MissingSlotValueError = class MissingSlotValueError extends Error {\n\tslot;\n\tconstructor(slot$1) {\n\t\tsuper(`Missing value for '${slot$1}'`);\n\t\tthis.slot = slot$1;\n\t\tObject.setPrototypeOf(this, MissingSlotValueError.prototype);\n\t}\n};\nvar NotUniformError = class NotUniformError extends Error {\n\tconstructor(value) {\n\t\tsuper(`Buffer '${getName(value) ?? \"\u003cunnamed\u003e\"}' is not bindable as a uniform. Use .$usage('uniform') to allow it.`);\n\t\tObject.setPrototypeOf(this, NotUniformError.prototype);\n\t}\n};\nvar MissingBindGroupsError = class MissingBindGroupsError extends Error {\n\tconstructor(layouts) {\n\t\tsuper(`Missing bind groups for layouts: '${[...layouts].map((layout) =\u003e getName(layout) ?? \"\u003cunnamed\u003e\").join(\", \")}'. Please provide it using pipeline.with(bindGroup).(...)`);\n\t\tObject.setPrototypeOf(this, MissingBindGroupsError.prototype);\n\t}\n};\nvar MissingVertexBuffersError = class MissingVertexBuffersError extends Error {\n\tconstructor(layouts) {\n\t\tsuper(`Missing vertex buffers for layouts: '${[...layouts].map((layout) =\u003e getName(layout) ?? \"\u003cunnamed\u003e\").join(\", \")}'. Please provide it using pipeline.with(layout, buffer).(...)`);\n\t\tObject.setPrototypeOf(this, MissingVertexBuffersError.prototype);\n\t}\n};\nvar IllegalVarAccessError = class IllegalVarAccessError extends Error {\n\tconstructor(msg) {\n\t\tsuper(msg);\n\t\tObject.setPrototypeOf(this, IllegalVarAccessError.prototype);\n\t}\n};\nvar IllegalBufferAccessError = class IllegalBufferAccessError extends Error {\n\tconstructor(msg) {\n\t\tsuper(msg);\n\t\tObject.setPrototypeOf(this, IllegalBufferAccessError.prototype);\n\t}\n};\nvar WgslTypeError = class WgslTypeError extends Error {\n\tconstructor(msg) {\n\t\tsuper(msg);\n\t\tObject.setPrototypeOf(this, WgslTypeError.prototype);\n\t}\n};\nvar SignatureNotSupportedError = class SignatureNotSupportedError extends Error {\n\tconstructor(actual, candidates) {\n\t\tsuper(`Unsupported data types: ${actual.map((a) =\u003e a.type).join(\", \")}. Supported types are: ${candidates.map((r) =\u003e r.type).join(\", \")}.`);\n\t\tObject.setPrototypeOf(this, SignatureNotSupportedError.prototype);\n\t}\n};\nvar FiniteMathAssumptionError = class FiniteMathAssumptionError extends Error {\n\tconstructor(value, type) {\n\t\tsuper(`Cannot convert value '${value}' to type ${type.type} because of the Finite Math Assumption (see: https://www.w3.org/TR/WGSL/#finite-math-assumption)`);\n\t\tObject.setPrototypeOf(this, FiniteMathAssumptionError.prototype);\n\t}\n};\nconst vertexFormats = [\n\t\"uint8\",\n\t\"uint8x2\",\n\t\"uint8x4\",\n\t\"sint8\",\n\t\"sint8x2\",\n\t\"sint8x4\",\n\t\"unorm8\",\n\t\"unorm8x2\",\n\t\"unorm8x4\",\n\t\"snorm8\",\n\t\"snorm8x2\",\n\t\"snorm8x4\",\n\t\"uint16\",\n\t\"uint16x2\",\n\t\"uint16x4\",\n\t\"sint16\",\n\t\"sint16x2\",\n\t\"sint16x4\",\n\t\"unorm16\",\n\t\"unorm16x2\",\n\t\"unorm16x4\",\n\t\"snorm16\",\n\t\"snorm16x2\",\n\t\"snorm16x4\",\n\t\"float16\",\n\t\"float16x2\",\n\t\"float16x4\",\n\t\"float32\",\n\t\"float32x2\",\n\t\"float32x3\",\n\t\"float32x4\",\n\t\"uint32\",\n\t\"uint32x2\",\n\t\"uint32x3\",\n\t\"uint32x4\",\n\t\"sint32\",\n\t\"sint32x2\",\n\t\"sint32x3\",\n\t\"sint32x4\",\n\t\"unorm10-10-10-2\",\n\t\"unorm8x4-bgra\"\n];\nconst kindToDefaultFormatMap = {\n\tf32: \"float32\",\n\tvec2f: \"float32x2\",\n\tvec3f: \"float32x3\",\n\tvec4f: \"float32x4\",\n\tf16: \"float16\",\n\tvec2h: \"float16x2\",\n\tvec4h: \"float16x4\",\n\tu32: \"uint32\",\n\tvec2u: \"uint32x2\",\n\tvec3u: \"uint32x3\",\n\tvec4u: \"uint32x4\",\n\ti32: \"sint32\",\n\tvec2i: \"sint32x2\",\n\tvec3i: \"sint32x3\",\n\tvec4i: \"sint32x4\"\n};\nfunction undecorate(data) {\n\tif (isDecorated(data) || isLooseDecorated(data)) return data.inner;\n\treturn data;\n}\nfunction unptr(data) {\n\tif (isPtr(data)) return data.inner;\n\treturn data;\n}\nvar looseTypeLiterals = [\n\t\"unstruct\",\n\t\"disarray\",\n\t\"loose-decorated\",\n\t...vertexFormats\n];\nfunction isLooseData(data) {\n\treturn isMarkedInternal(data) \u0026\u0026 looseTypeLiterals.includes(data?.type);\n}\nfunction isDisarray(schema) {\n\treturn isMarkedInternal(schema) \u0026\u0026 schema?.type === \"disarray\";\n}\nfunction isUnstruct(schema) {\n\treturn isMarkedInternal(schema) \u0026\u0026 schema?.type === \"unstruct\";\n}\nfunction isLooseDecorated(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.type === \"loose-decorated\";\n}\nfunction getCustomAlignment(data) {\n\treturn data.attribs?.find(isAlignAttrib)?.params[0];\n}\nfunction getCustomSize(data) {\n\treturn data.attribs?.find(isSizeAttrib)?.params[0];\n}\nfunction getCustomLocation(data) {\n\treturn data.attribs?.find(isLocationAttrib)?.params[0];\n}\nfunction isData(value) {\n\treturn isWgslData(value) || isLooseData(value);\n}\nconst UnknownData = Symbol(\"UNKNOWN\");\nvar MatrixColumnsAccess = class {\n\tmatrix;\n\tconstructor(matrix) {\n\t\tthis.matrix = matrix;\n\t}\n};\nfunction fallthroughCopyOrigin(origin) {\n\tif (origin === \"runtime\" || origin === \"constant\") return origin;\n\treturn \"runtime\";\n}\nfunction isAlias(snippet) {\n\treturn !(snippet.origin === \"runtime\" || snippet.origin === \"constant\");\n}\nconst originToPtrParams = {\n\tuniform: {\n\t\tspace: \"uniform\",\n\t\taccess: \"read\"\n\t},\n\treadonly: {\n\t\tspace: \"storage\",\n\t\taccess: \"read\"\n\t},\n\tmutable: {\n\t\tspace: \"storage\",\n\t\taccess: \"read-write\"\n\t},\n\tworkgroup: {\n\t\tspace: \"workgroup\",\n\t\taccess: \"read-write\"\n\t},\n\tprivate: {\n\t\tspace: \"private\",\n\t\taccess: \"read-write\"\n\t},\n\tfunction: {\n\t\tspace: \"function\",\n\t\taccess: \"read-write\"\n\t},\n\t\"local-def\": {\n\t\tspace: \"function\",\n\t\taccess: \"read-write\"\n\t}\n};\nvar SnippetImpl = class {\n\tvalue;\n\tdataType;\n\torigin;\n\tpossibleSideEffects;\n\tconstructor(value, dataType, origin, possibleSideEffects) {\n\t\tthis.value = value;\n\t\tthis.dataType = dataType;\n\t\tthis.origin = origin;\n\t\tthis.possibleSideEffects = possibleSideEffects;\n\t}\n};\nfunction isSnippet(value) {\n\treturn value instanceof SnippetImpl;\n}\nfunction isSnippetNumeric(snippet) {\n\treturn isNumericSchema(snippet.dataType);\n}\nfunction snip(value, dataType, origin, possibleSideEffects = true) {\n\tif (DEV \u0026\u0026 isSnippet(value)) throw new Error(\"Cannot nest snippets\");\n\treturn new SnippetImpl(value, undecorate(dataType), origin, possibleSideEffects);\n}\nfunction withDataType(dataType, snippet) {\n\treturn new SnippetImpl(snippet.value, dataType, snippet.origin, snippet.possibleSideEffects);\n}\nfunction withValue(value, snippet) {\n\treturn new SnippetImpl(value, snippet.dataType, snippet.origin, snippet.possibleSideEffects);\n}\nfunction withSideEffects(possibleSideEffects, snippet) {\n\treturn new SnippetImpl(snippet.value, snippet.dataType, snippet.origin, possibleSideEffects);\n}\nfunction noSideEffects(snippet) {\n\treturn withSideEffects(false, snippet);\n}\nfunction isSlot(value) {\n\treturn value?.resourceType === \"slot\";\n}\nfunction isLazy(value) {\n\treturn value?.resourceType === \"lazy\";\n}\nfunction isProviding(value) {\n\treturn value?.[$providing] !== void 0;\n}\nfunction isAccessor(value) {\n\treturn value?.resourceType === \"accessor\";\n}\nfunction isMutableAccessor(value) {\n\treturn value?.resourceType === \"mutable-accessor\";\n}\nvar NormalState = class {\n\ttype = \"normal\";\n};\nvar CodegenState = class {\n\ttype = \"codegen\";\n};\nvar SimulationState = class {\n\ttype = \"simulate\";\n\tbuffers;\n\tvars;\n\tconstructor(buffers, vars) {\n\t\tthis.buffers = buffers;\n\t\tthis.vars = vars;\n\t}\n};\nfunction isSelfResolvable(value) {\n\treturn !!value?.[$resolve];\n}\nfunction getOwnSnippet(value) {\n\treturn value?.[$ownSnippet];\n}\nfunction isGPUCallable(value) {\n\treturn !!value?.[$gpuCallable];\n}\nfunction hasCast(value) {\n\treturn !!value?.[$cast];\n}\nfunction isKnownAtComptime(snippet) {\n\treturn (typeof snippet.value !== \"string\" || snippet.dataType === UnknownData) \u0026\u0026 getOwnSnippet(snippet.value) === void 0;\n}\nfunction isWgsl(value) {\n\treturn typeof value === \"number\" || typeof value === \"boolean\" || isSelfResolvable(value) || isWgslData(value) || isSlot(value) || isLazy(value) || isProviding(value);\n}\nfunction isGPUBuffer(value) {\n\treturn !!value \u0026\u0026 typeof value === \"object\" \u0026\u0026 \"getMappedRange\" in value \u0026\u0026 \"mapAsync\" in value;\n}\nfunction isBuffer(value) {\n\treturn value.resourceType === \"buffer\";\n}\nfunction isUsableAsUniform(buffer$1) {\n\treturn !!buffer$1.usableAsUniform;\n}\nfunction isUsableAsStorage(value) {\n\treturn !!value?.usableAsStorage;\n}\nvar insideTgpuFn = false;\nfunction provideInsideTgpuFn(callback) {\n\tif (insideTgpuFn) return callback();\n\ttry {\n\t\tinsideTgpuFn = true;\n\t\treturn callback();\n\t} finally {\n\t\tinsideTgpuFn = false;\n\t}\n}\nfunction isInsideTgpuFn() {\n\treturn insideTgpuFn;\n}\nvar resolutionCtx;\nfunction provideCtx(ctx, callback) {\n\tif (resolutionCtx === ctx) return callback();\n\tconst prevCtx = resolutionCtx;\n\tresolutionCtx = ctx;\n\ttry {\n\t\treturn callback();\n\t} finally {\n\t\tresolutionCtx = prevCtx;\n\t}\n}\nfunction getResolutionCtx() {\n\treturn resolutionCtx;\n}\nconst topLevelState = new NormalState();\nfunction getExecMode() {\n\treturn resolutionCtx?.mode ?? topLevelState;\n}\nfunction inCodegenMode() {\n\treturn resolutionCtx?.mode.type === \"codegen\";\n}\nfunction stitch(strings, ...snippets) {\n\tconst ctx = getResolutionCtx();\n\tfunction resolveSnippet(maybeSnippet) {\n\t\treturn isSnippet(maybeSnippet) ? ctx.resolveSnippet(maybeSnippet).value : maybeSnippet;\n\t}\n\tlet result = \"\";\n\tfor (let i = 0; i \u003c strings.length; ++i) {\n\t\tresult += strings[i];\n\t\tconst snippet = snippets[i];\n\t\tif (Array.isArray(snippet)) result += snippet.filter((s) =\u003e s !== void 0).map(resolveSnippet).join(\", \");\n\t\telse if (snippet) result += resolveSnippet(snippet);\n\t}\n\treturn result;\n}\nfunction ptrFn(inner) {\n\treturn INTERNAL_createPtr(\"function\", inner, \"read-write\");\n}\nfunction INTERNAL_createPtr(addressSpace, inner, access, implicit = false) {\n\treturn {\n\t\t[$internal]: {},\n\t\ttype: \"ptr\",\n\t\taddressSpace,\n\t\tinner,\n\t\taccess,\n\t\timplicit,\n\t\ttoString: () =\u003e `ptr\u003c${addressSpace}, ${inner}, ${access}\u003e`\n\t};\n}\nfunction createPtrFromOrigin(origin, innerDataType) {\n\tconst ptrParams = originToPtrParams[origin];\n\tif (ptrParams) return INTERNAL_createPtr(ptrParams.space, innerDataType, ptrParams.access);\n}\nfunction implicitFrom(ptr) {\n\treturn INTERNAL_createPtr(ptr.addressSpace, ptr.inner, ptr.access, true);\n}\nfunction explicitFrom(ptr) {\n\treturn INTERNAL_createPtr(ptr.addressSpace, ptr.inner, ptr.access, false);\n}\nconst _ref = (() =\u003e {\n\tconst impl = ((value) =\u003e INTERNAL_createRef(value));\n\tsetName(impl, \"ref\");\n\timpl.toString = () =\u003e \"ref\";\n\timpl[$internal] = true;\n\timpl[$gpuCallable] = { call(ctx, [value]) {\n\t\tif (value.origin === \"argument\") throw new WgslTypeError(stitch`d.ref(${value}) is illegal, cannot take a reference of an argument. Copy the value first, and take a reference of the copy.`);\n\t\tif (value.origin === \"constant-immutable-def\" || value.origin === \"runtime-immutable-def\") {\n\t\t\tconst typeStr = ctx.resolve(value.dataType).value;\n\t\t\tthrow new WgslTypeError(stitch`d.ref(${value}) is illegal, cannot take a reference to a constant.\n-----\n- Try 'd.ref(${typeStr}(${value}));' instead to create a new referencable value.\n-----`);\n\t\t}\n\t\tif (isAlias(value) \u0026\u0026 isNaturallyEphemeral(value.dataType)) {\n\t\t\tconst typeStr = ctx.resolve(value.dataType).value;\n\t\t\tthrow new WgslTypeError(stitch`d.ref(${value}) is illegal, cannot take a reference to a scalar value.\n-----\n- Try 'd.ref(${typeStr}(${value}));' instead to create a new referencable scalar.\n-----`);\n\t\t}\n\t\tif (isPtr(value.dataType)) return withDataType(explicitFrom(value.dataType), value);\n\t\tconst ptrType = createPtrFromOrigin(value.origin, value.dataType);\n\t\treturn snip(new RefOperator(value, ptrType), ptrType ?? UnknownData, \"runtime\", value.possibleSideEffects);\n\t} };\n\treturn impl;\n})();\nfunction isRef(value) {\n\treturn value?.[$internal]?.type === \"ref\";\n}\nfunction INTERNAL_createRef(value) {\n\tconst target = {\n\t\t[$internal]: { type: \"ref\" },\n\t\tget $() {\n\t\t\treturn value;\n\t\t},\n\t\tset $(newValue) {\n\t\t\tif (newValue \u0026\u0026 typeof newValue === \"object\") for (const key of Object.keys(newValue)) value[key] = newValue[key];\n\t\t\telse value = newValue;\n\t\t}\n\t};\n\tif (value === void 0 || value === null) throw new Error(\"Cannot create a ref from undefined or null\");\n\tif (typeof value === \"object\") return new Proxy(target, {\n\t\tget(target$1, prop) {\n\t\t\tif (prop in target$1) return target$1[prop];\n\t\t\treturn value[prop];\n\t\t},\n\t\tset(_target, prop, propValue) {\n\t\t\tif (prop === $internal) return false;\n\t\t\tif (prop === \"$\") return Reflect.set(target, prop, propValue);\n\t\t\treturn Reflect.set(value, prop, propValue);\n\t\t}\n\t});\n\treturn target;\n}\nvar RefOperator = class {\n\t[$internal];\n\tsnippet;\n\t#ptrType;\n\tconstructor(snippet, ptrType) {\n\t\tthis[$internal] = true;\n\t\tthis.snippet = snippet;\n\t\tthis.#ptrType = ptrType;\n\t}\n\tget [$ownSnippet]() {\n\t\tif (!this.#ptrType) throw new Error(stitch`Cannot take a reference of ${this.snippet}`);\n\t\treturn snip(this, this.#ptrType, this.snippet.origin, this.snippet.possibleSideEffects);\n\t}\n\t[$resolve]() {\n\t\tif (!this.#ptrType) throw new Error(stitch`Cannot take a reference of ${this.snippet}`);\n\t\treturn snip(stitch`(\u0026${this.snippet})`, this.#ptrType, this.snippet.origin, this.snippet.possibleSideEffects);\n\t}\n};\nfunction derefSnippet(snippet) {\n\tif (!isPtr(snippet.dataType)) return snippet;\n\tconst innerType = snippet.dataType.inner;\n\tif (snippet.value instanceof RefOperator) return snip(stitch`${snippet.value.snippet}`, innerType, snippet.origin, snippet.possibleSideEffects);\n\treturn snip(stitch`(*${snippet})`, innerType, snippet.origin, snippet.possibleSideEffects);\n}\nfunction schemaCallWrapper(schema, item) {\n\tconst callSchema = schema;\n\tif (hasCast(callSchema)) return callSchema[$cast](item);\n\tif (typeof callSchema !== \"function\") return item;\n\treturn item === void 0 ? callSchema() : callSchema(item);\n}\nfunction schemaCallWrapperGPU(ctx, schema, item) {\n\tif (!isGPUCallable(schema)) return item;\n\tconst callSchema = schema;\n\treturn item === void 0 || item.value === void 0 ? callSchema[$gpuCallable].call(ctx, []) : callSchema[$gpuCallable].call(ctx, [item]);\n}\nfunction assertExhaustive$2(x, location$1) {\n\tthrow new Error(`Failed to handle ${x} at ${location$1}`);\n}\nfunction accessStructProp(target, propName) {\n\tinvariant(isWgslStruct(target.dataType) || isUnstruct(target.dataType), \"Expected snippet type to be struct/unstruct.\");\n\tlet propType = target.dataType.propTypes[propName];\n\tif (!propType) return;\n\tpropType = undecorate(propType);\n\treturn snip(stitch`${target}.${propName}`, propType, target.origin, target.possibleSideEffects);\n}\nvar INFINITE_RANK = {\n\trank: Number.POSITIVE_INFINITY,\n\taction: \"none\"\n};\nfunction getAutoConversionRank(src, dest) {\n\tconst trueSrc = undecorate(src);\n\tconst trueDst = undecorate(dest);\n\tif (trueSrc.type === trueDst.type) {\n\t\tif (trueSrc.type === \"struct\" \u0026\u0026 trueSrc !== trueDst) return {\n\t\t\trank: 1,\n\t\t\taction: \"cast\",\n\t\t\ttargetType: dest\n\t\t};\n\t\treturn {\n\t\t\trank: 0,\n\t\t\taction: \"none\"\n\t\t};\n\t}\n\tif (trueSrc.type === \"abstractFloat\") {\n\t\tif (trueDst.type === \"f32\") return {\n\t\t\trank: 1,\n\t\t\taction: \"none\"\n\t\t};\n\t\tif (trueDst.type === \"f16\") return {\n\t\t\trank: 2,\n\t\t\taction: \"none\"\n\t\t};\n\t}\n\tif (trueSrc.type === \"abstractInt\") {\n\t\tif (trueDst.type === \"i32\") return {\n\t\t\trank: 3,\n\t\t\taction: \"none\"\n\t\t};\n\t\tif (trueDst.type === \"u32\") return {\n\t\t\trank: 4,\n\t\t\taction: \"none\"\n\t\t};\n\t\tif (trueDst.type === \"abstractFloat\") return {\n\t\t\trank: 5,\n\t\t\taction: \"none\"\n\t\t};\n\t\tif (trueDst.type === \"f32\") return {\n\t\t\trank: 6,\n\t\t\taction: \"none\"\n\t\t};\n\t\tif (trueDst.type === \"f16\") return {\n\t\t\trank: 7,\n\t\t\taction: \"none\"\n\t\t};\n\t}\n\tif (isVec(trueSrc) \u0026\u0026 isVec(trueDst) \u0026\u0026 trueSrc.type[3] === trueDst.type[3]) return getAutoConversionRank(trueSrc.primitive, trueDst.primitive);\n\tif (isMat(trueSrc) \u0026\u0026 isMat(trueDst) \u0026\u0026 trueSrc.type[3] === trueDst.type[3]) return {\n\t\trank: 0,\n\t\taction: \"none\"\n\t};\n\treturn INFINITE_RANK;\n}\nfunction getImplicitConversionRank(src, dest) {\n\tconst trueSrc = undecorate(src);\n\tconst trueDst = undecorate(dest);\n\tif (isPtr(trueSrc) \u0026\u0026 trueSrc.implicit \u0026\u0026 getAutoConversionRank(trueSrc.inner, trueDst).rank \u003c Number.POSITIVE_INFINITY) return {\n\t\trank: 0,\n\t\taction: \"deref\"\n\t};\n\tif (isPtr(trueDst) \u0026\u0026 getAutoConversionRank(trueSrc, trueDst.inner).rank \u003c Number.POSITIVE_INFINITY) return {\n\t\trank: 1,\n\t\taction: \"ref\"\n\t};\n\tconst primitivePreference = {\n\t\tf32: 0,\n\t\tf16: 1,\n\t\ti32: 2,\n\t\tu32: 3,\n\t\tbool: 4\n\t};\n\tif (trueSrc.type in primitivePreference \u0026\u0026 trueDst.type in primitivePreference) {\n\t\tconst srcType = trueSrc.type;\n\t\tconst destType = trueDst.type;\n\t\tif (srcType !== destType) {\n\t\t\tconst srcPref = primitivePreference[srcType];\n\t\t\treturn {\n\t\t\t\trank: primitivePreference[destType] \u003c srcPref ? 10 : 20,\n\t\t\t\taction: \"cast\",\n\t\t\t\ttargetType: trueDst\n\t\t\t};\n\t\t}\n\t}\n\tif ((trueSrc.type === \"u32\" || trueSrc.type === \"i32\") \u0026\u0026 trueDst.type === \"abstractFloat\") return {\n\t\trank: 1,\n\t\taction: \"cast\",\n\t\ttargetType: trueDst.concretized\n\t};\n\tif (trueSrc.type === \"abstractFloat\") {\n\t\tif (trueDst.type === \"i32\") return {\n\t\t\trank: 2,\n\t\t\taction: \"cast\",\n\t\t\ttargetType: trueDst\n\t\t};\n\t\tif (trueDst.type === \"u32\") return {\n\t\t\trank: 3,\n\t\t\taction: \"cast\",\n\t\t\ttargetType: trueDst\n\t\t};\n\t}\n\treturn INFINITE_RANK;\n}\nfunction getConversionRank(src, dest, allowImplicit) {\n\tconst autoRank = getAutoConversionRank(src, dest);\n\tif (autoRank.rank \u003c Number.POSITIVE_INFINITY) return autoRank;\n\tif (allowImplicit) return getImplicitConversionRank(src, dest);\n\treturn INFINITE_RANK;\n}\nfunction findBestType(types, uniqueTypes, allowImplicit) {\n\tlet bestResult;\n\tfor (const targetType of uniqueTypes) {\n\t\tlet destType = targetType;\n\t\tconst details = [];\n\t\tlet sum = 0;\n\t\tfor (const sourceType of types) {\n\t\t\tconst conversion = getConversionRank(sourceType, targetType, allowImplicit);\n\t\t\tsum += conversion.rank;\n\t\t\tif (conversion.rank === Number.POSITIVE_INFINITY) break;\n\t\t\tdetails.push(conversion);\n\t\t\tif (conversion.action === \"cast\") destType = conversion.targetType;\n\t\t}\n\t\tif (sum \u003c (bestResult?.sum ?? Number.POSITIVE_INFINITY)) bestResult = {\n\t\t\ttype: destType,\n\t\t\tdetails,\n\t\t\tsum\n\t\t};\n\t}\n\tif (!bestResult) return;\n\tconst actions = bestResult.details.map((detail, index) =\u003e ({\n\t\tsourceIndex: index,\n\t\taction: detail.action,\n\t\t...detail.action === \"cast\" \u0026\u0026 { targetType: detail.targetType }\n\t}));\n\treturn {\n\t\ttargetType: bestResult.type,\n\t\tactions,\n\t\thasImplicitConversions: actions.some((action) =\u003e action.action === \"cast\")\n\t};\n}\nfunction getBestConversion(types, targetTypes) {\n\tif (types.length === 0) return void 0;\n\tconst uniqueTargetTypes = [...new Set((targetTypes || types).map(undecorate))];\n\tconst explicitResult = findBestType(types, uniqueTargetTypes, false);\n\tif (explicitResult) return explicitResult;\n\tconst implicitResult = findBestType(types, uniqueTargetTypes, true);\n\tif (implicitResult) return implicitResult;\n}\nfunction applyActionToSnippet(ctx, snippet, action, targetType) {\n\tif (action.action === \"none\") {\n\t\tif (targetType === snippet.dataType) return snippet;\n\t\treturn withDataType(targetType, snippet);\n\t}\n\tswitch (action.action) {\n\t\tcase \"ref\": return snip(new RefOperator(snippet, targetType), targetType, snippet.origin, snippet.possibleSideEffects);\n\t\tcase \"deref\": return derefSnippet(snippet);\n\t\tcase \"cast\":\n\t\t\tif (isWgslStruct(snippet.dataType) \u0026\u0026 isWgslStruct(targetType)) {\n\t\t\t\tconst typeName = getName(snippet.dataType) ?? \"\u003cunnamed\u003e\";\n\t\t\t\tconst targetName = getName(targetType) ?? \"\u003cunnamed\u003e\";\n\t\t\t\tif (snippet.possibleSideEffects) throw new Error(`Cannot resolve struct cast from '${typeName}' to '${targetName}'. Store the value to a variable first, then cast it.`);\n\t\t\t\tconst propSnips = Object.entries(targetType.propTypes).map(([key, dataType]) =\u003e {\n\t\t\t\t\tconst accessedProp = accessStructProp(snippet, key);\n\t\t\t\t\tif (!accessedProp) throw new Error(`Cannot auto-convert struct '${typeName}' to '${targetName}' because the property '${key}' is missing.`);\n\t\t\t\t\tconst converted = convertToCommonType(ctx, [accessedProp], [dataType]);\n\t\t\t\t\tif (!converted || !converted[0]) throw new Error(`Cannot auto-convert struct '${typeName}' to '${targetName}' because type '${getName(accessedProp.dataType) ?? \"\u003cunnamed\u003e\"}' is not convertible to '${getName(undecorate(dataType)) ?? \"\u003cunnamed\u003e\"}'.`);\n\t\t\t\t\treturn converted[0];\n\t\t\t\t});\n\t\t\t\tconst targetSnippet = ctx.resolve(targetType).value;\n\t\t\t\treturn snip(`${targetSnippet}(${propSnips.map((snip$1) =\u003e snip$1.value).join(\", \")})`, targetType, \"runtime\", false);\n\t\t\t}\n\t\t\treturn schemaCallWrapperGPU(ctx, targetType, snippet);\n\t\tdefault: assertExhaustive$2(action.action, \"applyActionToSnippet\");\n\t}\n}\nfunction unify(inTypes, restrictTo) {\n\tif (inTypes.some((type) =\u003e type === UnknownData)) return;\n\tconst conversion = getBestConversion(inTypes, restrictTo);\n\tif (!conversion) return;\n\treturn inTypes.map((type) =\u003e isVec(type) || isMat(type) ? type : conversion.targetType);\n}\nfunction unifyStrict(inTypes, restrictTo) {\n\tif (inTypes.some((type) =\u003e type === UnknownData)) return;\n\tconst conversion = findBestType(inTypes, [...new Set((restrictTo || inTypes).map(undecorate))], false);\n\tif (!conversion) return;\n\treturn inTypes.map((type) =\u003e isVec(type) || isMat(type) ? type : conversion.targetType);\n}\nfunction convertToCommonType(ctx, values, restrictTo, verbose = true) {\n\tconst types = values.map((value) =\u003e value.dataType);\n\tif (types.some((type) =\u003e type === UnknownData)) return;\n\tinvariant(!(Array.isArray(restrictTo) \u0026\u0026 restrictTo.length === 0), \"Internal error, expected 'restrictTo' to not be an empty array.\");\n\tconst conversion = getBestConversion(types, restrictTo);\n\tif (!conversion) return;\n\tif (verbose \u0026\u0026 conversion.hasImplicitConversions) logger.warn(\"implicit-conversion\", `Implicit conversions from [\\n${values.map((v) =\u003e `  ${ctx.resolveSnippet(v).value}: ${safeStringify(v.dataType)}`).join(\",\\n\")}\\n] to ${conversion.targetType.type} are supported, but not recommended.\nConsider using explicit conversions instead.`);\n\treturn values.map((value, index) =\u003e {\n\t\tconst action = conversion.actions[index];\n\t\tinvariant(action, \"Action should not be undefined\");\n\t\treturn applyActionToSnippet(ctx, value, action, conversion.targetType);\n\t});\n}\nfunction tryConvertSnippet(ctx, snippet, targetDataTypes, verbose = true) {\n\tconst targets = Array.isArray(targetDataTypes) ? targetDataTypes : [targetDataTypes];\n\tconst { value, dataType, origin, possibleSideEffects } = snippet;\n\tif (targets.length === 1) {\n\t\tconst target = targets[0];\n\t\tif (target === dataType) return snip(value, target, origin, possibleSideEffects);\n\t\tif (dataType === UnknownData) return ctx.resolveSnippet(snip(value, target, origin, possibleSideEffects));\n\t}\n\tconst converted = convertToCommonType(ctx, [snippet], targets, verbose);\n\tif (converted) return converted[0];\n\tthrow new WgslTypeError(`Cannot convert value of type '${String(dataType)}' to any of the target types: [${targets.map((t) =\u003e t.type).join(\", \")}]`);\n}\nfunction convertStructValues(ctx, structType, values) {\n\treturn Object.entries(structType.propTypes).map(([key, targetType]) =\u003e {\n\t\tconst val = values[key];\n\t\tif (!val) throw new Error(`Missing property ${key}`);\n\t\treturn convertToCommonType(ctx, [val], [targetType])?.[0] ?? val;\n\t});\n}\nfunction callableSchema(options) {\n\tconst impl = ((...args) =\u003e {\n\t\treturn options.normalImpl(...args);\n\t});\n\tsetName(impl, options.name);\n\timpl.toString = () =\u003e options.name;\n\timpl[$gpuCallable] = {\n\t\tget strictSignature() {},\n\t\tcall(ctx, args) {\n\t\t\tconst argTypes = options.argTypes(...args.map((s) =\u003e {\n\t\t\t\tif (isPtr(s.dataType) \u0026\u0026 s.dataType.implicit) return s.dataType.inner;\n\t\t\t\treturn s.dataType;\n\t\t\t}));\n\t\t\tconst converted = args.map((s, idx) =\u003e {\n\t\t\t\tconst argType = argTypes[idx];\n\t\t\t\tif (!argType) throw new Error(\"Function called with invalid arguments\");\n\t\t\t\treturn tryConvertSnippet(ctx, s, argType, false);\n\t\t\t});\n\t\t\tlet result;\n\t\t\tif (converted.every((s) =\u003e isKnownAtComptime(s))) {\n\t\t\t\tctx.pushMode(new NormalState());\n\t\t\t\ttry {\n\t\t\t\t\tresult = snip(options.normalImpl(...converted.map((s) =\u003e s.value)), options.schema(), \"constant\");\n\t\t\t\t} finally {\n\t\t\t\t\tctx.popMode(\"normal\");\n\t\t\t\t}\n\t\t\t} else result = options.codegenImpl(ctx, converted);\n\t\t\tif (!args.some((a) =\u003e a.possibleSideEffects)) return noSideEffects(result);\n\t\t\treturn result;\n\t\t}\n\t};\n\treturn impl;\n}\nvar boolCast = callableSchema({\n\tname: \"bool\",\n\tschema: () =\u003e bool,\n\targTypes: (arg) =\u003e arg ? [arg] : [],\n\tnormalImpl(v = false) {\n\t\tif (typeof v === \"boolean\") return v;\n\t\tif (typeof v === \"number\") {\n\t\t\tif (!Number.isFinite(v)) throw new FiniteMathAssumptionError(v, bool);\n\t\t\treturn Boolean(v);\n\t\t}\n\t\tthrow new Error(`Invalid argument type for 'd.bool'. Got '${typeof v}', expected number or boolean`);\n\t},\n\tcodegenImpl: (ctx, [v]) =\u003e {\n\t\tif (v === void 0) return ctx.gen.typeInstantiation(bool, []);\n\t\tif (isBool(v.dataType) || isSnippetNumeric(v)) return ctx.gen.typeInstantiation(bool, [v]);\n\t\tif (v.dataType === UnknownData) throw new WgslTypeError(\"Unknown argument type for 'd.bool'.\");\n\t\tthrow new SignatureNotSupportedError([v.dataType], [\n\t\t\tbool,\n\t\t\tu32,\n\t\t\ti32,\n\t\t\tf32,\n\t\t\tf16\n\t\t]);\n\t}\n});\nconst bool = Object.assign(boolCast, {\n\t[$internal]: {},\n\ttype: \"bool\"\n});\nvar u32Cast = callableSchema({\n\tname: \"u32\",\n\tschema: () =\u003e u32,\n\targTypes: (arg) =\u003e arg ? [arg] : [],\n\tnormalImpl(v) {\n\t\tif (v === void 0) return 0;\n\t\tif (typeof v === \"boolean\") return v ? 1 : 0;\n\t\tif (!Number.isFinite(v)) throw new FiniteMathAssumptionError(v, u32);\n\t\tif (!Number.isInteger(v)) {\n\t\t\tconst truncated = Math.trunc(v);\n\t\t\tif (truncated \u003c 0) return 0;\n\t\t\tif (truncated \u003e 4294967295) return 4294967295;\n\t\t\treturn truncated;\n\t\t}\n\t\treturn (v \u0026 4294967295) \u003e\u003e\u003e 0;\n\t},\n\tcodegenImpl: (ctx, [v]) =\u003e ctx.gen.typeInstantiation(u32, v ? [v] : [])\n});\nconst u32 = Object.assign(u32Cast, {\n\t[$internal]: {},\n\ttype: \"u32\"\n});\nvar i32Cast = callableSchema({\n\tname: \"i32\",\n\tschema: () =\u003e i32,\n\targTypes: (arg) =\u003e arg ? [arg] : [],\n\tnormalImpl(v) {\n\t\tif (v === void 0) return 0;\n\t\tif (typeof v === \"boolean\") return v ? 1 : 0;\n\t\tif (!Number.isFinite(v)) throw new FiniteMathAssumptionError(v, i32);\n\t\treturn v | 0;\n\t},\n\tcodegenImpl: (ctx, [v]) =\u003e ctx.gen.typeInstantiation(i32, v ? [v] : [])\n});\nconst i32 = Object.assign(i32Cast, {\n\t[$internal]: {},\n\ttype: \"i32\"\n});\nvar f32Cast = callableSchema({\n\tname: \"f32\",\n\tschema: () =\u003e f32,\n\targTypes: (arg) =\u003e arg ? [arg] : [],\n\tnormalImpl(v) {\n\t\tif (v === void 0) return 0;\n\t\tif (typeof v === \"boolean\") return v ? 1 : 0;\n\t\tif (!Number.isFinite(v)) throw new FiniteMathAssumptionError(v, f32);\n\t\treturn Math.fround(v);\n\t},\n\tcodegenImpl: (ctx, [v]) =\u003e ctx.gen.typeInstantiation(f32, v ? [v] : [])\n});\nconst f32 = Object.assign(f32Cast, {\n\t[$internal]: {},\n\ttype: \"f32\"\n});\nvar buf32$1 = /* @__PURE__ */ new ArrayBuffer(4);\nvar f32arr$1 = new Float32Array(buf32$1);\nvar u32arr$1 = new Uint32Array(buf32$1);\nfunction toHalfBits(x) {\n\tf32arr$1[0] = x;\n\tconst bits = u32arr$1[0];\n\tconst sign$1 = bits \u003e\u003e\u003e 31 \u0026 1;\n\tlet exp$1 = bits \u003e\u003e\u003e 23 \u0026 255;\n\tconst mant = bits \u0026 8388607;\n\tif (exp$1 === 255) return sign$1 \u003c\u003c 15 | 31744 | (mant ? 512 : 0);\n\texp$1 = exp$1 - 127 + 15;\n\tif (exp$1 \u003c= 0) {\n\t\tif (exp$1 \u003c -10) return sign$1 \u003c\u003c 15;\n\t\tconst full = mant | 8388608;\n\t\tconst shift = 14 - exp$1;\n\t\tconst roundBit$1 = full \u003e\u003e\u003e shift - 1 \u0026 1;\n\t\tconst sticky$1 = full \u0026 (1 \u003c\u003c shift - 1) - 1 ? 1 : 0;\n\t\tlet half$1 = full \u003e\u003e\u003e shift;\n\t\tif (roundBit$1 \u0026 (sticky$1 | half$1 \u0026 1)) half$1 += 1;\n\t\treturn sign$1 \u003c\u003c 15 | half$1;\n\t}\n\tif (exp$1 \u003e= 31) return sign$1 \u003c\u003c 15 | 31744;\n\tconst roundBit = mant \u003e\u003e\u003e 12 \u0026 1;\n\tconst sticky = mant \u0026 4095 ? 1 : 0;\n\tlet half = mant \u003e\u003e\u003e 13;\n\tif (roundBit \u0026 (sticky | half \u0026 1)) half += 1;\n\tif (half === 1024) {\n\t\thalf = 0;\n\t\t++exp$1;\n\t\tif (exp$1 \u003e= 31) return sign$1 \u003c\u003c 15 | 31744;\n\t}\n\treturn sign$1 \u003c\u003c 15 | exp$1 \u003c\u003c 10 | half;\n}\nfunction fromHalfBits(h) {\n\tconst sign$1 = h \u0026 32768 ? -1 : 1;\n\tconst exp$1 = h \u003e\u003e 10 \u0026 31;\n\tconst mant = h \u0026 1023;\n\tif (exp$1 === 0) return mant ? sign$1 * mant * 2 ** -24 : sign$1 * 0;\n\tif (exp$1 === 31) return mant ? NaN : sign$1 === 1 ? Number.POSITIVE_INFINITY : Number.NEGATIVE_INFINITY;\n\treturn sign$1 * (1 + mant / 1024) * 2 ** (exp$1 - 15);\n}\nfunction roundToF16(x) {\n\treturn fromHalfBits(toHalfBits(x));\n}\nvar f16Cast = callableSchema({\n\tname: \"f16\",\n\tschema: () =\u003e f16,\n\targTypes: (arg) =\u003e arg ? [arg] : [],\n\tnormalImpl(v) {\n\t\tif (v === void 0) return 0;\n\t\tif (typeof v === \"boolean\") return v ? 1 : 0;\n\t\tif (!Number.isFinite(v)) throw new FiniteMathAssumptionError(v, f16);\n\t\treturn roundToF16(v);\n\t},\n\tcodegenImpl: (ctx, [v]) =\u003e ctx.gen.typeInstantiation(f16, v ? [v] : [])\n});\nconst f16 = Object.assign(f16Cast, {\n\t[$internal]: {},\n\ttype: \"f16\"\n});\nconst abstractInt = {\n\t[$internal]: {},\n\ttype: \"abstractInt\",\n\ttoString() {\n\t\treturn \"abstractInt\";\n\t},\n\tconcretized: i32\n};\nconst abstractFloat = {\n\t[$internal]: {},\n\ttype: \"abstractFloat\",\n\ttoString() {\n\t\treturn \"abstractFloat\";\n\t},\n\tconcretized: f32\n};\nfunction numericLiteralToSnippet(value) {\n\tif (value \u003e= 2 ** 63 || value \u003c -(2 ** 63)) return snip(value, abstractFloat, \"constant\", false);\n\tif (Number.isInteger(value)) {\n\t\tif (!Number.isSafeInteger(value)) logger.warn(\"precision-loss\", `The integer ${value} exceeds the safe integer range and may have lost precision.`);\n\t\treturn snip(value, abstractInt, \"constant\", false);\n\t}\n\treturn snip(value, abstractFloat, \"constant\", false);\n}\nfunction concretize(type) {\n\tif (type.type === \"abstractFloat\") return f32;\n\tif (type.type === \"abstractInt\") return i32;\n\treturn type;\n}\nfunction concretizeSnippet(snippet) {\n\treturn withDataType(concretize(snippet.dataType), snippet);\n}\nfunction coerceToSnippet(value) {\n\tif (isSnippet(value)) return value;\n\tif (isRef(value)) throw new Error(\"Cannot use refs (d.ref(...)) from the outer scope.\");\n\tconst ownSnippet = getOwnSnippet(value);\n\tif (ownSnippet) return ownSnippet;\n\tif (isVecInstance(value) || isMatInstance(value)) return snip(value, WORKAROUND_getSchema(value), \"constant\", false);\n\tif (typeof value === \"number\") return numericLiteralToSnippet(value);\n\tif (typeof value === \"boolean\") return snip(value, bool, \"constant\", false);\n\treturn snip(value, UnknownData, \"constant\", false);\n}\nvar ArrayExpression = class {\n\t[$internal] = true;\n\ttype;\n\telements;\n\tconstructor(type, elements) {\n\t\tthis.type = type;\n\t\tthis.elements = elements;\n\t}\n\ttoString() {\n\t\treturn \"ArrayExpression\";\n\t}\n\t[$resolve](ctx) {\n\t\tfor (const elem of this.elements) if (isAlias(elem) \u0026\u0026 !isNaturallyEphemeral(elem.dataType)) {\n\t\t\tconst snippetStr = ctx.resolveSnippet(elem).value;\n\t\t\tconst snippetType = ctx.resolve(concretize(elem.dataType)).value;\n\t\t\tthrow new WgslTypeError(`'${snippetStr}' reference cannot be used in an array constructor.\\n-----\\nTry '${snippetType}(${snippetStr})' or 'arrayOf(${snippetType}, count)([...])' to copy the value instead.\\n-----`);\n\t\t}\n\t\treturn ctx.gen.typeInstantiation(this.type, this.elements);\n\t}\n};\nfunction comptime(func) {\n\tconst impl = ((...args) =\u003e {\n\t\treturn func(...args);\n\t});\n\timpl.toString = () =\u003e \"comptime\";\n\timpl[$getNameForward] = func;\n\timpl[$gpuCallable] = { call(ctx, args) {\n\t\tif (!args.every((s) =\u003e isKnownAtComptime(s))) throw new WgslTypeError(`Called comptime function with runtime-known values: ${args.filter((s) =\u003e !isKnownAtComptime(s)).map((s) =\u003e `'${s.value}'`).join(\", \")}`);\n\t\tctx.pushMode(new NormalState());\n\t\ttry {\n\t\t\treturn coerceToSnippet(func(...args.map((s) =\u003e s.value)));\n\t\t} finally {\n\t\t\tctx.popMode();\n\t\t}\n\t} };\n\timpl.$name = (label) =\u003e {\n\t\tsetName(func, label);\n\t\treturn impl;\n\t};\n\tObject.defineProperty(impl, $internal, { value: { isComptime: true } });\n\treturn impl;\n}\nvar MissingCpuImplError = class extends Error {\n\tconstructor(message) {\n\t\tsuper(message);\n\t\tthis.name = this.constructor.name;\n\t}\n};\nfunction dualImpl(options) {\n\tconst impl = ((...args) =\u003e {\n\t\tif (typeof options.normalImpl === \"string\") throw new MissingCpuImplError(options.normalImpl);\n\t\treturn options.normalImpl(...args);\n\t});\n\tif (options.name) setName(impl, options.name);\n\timpl.toString = () =\u003e options.name ?? \"\u003cunknown\u003e\";\n\timpl[$gpuCallable] = {\n\t\tget strictSignature() {\n\t\t\treturn typeof options.signature !== \"function\" ? options.signature : void 0;\n\t\t},\n\t\tcall(ctx, args) {\n\t\t\tconst { argTypes, returnType } = typeof options.signature === \"function\" ? options.signature(...args.map((s) =\u003e {\n\t\t\t\tif (isPtr(s.dataType) \u0026\u0026 s.dataType.implicit) return s.dataType.inner;\n\t\t\t\treturn s.dataType;\n\t\t\t})) : options.signature;\n\t\t\tconst converted = args.map((s, idx) =\u003e {\n\t\t\t\tconst argType = argTypes[idx];\n\t\t\t\tif (!argType) throw new Error(\"Function called with invalid arguments\");\n\t\t\t\treturn tryConvertSnippet(ctx, s, argType, !options.ignoreImplicitCastWarning);\n\t\t\t});\n\t\t\tif (!options.noComptime \u0026\u0026 converted.every((s) =\u003e isKnownAtComptime(s)) \u0026\u0026 typeof options.normalImpl === \"function\") {\n\t\t\t\tctx.pushMode(new NormalState());\n\t\t\t\ttry {\n\t\t\t\t\treturn snip(options.normalImpl(...converted.map((s) =\u003e s.value)), returnType, \"constant\", options.sideEffects);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (!(e instanceof MissingCpuImplError)) throw e;\n\t\t\t\t} finally {\n\t\t\t\t\tctx.popMode(\"normal\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst possibleSideEffects = options.sideEffects || args.some((a) =\u003e a.possibleSideEffects);\n\t\t\tconst concreteReturnType = concretize(returnType);\n\t\t\treturn snip(options.codegenImpl(ctx, converted, concreteReturnType), concreteReturnType, \"runtime\", possibleSideEffects);\n\t\t}\n\t};\n\treturn impl;\n}\nvar XYZW = [\n\t\"x\",\n\t\"y\",\n\t\"z\",\n\t\"w\"\n];\nvar RGBA = [\n\t\"r\",\n\t\"g\",\n\t\"b\",\n\t\"a\"\n];\nvar VecBase = class VecBase extends Array {\n\tstatic #_ = (() =\u003e {\n\t\tfor (let e0 = 0; e0 \u003c 4; e0++) for (let e1 = 0; e1 \u003c 4; e1++) for (let e2 = 0; e2 \u003c 4; e2++) for (let e3 = 0; e3 \u003c 4; e3++) {\n\t\t\tconst xyzwProp = `${XYZW[e0]}${XYZW[e1]}${XYZW[e2]}${XYZW[e3]}`;\n\t\t\tconst rgbaProp = `${RGBA[e0]}${RGBA[e1]}${RGBA[e2]}${RGBA[e3]}`;\n\t\t\tObject.defineProperty(VecBase.prototype, xyzwProp, { get() {\n\t\t\t\treturn new this._Vec4(this[e0], this[e1], this[e2], this[e3]);\n\t\t\t} });\n\t\t\tObject.defineProperty(VecBase.prototype, rgbaProp, { get() {\n\t\t\t\treturn new this._Vec4(this[e0], this[e1], this[e2], this[e3]);\n\t\t\t} });\n\t\t}\n\t\tfor (let e0 = 0; e0 \u003c 4; e0++) for (let e1 = 0; e1 \u003c 4; e1++) for (let e2 = 0; e2 \u003c 4; e2++) {\n\t\t\tconst xyzwProp = `${XYZW[e0]}${XYZW[e1]}${XYZW[e2]}`;\n\t\t\tconst rgbaProp = `${RGBA[e0]}${RGBA[e1]}${RGBA[e2]}`;\n\t\t\tObject.defineProperty(VecBase.prototype, xyzwProp, { get() {\n\t\t\t\treturn new this._Vec3(this[e0], this[e1], this[e2]);\n\t\t\t} });\n\t\t\tObject.defineProperty(VecBase.prototype, rgbaProp, { get() {\n\t\t\t\treturn new this._Vec3(this[e0], this[e1], this[e2]);\n\t\t\t} });\n\t\t}\n\t\tfor (let e0 = 0; e0 \u003c 4; e0++) for (let e1 = 0; e1 \u003c 4; e1++) {\n\t\t\tconst xyzwProp = `${XYZW[e0]}${XYZW[e1]}`;\n\t\t\tconst rgbaProp = `${RGBA[e0]}${RGBA[e1]}`;\n\t\t\tObject.defineProperty(VecBase.prototype, xyzwProp, { get() {\n\t\t\t\treturn new this._Vec2(this[e0], this[e1]);\n\t\t\t} });\n\t\t\tObject.defineProperty(VecBase.prototype, rgbaProp, { get() {\n\t\t\t\treturn new this._Vec2(this[e0], this[e1]);\n\t\t\t} });\n\t\t}\n\t})();\n\tcastElement() {\n\t\treturn this[$internal].elementSchema;\n\t}\n\t[$resolve](ctx) {\n\t\tconst vecSchema = WORKAROUND_getSchema(this);\n\t\tif (this.every((e) =\u003e !e)) return ctx.gen.typeInstantiation(vecSchema, []);\n\t\tif (this.every((e) =\u003e this[0] === e)) return ctx.gen.typeInstantiation(vecSchema, [numericLiteralToSnippet(this[0])]);\n\t\treturn ctx.gen.typeInstantiation(vecSchema, this.map((e) =\u003e numericLiteralToSnippet(e)));\n\t}\n\ttoString() {\n\t\treturn `${this.kind}(${this.join(\", \")})`;\n\t}\n};\nvar Vec2 = class extends VecBase {\n\te0;\n\te1;\n\tconstructor(x, y) {\n\t\tsuper(2);\n\t\tthis.e0 = this.castElement()(x);\n\t\tthis.e1 = this.castElement()(y ?? x);\n\t}\n\tget 0() {\n\t\treturn this.e0;\n\t}\n\tget 1() {\n\t\treturn this.e1;\n\t}\n\tset 0(value) {\n\t\tthis.e0 = this.castElement()(value);\n\t}\n\tset 1(value) {\n\t\tthis.e1 = this.castElement()(value);\n\t}\n\tget x() {\n\t\treturn this[0];\n\t}\n\tget y() {\n\t\treturn this[1];\n\t}\n\tset x(value) {\n\t\tthis[0] = this.castElement()(value);\n\t}\n\tset y(value) {\n\t\tthis[1] = this.castElement()(value);\n\t}\n\tget r() {\n\t\treturn this[0];\n\t}\n\tget g() {\n\t\treturn this[1];\n\t}\n\tset r(value) {\n\t\tthis[0] = this.castElement()(value);\n\t}\n\tset g(value) {\n\t\tthis[1] = this.castElement()(value);\n\t}\n};\nvar Vec3 = class extends VecBase {\n\te0;\n\te1;\n\te2;\n\tconstructor(x, y, z) {\n\t\tsuper(3);\n\t\tthis.e0 = this.castElement()(x);\n\t\tthis.e1 = this.castElement()(y ?? x);\n\t\tthis.e2 = this.castElement()(z ?? x);\n\t}\n\tget 0() {\n\t\treturn this.e0;\n\t}\n\tget 1() {\n\t\treturn this.e1;\n\t}\n\tget 2() {\n\t\treturn this.e2;\n\t}\n\tset 0(value) {\n\t\tthis.e0 = this.castElement()(value);\n\t}\n\tset 1(value) {\n\t\tthis.e1 = this.castElement()(value);\n\t}\n\tset 2(value) {\n\t\tthis.e2 = this.castElement()(value);\n\t}\n\tget x() {\n\t\treturn this[0];\n\t}\n\tget y() {\n\t\treturn this[1];\n\t}\n\tget z() {\n\t\treturn this[2];\n\t}\n\tset x(value) {\n\t\tthis[0] = this.castElement()(value);\n\t}\n\tset y(value) {\n\t\tthis[1] = this.castElement()(value);\n\t}\n\tset z(value) {\n\t\tthis[2] = this.castElement()(value);\n\t}\n\tget r() {\n\t\treturn this[0];\n\t}\n\tget g() {\n\t\treturn this[1];\n\t}\n\tget b() {\n\t\treturn this[2];\n\t}\n\tset r(value) {\n\t\tthis[0] = this.castElement()(value);\n\t}\n\tset g(value) {\n\t\tthis[1] = this.castElement()(value);\n\t}\n\tset b(value) {\n\t\tthis[2] = this.castElement()(value);\n\t}\n};\nvar Vec4 = class extends VecBase {\n\te0;\n\te1;\n\te2;\n\te3;\n\tconstructor(x, y, z, w) {\n\t\tsuper(4);\n\t\tthis.e0 = this.castElement()(x);\n\t\tthis.e1 = this.castElement()(y ?? x);\n\t\tthis.e2 = this.castElement()(z ?? x);\n\t\tthis.e3 = this.castElement()(w ?? x);\n\t}\n\tget 0() {\n\t\treturn this.e0;\n\t}\n\tget 1() {\n\t\treturn this.e1;\n\t}\n\tget 2() {\n\t\treturn this.e2;\n\t}\n\tget 3() {\n\t\treturn this.e3;\n\t}\n\tset 0(value) {\n\t\tthis.e0 = this.castElement()(value);\n\t}\n\tset 1(value) {\n\t\tthis.e1 = this.castElement()(value);\n\t}\n\tset 2(value) {\n\t\tthis.e2 = this.castElement()(value);\n\t}\n\tset 3(value) {\n\t\tthis.e3 = this.castElement()(value);\n\t}\n\tget x() {\n\t\treturn this[0];\n\t}\n\tget y() {\n\t\treturn this[1];\n\t}\n\tget z() {\n\t\treturn this[2];\n\t}\n\tget w() {\n\t\treturn this[3];\n\t}\n\tset x(value) {\n\t\tthis[0] = value;\n\t}\n\tset y(value) {\n\t\tthis[1] = value;\n\t}\n\tset z(value) {\n\t\tthis[2] = value;\n\t}\n\tset w(value) {\n\t\tthis[3] = value;\n\t}\n\tget r() {\n\t\treturn this[0];\n\t}\n\tget g() {\n\t\treturn this[1];\n\t}\n\tget b() {\n\t\treturn this[2];\n\t}\n\tget a() {\n\t\treturn this[3];\n\t}\n\tset r(value) {\n\t\tthis[0] = value;\n\t}\n\tset g(value) {\n\t\tthis[1] = value;\n\t}\n\tset b(value) {\n\t\tthis[2] = value;\n\t}\n\tset a(value) {\n\t\tthis[3] = value;\n\t}\n};\nvar Vec2fImpl = class Vec2fImpl extends Vec2 {\n\tget [$internal]() {\n\t\treturn { elementSchema: f32 };\n\t}\n\tget kind() {\n\t\treturn \"vec2f\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2fImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3fImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4fImpl;\n\t}\n};\nvar Vec2hImpl = class Vec2hImpl extends Vec2 {\n\tget [$internal]() {\n\t\treturn { elementSchema: f16 };\n\t}\n\tget kind() {\n\t\treturn \"vec2h\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2hImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3hImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4hImpl;\n\t}\n};\nvar Vec2iImpl = class Vec2iImpl extends Vec2 {\n\tget [$internal]() {\n\t\treturn { elementSchema: i32 };\n\t}\n\tget kind() {\n\t\treturn \"vec2i\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2iImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3iImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4iImpl;\n\t}\n};\nvar Vec2uImpl = class Vec2uImpl extends Vec2 {\n\tget [$internal]() {\n\t\treturn { elementSchema: u32 };\n\t}\n\tget kind() {\n\t\treturn \"vec2u\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2uImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3uImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4uImpl;\n\t}\n};\nvar Vec2bImpl = class Vec2bImpl extends Vec2 {\n\tget [$internal]() {\n\t\treturn { elementSchema: bool };\n\t}\n\tget kind() {\n\t\treturn \"vec2\u003cbool\u003e\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2bImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3bImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4bImpl;\n\t}\n};\nvar Vec3fImpl = class Vec3fImpl extends Vec3 {\n\tget [$internal]() {\n\t\treturn { elementSchema: f32 };\n\t}\n\tget kind() {\n\t\treturn \"vec3f\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2fImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3fImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4fImpl;\n\t}\n};\nvar Vec3hImpl = class Vec3hImpl extends Vec3 {\n\tget [$internal]() {\n\t\treturn { elementSchema: f16 };\n\t}\n\tget kind() {\n\t\treturn \"vec3h\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2hImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3hImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4hImpl;\n\t}\n};\nvar Vec3iImpl = class Vec3iImpl extends Vec3 {\n\tget [$internal]() {\n\t\treturn { elementSchema: i32 };\n\t}\n\tget kind() {\n\t\treturn \"vec3i\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2iImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3iImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4iImpl;\n\t}\n};\nvar Vec3uImpl = class Vec3uImpl extends Vec3 {\n\tget [$internal]() {\n\t\treturn { elementSchema: u32 };\n\t}\n\tget kind() {\n\t\treturn \"vec3u\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2uImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3uImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4uImpl;\n\t}\n};\nvar Vec3bImpl = class Vec3bImpl extends Vec3 {\n\tget [$internal]() {\n\t\treturn { elementSchema: bool };\n\t}\n\tget kind() {\n\t\treturn \"vec3\u003cbool\u003e\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2bImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3bImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4bImpl;\n\t}\n};\nvar Vec4fImpl = class Vec4fImpl extends Vec4 {\n\tget [$internal]() {\n\t\treturn { elementSchema: f32 };\n\t}\n\tget kind() {\n\t\treturn \"vec4f\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2fImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3fImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4fImpl;\n\t}\n};\nvar Vec4hImpl = class Vec4hImpl extends Vec4 {\n\tget [$internal]() {\n\t\treturn { elementSchema: f16 };\n\t}\n\tget kind() {\n\t\treturn \"vec4h\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2hImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3hImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4hImpl;\n\t}\n};\nvar Vec4iImpl = class Vec4iImpl extends Vec4 {\n\tget [$internal]() {\n\t\treturn { elementSchema: i32 };\n\t}\n\tget kind() {\n\t\treturn \"vec4i\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2iImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3iImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4iImpl;\n\t}\n};\nvar Vec4uImpl = class Vec4uImpl extends Vec4 {\n\tget [$internal]() {\n\t\treturn { elementSchema: u32 };\n\t}\n\tget kind() {\n\t\treturn \"vec4u\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2uImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3uImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4uImpl;\n\t}\n};\nvar Vec4bImpl = class Vec4bImpl extends Vec4 {\n\tget [$internal]() {\n\t\treturn { elementSchema: bool };\n\t}\n\tget kind() {\n\t\treturn \"vec4\u003cbool\u003e\";\n\t}\n\tget _Vec2() {\n\t\treturn Vec2bImpl;\n\t}\n\tget _Vec3() {\n\t\treturn Vec3bImpl;\n\t}\n\tget _Vec4() {\n\t\treturn Vec4bImpl;\n\t}\n};\nconst vec2f = makeVecSchema(Vec2fImpl, f32);\nconst vec2h = makeVecSchema(Vec2hImpl, f16);\nconst vec2i = makeVecSchema(Vec2iImpl, i32);\nconst vec2u = makeVecSchema(Vec2uImpl, u32);\nconst vec2b = makeVecSchema(Vec2bImpl, bool);\nconst vec3f = makeVecSchema(Vec3fImpl, f32);\nconst vec3h = makeVecSchema(Vec3hImpl, f16);\nconst vec3i = makeVecSchema(Vec3iImpl, i32);\nconst vec3u = makeVecSchema(Vec3uImpl, u32);\nconst vec3b = makeVecSchema(Vec3bImpl, bool);\nconst vec4f = makeVecSchema(Vec4fImpl, f32);\nconst vec4h = makeVecSchema(Vec4hImpl, f16);\nconst vec4i = makeVecSchema(Vec4iImpl, i32);\nconst vec4u = makeVecSchema(Vec4uImpl, u32);\nconst vec4b = makeVecSchema(Vec4bImpl, bool);\nconst vecTypeToConstructor = {\n\tvec2f,\n\tvec2h,\n\tvec2i,\n\tvec2u,\n\t\"vec2\u003cbool\u003e\": vec2b,\n\tvec3f,\n\tvec3h,\n\tvec3i,\n\tvec3u,\n\t\"vec3\u003cbool\u003e\": vec3b,\n\tvec4f,\n\tvec4h,\n\tvec4i,\n\tvec4u,\n\t\"vec4\u003cbool\u003e\": vec4b\n};\nfunction makeVecSchema(VecImpl, primitive) {\n\tconst { kind: type, length: length$1 } = new VecImpl();\n\tconst componentCount = length$1;\n\tconst cpuConstruct = (...args) =\u003e {\n\t\tconst values = Array.from({ length: args.length });\n\t\tlet j = 0;\n\t\tfor (const arg of args) if (typeof arg === \"number\" || typeof arg === \"boolean\") values[j++] = arg;\n\t\telse for (let c = 0; c \u003c arg.length; ++c) values[j++] = arg[c];\n\t\tif (values.length \u003c= 1 || values.length === componentCount) return new VecImpl(...values);\n\t\tthrow new Error(`'${type}' constructor called with invalid number of arguments.`);\n\t};\n\tconst construct = callableSchema({\n\t\tname: type,\n\t\tschema: () =\u003e schema,\n\t\targTypes: (...args) =\u003e args.map((arg) =\u003e isVec(arg) ? arg : primitive),\n\t\tnormalImpl: cpuConstruct,\n\t\tcodegenImpl: (ctx, args) =\u003e ctx.gen.typeInstantiation(schema, args)\n\t});\n\tconst schema = Object.assign(construct, {\n\t\t[$internal]: {},\n\t\ttype,\n\t\tprimitive,\n\t\tcomponentCount,\n\t\t[$repr]: void 0\n\t});\n\tVecImpl.prototype.schema = schema;\n\treturn schema;\n}\nvar MatBase = class {};\nfunction createMatSchema(options) {\n\tconst construct = callableSchema({\n\t\tname: options.type,\n\t\tschema: () =\u003e schema,\n\t\tnormalImpl: (...args) =\u003e {\n\t\t\tconst elements = [];\n\t\t\tfor (const arg of args) if (typeof arg === \"number\") elements.push(arg);\n\t\t\telse for (let i = 0; i \u003c arg.length; ++i) elements.push(arg[i]);\n\t\t\tif (elements.length !== 0 \u0026\u0026 elements.length !== options.columns * options.rows) throw new Error(`'${options.type}' constructor called with invalid number of arguments.`);\n\t\t\tfor (let i = elements.length; i \u003c options.columns * options.rows; ++i) elements.push(0);\n\t\t\treturn new options.MatImpl(...elements);\n\t\t},\n\t\targTypes: (...args) =\u003e args.map((arg) =\u003e isVec(arg) ? arg : f32),\n\t\tcodegenImpl: (ctx, args) =\u003e ctx.gen.typeInstantiation(schema, args)\n\t});\n\tconst schema = Object.assign(construct, {\n\t\t[$internal]: {},\n\t\ttype: options.type,\n\t\tprimitive: f32,\n\t\tidentity: identityFunctions[options.columns],\n\t\ttranslation: options.columns === 4 ? translation4 : void 0,\n\t\tscaling: options.columns === 4 ? scaling4 : void 0,\n\t\trotationX: options.columns === 4 ? rotationX4 : void 0,\n\t\trotationY: options.columns === 4 ? rotationY4 : void 0,\n\t\trotationZ: options.columns === 4 ? rotationZ4 : void 0\n\t});\n\toptions.MatImpl.prototype.schema = schema;\n\treturn schema;\n}\nvar VALID_MAT2x2_ELEMENTS = [\n\t0,\n\t1,\n\t2,\n\t3\n];\nvar mat2x2Impl = class extends MatBase {\n\t[$internal] = true;\n\tcolumns;\n\tlength = 4;\n\tconstructor(...elements) {\n\t\tsuper();\n\t\tthis.columns = [this.makeColumn(elements[0], elements[1]), this.makeColumn(elements[2], elements[3])];\n\t}\n\tget 0() {\n\t\treturn this.columns[0].x;\n\t}\n\tget 1() {\n\t\treturn this.columns[0].y;\n\t}\n\tget 2() {\n\t\treturn this.columns[1].x;\n\t}\n\tget 3() {\n\t\treturn this.columns[1].y;\n\t}\n\tset 0(value) {\n\t\tthis.columns[0].x = value;\n\t}\n\tset 1(value) {\n\t\tthis.columns[0].y = value;\n\t}\n\tset 2(value) {\n\t\tthis.columns[1].x = value;\n\t}\n\tset 3(value) {\n\t\tthis.columns[1].y = value;\n\t}\n\t*[Symbol.iterator]() {\n\t\tyield this[0];\n\t\tyield this[1];\n\t\tyield this[2];\n\t\tyield this[3];\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.gen.typeInstantiation(mat2x2f, VALID_MAT2x2_ELEMENTS.map((i) =\u003e numericLiteralToSnippet(this[i])));\n\t}\n\ttoString() {\n\t\treturn `${this.kind}(${VALID_MAT2x2_ELEMENTS.map((i) =\u003e this[i]).join(\", \")})`;\n\t}\n};\nvar mat2x2fImpl = class extends mat2x2Impl {\n\tkind = \"mat2x2f\";\n\tmakeColumn(e0, e1) {\n\t\treturn vec2f(e0, e1);\n\t}\n};\nvar VALID_MAT3x3_ELEMENTS = [\n\t0,\n\t1,\n\t2,\n\t4,\n\t5,\n\t6,\n\t8,\n\t9,\n\t10\n];\nvar mat3x3Impl = class extends MatBase {\n\t[$internal] = true;\n\tcolumns;\n\tlength = 12;\n\tconstructor(...elements) {\n\t\tsuper();\n\t\tthis.columns = [\n\t\t\tthis.makeColumn(elements[0], elements[1], elements[2]),\n\t\t\tthis.makeColumn(elements[3], elements[4], elements[5]),\n\t\t\tthis.makeColumn(elements[6], elements[7], elements[8])\n\t\t];\n\t}\n\tget 0() {\n\t\treturn this.columns[0].x;\n\t}\n\tget 1() {\n\t\treturn this.columns[0].y;\n\t}\n\tget 2() {\n\t\treturn this.columns[0].z;\n\t}\n\tget 3() {\n\t\treturn 0;\n\t}\n\tget 4() {\n\t\treturn this.columns[1].x;\n\t}\n\tget 5() {\n\t\treturn this.columns[1].y;\n\t}\n\tget 6() {\n\t\treturn this.columns[1].z;\n\t}\n\tget 7() {\n\t\treturn 0;\n\t}\n\tget 8() {\n\t\treturn this.columns[2].x;\n\t}\n\tget 9() {\n\t\treturn this.columns[2].y;\n\t}\n\tget 10() {\n\t\treturn this.columns[2].z;\n\t}\n\tget 11() {\n\t\treturn 0;\n\t}\n\tset 0(value) {\n\t\tthis.columns[0].x = value;\n\t}\n\tset 1(value) {\n\t\tthis.columns[0].y = value;\n\t}\n\tset 2(value) {\n\t\tthis.columns[0].z = value;\n\t}\n\tset 3(_) {}\n\tset 4(value) {\n\t\tthis.columns[1].x = value;\n\t}\n\tset 5(value) {\n\t\tthis.columns[1].y = value;\n\t}\n\tset 6(value) {\n\t\tthis.columns[1].z = value;\n\t}\n\tset 7(_) {}\n\tset 8(value) {\n\t\tthis.columns[2].x = value;\n\t}\n\tset 9(value) {\n\t\tthis.columns[2].y = value;\n\t}\n\tset 10(value) {\n\t\tthis.columns[2].z = value;\n\t}\n\tset 11(_) {}\n\t*[Symbol.iterator]() {\n\t\tfor (let i = 0; i \u003c 12; i++) yield this[i];\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.gen.typeInstantiation(mat3x3f, VALID_MAT3x3_ELEMENTS.map((i) =\u003e numericLiteralToSnippet(this[i])));\n\t}\n\ttoString() {\n\t\treturn `${this.kind}(${VALID_MAT3x3_ELEMENTS.map((i) =\u003e this[i]).join(\", \")})`;\n\t}\n};\nvar mat3x3fImpl = class extends mat3x3Impl {\n\tkind = \"mat3x3f\";\n\tmakeColumn(x, y, z) {\n\t\treturn vec3f(x, y, z);\n\t}\n};\nvar VALID_MAT4x4_ELEMENTS = Array.from({ length: 16 }, (_, i) =\u003e i);\nvar mat4x4Impl = class extends MatBase {\n\t[$internal] = true;\n\tcolumns;\n\tconstructor(...elements) {\n\t\tsuper();\n\t\tthis.columns = [\n\t\t\tthis.makeColumn(elements[0], elements[1], elements[2], elements[3]),\n\t\t\tthis.makeColumn(elements[4], elements[5], elements[6], elements[7]),\n\t\t\tthis.makeColumn(elements[8], elements[9], elements[10], elements[11]),\n\t\t\tthis.makeColumn(elements[12], elements[13], elements[14], elements[15])\n\t\t];\n\t}\n\tlength = 16;\n\tget 0() {\n\t\treturn this.columns[0].x;\n\t}\n\tget 1() {\n\t\treturn this.columns[0].y;\n\t}\n\tget 2() {\n\t\treturn this.columns[0].z;\n\t}\n\tget 3() {\n\t\treturn this.columns[0].w;\n\t}\n\tget 4() {\n\t\treturn this.columns[1].x;\n\t}\n\tget 5() {\n\t\treturn this.columns[1].y;\n\t}\n\tget 6() {\n\t\treturn this.columns[1].z;\n\t}\n\tget 7() {\n\t\treturn this.columns[1].w;\n\t}\n\tget 8() {\n\t\treturn this.columns[2].x;\n\t}\n\tget 9() {\n\t\treturn this.columns[2].y;\n\t}\n\tget 10() {\n\t\treturn this.columns[2].z;\n\t}\n\tget 11() {\n\t\treturn this.columns[2].w;\n\t}\n\tget 12() {\n\t\treturn this.columns[3].x;\n\t}\n\tget 13() {\n\t\treturn this.columns[3].y;\n\t}\n\tget 14() {\n\t\treturn this.columns[3].z;\n\t}\n\tget 15() {\n\t\treturn this.columns[3].w;\n\t}\n\tset 0(value) {\n\t\tthis.columns[0].x = value;\n\t}\n\tset 1(value) {\n\t\tthis.columns[0].y = value;\n\t}\n\tset 2(value) {\n\t\tthis.columns[0].z = value;\n\t}\n\tset 3(value) {\n\t\tthis.columns[0].w = value;\n\t}\n\tset 4(value) {\n\t\tthis.columns[1].x = value;\n\t}\n\tset 5(value) {\n\t\tthis.columns[1].y = value;\n\t}\n\tset 6(value) {\n\t\tthis.columns[1].z = value;\n\t}\n\tset 7(value) {\n\t\tthis.columns[1].w = value;\n\t}\n\tset 8(value) {\n\t\tthis.columns[2].x = value;\n\t}\n\tset 9(value) {\n\t\tthis.columns[2].y = value;\n\t}\n\tset 10(value) {\n\t\tthis.columns[2].z = value;\n\t}\n\tset 11(value) {\n\t\tthis.columns[2].w = value;\n\t}\n\tset 12(value) {\n\t\tthis.columns[3].x = value;\n\t}\n\tset 13(value) {\n\t\tthis.columns[3].y = value;\n\t}\n\tset 14(value) {\n\t\tthis.columns[3].z = value;\n\t}\n\tset 15(value) {\n\t\tthis.columns[3].w = value;\n\t}\n\t*[Symbol.iterator]() {\n\t\tfor (let i = 0; i \u003c 16; i++) yield this[i];\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.gen.typeInstantiation(mat4x4f, VALID_MAT4x4_ELEMENTS.map((i) =\u003e numericLiteralToSnippet(this[i])));\n\t}\n\ttoString() {\n\t\treturn `${this.kind}(${VALID_MAT4x4_ELEMENTS.map((i) =\u003e this[i]).join(\", \")})`;\n\t}\n};\nvar mat4x4fImpl = class extends mat4x4Impl {\n\tkind = \"mat4x4f\";\n\tmakeColumn(x, y, z, w) {\n\t\treturn vec4f(x, y, z, w);\n\t}\n};\nconst identity2 = comptime(() =\u003e mat2x2f(1, 0, 0, 1)).$name(\"identity2\");\nconst identity3 = comptime(() =\u003e mat3x3f(1, 0, 0, 0, 1, 0, 0, 0, 1)).$name(\"identity3\");\nconst identity4 = comptime(() =\u003e mat4x4f(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)).$name(\"identity4\");\nvar identityFunctions = {\n\t2: identity2,\n\t3: identity3,\n\t4: identity4\n};\nconst translation4 = dualImpl({\n\tname: \"translation4\",\n\tnormalImpl: (vector) =\u003e mat4x4f(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, vector.x, vector.y, vector.z, 1),\n\tget signature() {\n\t\treturn {\n\t\t\targTypes: [vec3f],\n\t\t\treturnType: mat4x4f\n\t\t};\n\t},\n\tcodegenImpl: (_ctx, [v]) =\u003e stitch`mat4x4f(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, ${v}.x, ${v}.y, ${v}.z, 1)`,\n\tsideEffects: false\n});\nconst scaling4 = dualImpl({\n\tname: \"scaling4\",\n\tnormalImpl: (vector) =\u003e mat4x4f(vector.x, 0, 0, 0, 0, vector.y, 0, 0, 0, 0, vector.z, 0, 0, 0, 0, 1),\n\tget signature() {\n\t\treturn {\n\t\t\targTypes: [vec3f],\n\t\t\treturnType: mat4x4f\n\t\t};\n\t},\n\tcodegenImpl: (_ctx, [v]) =\u003e stitch`mat4x4f(${v}.x, 0, 0, 0, 0, ${v}.y, 0, 0, 0, 0, ${v}.z, 0, 0, 0, 0, 1)`,\n\tsideEffects: false\n});\nconst rotationX4 = dualImpl({\n\tname: \"rotationX4\",\n\tnormalImpl: (a) =\u003e mat4x4f(1, 0, 0, 0, 0, Math.cos(a), Math.sin(a), 0, 0, -Math.sin(a), Math.cos(a), 0, 0, 0, 0, 1),\n\tget signature() {\n\t\treturn {\n\t\t\targTypes: [f32],\n\t\t\treturnType: mat4x4f\n\t\t};\n\t},\n\tcodegenImpl: (_ctx, [a]) =\u003e stitch`mat4x4f(1, 0, 0, 0, 0, cos(${a}), sin(${a}), 0, 0, -sin(${a}), cos(${a}), 0, 0, 0, 0, 1)`,\n\tsideEffects: false\n});\nconst rotationY4 = dualImpl({\n\tname: \"rotationY4\",\n\tnormalImpl: (a) =\u003e mat4x4f(Math.cos(a), 0, -Math.sin(a), 0, 0, 1, 0, 0, Math.sin(a), 0, Math.cos(a), 0, 0, 0, 0, 1),\n\tget signature() {\n\t\treturn {\n\t\t\targTypes: [f32],\n\t\t\treturnType: mat4x4f\n\t\t};\n\t},\n\tcodegenImpl: (_ctx, [a]) =\u003e stitch`mat4x4f(cos(${a}), 0, -sin(${a}), 0, 0, 1, 0, 0, sin(${a}), 0, cos(${a}), 0, 0, 0, 0, 1)`,\n\tsideEffects: false\n});\nconst rotationZ4 = dualImpl({\n\tname: \"rotationZ4\",\n\tnormalImpl: (a) =\u003e mat4x4f(Math.cos(a), Math.sin(a), 0, 0, -Math.sin(a), Math.cos(a), 0, 0, 0, 0, 1, 0, 0, 0, 0, 1),\n\tget signature() {\n\t\treturn {\n\t\t\targTypes: [f32],\n\t\t\treturnType: mat4x4f\n\t\t};\n\t},\n\tcodegenImpl: (_ctx, [a]) =\u003e stitch`mat4x4f(cos(${a}), sin(${a}), 0, 0, -sin(${a}), cos(${a}), 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)`,\n\tsideEffects: false\n});\nconst mat2x2f = createMatSchema({\n\ttype: \"mat2x2f\",\n\trows: 2,\n\tcolumns: 2,\n\tMatImpl: mat2x2fImpl\n});\nconst mat3x3f = createMatSchema({\n\ttype: \"mat3x3f\",\n\trows: 3,\n\tcolumns: 3,\n\tMatImpl: mat3x3fImpl\n});\nconst mat4x4f = createMatSchema({\n\ttype: \"mat4x4f\",\n\trows: 4,\n\tcolumns: 4,\n\tMatImpl: mat4x4fImpl\n});\nconst smoothstepScalar = (edge0, edge1, x) =\u003e {\n\tif (edge0 === edge1) return 0;\n\tconst t = clampScalar((x - edge0) / (edge1 - edge0), 0, 1);\n\treturn t * t * (3 - 2 * t);\n};\nconst clampScalar = (value, low, high) =\u003e Math.min(Math.max(low, value), high);\nvar buf32 = /* @__PURE__ */ new ArrayBuffer(4);\nvar f32arr = new Float32Array(buf32);\nvar u32arr = new Uint32Array(buf32);\nvar i32arr = new Int32Array(buf32);\nfunction bitcastU32toF32Impl(n) {\n\tu32arr[0] = n;\n\treturn f32arr[0];\n}\nfunction bitcastU32toI32Impl(n) {\n\tu32arr[0] = n;\n\treturn i32arr[0];\n}\nfunction bitcastF32toU32Impl(n) {\n\tf32arr[0] = n;\n\treturn u32arr[0];\n}\nvar lengthVec2 = (v) =\u003e Math.sqrt(v.x ** 2 + v.y ** 2);\nvar lengthVec3 = (v) =\u003e Math.sqrt(v.x ** 2 + v.y ** 2 + v.z ** 2);\nvar lengthVec4 = (v) =\u003e Math.sqrt(v.x ** 2 + v.y ** 2 + v.z ** 2 + v.w ** 2);\nvar dotVec2 = (lhs, rhs) =\u003e lhs.x * rhs.x + lhs.y * rhs.y;\nvar dotVec3 = (lhs, rhs) =\u003e lhs.x * rhs.x + lhs.y * rhs.y + lhs.z * rhs.z;\nvar dotVec4 = (lhs, rhs) =\u003e lhs.x * rhs.x + lhs.y * rhs.y + lhs.z * rhs.z + lhs.w * rhs.w;\nvar binaryComponentWise2u = (op) =\u003e (a, b) =\u003e vec2u(op(a.x, b.x), op(a.y, b.y));\nvar binaryComponentWise3u = (op) =\u003e (a, b) =\u003e vec3u(op(a.x, b.x), op(a.y, b.y), op(a.z, b.z));\nvar binaryComponentWise4u = (op) =\u003e (a, b) =\u003e vec4u(op(a.x, b.x), op(a.y, b.y), op(a.z, b.z), op(a.w, b.w));\nvar binaryComponentWise2i2u = (op) =\u003e (a, b) =\u003e vec2i(op(a.x, b.x), op(a.y, b.y));\nvar binaryComponentWise3i3u = (op) =\u003e (a, b) =\u003e vec3i(op(a.x, b.x), op(a.y, b.y), op(a.z, b.z));\nvar binaryComponentWise4i4u = (op) =\u003e (a, b) =\u003e vec4i(op(a.x, b.x), op(a.y, b.y), op(a.z, b.z), op(a.w, b.w));\nconst VectorOps = {\n\tall: {\n\t\t\"vec2\u003cbool\u003e\": (e) =\u003e e.x \u0026\u0026 e.y,\n\t\t\"vec3\u003cbool\u003e\": (e) =\u003e e.x \u0026\u0026 e.y \u0026\u0026 e.z,\n\t\t\"vec4\u003cbool\u003e\": (e) =\u003e e.x \u0026\u0026 e.y \u0026\u0026 e.z \u0026\u0026 e.w\n\t},\n\tlength: {\n\t\tvec2f: lengthVec2,\n\t\tvec2h: lengthVec2,\n\t\tvec3f: lengthVec3,\n\t\tvec3h: lengthVec3,\n\t\tvec4f: lengthVec4,\n\t\tvec4h: lengthVec4\n\t},\n\tmulMxM: {\n\t\tmat2x2f: (a, b) =\u003e {\n\t\t\tconst a_ = a.columns;\n\t\t\tconst b_ = b.columns;\n\t\t\treturn mat2x2f(a_[0].x * b_[0].x + a_[1].x * b_[0].y, a_[0].y * b_[0].x + a_[1].y * b_[0].y, a_[0].x * b_[1].x + a_[1].x * b_[1].y, a_[0].y * b_[1].x + a_[1].y * b_[1].y);\n\t\t},\n\t\tmat3x3f: (a, b) =\u003e {\n\t\t\tconst a_ = a.columns;\n\t\t\tconst b_ = b.columns;\n\t\t\treturn mat3x3f(a_[0].x * b_[0].x + a_[1].x * b_[0].y + a_[2].x * b_[0].z, a_[0].y * b_[0].x + a_[1].y * b_[0].y + a_[2].y * b_[0].z, a_[0].z * b_[0].x + a_[1].z * b_[0].y + a_[2].z * b_[0].z, a_[0].x * b_[1].x + a_[1].x * b_[1].y + a_[2].x * b_[1].z, a_[0].y * b_[1].x + a_[1].y * b_[1].y + a_[2].y * b_[1].z, a_[0].z * b_[1].x + a_[1].z * b_[1].y + a_[2].z * b_[1].z, a_[0].x * b_[2].x + a_[1].x * b_[2].y + a_[2].x * b_[2].z, a_[0].y * b_[2].x + a_[1].y * b_[2].y + a_[2].y * b_[2].z, a_[0].z * b_[2].x + a_[1].z * b_[2].y + a_[2].z * b_[2].z);\n\t\t},\n\t\tmat4x4f: (a, b) =\u003e {\n\t\t\tconst a_ = a.columns;\n\t\t\tconst b_ = b.columns;\n\t\t\treturn mat4x4f(a_[0].x * b_[0].x + a_[1].x * b_[0].y + a_[2].x * b_[0].z + a_[3].x * b_[0].w, a_[0].y * b_[0].x + a_[1].y * b_[0].y + a_[2].y * b_[0].z + a_[3].y * b_[0].w, a_[0].z * b_[0].x + a_[1].z * b_[0].y + a_[2].z * b_[0].z + a_[3].z * b_[0].w, a_[0].w * b_[0].x + a_[1].w * b_[0].y + a_[2].w * b_[0].z + a_[3].w * b_[0].w, a_[0].x * b_[1].x + a_[1].x * b_[1].y + a_[2].x * b_[1].z + a_[3].x * b_[1].w, a_[0].y * b_[1].x + a_[1].y * b_[1].y + a_[2].y * b_[1].z + a_[3].y * b_[1].w, a_[0].z * b_[1].x + a_[1].z * b_[1].y + a_[2].z * b_[1].z + a_[3].z * b_[1].w, a_[0].w * b_[1].x + a_[1].w * b_[1].y + a_[2].w * b_[1].z + a_[3].w * b_[1].w, a_[0].x * b_[2].x + a_[1].x * b_[2].y + a_[2].x * b_[2].z + a_[3].x * b_[2].w, a_[0].y * b_[2].x + a_[1].y * b_[2].y + a_[2].y * b_[2].z + a_[3].y * b_[2].w, a_[0].z * b_[2].x + a_[1].z * b_[2].y + a_[2].z * b_[2].z + a_[3].z * b_[2].w, a_[0].w * b_[2].x + a_[1].w * b_[2].y + a_[2].w * b_[2].z + a_[3].w * b_[2].w, a_[0].x * b_[3].x + a_[1].x * b_[3].y + a_[2].x * b_[3].z + a_[3].x * b_[3].w, a_[0].y * b_[3].x + a_[1].y * b_[3].y + a_[2].y * b_[3].z + a_[3].y * b_[3].w, a_[0].z * b_[3].x + a_[1].z * b_[3].y + a_[2].z * b_[3].z + a_[3].z * b_[3].w, a_[0].w * b_[3].x + a_[1].w * b_[3].y + a_[2].w * b_[3].z + a_[3].w * b_[3].w);\n\t\t}\n\t},\n\tmulMxV: {\n\t\tmat2x2f: (m, v) =\u003e {\n\t\t\tconst m_ = m.columns;\n\t\t\treturn vec2f(m_[0].x * v.x + m_[1].x * v.y, m_[0].y * v.x + m_[1].y * v.y);\n\t\t},\n\t\tmat3x3f: (m, v) =\u003e {\n\t\t\tconst m_ = m.columns;\n\t\t\treturn vec3f(m_[0].x * v.x + m_[1].x * v.y + m_[2].x * v.z, m_[0].y * v.x + m_[1].y * v.y + m_[2].y * v.z, m_[0].z * v.x + m_[1].z * v.y + m_[2].z * v.z);\n\t\t},\n\t\tmat4x4f: (m, v) =\u003e {\n\t\t\tconst m_ = m.columns;\n\t\t\treturn vec4f(m_[0].x * v.x + m_[1].x * v.y + m_[2].x * v.z + m_[3].x * v.w, m_[0].y * v.x + m_[1].y * v.y + m_[2].y * v.z + m_[3].y * v.w, m_[0].z * v.x + m_[1].z * v.y + m_[2].z * v.z + m_[3].z * v.w, m_[0].w * v.x + m_[1].w * v.y + m_[2].w * v.z + m_[3].w * v.w);\n\t\t}\n\t},\n\tmulVxM: {\n\t\tmat2x2f: (v, m) =\u003e {\n\t\t\tconst m_ = m.columns;\n\t\t\treturn vec2f(v.x * m_[0].x + v.y * m_[0].y, v.x * m_[1].x + v.y * m_[1].y);\n\t\t},\n\t\tmat3x3f: (v, m) =\u003e {\n\t\t\tconst m_ = m.columns;\n\t\t\treturn vec3f(v.x * m_[0].x + v.y * m_[0].y + v.z * m_[0].z, v.x * m_[1].x + v.y * m_[1].y + v.z * m_[1].z, v.x * m_[2].x + v.y * m_[2].y + v.z * m_[2].z);\n\t\t},\n\t\tmat4x4f: (v, m) =\u003e {\n\t\t\tconst m_ = m.columns;\n\t\t\treturn vec4f(v.x * m_[0].x + v.y * m_[0].y + v.z * m_[0].z + v.w * m_[0].w, v.x * m_[1].x + v.y * m_[1].y + v.z * m_[1].z + v.w * m_[1].w, v.x * m_[2].x + v.y * m_[2].y + v.z * m_[2].z + v.w * m_[2].w, v.x * m_[3].x + v.y * m_[3].y + v.z * m_[3].z + v.w * m_[3].w);\n\t\t}\n\t},\n\tdot: {\n\t\tvec2f: dotVec2,\n\t\tvec2h: dotVec2,\n\t\tvec2i: dotVec2,\n\t\tvec2u: dotVec2,\n\t\tvec3f: dotVec3,\n\t\tvec3h: dotVec3,\n\t\tvec3i: dotVec3,\n\t\tvec3u: dotVec3,\n\t\tvec4f: dotVec4,\n\t\tvec4h: dotVec4,\n\t\tvec4i: dotVec4,\n\t\tvec4u: dotVec4\n\t},\n\tcross: {\n\t\tvec3f: (a, b) =\u003e {\n\t\t\treturn vec3f(a.y * b.z - a.z * b.y, a.z * b.x - a.x * b.z, a.x * b.y - a.y * b.x);\n\t\t},\n\t\tvec3h: (a, b) =\u003e {\n\t\t\treturn vec3h(a.y * b.z - a.z * b.y, a.z * b.x - a.x * b.z, a.x * b.y - a.y * b.x);\n\t\t}\n\t},\n\tbitShiftLeft: {\n\t\tvec2i: binaryComponentWise2i2u((a, b) =\u003e a \u003c\u003c b),\n\t\tvec2u: binaryComponentWise2u((a, b) =\u003e a \u003c\u003c b),\n\t\tvec3i: binaryComponentWise3i3u((a, b) =\u003e a \u003c\u003c b),\n\t\tvec3u: binaryComponentWise3u((a, b) =\u003e a \u003c\u003c b),\n\t\tvec4i: binaryComponentWise4i4u((a, b) =\u003e a \u003c\u003c b),\n\t\tvec4u: binaryComponentWise4u((a, b) =\u003e a \u003c\u003c b)\n\t},\n\tbitShiftRight: {\n\t\tvec2i: binaryComponentWise2i2u((a, b) =\u003e a \u003e\u003e b),\n\t\tvec2u: binaryComponentWise2u((a, b) =\u003e a \u003e\u003e\u003e b),\n\t\tvec3i: binaryComponentWise3i3u((a, b) =\u003e a \u003e\u003e b),\n\t\tvec3u: binaryComponentWise3u((a, b) =\u003e a \u003e\u003e\u003e b),\n\t\tvec4i: binaryComponentWise4i4u((a, b) =\u003e a \u003e\u003e b),\n\t\tvec4u: binaryComponentWise4u((a, b) =\u003e a \u003e\u003e\u003e b)\n\t},\n\tbitcastU32toF32: {\n\t\tvec2u: (n) =\u003e vec2f(bitcastU32toF32Impl(n.x), bitcastU32toF32Impl(n.y)),\n\t\tvec3u: (n) =\u003e vec3f(bitcastU32toF32Impl(n.x), bitcastU32toF32Impl(n.y), bitcastU32toF32Impl(n.z)),\n\t\tvec4u: (n) =\u003e vec4f(bitcastU32toF32Impl(n.x), bitcastU32toF32Impl(n.y), bitcastU32toF32Impl(n.z), bitcastU32toF32Impl(n.w))\n\t},\n\tbitcastU32toI32: {\n\t\tvec2u: (n) =\u003e vec2i(bitcastU32toI32Impl(n.x), bitcastU32toI32Impl(n.y)),\n\t\tvec3u: (n) =\u003e vec3i(bitcastU32toI32Impl(n.x), bitcastU32toI32Impl(n.y), bitcastU32toI32Impl(n.z)),\n\t\tvec4u: (n) =\u003e vec4i(bitcastU32toI32Impl(n.x), bitcastU32toI32Impl(n.y), bitcastU32toI32Impl(n.z), bitcastU32toI32Impl(n.w))\n\t},\n\tbitcastF32toU32: {\n\t\tvec2f: (n) =\u003e vec2u(bitcastF32toU32Impl(n.x), bitcastF32toU32Impl(n.y)),\n\t\tvec3f: (n) =\u003e vec3u(bitcastF32toU32Impl(n.x), bitcastF32toU32Impl(n.y), bitcastF32toU32Impl(n.z)),\n\t\tvec4f: (n) =\u003e vec4u(bitcastF32toU32Impl(n.x), bitcastF32toU32Impl(n.y), bitcastF32toU32Impl(n.z), bitcastF32toU32Impl(n.w))\n\t}\n};\nvar booleanFor = {\n\tvec2f: vec2b,\n\tvec2h: vec2b,\n\tvec2i: vec2b,\n\tvec2u: vec2b,\n\t\"vec2\u003cbool\u003e\": vec2b,\n\tvec3f: vec3b,\n\tvec3h: vec3b,\n\tvec3i: vec3b,\n\tvec3u: vec3b,\n\t\"vec3\u003cbool\u003e\": vec3b,\n\tvec4f: vec4b,\n\tvec4h: vec4b,\n\tvec4i: vec4b,\n\tvec4u: vec4b,\n\t\"vec4\u003cbool\u003e\": vec4b\n};\nvar constructorFor = {\n\t...vecTypeToConstructor,\n\tmat2x2f,\n\tmat3x3f,\n\tmat4x4f\n};\nfunction getConstructorFor(mode, kind) {\n\tconst map = mode === \"boolean\" ? booleanFor : constructorFor;\n\tif (kind in map) return map[kind];\n\tthrow new Error(`No corresponding vector/matrix type for '${kind}' kind in '${mode}' mode.`);\n}\nfunction makeIterable(item) {\n\tif (item.kind.startsWith(\"vec\")) return item;\n\treturn item.columns.flat();\n}\nfunction applyArgs(fn$1, args, mode) {\n\tconst kinds = args.map(kindOf);\n\tif (kinds.every((type) =\u003e type === \"boolean\" || type === \"number\")) return fn$1(...args);\n\tconst kind = kinds[0];\n\tinvariant(kind, `Expected kind of the first argument to be present.`);\n\tconst constructor = getConstructorFor(mode, kind);\n\tconst iterableArgs = args.map(makeIterable);\n\tconst length$1 = iterableArgs[0]?.length;\n\tinvariant(length$1 !== void 0, `Expected constructor to have at least one argument.`);\n\treturn constructor(...Array.from({ length: length$1 }, (_, i) =\u003e {\n\t\treturn fn$1(...iterableArgs.map((arg) =\u003e arg[i]));\n\t}));\n}\nfunction generalizeFn(fn$1, args) {\n\treturn applyArgs(fn$1, args, \"first\");\n}\nfunction generalizeBoolFn(fn$1, args) {\n\treturn applyArgs(fn$1, args, \"boolean\");\n}\nfunction kindOf(v) {\n\tif (typeof v === \"number\") return \"number\";\n\tif (typeof v === \"boolean\") return \"boolean\";\n\treturn v.kind;\n}\nfunction upCast(args) {\n\tconst [lhs, rhs] = args;\n\tif (typeof lhs === \"number\" \u0026\u0026 isVecInstance(rhs)) {\n\t\tconst schema = constructorFor[rhs.kind];\n\t\treturn [schema(lhs), rhs];\n\t} else if (isVecInstance(lhs) \u0026\u0026 typeof rhs === \"number\") {\n\t\tconst schema = constructorFor[lhs.kind];\n\t\treturn [lhs, schema(rhs)];\n\t}\n\treturn [lhs, rhs];\n}\nvar getPrimitive = (t) =\u003e \"primitive\" in t ? t.primitive : t;\nvar makeBinarySignature = (opts) =\u003e (lhs, rhs) =\u003e {\n\tconst { restrict } = opts ?? {};\n\tconst fail = (msg) =\u003e {\n\t\tif (restrict) throw new SignatureNotSupportedError([lhs, rhs], restrict);\n\t\tthrow new Error(`Cannot apply operator to ${lhs.type} and ${rhs.type}: ${msg}`);\n\t};\n\tif (opts?.noMat \u0026\u0026 (isMat(lhs) || isMat(rhs))) return fail(\"matrices not supported\");\n\tconst lhsC = isVec(lhs) || isMat(lhs);\n\tconst rhsC = isVec(rhs) || isMat(rhs);\n\tif (!lhsC \u0026\u0026 !rhsC) {\n\t\tconst unified$1 = unify([lhs, rhs], restrict);\n\t\tif (!unified$1) return fail(\"incompatible scalar types\");\n\t\treturn {\n\t\t\targTypes: unified$1,\n\t\t\treturnType: unified$1[0]\n\t\t};\n\t}\n\tif (lhsC \u0026\u0026 rhsC) {\n\t\tif (opts?.matVecProduct \u0026\u0026 isVec(lhs) !== isVec(rhs)) return {\n\t\t\targTypes: [lhs, rhs],\n\t\t\treturnType: isVec(lhs) ? lhs : rhs\n\t\t};\n\t\tif (lhs.type !== rhs.type) return fail(\"operands must have the same type\");\n\t\treturn {\n\t\t\targTypes: [lhs, rhs],\n\t\t\treturnType: lhs\n\t\t};\n\t}\n\tconst [scalar, composite] = lhsC ? [rhs, lhs] : [lhs, rhs];\n\tconst unified = unify([scalar], [getPrimitive(composite)]);\n\tif (!unified) return fail(`scalar not convertible to ${getPrimitive(composite).type}`);\n\treturn {\n\t\targTypes: lhsC ? [lhs, unified[0]] : [unified[0], rhs],\n\t\treturnType: composite\n\t};\n};\nvar binaryArithmeticSignature = makeBinarySignature();\nvar binaryMulSignature = makeBinarySignature({ matVecProduct: true });\nvar binaryDivSignature = makeBinarySignature({\n\tnoMat: true,\n\trestrict: [\n\t\tf32,\n\t\tf16,\n\t\tabstractFloat\n\t]\n});\nfunction cpuAdd(lhs, rhs) {\n\tif (typeof lhs === \"number\" \u0026\u0026 typeof rhs === \"number\") return lhs + rhs;\n\tif (typeof lhs === \"number\" \u0026\u0026 isVecInstance(rhs)) return generalizeFn((e) =\u003e lhs + e, [rhs]);\n\tif (isVecInstance(lhs) \u0026\u0026 typeof rhs === \"number\") return generalizeFn((e) =\u003e e + rhs, [lhs]);\n\tif (isVecInstance(lhs) \u0026\u0026 isVecInstance(rhs) || isMatInstance(lhs) \u0026\u0026 isMatInstance(rhs)) return generalizeFn((a, b) =\u003e a + b, [lhs, rhs]);\n\tthrow new Error(\"Add/Sub called with invalid arguments.\");\n}\nconst add = dualImpl({\n\tname: \"add\",\n\tsignature: binaryArithmeticSignature,\n\tnormalImpl: cpuAdd,\n\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e ctx.gen.emitBinaryOp(lhs, \"+\", rhs),\n\tsideEffects: false\n});\nfunction cpuSub(lhs, rhs) {\n\treturn cpuAdd(lhs, cpuMul(-1, rhs));\n}\nconst sub = dualImpl({\n\tname: \"sub\",\n\tsignature: binaryArithmeticSignature,\n\tnormalImpl: cpuSub,\n\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e ctx.gen.emitBinaryOp(lhs, \"-\", rhs),\n\tsideEffects: false\n});\nfunction cpuMul(lhs, rhs) {\n\tif (typeof lhs === \"number\" \u0026\u0026 typeof rhs === \"number\") return lhs * rhs;\n\tif (typeof lhs === \"number\" \u0026\u0026 (isVecInstance(rhs) || isMatInstance(rhs))) return generalizeFn((e) =\u003e lhs * e, [rhs]);\n\tif ((isVecInstance(lhs) || isMatInstance(lhs)) \u0026\u0026 typeof rhs === \"number\") return generalizeFn((e) =\u003e e * rhs, [lhs]);\n\tif (isVecInstance(lhs) \u0026\u0026 isVecInstance(rhs)) return generalizeFn((a, b) =\u003e a * b, [lhs, rhs]);\n\tif (isFloat32VecInstance(lhs) \u0026\u0026 isMatInstance(rhs)) return VectorOps.mulVxM[rhs.kind](lhs, rhs);\n\tif (isMatInstance(lhs) \u0026\u0026 isFloat32VecInstance(rhs)) return VectorOps.mulMxV[lhs.kind](lhs, rhs);\n\tif (isMatInstance(lhs) \u0026\u0026 isMatInstance(rhs)) return VectorOps.mulMxM[lhs.kind](lhs, rhs);\n\tthrow new Error(\"Mul called with invalid arguments.\");\n}\nconst mul = dualImpl({\n\tname: \"mul\",\n\tsignature: binaryMulSignature,\n\tnormalImpl: cpuMul,\n\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e ctx.gen.emitBinaryOp(lhs, \"*\", rhs),\n\tsideEffects: false\n});\nfunction cpuDiv(lhs, rhs) {\n\treturn generalizeFn((a, b) =\u003e a / b, upCast([lhs, rhs]));\n}\nconst div = dualImpl({\n\tname: \"div\",\n\tsignature: binaryDivSignature,\n\tnormalImpl: cpuDiv,\n\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e ctx.gen.emitBinaryOp(lhs, \"/\", rhs),\n\tignoreImplicitCastWarning: true,\n\tsideEffects: false\n});\nconst mod = dualImpl({\n\tname: \"mod\",\n\tsignature: binaryDivSignature,\n\tnormalImpl: ((a, b) =\u003e {\n\t\treturn generalizeFn((a$1, b$1) =\u003e a$1 % b$1, upCast([a, b]));\n\t}),\n\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e ctx.gen.emitBinaryOp(lhs, \"%\", rhs),\n\tsideEffects: false\n});\nfunction cpuNeg(value) {\n\treturn generalizeFn((value$1) =\u003e -value$1, [value]);\n}\nconst neg = dualImpl({\n\tname: \"neg\",\n\tsignature: (arg) =\u003e ({\n\t\targTypes: [arg],\n\t\treturnType: arg\n\t}),\n\tnormalImpl: cpuNeg,\n\tcodegenImpl: (_ctx, [arg]) =\u003e stitch`-(${arg})`,\n\tsideEffects: false\n});\nvar intVecToUnsignedVec = {\n\tvec2i: vec2u,\n\tvec2u,\n\tvec3i: vec3u,\n\tvec3u,\n\tvec4i: vec4u,\n\tvec4u\n};\nvar bitShiftSignature = (lhs, rhs) =\u003e {\n\tconst lhsUnified = unify([lhs], [\n\t\tvec2i,\n\t\tvec3i,\n\t\tvec4i,\n\t\tvec2u,\n\t\tvec3u,\n\t\tvec4u\n\t])?.[0];\n\tif (!lhsUnified || !isVec(lhsUnified)) throw new SignatureNotSupportedError([lhs], [\n\t\tvec2i,\n\t\tvec3i,\n\t\tvec4i,\n\t\tvec2u,\n\t\tvec3u,\n\t\tvec4u\n\t]);\n\tconst cc = lhsUnified.componentCount;\n\tconst vecU = cc === 2 ? vec2u : cc === 3 ? vec3u : vec4u;\n\tconst rhsUnified = unify([rhs], [u32, vecU])?.[0];\n\tif (!rhsUnified) throw new SignatureNotSupportedError([rhs], [u32, vecU]);\n\treturn {\n\t\targTypes: [lhsUnified, rhsUnified],\n\t\treturnType: lhsUnified\n\t};\n};\nfunction cpuBitShiftLeft(lhs, rhs) {\n\tif (isInteger32VecInstance(lhs) \u0026\u0026 isUint32VecInstance(rhs) \u0026\u0026 lhs.length == rhs.length) return VectorOps.bitShiftLeft[lhs.kind](lhs, rhs);\n\tif (isInteger32VecInstance(lhs) \u0026\u0026 typeof rhs === \"number\") {\n\t\tconst rhsVec = intVecToUnsignedVec[lhs.kind](rhs);\n\t\treturn VectorOps.bitShiftLeft[lhs.kind](lhs, rhsVec);\n\t}\n\tthrow 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.\");\n}\nconst bitShiftLeft = dualImpl({\n\tname: \"bitShiftLeft\",\n\tsignature: bitShiftSignature,\n\tnormalImpl: cpuBitShiftLeft,\n\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e {\n\t\tif (isVec(lhs.dataType) \u0026\u0026 !isVec(rhs.dataType)) {\n\t\t\tconst cc = lhs.dataType.componentCount;\n\t\t\tconst schema = cc === 2 ? vec2u : cc === 3 ? vec3u : vec4u;\n\t\t\treturn ctx.gen.emitBinaryOp(lhs, \"\u003c\u003c\", ctx.gen.typeInstantiation(schema, [rhs]));\n\t\t}\n\t\treturn ctx.gen.emitBinaryOp(lhs, \"\u003c\u003c\", rhs);\n\t},\n\tsideEffects: false\n});\nfunction cpuBitShiftRight(lhs, rhs) {\n\tif (isInteger32VecInstance(lhs) \u0026\u0026 isUint32VecInstance(rhs) \u0026\u0026 lhs.length == rhs.length) return VectorOps.bitShiftRight[lhs.kind](lhs, rhs);\n\tif (isInteger32VecInstance(lhs) \u0026\u0026 typeof rhs === \"number\") {\n\t\tconst rhsVec = intVecToUnsignedVec[lhs.kind](rhs);\n\t\treturn VectorOps.bitShiftRight[lhs.kind](lhs, rhsVec);\n\t}\n\tthrow 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.\");\n}\nconst infixOperators = {\n\tadd,\n\tsub,\n\tmul,\n\tdiv,\n\tmod,\n\tbitShiftLeft,\n\tbitShiftRight: dualImpl({\n\t\tname: \"bitShiftRight\",\n\t\tsignature: bitShiftSignature,\n\t\tnormalImpl: cpuBitShiftRight,\n\t\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e {\n\t\t\tif (isVec(lhs.dataType) \u0026\u0026 !isVec(rhs.dataType)) {\n\t\t\t\tconst cc = lhs.dataType.componentCount;\n\t\t\t\tconst schema = cc === 2 ? vec2u : cc === 3 ? vec3u : vec4u;\n\t\t\t\treturn ctx.gen.emitBinaryOp(lhs, \"\u003e\u003e\", ctx.gen.typeInstantiation(schema, [rhs]));\n\t\t\t}\n\t\t\treturn ctx.gen.emitBinaryOp(lhs, \"\u003e\u003e\", rhs);\n\t\t},\n\t\tsideEffects: false\n\t})\n};\nvar InfixDispatch = class {\n\tlhs;\n\toperator;\n\tconstructor(lhs, operator) {\n\t\tthis.lhs = lhs;\n\t\tthis.operator = operator;\n\t}\n};\nfunction isInfixDispatch(o) {\n\treturn o instanceof InfixDispatch;\n}\nfunction assignInfixOperator(base, operator, operatorSymbol) {\n\tconst opImpl = infixOperators[operator];\n\tObject.defineProperty(base.prototype, operatorSymbol, { value: opImpl });\n\tfunction jsInfixDispatchFor(arg) {\n\t\treturn opImpl(this, arg);\n\t}\n\tObject.defineProperty(base.prototype, operator, { get() {\n\t\tif (inCodegenMode()) return new InfixDispatch(this, opImpl);\n\t\treturn jsInfixDispatchFor;\n\t} });\n}\nvar infixOperatorsAssigned = false;\nfunction assignInfixOperators() {\n\tif (infixOperatorsAssigned) return;\n\tinfixOperatorsAssigned = true;\n\tassignInfixOperator(VecBase, \"add\", Operator.plus);\n\tassignInfixOperator(MatBase, \"add\", Operator.plus);\n\tassignInfixOperator(VecBase, \"sub\", Operator.minus);\n\tassignInfixOperator(MatBase, \"sub\", Operator.minus);\n\tassignInfixOperator(VecBase, \"mul\", Operator.star);\n\tassignInfixOperator(MatBase, \"mul\", Operator.star);\n\tassignInfixOperator(VecBase, \"div\", Operator.slash);\n\tassignInfixOperator(VecBase, \"mod\", Operator.percent);\n\tassignInfixOperator(VecBase, \"bitShiftLeft\", Symbol());\n\tassignInfixOperator(VecBase, \"bitShiftRight\", Symbol());\n}\nconst bannedTokens = new Set([\n\t\"alias\",\n\t\"break\",\n\t\"case\",\n\t\"const\",\n\t\"const_assert\",\n\t\"continue\",\n\t\"continuing\",\n\t\"default\",\n\t\"diagnostic\",\n\t\"discard\",\n\t\"else\",\n\t\"enable\",\n\t\"false\",\n\t\"fn\",\n\t\"for\",\n\t\"if\",\n\t\"let\",\n\t\"loop\",\n\t\"override\",\n\t\"requires\",\n\t\"return\",\n\t\"struct\",\n\t\"switch\",\n\t\"true\",\n\t\"var\",\n\t\"while\",\n\t\"NULL\",\n\t\"Self\",\n\t\"abstract\",\n\t\"active\",\n\t\"alignas\",\n\t\"alignof\",\n\t\"as\",\n\t\"asm\",\n\t\"asm_fragment\",\n\t\"async\",\n\t\"attribute\",\n\t\"auto\",\n\t\"await\",\n\t\"become\",\n\t\"cast\",\n\t\"catch\",\n\t\"class\",\n\t\"co_await\",\n\t\"co_return\",\n\t\"co_yield\",\n\t\"coherent\",\n\t\"column_major\",\n\t\"common\",\n\t\"compile\",\n\t\"compile_fragment\",\n\t\"concept\",\n\t\"const_cast\",\n\t\"consteval\",\n\t\"constexpr\",\n\t\"constinit\",\n\t\"crate\",\n\t\"debugger\",\n\t\"decltype\",\n\t\"delete\",\n\t\"demote\",\n\t\"demote_to_helper\",\n\t\"do\",\n\t\"dynamic_cast\",\n\t\"enum\",\n\t\"explicit\",\n\t\"export\",\n\t\"extends\",\n\t\"extern\",\n\t\"external\",\n\t\"fallthrough\",\n\t\"filter\",\n\t\"final\",\n\t\"finally\",\n\t\"friend\",\n\t\"from\",\n\t\"fxgroup\",\n\t\"get\",\n\t\"goto\",\n\t\"groupshared\",\n\t\"highp\",\n\t\"impl\",\n\t\"implements\",\n\t\"import\",\n\t\"inline\",\n\t\"instanceof\",\n\t\"interface\",\n\t\"layout\",\n\t\"lowp\",\n\t\"macro\",\n\t\"macro_rules\",\n\t\"match\",\n\t\"mediump\",\n\t\"meta\",\n\t\"mod\",\n\t\"module\",\n\t\"move\",\n\t\"mut\",\n\t\"mutable\",\n\t\"namespace\",\n\t\"new\",\n\t\"nil\",\n\t\"noexcept\",\n\t\"noinline\",\n\t\"nointerpolation\",\n\t\"non_coherent\",\n\t\"noncoherent\",\n\t\"noperspective\",\n\t\"null\",\n\t\"nullptr\",\n\t\"of\",\n\t\"operator\",\n\t\"package\",\n\t\"packoffset\",\n\t\"partition\",\n\t\"pass\",\n\t\"patch\",\n\t\"pixelfragment\",\n\t\"precise\",\n\t\"precision\",\n\t\"premerge\",\n\t\"priv\",\n\t\"protected\",\n\t\"pub\",\n\t\"public\",\n\t\"readonly\",\n\t\"ref\",\n\t\"regardless\",\n\t\"register\",\n\t\"reinterpret_cast\",\n\t\"require\",\n\t\"resource\",\n\t\"restrict\",\n\t\"self\",\n\t\"set\",\n\t\"shared\",\n\t\"sizeof\",\n\t\"smooth\",\n\t\"snorm\",\n\t\"static\",\n\t\"static_assert\",\n\t\"static_cast\",\n\t\"std\",\n\t\"subroutine\",\n\t\"super\",\n\t\"target\",\n\t\"template\",\n\t\"this\",\n\t\"thread_local\",\n\t\"throw\",\n\t\"trait\",\n\t\"try\",\n\t\"type\",\n\t\"typedef\",\n\t\"typeid\",\n\t\"typename\",\n\t\"typeof\",\n\t\"union\",\n\t\"unless\",\n\t\"unorm\",\n\t\"unsafe\",\n\t\"unsized\",\n\t\"use\",\n\t\"using\",\n\t\"varying\",\n\t\"virtual\",\n\t\"volatile\",\n\t\"wgsl\",\n\t\"where\",\n\t\"with\",\n\t\"writeonly\",\n\t\"yield\",\n\t\"sampler\",\n\t\"uniform\",\n\t\"storage\"\n]);\nconst builtins = new Set([\n\t\"array\",\n\t\"bool\",\n\t\"f16\",\n\t\"f32\",\n\t\"i32\",\n\t\"u32\",\n\t\"mat2x2\",\n\t\"mat2x3\",\n\t\"mat2x4\",\n\t\"mat3x2\",\n\t\"mat3x3\",\n\t\"mat3x4\",\n\t\"mat4x2\",\n\t\"mat4x3\",\n\t\"mat4x4\",\n\t\"vec2\",\n\t\"vec3\",\n\t\"vec4\",\n\t\"bitcast\",\n\t\"all\",\n\t\"any\",\n\t\"select\",\n\t\"arrayLength\",\n\t\"abs\",\n\t\"acos\",\n\t\"acosh\",\n\t\"asin\",\n\t\"asinh\",\n\t\"atan\",\n\t\"atanh\",\n\t\"atan2\",\n\t\"ceil\",\n\t\"clamp\",\n\t\"cos\",\n\t\"cosh\",\n\t\"countLeadingZeros\",\n\t\"countOneBits\",\n\t\"countTrailingZeros\",\n\t\"cross\",\n\t\"degrees\",\n\t\"determinant\",\n\t\"distance\",\n\t\"dot\",\n\t\"dot4U8Packed\",\n\t\"dot4I8Packed\",\n\t\"exp\",\n\t\"exp2\",\n\t\"extractBits\",\n\t\"faceForward\",\n\t\"firstLeadingBit\",\n\t\"firstTrailingBit\",\n\t\"floor\",\n\t\"fma\",\n\t\"fract\",\n\t\"frexp\",\n\t\"insertBits\",\n\t\"inverseSqrt\",\n\t\"ldexp\",\n\t\"length\",\n\t\"log\",\n\t\"log2\",\n\t\"max\",\n\t\"min\",\n\t\"mix\",\n\t\"modf\",\n\t\"normalize\",\n\t\"pow\",\n\t\"quantizeToF16\",\n\t\"radians\",\n\t\"reflect\",\n\t\"refract\",\n\t\"reverseBits\",\n\t\"round\",\n\t\"saturate\",\n\t\"sign\",\n\t\"sin\",\n\t\"sinh\",\n\t\"smoothstep\",\n\t\"sqrt\",\n\t\"step\",\n\t\"tan\",\n\t\"tanh\",\n\t\"transpose\",\n\t\"trunc\",\n\t\"dpdx\",\n\t\"dpdxCoarse\",\n\t\"dpdxFine\",\n\t\"dpdy\",\n\t\"dpdyCoarse\",\n\t\"dpdyFine\",\n\t\"fwidth\",\n\t\"fwidthCoarse\",\n\t\"fwidthFine\",\n\t\"textureDimensions\",\n\t\"textureGather\",\n\t\"textureGatherCompare\",\n\t\"textureLoad\",\n\t\"textureNumLayers\",\n\t\"textureNumLevels\",\n\t\"textureNumSamples\",\n\t\"textureSample\",\n\t\"textureSampleBias\",\n\t\"textureSampleCompare\",\n\t\"textureSampleCompareLevel\",\n\t\"textureSampleGrad\",\n\t\"textureSampleLevel\",\n\t\"textureSampleBaseClampToEdge\",\n\t\"textureStore\",\n\t\"atomicLoad\",\n\t\"atomicStore\",\n\t\"atomicAdd\",\n\t\"atomicSub\",\n\t\"atomicMax\",\n\t\"atomicMin\",\n\t\"atomicAnd\",\n\t\"atomicOr\",\n\t\"atomicXor\",\n\t\"atomicExchange\",\n\t\"atomicCompareExchangeWeak\",\n\t\"pack4x8snorm\",\n\t\"pack4x8unorm\",\n\t\"pack4xI8\",\n\t\"pack4xU8\",\n\t\"pack4xI8Clamp\",\n\t\"pack4xU8Clamp\",\n\t\"pack2x16snorm\",\n\t\"pack2x16unorm\",\n\t\"pack2x16float\",\n\t\"unpack4x8snorm\",\n\t\"unpack4x8unorm\",\n\t\"unpack4xI8\",\n\t\"unpack4xU8\",\n\t\"unpack2x16snorm\",\n\t\"unpack2x16unorm\",\n\t\"unpack2x16float\",\n\t\"storageBarrier\",\n\t\"textureBarrier\",\n\t\"workgroupBarrier\",\n\t\"workgroupUniformLoad\",\n\t\"subgroupAdd\",\n\t\"subgroupExclusiveAdd\",\n\t\"subgroupInclusiveAdd\",\n\t\"subgroupAll\",\n\t\"subgroupAnd\",\n\t\"subgroupAny\",\n\t\"subgroupBallot\",\n\t\"subgroupBroadcast\",\n\t\"subgroupBroadcastFirst\",\n\t\"subgroupElect\",\n\t\"subgroupMax\",\n\t\"subgroupMin\",\n\t\"subgroupMul\",\n\t\"subgroupExclusiveMul\",\n\t\"subgroupInclusiveMul\",\n\t\"subgroupOr\",\n\t\"subgroupShuffle\",\n\t\"subgroupShuffleDown\",\n\t\"subgroupShuffleUp\",\n\t\"subgroupShuffleXor\",\n\t\"subgroupXor\",\n\t\"quadBroadcast\",\n\t\"quadSwapDiagonal\",\n\t\"quadSwapX\",\n\t\"quadSwapY\"\n]);\n/* @__NO_SIDE_EFFECTS__ */\nfunction sanitizePrimer(primer) {\n\tif (primer) {\n\t\tconst base = primer.replaceAll(/\\s/g, \"_\").replaceAll(/[^\\w]/g, \"\");\n\t\tif (!(/* @__PURE__ */ validateIdentifier(base)).success) return \"item\";\n\t\treturn base;\n\t}\n\treturn \"item\";\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction validateIdentifier(ident) {\n\tif (ident === \"_\" || ident === \"\") return {\n\t\tsuccess: false,\n\t\terror: `Identifiers cannot be equal to '' or '_'`\n\t};\n\tif (/\\s/.test(ident)) return {\n\t\tsuccess: false,\n\t\terror: `Identifiers cannot contain whitespace.`\n\t};\n\tif (ident.startsWith(\"__\")) return {\n\t\tsuccess: false,\n\t\terror: `Identifiers cannot start with double underscores.`\n\t};\n\tif (!/^(([_\\p{XID_Start}][\\p{XID_Continue}]+)|([\\p{XID_Start}]))$/u.test(ident)) return {\n\t\tsuccess: false,\n\t\terror: `Not compliant with WGSL guidelines.`\n\t};\n\treturn { success: true };\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction validateProp(ident) {\n\tconst identResult = /* @__PURE__ */ validateIdentifier(ident);\n\tif (!identResult.success) return identResult;\n\tif (bannedTokens.has(ident)) return {\n\t\tsuccess: false,\n\t\terror: `Identifiers cannot start with reserved keywords.`\n\t};\n\treturn { success: true };\n}\nfunction struct(props) {\n\treturn INTERNAL_createStruct(props, false);\n}\nfunction abstruct(props) {\n\treturn INTERNAL_createStruct(props, true);\n}\nfunction INTERNAL_createStruct(props, isAbstruct) {\n\tObject.keys(props).forEach((key) =\u003e {\n\t\tconst result = /* @__PURE__ */ validateProp(key);\n\t\tif (!result.success) throw new Error(`Invalid property key '${key}'${result.error ? `: ${result.error}` : \"\"}`);\n\t});\n\tconst structSchema = (instanceProps) =\u003e Object.fromEntries(Object.entries(props).map(([key, schema]) =\u003e [key, schemaCallWrapper(schema, instanceProps?.[key])]));\n\tObject.setPrototypeOf(structSchema, WgslStructImpl);\n\tstructSchema.propTypes = props;\n\tObject.defineProperty(structSchema, $internal, { value: { isAbstruct } });\n\treturn structSchema;\n}\nvar WgslStructImpl = {\n\ttype: \"struct\",\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t},\n\ttoString() {\n\t\treturn `struct:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n};\nconst roundUp = (value, modulo) =\u003e {\n\tconst bitMask = modulo - 1;\n\tconst invBitMask = ~bitMask;\n\treturn (value \u0026 bitMask) === 0 ? value : (value \u0026 invBitMask) + modulo;\n};\nvar TgpuVertexFormatDataImpl = class {\n\t[$internal] = {};\n\ttype;\n\t[$gpuCallable];\n\tconstructor(type) {\n\t\tthis.type = type;\n\t\tthis[$gpuCallable] = { call: (ctx, [v]) =\u003e {\n\t\t\treturn schemaCallWrapperGPU(ctx, formatToWGSLType[this.type], v);\n\t\t} };\n\t}\n\t[$cast](v) {\n\t\treturn schemaCallWrapper(formatToWGSLType[this.type], v);\n\t}\n};\nconst formatToWGSLType = {\n\tuint8: u32,\n\tuint8x2: vec2u,\n\tuint8x4: vec4u,\n\tsint8: i32,\n\tsint8x2: vec2i,\n\tsint8x4: vec4i,\n\tunorm8: f32,\n\tunorm8x2: vec2f,\n\tunorm8x4: vec4f,\n\tsnorm8: f32,\n\tsnorm8x2: vec2f,\n\tsnorm8x4: vec4f,\n\tuint16: u32,\n\tuint16x2: vec2u,\n\tuint16x4: vec4u,\n\tsint16: i32,\n\tsint16x2: vec2i,\n\tsint16x4: vec4i,\n\tunorm16: f32,\n\tunorm16x2: vec2f,\n\tunorm16x4: vec4f,\n\tsnorm16: f32,\n\tsnorm16x2: vec2f,\n\tsnorm16x4: vec4f,\n\tfloat16: f32,\n\tfloat16x2: vec2f,\n\tfloat16x4: vec4f,\n\tfloat32: f32,\n\tfloat32x2: vec2f,\n\tfloat32x3: vec3f,\n\tfloat32x4: vec4f,\n\tuint32: u32,\n\tuint32x2: vec2u,\n\tuint32x3: vec3u,\n\tuint32x4: vec4u,\n\tsint32: i32,\n\tsint32x2: vec2i,\n\tsint32x3: vec3i,\n\tsint32x4: vec4i,\n\t\"unorm10-10-10-2\": vec4f,\n\t\"unorm8x4-bgra\": vec4f\n};\nconst packedFormats = new Set(Object.keys(formatToWGSLType));\nnew TgpuVertexFormatDataImpl(\"uint8\");\nnew TgpuVertexFormatDataImpl(\"uint8x2\");\nnew TgpuVertexFormatDataImpl(\"uint8x4\");\nnew TgpuVertexFormatDataImpl(\"sint8\");\nnew TgpuVertexFormatDataImpl(\"sint8x2\");\nnew TgpuVertexFormatDataImpl(\"sint8x4\");\nnew TgpuVertexFormatDataImpl(\"unorm8\");\nnew TgpuVertexFormatDataImpl(\"unorm8x2\");\nnew TgpuVertexFormatDataImpl(\"unorm8x4\");\nnew TgpuVertexFormatDataImpl(\"snorm8\");\nnew TgpuVertexFormatDataImpl(\"snorm8x2\");\nnew TgpuVertexFormatDataImpl(\"snorm8x4\");\nnew TgpuVertexFormatDataImpl(\"uint16\");\nnew TgpuVertexFormatDataImpl(\"uint16x2\");\nnew TgpuVertexFormatDataImpl(\"uint16x4\");\nnew TgpuVertexFormatDataImpl(\"sint16\");\nnew TgpuVertexFormatDataImpl(\"sint16x2\");\nnew TgpuVertexFormatDataImpl(\"sint16x4\");\nnew TgpuVertexFormatDataImpl(\"unorm16\");\nnew TgpuVertexFormatDataImpl(\"unorm16x2\");\nnew TgpuVertexFormatDataImpl(\"unorm16x4\");\nnew TgpuVertexFormatDataImpl(\"snorm16\");\nnew TgpuVertexFormatDataImpl(\"snorm16x2\");\nnew TgpuVertexFormatDataImpl(\"snorm16x4\");\nnew TgpuVertexFormatDataImpl(\"float16\");\nnew TgpuVertexFormatDataImpl(\"float16x2\");\nnew TgpuVertexFormatDataImpl(\"float16x4\");\nnew TgpuVertexFormatDataImpl(\"float32\");\nnew TgpuVertexFormatDataImpl(\"float32x2\");\nnew TgpuVertexFormatDataImpl(\"float32x3\");\nnew TgpuVertexFormatDataImpl(\"float32x4\");\nnew TgpuVertexFormatDataImpl(\"uint32\");\nnew TgpuVertexFormatDataImpl(\"uint32x2\");\nnew TgpuVertexFormatDataImpl(\"uint32x3\");\nnew TgpuVertexFormatDataImpl(\"uint32x4\");\nnew TgpuVertexFormatDataImpl(\"sint32\");\nnew TgpuVertexFormatDataImpl(\"sint32x2\");\nnew TgpuVertexFormatDataImpl(\"sint32x3\");\nnew TgpuVertexFormatDataImpl(\"sint32x4\");\nnew TgpuVertexFormatDataImpl(\"unorm10-10-10-2\");\nnew TgpuVertexFormatDataImpl(\"unorm8x4-bgra\");\nfunction isPackedData(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 packedFormats.has(value?.type);\n}\nvar knownAlignmentMap = {\n\tf32: 4,\n\tf16: 2,\n\ti32: 4,\n\tu32: 4,\n\tbool: 4,\n\tu16: 2,\n\tvec2f: 8,\n\tvec2h: 4,\n\tvec2i: 8,\n\tvec2u: 8,\n\t\"vec2\u003cbool\u003e\": 8,\n\tvec3f: 16,\n\tvec3h: 8,\n\tvec3i: 16,\n\tvec3u: 16,\n\t\"vec3\u003cbool\u003e\": 16,\n\tvec4f: 16,\n\tvec4h: 8,\n\tvec4i: 16,\n\tvec4u: 16,\n\t\"vec4\u003cbool\u003e\": 16,\n\tmat2x2f: 8,\n\tmat3x3f: 16,\n\tmat4x4f: 16,\n\tatomic: 4\n};\nfunction computeAlignment(data) {\n\tconst dataType = data?.type;\n\tconst knownAlignment = knownAlignmentMap[dataType];\n\tif (knownAlignment !== void 0) return knownAlignment;\n\tif (isWgslStruct(data)) return Object.values(data.propTypes).map(alignmentOf).reduce((a, b) =\u003e a \u003e b ? a : b);\n\tif (isWgslArray(data)) return alignmentOf(data.elementType);\n\tif (isUnstruct(data)) {\n\t\tconst firstProp = Object.values(data.propTypes)[0];\n\t\treturn firstProp ? getCustomAlignment(firstProp) ?? 1 : 1;\n\t}\n\tif (isDisarray(data)) return getCustomAlignment(data.elementType) ?? 1;\n\tif (isDecorated(data) || isLooseDecorated(data)) return getCustomAlignment(data) ?? alignmentOf(data.inner);\n\tif (packedFormats.has(dataType)) return 1;\n\tthrow new Error(`Cannot determine alignment of data: ${safeStringify(data)}`);\n}\nfunction computeCustomAlignment(data) {\n\tif (isUnstruct(data)) {\n\t\tconst firstProp = Object.values(data.propTypes)[0];\n\t\treturn firstProp ? customAlignmentOf(firstProp) : 1;\n\t}\n\tif (isDisarray(data)) return customAlignmentOf(data.elementType);\n\tif (isLooseDecorated(data)) return getCustomAlignment(data) ?? customAlignmentOf(data.inner);\n\treturn getCustomAlignment(data) ?? 1;\n}\nvar cachedAlignments = /* @__PURE__ */ new WeakMap();\nvar cachedCustomAlignments = /* @__PURE__ */ new WeakMap();\nfunction alignmentOf(data) {\n\tlet alignment = cachedAlignments.get(data);\n\tif (alignment === void 0) {\n\t\talignment = computeAlignment(data);\n\t\tcachedAlignments.set(data, alignment);\n\t}\n\treturn alignment;\n}\nfunction customAlignmentOf(data) {\n\tlet alignment = cachedCustomAlignments.get(data);\n\tif (alignment === void 0) {\n\t\talignment = computeCustomAlignment(data);\n\t\tcachedCustomAlignments.set(data, alignment);\n\t}\n\treturn alignment;\n}\nvar knownSizesMap = {\n\tbool: 4,\n\tf32: 4,\n\tf16: 2,\n\ti32: 4,\n\tu32: 4,\n\tu16: 2,\n\tvec2f: 8,\n\tvec2h: 4,\n\tvec2i: 8,\n\tvec2u: 8,\n\t\"vec2\u003cbool\u003e\": 8,\n\tvec3f: 12,\n\tvec3h: 6,\n\tvec3i: 12,\n\tvec3u: 12,\n\t\"vec3\u003cbool\u003e\": 12,\n\tvec4f: 16,\n\tvec4h: 8,\n\tvec4i: 16,\n\tvec4u: 16,\n\t\"vec4\u003cbool\u003e\": 16,\n\tmat2x2f: 16,\n\tmat3x3f: 48,\n\tmat4x4f: 64,\n\tuint8: 1,\n\tuint8x2: 2,\n\tuint8x4: 4,\n\tsint8: 1,\n\tsint8x2: 2,\n\tsint8x4: 4,\n\tunorm8: 1,\n\tunorm8x2: 2,\n\tunorm8x4: 4,\n\tsnorm8: 1,\n\tsnorm8x2: 2,\n\tsnorm8x4: 4,\n\tuint16: 2,\n\tuint16x2: 4,\n\tuint16x4: 8,\n\tsint16: 2,\n\tsint16x2: 4,\n\tsint16x4: 8,\n\tunorm16: 2,\n\tunorm16x2: 4,\n\tunorm16x4: 8,\n\tsnorm16: 2,\n\tsnorm16x2: 4,\n\tsnorm16x4: 8,\n\tfloat16: 2,\n\tfloat16x2: 4,\n\tfloat16x4: 8,\n\tfloat32: 4,\n\tfloat32x2: 8,\n\tfloat32x3: 12,\n\tfloat32x4: 16,\n\tuint32: 4,\n\tuint32x2: 8,\n\tuint32x3: 12,\n\tuint32x4: 16,\n\tsint32: 4,\n\tsint32x2: 8,\n\tsint32x3: 12,\n\tsint32x4: 16,\n\t\"unorm10-10-10-2\": 4,\n\t\"unorm8x4-bgra\": 4,\n\tatomic: 4\n};\nfunction computeMLOfStruct(struct$1) {\n\tlet size$1 = 0;\n\tlet longestContiguousPrefix = 0;\n\tlet isContiguous$1 = true;\n\tlet prefixEnd = false;\n\tfor (const property of Object.values(struct$1.propTypes)) {\n\t\tif (Number.isNaN(size$1)) throw new Error(\"Only the last property of a struct can be unbounded\");\n\t\tconst prevSize = size$1;\n\t\tsize$1 = roundUp(size$1, alignmentOf(property));\n\t\tconst hasPadding = prevSize !== size$1;\n\t\tconst propLayout = computeMemoryLayout(property);\n\t\tsize$1 += propLayout.size;\n\t\tif (Number.isNaN(size$1) \u0026\u0026 property.type !== \"array\") throw new Error(\"Cannot nest unbounded struct within another struct\");\n\t\tif (prefixEnd) continue;\n\t\tif (!hasPadding \u0026\u0026 propLayout.isContiguous) longestContiguousPrefix += propLayout.size;\n\t\telse {\n\t\t\tprefixEnd = true;\n\t\t\tisContiguous$1 = false;\n\t\t\tif (!hasPadding) longestContiguousPrefix += propLayout.longestContiguousPrefix;\n\t\t}\n\t}\n\tconst trueSize = roundUp(size$1, alignmentOf(struct$1));\n\treturn {\n\t\tisContiguous: size$1 === trueSize \u0026\u0026 isContiguous$1,\n\t\tsize: trueSize,\n\t\tlongestContiguousPrefix\n\t};\n}\nfunction computeMLOfUnstruct(data) {\n\tlet size$1 = 0;\n\tlet longestContiguousPrefix = 0;\n\tlet isContiguous$1 = true;\n\tlet prefixEnd = false;\n\tfor (const property of Object.values(data.propTypes)) {\n\t\tconst alignment = customAlignmentOf(property);\n\t\tconst prevSize = size$1;\n\t\tsize$1 = roundUp(size$1, alignment);\n\t\tconst hasPadding = prevSize !== size$1;\n\t\tif (hasPadding) isContiguous$1 = false;\n\t\tconst propLayout = computeMemoryLayout(property);\n\t\tsize$1 += propLayout.size;\n\t\tif (prefixEnd) continue;\n\t\tif (!hasPadding \u0026\u0026 propLayout.isContiguous) longestContiguousPrefix += propLayout.size;\n\t\telse {\n\t\t\tprefixEnd = true;\n\t\t\tisContiguous$1 = false;\n\t\t\tif (!hasPadding) longestContiguousPrefix += propLayout.longestContiguousPrefix;\n\t\t}\n\t}\n\treturn {\n\t\tisContiguous: isContiguous$1,\n\t\tsize: size$1,\n\t\tlongestContiguousPrefix\n\t};\n}\nfunction computeMLOfWgslArray(data) {\n\tconst elementType = data.elementType;\n\tconst elementMemoryLayout = computeMemoryLayout(elementType);\n\tconst elementSize = elementMemoryLayout.size;\n\tconst stride = roundUp(elementSize, alignmentOf(elementType));\n\tconst isContiguous$1 = !(stride \u003e elementSize) \u0026\u0026 elementMemoryLayout.isContiguous;\n\tconst size$1 = data.elementCount === 0 ? NaN : data.elementCount * stride;\n\tlet longestContiguousPrefix;\n\tif (isContiguous$1) longestContiguousPrefix = size$1;\n\telse longestContiguousPrefix = elementMemoryLayout.longestContiguousPrefix;\n\treturn {\n\t\tsize: size$1,\n\t\tisContiguous: isContiguous$1,\n\t\tlongestContiguousPrefix\n\t};\n}\nfunction computeMLOfDisarray(data) {\n\tconst elementType = data.elementType;\n\tconst elementMemoryLayout = computeMemoryLayout(elementType);\n\tconst elementSize = elementMemoryLayout.size;\n\tconst stride = roundUp(elementSize, customAlignmentOf(elementType));\n\tconst isContiguous$1 = !(stride \u003e elementSize) \u0026\u0026 elementMemoryLayout.isContiguous;\n\tconst size$1 = data.elementCount * stride;\n\tlet longestContiguousPrefix;\n\tif (isContiguous$1) longestContiguousPrefix = size$1;\n\telse longestContiguousPrefix = elementMemoryLayout.longestContiguousPrefix;\n\treturn {\n\t\tsize: size$1,\n\t\tisContiguous: isContiguous$1,\n\t\tlongestContiguousPrefix\n\t};\n}\nfunction computeMemoryLayout(data) {\n\tconst knownSize = knownSizesMap[data.type];\n\tif (knownSize !== void 0) return {\n\t\tisContiguous: data.type !== \"mat3x3f\",\n\t\tsize: knownSize,\n\t\tlongestContiguousPrefix: data.type === \"mat3x3f\" ? 12 : knownSize\n\t};\n\tif (isWgslStruct(data)) return computeMLOfStruct(data);\n\tif (isUnstruct(data)) return computeMLOfUnstruct(data);\n\tif (isWgslArray(data)) return computeMLOfWgslArray(data);\n\tif (isDisarray(data)) return computeMLOfDisarray(data);\n\tif (isDecorated(data) || isLooseDecorated(data)) {\n\t\tconst size$1 = getCustomSize(data);\n\t\tconst undecoratedLayout = computeMemoryLayout(undecorate(data));\n\t\tif (size$1) return {\n\t\t\tisContiguous: size$1 === undecoratedLayout.size \u0026\u0026 undecoratedLayout.isContiguous,\n\t\t\tsize: size$1,\n\t\t\tlongestContiguousPrefix: undecoratedLayout.longestContiguousPrefix\n\t\t};\n\t\treturn computeMemoryLayout(data.inner);\n\t}\n\tthrow new Error(`Cannot determine memory layout of data: ${data}`);\n}\nvar cachedLayouts = /* @__PURE__ */ new WeakMap();\nfunction getLayoutInfo(schema, key) {\n\tlet layout = cachedLayouts.get(schema);\n\tif (layout === void 0) {\n\t\tlayout = computeMemoryLayout(schema);\n\t\tcachedLayouts.set(schema, layout);\n\t}\n\treturn layout[key];\n}\nfunction sizeOf(schema) {\n\treturn getLayoutInfo(schema, \"size\");\n}\nfunction PUBLIC_sizeOf(schema) {\n\treturn sizeOf(schema);\n}\nconst arrayOf = comptime(((elementType, elementCount) =\u003e {\n\tif (isDecorated(elementType) \u0026\u0026 !elementType.attribs.every(isLocationAttrib)) 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).\");\n\tif (elementCount === void 0) return comptime((count) =\u003e cpu_arrayOf(elementType, count));\n\treturn cpu_arrayOf(elementType, elementCount);\n})).$name(\"arrayOf\");\nfunction cpu_arrayOf(elementType, elementCount) {\n\tconst arraySchema = (elements) =\u003e {\n\t\tif (elements \u0026\u0026 elements.length !== elementCount) throw new Error(`Array schema of ${elementCount} elements of type ${elementType.type} called with ${elements.length} argument(s).`);\n\t\treturn Array.from({ length: elementCount }, (_, i) =\u003e schemaCallWrapper(elementType, elements?.[i]));\n\t};\n\tObject.setPrototypeOf(arraySchema, WgslArrayImpl);\n\tif (Number.isNaN(sizeOf(elementType))) throw new Error(\"Cannot nest runtime sized arrays.\");\n\tarraySchema.elementType = elementType;\n\tif (!Number.isInteger(elementCount) || elementCount \u003c 0) throw new Error(`Cannot create array schema with invalid element count: ${elementCount}.`);\n\tarraySchema.elementCount = elementCount;\n\treturn arraySchema;\n}\nvar WgslArrayImpl = {\n\t[$internal]: true,\n\ttype: \"array\",\n\ttoString() {\n\t\treturn `arrayOf(${String(this.elementType)}, ${this.elementCount})`;\n\t}\n};\nfunction textureDescriptorToSchema(desc) {\n\tif (\"multisampled\" in desc) {\n\t\tif (desc.multisampled) {\n\t\t\tif (desc.dimension === \"2d\") return textureMultisampled2d(desc.sampleType);\n\t\t\tthrow new Error(`Multisampled textures only support '2d' dimension, got '${desc.dimension}'`);\n\t\t}\n\t\tswitch (desc.dimension) {\n\t\t\tcase \"1d\": return texture1d(desc.sampleType);\n\t\t\tcase \"2d\": return texture2d(desc.sampleType);\n\t\t\tcase \"2d-array\": return texture2dArray(desc.sampleType);\n\t\t\tcase \"3d\": return texture3d(desc.sampleType);\n\t\t\tcase \"cube\": return textureCube(desc.sampleType);\n\t\t\tcase \"cube-array\": return textureCubeArray(desc.sampleType);\n\t\t\tdefault: throw new Error(`Unsupported texture dimension: '${desc.dimension}'`);\n\t\t}\n\t}\n\tif (!(\"access\" in desc)) throw new Error(\"Descriptor is neither a sampled nor a storage texture\");\n\tswitch (desc.dimension) {\n\t\tcase \"1d\": return textureStorage1d(desc.format, desc.access);\n\t\tcase \"2d\": return textureStorage2d(desc.format, desc.access);\n\t\tcase \"2d-array\": return textureStorage2dArray(desc.format, desc.access);\n\t\tcase \"3d\": return textureStorage3d(desc.format, desc.access);\n\t\tdefault: throw new Error(`Unsupported storage texture dimension: '${desc.dimension}'`);\n\t}\n}\nfunction createTexture(type, props) {\n\tconst sampleTypes = type.startsWith(\"texture_depth\") ? [\n\t\t\"depth\",\n\t\t\"float\",\n\t\t\"unfilterable-float\"\n\t] : props.sampleType.type === \"i32\" ? [\"sint\"] : props.sampleType.type === \"u32\" ? [\"uint\"] : [\"float\", \"unfilterable-float\"];\n\treturn {\n\t\t[$internal]: {},\n\t\t[$repr]: void 0,\n\t\ttype,\n\t\tbindingSampleType: sampleTypes,\n\t\t...props\n\t};\n}\nfunction createStorageTexture(type, props) {\n\treturn {\n\t\t[$internal]: {},\n\t\t[$repr]: void 0,\n\t\ttype,\n\t\t...props\n\t};\n}\nvar textureCache = /* @__PURE__ */ new Map();\nconst accessModeMap = {\n\t\"write-only\": \"write\",\n\t\"read-only\": \"read\",\n\t\"read-write\": \"read_write\"\n};\nfunction getOrCreate(key, factory) {\n\tlet cached = textureCache.get(key);\n\tif (!cached) {\n\t\tcached = factory();\n\t\ttextureCache.set(key, cached);\n\t}\n\treturn cached;\n}\nfunction texture1d(sampleType) {\n\tconst actualSampleType = sampleType || f32;\n\treturn getOrCreate(`texture_1d\u003c${actualSampleType.type}\u003e`, () =\u003e createTexture(\"texture_1d\", {\n\t\tdimension: \"1d\",\n\t\tsampleType: actualSampleType,\n\t\tmultisampled: false\n\t}));\n}\nfunction texture2d(sampleType) {\n\tconst actualSampleType = sampleType || f32;\n\treturn getOrCreate(`texture_2d\u003c${actualSampleType.type}\u003e`, () =\u003e createTexture(\"texture_2d\", {\n\t\tdimension: \"2d\",\n\t\tsampleType: actualSampleType,\n\t\tmultisampled: false\n\t}));\n}\nfunction textureMultisampled2d(sampleType) {\n\tconst actualSampleType = sampleType || f32;\n\treturn getOrCreate(`texture_multisampled_2d\u003c${actualSampleType.type}\u003e`, () =\u003e createTexture(\"texture_multisampled_2d\", {\n\t\tdimension: \"2d\",\n\t\tsampleType: actualSampleType,\n\t\tmultisampled: true\n\t}));\n}\nfunction texture2dArray(sampleType) {\n\tconst actualSampleType = sampleType || f32;\n\treturn getOrCreate(`texture_2d_array\u003c${actualSampleType.type}\u003e`, () =\u003e createTexture(\"texture_2d_array\", {\n\t\tdimension: \"2d-array\",\n\t\tsampleType: actualSampleType,\n\t\tmultisampled: false\n\t}));\n}\nfunction textureCube(sampleType) {\n\tconst actualSampleType = sampleType || f32;\n\treturn getOrCreate(`texture_cube\u003c${actualSampleType.type}\u003e`, () =\u003e createTexture(\"texture_cube\", {\n\t\tdimension: \"cube\",\n\t\tsampleType: actualSampleType,\n\t\tmultisampled: false\n\t}));\n}\nfunction textureCubeArray(sampleType) {\n\tconst actualSampleType = sampleType || f32;\n\treturn getOrCreate(`texture_cube_array\u003c${actualSampleType.type}\u003e`, () =\u003e createTexture(\"texture_cube_array\", {\n\t\tdimension: \"cube-array\",\n\t\tsampleType: actualSampleType,\n\t\tmultisampled: false\n\t}));\n}\nfunction texture3d(sampleType) {\n\tconst actualSampleType = sampleType || f32;\n\treturn getOrCreate(`texture_3d\u003c${actualSampleType.type}\u003e`, () =\u003e createTexture(\"texture_3d\", {\n\t\tdimension: \"3d\",\n\t\tsampleType: actualSampleType,\n\t\tmultisampled: false\n\t}));\n}\nfunction textureStorage1d(format, access) {\n\tconst actualAccess = access || \"write-only\";\n\treturn getOrCreate(`texture_storage_1d\u003c${format}, ${accessModeMap[actualAccess]}\u003e`, () =\u003e createStorageTexture(\"texture_storage_1d\", {\n\t\tdimension: \"1d\",\n\t\tformat,\n\t\taccess: actualAccess\n\t}));\n}\nfunction textureStorage2d(format, access) {\n\tconst actualAccess = access || \"write-only\";\n\treturn getOrCreate(`texture_storage_2d\u003c${format}, ${accessModeMap[actualAccess]}\u003e`, () =\u003e createStorageTexture(\"texture_storage_2d\", {\n\t\tdimension: \"2d\",\n\t\tformat,\n\t\taccess: actualAccess\n\t}));\n}\nfunction textureStorage2dArray(format, access) {\n\tconst actualAccess = access || \"write-only\";\n\treturn getOrCreate(`texture_storage_2d_array\u003c${format}, ${accessModeMap[actualAccess]}\u003e`, () =\u003e createStorageTexture(\"texture_storage_2d_array\", {\n\t\tdimension: \"2d-array\",\n\t\tformat,\n\t\taccess: actualAccess\n\t}));\n}\nfunction textureStorage3d(format, access) {\n\tconst actualAccess = access || \"write-only\";\n\treturn getOrCreate(`texture_storage_3d\u003c${format}, ${accessModeMap[actualAccess]}\u003e`, () =\u003e createStorageTexture(\"texture_storage_3d\", {\n\t\tdimension: \"3d\",\n\t\tformat,\n\t\taccess: actualAccess\n\t}));\n}\nfunction textureExternal() {\n\treturn getOrCreate(\"texture_external\", () =\u003e ({\n\t\t[$internal]: {},\n\t\t[$repr]: void 0,\n\t\ttype: \"texture_external\",\n\t\tdimension: \"2d\"\n\t}));\n}\nfunction isWgslTexture(value) {\n\treturn !!value[$internal] \u0026\u0026 typeof value.multisampled === \"boolean\";\n}\nfunction isWgslStorageTexture(value) {\n\treturn !!value[$internal] \u0026\u0026 typeof value.format === \"string\" \u0026\u0026 typeof value.access === \"string\";\n}\nfunction isWgslExternalTexture(value) {\n\treturn !!value[$internal] \u0026\u0026 value.type === \"texture_external\";\n}\nfunction sampler() {\n\treturn {\n\t\t[$internal]: {},\n\t\ttype: \"sampler\",\n\t\t[$repr]: void 0\n\t};\n}\nfunction comparisonSampler() {\n\treturn {\n\t\t[$internal]: {},\n\t\ttype: \"sampler_comparison\",\n\t\t[$repr]: void 0\n\t};\n}\nfunction isWgslSampler(value) {\n\treturn !!value[$internal] \u0026\u0026 value.type === \"sampler\";\n}\nfunction isWgslComparisonSampler(value) {\n\treturn !!value[$internal] \u0026\u0026 value.type === \"sampler_comparison\";\n}\nfunction atomic(data) {\n\treturn new AtomicImpl(data);\n}\nvar AtomicImpl = class {\n\t[$internal] = {};\n\ttype = \"atomic\";\n\tinner;\n\tconstructor(inner) {\n\t\tthis.inner = inner;\n\t}\n};\nfunction attribute(data, attrib) {\n\tif (isDecorated(data)) return new DecoratedImpl(data.inner, [attrib, ...data.attribs]);\n\tif (isLooseDecorated(data)) return new LooseDecoratedImpl(data.inner, [attrib, ...data.attribs]);\n\tif (isLooseData(data)) return new LooseDecoratedImpl(data, [attrib]);\n\treturn new DecoratedImpl(data, [attrib]);\n}\nfunction align(alignment, data) {\n\treturn attribute(data, {\n\t\t[$internal]: true,\n\t\ttype: \"@align\",\n\t\tparams: [alignment]\n\t});\n}\nfunction size(size$1, data) {\n\treturn attribute(data, {\n\t\t[$internal]: true,\n\t\ttype: \"@size\",\n\t\tparams: [size$1]\n\t});\n}\nfunction location(location$1, data) {\n\treturn attribute(data, {\n\t\t[$internal]: true,\n\t\ttype: \"@location\",\n\t\tparams: [location$1]\n\t});\n}\nfunction isBuiltin(value) {\n\treturn (isDecorated(value) || isLooseDecorated(value)) \u0026\u0026 value.attribs.find(isBuiltinAttrib) !== void 0;\n}\nfunction getAttributesString(field) {\n\tif (!isDecorated(field) \u0026\u0026 !isLooseDecorated(field)) return \"\";\n\treturn field.attribs.map((attrib) =\u003e {\n\t\tif (attrib.params.length === 0) return `${attrib.type} `;\n\t\treturn `${attrib.type}(${attrib.params.join(\", \")}) `;\n\t}).join(\"\");\n}\nvar BaseDecoratedImpl = class {\n\t[$internal] = {};\n\tinner;\n\tattribs;\n\tconstructor(inner, attribs) {\n\t\tthis.inner = inner;\n\t\tthis.attribs = attribs;\n\t\tconst alignAttrib = attribs.find(isAlignAttrib)?.params[0];\n\t\tconst sizeAttrib = attribs.find(isSizeAttrib)?.params[0];\n\t\tif (alignAttrib !== void 0) {\n\t\t\tif (alignAttrib \u003c= 0) throw new Error(`Custom data alignment must be a positive number, got: ${alignAttrib}.`);\n\t\t\tif (Math.log2(alignAttrib) % 1 !== 0) throw new Error(`Alignment has to be a power of 2, got: ${alignAttrib}.`);\n\t\t\tif (isWgslData(this.inner)) {\n\t\t\t\tif (alignAttrib % alignmentOf(this.inner) !== 0) throw new Error(`Custom alignment has to be a multiple of the standard data alignment. Got: ${alignAttrib}, expected multiple of: ${alignmentOf(this.inner)}.`);\n\t\t\t}\n\t\t}\n\t\tif (sizeAttrib !== void 0) {\n\t\t\tif (sizeAttrib \u003c sizeOf(this.inner)) throw new Error(`Custom data size cannot be smaller then the standard data size. Got: ${sizeAttrib}, expected at least: ${sizeOf(this.inner)}.`);\n\t\t\tif (sizeAttrib \u003c= 0) throw new Error(`Custom data size must be a positive number. Got: ${sizeAttrib}.`);\n\t\t}\n\t}\n};\nvar DecoratedImpl = class extends BaseDecoratedImpl {\n\t[$internal] = {};\n\ttype = \"decorated\";\n};\nvar LooseDecoratedImpl = class extends BaseDecoratedImpl {\n\t[$internal] = {};\n\ttype = \"loose-decorated\";\n};\nfunction isContiguous(schema) {\n\treturn getLayoutInfo(schema, \"isContiguous\");\n}\nfunction getLongestContiguousPrefix(schema) {\n\treturn getLayoutInfo(schema, \"longestContiguousPrefix\");\n}\nvar __defProp = Object.defineProperty;\nvar __defNormalProp = (obj, key, value) =\u003e key in obj ? __defProp(obj, key, {\n\tenumerable: true,\n\tconfigurable: true,\n\twritable: true,\n\tvalue\n}) : obj[key] = value;\nvar __export = (target, all$1) =\u003e {\n\tfor (var name in all$1) __defProp(target, name, {\n\t\tget: all$1[name],\n\t\tenumerable: true\n\t});\n};\nvar __publicField = (obj, key, value) =\u003e __defNormalProp(obj, typeof key !== \"symbol\" ? key + \"\" : key, value);\n__export({}, {\n\tBufferReader: () =\u003e BufferReader,\n\tBufferWriter: () =\u003e BufferWriter,\n\tMaxValue: () =\u003e MaxValue,\n\tMeasurer: () =\u003e Measurer,\n\tUnresolvedReferenceError: () =\u003e UnresolvedReferenceError,\n\tValidationError: () =\u003e ValidationError,\n\tarrayOf: () =\u003e arrayOf$1,\n\tbool: () =\u003e bool$1,\n\tbyte: () =\u003e byte,\n\tchars: () =\u003e chars,\n\tconcat: () =\u003e concat,\n\tdynamicArrayOf: () =\u003e dynamicArrayOf,\n\tf16: () =\u003e f16$1,\n\tf32: () =\u003e f32$1,\n\tf32Array: () =\u003e f32Array,\n\tf64Array: () =\u003e f64Array,\n\tgeneric: () =\u003e generic,\n\tgenericEnum: () =\u003e genericEnum,\n\ti16: () =\u003e i16,\n\ti16Array: () =\u003e i16Array,\n\ti32: () =\u003e i32$1,\n\ti32Array: () =\u003e i32Array,\n\ti8: () =\u003e i8,\n\ti8Array: () =\u003e i8Array,\n\tkeyed: () =\u003e keyed,\n\tobject: () =\u003e object,\n\toptional: () =\u003e optional,\n\tstring: () =\u003e string,\n\ttupleOf: () =\u003e tupleOf,\n\tu16: () =\u003e u16$1,\n\tu16Array: () =\u003e u16Array,\n\tu32: () =\u003e u32$1,\n\tu32Array: () =\u003e u32Array,\n\tu8: () =\u003e u8,\n\tu8Array: () =\u003e u8Array,\n\tu8ClampedArray: () =\u003e u8ClampedArray\n});\nvar UnresolvedReferenceError = class _UnresolvedReferenceError extends Error {\n\tconstructor(msg) {\n\t\tsuper(msg);\n\t\tObject.setPrototypeOf(this, _UnresolvedReferenceError.prototype);\n\t}\n};\nvar ValidationError = class _ValidationError extends Error {\n\tconstructor(msg) {\n\t\tsuper(msg);\n\t\tObject.setPrototypeOf(this, _ValidationError.prototype);\n\t}\n};\nvar UnboundedMeasurer = class {\n\tconstructor() {\n\t\t__publicField(this, \"size\", NaN);\n\t\t__publicField(this, \"unbounded\", this);\n\t\t__publicField(this, \"isUnbounded\", true);\n\t}\n\tadd() {\n\t\treturn this;\n\t}\n\tfork() {\n\t\treturn this;\n\t}\n};\nvar unboundedMeasurer = new UnboundedMeasurer();\nvar Measurer = class _Measurer {\n\tconstructor() {\n\t\t__publicField(this, \"size\", 0);\n\t\t__publicField(this, \"unbounded\", unboundedMeasurer);\n\t\t__publicField(this, \"isUnbounded\", false);\n\t}\n\tadd(bytes) {\n\t\tthis.size += bytes;\n\t\treturn this;\n\t}\n\tfork() {\n\t\tconst forked = new _Measurer();\n\t\tforked.size = this.size;\n\t\treturn forked;\n\t}\n};\nvar MaxValue = Symbol(\"The biggest (in amount of bytes needed) value a schema can represent\");\nvar Schema = class {\n\tconstructor() {\n\t\t__publicField(this, \"__unwrapped\");\n\t}\n\tresolveReferences(ctx) {}\n\tseekProperty(_reference, _prop) {\n\t\treturn null;\n\t}\n};\nvar Ref = class {\n\tconstructor(key) {\n\t\tthis.key = key;\n\t}\n};\nvar SubTypeKey = {\n\tSTRING: \"string\",\n\tENUM: \"enum\"\n};\nvar ArraySchema = class extends Schema {\n\tconstructor(_unstableElementSchema, length$1) {\n\t\tsuper();\n\t\tthis._unstableElementSchema = _unstableElementSchema;\n\t\tthis.length = length$1;\n\t\t__publicField(this, \"elementSchema\");\n\t\tthis.elementSchema = _unstableElementSchema;\n\t}\n\tresolveReferences(ctx) {\n\t\tthis.elementSchema = ctx.resolve(this._unstableElementSchema);\n\t}\n\twrite(output, values) {\n\t\tif (values.length !== this.length) throw new ValidationError(`Expected array of length ${this.length}, got ${values.length}`);\n\t\tfor (const value of values) this.elementSchema.write(output, value);\n\t}\n\tread(input) {\n\t\tconst array = [];\n\t\tfor (let i = 0; i \u003c this.length; ++i) array.push(this.elementSchema.read(input));\n\t\treturn array;\n\t}\n\tget maxSize() {\n\t\treturn this.elementSchema.measure(MaxValue).size * this.length;\n\t}\n\tmeasure(values, measurer = new Measurer()) {\n\t\tfor (let i = 0; i \u003c this.length; ++i) this.elementSchema.measure(values === MaxValue ? MaxValue : values[i], measurer);\n\t\treturn measurer;\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction arrayOf$1(elementSchema, length$1) {\n\treturn new ArraySchema(elementSchema, length$1);\n}\nvar BoolSchema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 1);\n\t}\n\tread(input) {\n\t\treturn input.readBool();\n\t}\n\twrite(output, value) {\n\t\toutput.writeBool(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(1);\n\t}\n};\nvar bool$1 = new BoolSchema();\nvar _StringSchema = class _StringSchema$1 extends Schema {\n\tstatic get _encoder() {\n\t\tif (!_StringSchema$1._cachedEncoder) _StringSchema$1._cachedEncoder = new TextEncoder();\n\t\treturn _StringSchema$1._cachedEncoder;\n\t}\n\tread(input) {\n\t\treturn input.readString();\n\t}\n\twrite(output, value) {\n\t\toutput.writeString(value);\n\t}\n\tmeasure(value, measurer = new Measurer()) {\n\t\tif (value === MaxValue) return measurer.unbounded;\n\t\tconst encoded = _StringSchema$1._encoder.encode(value);\n\t\treturn measurer.add(encoded.byteLength + 1);\n\t}\n};\n__publicField(_StringSchema, \"_cachedEncoder\");\nvar string = new _StringSchema();\nvar Int8Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 1);\n\t}\n\tread(input) {\n\t\treturn input.readInt8();\n\t}\n\twrite(output, value) {\n\t\toutput.writeInt8(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(1);\n\t}\n};\nvar i8 = new Int8Schema();\nvar Uint8Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 1);\n\t}\n\tread(input) {\n\t\treturn input.readUint8();\n\t}\n\twrite(output, value) {\n\t\toutput.writeUint8(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(1);\n\t}\n};\nvar u8 = new Uint8Schema();\nvar byte = u8;\nvar Int16Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 2);\n\t}\n\tread(input) {\n\t\treturn input.readInt16();\n\t}\n\twrite(output, value) {\n\t\toutput.writeInt16(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(2);\n\t}\n};\nvar i16 = new Int16Schema();\nvar Uint16Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 2);\n\t}\n\tread(input) {\n\t\treturn input.readUint16();\n\t}\n\twrite(output, value) {\n\t\toutput.writeUint16(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(2);\n\t}\n};\nvar u16$1 = new Uint16Schema();\nvar Int32Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 4);\n\t}\n\tread(input) {\n\t\treturn input.readInt32();\n\t}\n\twrite(output, value) {\n\t\toutput.writeInt32(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(4);\n\t}\n};\nvar i32$1 = new Int32Schema();\nvar Uint32Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 4);\n\t}\n\tread(input) {\n\t\treturn input.readUint32();\n\t}\n\twrite(output, value) {\n\t\toutput.writeUint32(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(4);\n\t}\n};\nvar u32$1 = new Uint32Schema();\nvar Float16Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 2);\n\t}\n\tread(input) {\n\t\treturn input.readFloat16();\n\t}\n\twrite(output, value) {\n\t\toutput.writeFloat16(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(2);\n\t}\n};\nvar f16$1 = new Float16Schema();\nvar Float32Schema = class extends Schema {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"maxSize\", 4);\n\t}\n\tread(input) {\n\t\treturn input.readFloat32();\n\t}\n\twrite(output, value) {\n\t\toutput.writeFloat32(value);\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(4);\n\t}\n};\nvar f32$1 = new Float32Schema();\nvar CharsSchema = class extends Schema {\n\tconstructor(length$1) {\n\t\tsuper();\n\t\tthis.length = length$1;\n\t}\n\twrite(output, value) {\n\t\tif (value.length !== this.length) throw new ValidationError(`Expected char-string of length ${this.length}, got ${value.length}`);\n\t\tfor (let i = 0; i \u003c value.length; ++i) output.writeUint8(value.charCodeAt(i));\n\t}\n\tread(input) {\n\t\tlet content = \"\";\n\t\tfor (let i = 0; i \u003c this.length; ++i) content += String.fromCharCode(input.readByte());\n\t\treturn content;\n\t}\n\tmeasure(_, measurer = new Measurer()) {\n\t\treturn measurer.add(this.length);\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction chars(length$1) {\n\treturn new CharsSchema(length$1);\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction exactEntries(record) {\n\treturn Object.entries(record);\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction resolveMap(ctx, refs) {\n\tconst props = {};\n\tfor (const [key, ref] of /* @__PURE__ */ exactEntries(refs)) props[key] = ctx.resolve(ref);\n\treturn props;\n}\nvar ObjectSchema = class extends Schema {\n\tconstructor(_properties) {\n\t\tsuper();\n\t\tthis._properties = _properties;\n\t\t__publicField(this, \"properties\");\n\t\tthis.properties = _properties;\n\t}\n\tresolveReferences(ctx) {\n\t\tthis.properties = /* @__PURE__ */ resolveMap(ctx, this._properties);\n\t}\n\twrite(output, value) {\n\t\tfor (const [key, property] of /* @__PURE__ */ exactEntries(this.properties)) property.write(output, value[key]);\n\t}\n\tread(input) {\n\t\tconst result = {};\n\t\tfor (const [key, property] of /* @__PURE__ */ exactEntries(this.properties)) result[key] = property.read(input);\n\t\treturn result;\n\t}\n\tget maxSize() {\n\t\tconst measurer = new Measurer();\n\t\tfor (const property of Object.values(this.properties)) property.measure(MaxValue, measurer);\n\t\treturn measurer.size;\n\t}\n\tmeasure(value, measurer = new Measurer()) {\n\t\tfor (const [key, property] of /* @__PURE__ */ exactEntries(this.properties)) property.measure(value === MaxValue ? MaxValue : value[key], measurer);\n\t\treturn measurer;\n\t}\n\tseekProperty(reference, prop) {\n\t\tlet bufferOffset = 0;\n\t\tfor (const [key, property] of /* @__PURE__ */ exactEntries(this.properties)) {\n\t\t\tif (key === prop) return {\n\t\t\t\tbufferOffset,\n\t\t\t\tschema: property\n\t\t\t};\n\t\t\tbufferOffset += property.measure(reference).size;\n\t\t}\n\t\treturn null;\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction object(properties) {\n\treturn new ObjectSchema(properties);\n}\nvar GenericObjectSchema = class extends Schema {\n\tconstructor(keyedBy, properties, _subTypeMap) {\n\t\tsuper();\n\t\tthis.keyedBy = keyedBy;\n\t\tthis._subTypeMap = _subTypeMap;\n\t\t__publicField(this, \"_baseObject\");\n\t\t__publicField(this, \"subTypeMap\");\n\t\tthis._baseObject = new ObjectSchema(properties);\n\t\tthis.subTypeMap = _subTypeMap;\n\t}\n\tresolveReferences(ctx) {\n\t\tthis._baseObject.resolveReferences(ctx);\n\t\tthis.subTypeMap = /* @__PURE__ */ resolveMap(ctx, this._subTypeMap);\n\t}\n\twrite(output, value) {\n\t\tconst subTypeKey = value.type;\n\t\tconst subTypeDescription = this.subTypeMap[subTypeKey] || null;\n\t\tif (subTypeDescription === null) throw new Error(`Unknown sub-type '${subTypeKey.toString()}' in among '${JSON.stringify(Object.keys(this.subTypeMap))}'`);\n\t\tif (this.keyedBy === SubTypeKey.ENUM) output.writeUint8(value.type);\n\t\telse output.writeString(value.type);\n\t\tthis._baseObject.write(output, value);\n\t\tfor (const [key, extraProp] of /* @__PURE__ */ exactEntries(subTypeDescription.properties)) extraProp.write(output, value[key]);\n\t}\n\tread(input) {\n\t\tconst subTypeKey = this.keyedBy === SubTypeKey.ENUM ? input.readByte() : input.readString();\n\t\tconst subTypeDescription = this.subTypeMap[subTypeKey] || null;\n\t\tif (subTypeDescription === null) throw new Error(`Unknown sub-type '${subTypeKey}' in among '${JSON.stringify(Object.keys(this.subTypeMap))}'`);\n\t\tconst result = this._baseObject.read(input);\n\t\tresult.type = subTypeKey;\n\t\tif (subTypeDescription !== null) for (const [key, extraProp] of /* @__PURE__ */ exactEntries(subTypeDescription.properties)) result[key] = extraProp.read(input);\n\t\treturn result;\n\t}\n\tmeasure(value, measurer = new Measurer()) {\n\t\tthis._baseObject.measure(value, measurer);\n\t\tif (this.keyedBy === SubTypeKey.ENUM) measurer.add(1);\n\t\telse if (value !== MaxValue) measurer.add(value.type.length + 1);\n\t\telse return measurer.unbounded;\n\t\tif (value === MaxValue) {\n\t\t\tconst biggestSubType = Object.values(this.subTypeMap).map((subType) =\u003e {\n\t\t\t\tconst forkedMeasurer = measurer.fork();\n\t\t\t\tfor (const prop of Object.values(subType.properties)) prop.measure(MaxValue, forkedMeasurer);\n\t\t\t\treturn [subType, forkedMeasurer.size];\n\t\t\t}).reduce((a, b) =\u003e a[1] \u003e b[1] ? a : b)[0];\n\t\t\tfor (const prop of Object.values(biggestSubType.properties)) prop.measure(MaxValue, measurer);\n\t\t} else {\n\t\t\tconst subTypeKey = value.type;\n\t\t\tconst subTypeDescription = this.subTypeMap[subTypeKey] || null;\n\t\t\tif (subTypeDescription === null) throw new Error(`Unknown sub-type '${subTypeKey.toString()}', expected one of '${JSON.stringify(Object.keys(this.subTypeMap))}'`);\n\t\t\tfor (const [key, prop] of /* @__PURE__ */ exactEntries(subTypeDescription.properties)) prop.measure(value[key], measurer);\n\t\t}\n\t\treturn measurer;\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction generic(properties, subTypeMap) {\n\treturn new GenericObjectSchema(SubTypeKey.STRING, properties, subTypeMap);\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction genericEnum(properties, subTypeMap) {\n\treturn new GenericObjectSchema(SubTypeKey.ENUM, properties, subTypeMap);\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction concat(objs) {\n\treturn new ObjectSchema(Object.fromEntries(objs.flatMap(({ properties }) =\u003e Object.entries(properties))));\n}\nvar DynamicArraySchema = class extends Schema {\n\tconstructor(_unstableElementType) {\n\t\tsuper();\n\t\tthis._unstableElementType = _unstableElementType;\n\t\t__publicField(this, \"elementType\");\n\t\tthis.elementType = _unstableElementType;\n\t}\n\tresolveReferences(ctx) {\n\t\tthis.elementType = ctx.resolve(this._unstableElementType);\n\t}\n\twrite(output, values) {\n\t\toutput.writeUint32(values.length);\n\t\tfor (const value of values) this.elementType.write(output, value);\n\t}\n\tread(input) {\n\t\tconst array = [];\n\t\tconst len = input.readUint32();\n\t\tfor (let i = 0; i \u003c len; ++i) array.push(this.elementType.read(input));\n\t\treturn array;\n\t}\n\tget maxSize() {\n\t\treturn this.measure(MaxValue).size;\n\t}\n\tmeasure(values, measurer = new Measurer()) {\n\t\tif (values === MaxValue) return measurer.unbounded;\n\t\tmeasurer.add(4);\n\t\tfor (const value of values) this.elementType.measure(value, measurer);\n\t\treturn measurer;\n\t}\n\tseekProperty(reference, prop) {\n\t\tif (typeof prop === \"symbol\") return null;\n\t\tconst indexProp = Number.parseInt(String(prop), 10);\n\t\tif (Number.isNaN(indexProp)) return null;\n\t\tif (reference === MaxValue) return {\n\t\t\tbufferOffset: this.elementType.measure(MaxValue).size * indexProp,\n\t\t\tschema: this.elementType\n\t\t};\n\t\tif (indexProp \u003e= reference.length) return null;\n\t\tconst measurer = new Measurer();\n\t\tfor (let i = 0; i \u003c indexProp; ++i) this.elementType.measure(reference[i], measurer);\n\t\treturn {\n\t\t\tbufferOffset: measurer.size,\n\t\t\tschema: this.elementType\n\t\t};\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction dynamicArrayOf(elementSchema) {\n\treturn new DynamicArraySchema(elementSchema);\n}\nvar RefSchema = class {\n\tconstructor(key) {\n\t\t__publicField(this, \"__unwrapped\");\n\t\t__publicField(this, \"ref\");\n\t\tthis.ref = new Ref(key);\n\t}\n\tresolveReferences() {\n\t\tthrow new UnresolvedReferenceError(\"Tried to resolve a reference directly. Do it through a RefResolver instead.\");\n\t}\n\tread() {\n\t\tthrow new UnresolvedReferenceError(\"Tried to read a reference directly. Resolve it instead.\");\n\t}\n\twrite() {\n\t\tthrow new UnresolvedReferenceError(\"Tried to write a reference directly. Resolve it instead.\");\n\t}\n\tmeasure() {\n\t\tthrow new UnresolvedReferenceError(\"Tried to measure size of a reference directly. Resolve it instead.\");\n\t}\n\tseekProperty() {\n\t\tthrow new UnresolvedReferenceError(\"Tried to seek property of a reference directly. Resolve it instead.\");\n\t}\n};\nvar RefResolve = class {\n\tconstructor() {\n\t\t__publicField(this, \"registry\", {});\n\t}\n\thasKey(key) {\n\t\treturn this.registry[key] !== void 0;\n\t}\n\tregister(key, schema) {\n\t\tthis.registry[key] = schema;\n\t}\n\tresolve(unstableSchema) {\n\t\tif (unstableSchema instanceof RefSchema) {\n\t\t\tconst key = unstableSchema.ref.key;\n\t\t\tif (this.registry[key] !== void 0) return this.registry[key];\n\t\t\tthrow new UnresolvedReferenceError(`Couldn't resolve reference to ${key}. Unknown key.`);\n\t\t}\n\t\tunstableSchema.resolveReferences(this);\n\t\treturn unstableSchema;\n\t}\n};\nvar KeyedSchema = class {\n\tconstructor(key, innerResolver) {\n\t\tthis.key = key;\n\t\t__publicField(this, \"__unwrapped\");\n\t\t__publicField(this, \"__keyDefinition\");\n\t\t__publicField(this, \"innerType\");\n\t\tthis.innerType = innerResolver(new RefSchema(key));\n\t\tthis.resolveReferences(new RefResolve());\n\t}\n\tresolveReferences(ctx) {\n\t\tif (!ctx.hasKey(this.key)) {\n\t\t\tctx.register(this.key, this.innerType);\n\t\t\tthis.innerType.resolveReferences(ctx);\n\t\t}\n\t}\n\tread(input) {\n\t\treturn this.innerType.read(input);\n\t}\n\twrite(output, value) {\n\t\tthis.innerType.write(output, value);\n\t}\n\tget maxSize() {\n\t\treturn this.measure(MaxValue).size;\n\t}\n\tmeasure(value, measurer = new Measurer()) {\n\t\treturn this.innerType.measure(value, measurer);\n\t}\n\tseekProperty(reference, prop) {\n\t\treturn this.innerType.seekProperty(reference, prop);\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction keyed(key, inner) {\n\treturn new KeyedSchema(key, inner);\n}\nvar OptionalSchema = class extends Schema {\n\tconstructor(_innerUnstableSchema) {\n\t\tsuper();\n\t\tthis._innerUnstableSchema = _innerUnstableSchema;\n\t\t__publicField(this, \"innerSchema\");\n\t\tthis.innerSchema = _innerUnstableSchema;\n\t}\n\tresolveReferences(ctx) {\n\t\tthis.innerSchema = ctx.resolve(this._innerUnstableSchema);\n\t}\n\twrite(output, value) {\n\t\tif (value !== void 0 \u0026\u0026 value !== null) {\n\t\t\toutput.writeBool(true);\n\t\t\tthis.innerSchema.write(output, value);\n\t\t} else output.writeBool(false);\n\t}\n\tread(input) {\n\t\tif (input.readBool()) return this.innerSchema.read(input);\n\t}\n\tget maxSize() {\n\t\treturn this.measure(MaxValue).size;\n\t}\n\tmeasure(value, measurer = new Measurer()) {\n\t\tif (value !== void 0) this.innerSchema.measure(value, measurer);\n\t\treturn measurer.add(1);\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction optional(innerType) {\n\treturn new OptionalSchema(innerType);\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction resolveArray$1(ctx, refs) {\n\treturn refs.map((ref) =\u003e ctx.resolve(ref));\n}\nvar TupleSchema = class extends Schema {\n\tconstructor(_unstableSchemas) {\n\t\tsuper();\n\t\tthis._unstableSchemas = _unstableSchemas;\n\t\t__publicField(this, \"schemas\");\n\t\tthis.schemas = _unstableSchemas;\n\t}\n\tresolveReferences(ctx) {\n\t\tthis.schemas = /* @__PURE__ */ resolveArray$1(ctx, this._unstableSchemas);\n\t}\n\twrite(output, values) {\n\t\tif (values.length !== this.schemas.length) throw new ValidationError(`Expected tuple of length ${this.schemas.length}, got ${values.length}`);\n\t\tfor (let i = 0; i \u003c this.schemas.length; ++i) this.schemas[i].write(output, values[i]);\n\t}\n\tread(input) {\n\t\tconst array = [];\n\t\tfor (let i = 0; i \u003c this.schemas.length; ++i) array.push(this.schemas[i].read(input));\n\t\treturn array;\n\t}\n\tget maxSize() {\n\t\treturn this.measure(MaxValue).size;\n\t}\n\tmeasure(values, measurer = new Measurer()) {\n\t\tfor (let i = 0; i \u003c this.schemas.length; ++i) this.schemas[i].measure(values === MaxValue ? MaxValue : values[i], measurer);\n\t\treturn measurer;\n\t}\n};\n/* @__NO_SIDE_EFFECTS__ */\nfunction tupleOf(schemas) {\n\treturn new TupleSchema(schemas);\n}\nvar TypedArraySchema = class extends Schema {\n\tconstructor(length$1, _arrayConstructor) {\n\t\tsuper();\n\t\tthis.length = length$1;\n\t\tthis._arrayConstructor = _arrayConstructor;\n\t\t__publicField(this, \"byteLength\");\n\t\tthis.byteLength = length$1 * _arrayConstructor.BYTES_PER_ELEMENT;\n\t}\n\twrite(output, value) {\n\t\toutput.writeSlice(value);\n\t}\n\tread(input) {\n\t\tconst buffer$1 = new ArrayBuffer(this.byteLength);\n\t\tconst view = new this._arrayConstructor(buffer$1, 0, this.length);\n\t\tinput.readSlice(view, 0, this.byteLength);\n\t\treturn view;\n\t}\n\tmeasure(_value, measurer = new Measurer()) {\n\t\treturn measurer.add(this.byteLength);\n\t}\n};\nvar u8Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Uint8Array);\nvar u8ClampedArray = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Uint8ClampedArray);\nvar u16Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Uint16Array);\nvar u32Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Uint32Array);\nvar i8Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Int8Array);\nvar i16Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Int16Array);\nvar i32Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Int32Array);\nvar f32Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Float32Array);\nvar f64Array = /* @__NO_SIDE_EFFECTS__ */ (length$1) =\u003e new TypedArraySchema(length$1, Float64Array);\n/* @__NO_SIDE_EFFECTS__ */\nfunction isSystemBigEndian() {\n\tconst array = new Uint8Array(4);\n\tconst view = new Uint32Array(array.buffer);\n\tview[0] = 1;\n\treturn array[0] === 0;\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction getSystemEndianness() {\n\treturn /* @__PURE__ */ isSystemBigEndian() ? \"big\" : \"little\";\n}\n/* @__NO_SIDE_EFFECTS__ */\nfunction unwrapBuffer(buffer$1) {\n\tlet byteOffset = 0;\n\tlet innerBuffer = buffer$1;\n\tif (!!innerBuffer \u0026\u0026 \"buffer\" in innerBuffer \u0026\u0026 \"byteOffset\" in innerBuffer) {\n\t\tbyteOffset += innerBuffer.byteOffset;\n\t\tinnerBuffer = innerBuffer.buffer;\n\t}\n\treturn {\n\t\tbuffer: innerBuffer,\n\t\tbyteOffset,\n\t\tbyteLength: buffer$1.byteLength\n\t};\n}\nvar BufferIOBase = class {\n\tconstructor(buffer$1, options) {\n\t\t__publicField(this, \"dataView\");\n\t\t__publicField(this, \"littleEndian\");\n\t\t__publicField(this, \"needsByteSwap\");\n\t\t__publicField(this, \"byteOffset\", 0);\n\t\t__publicField(this, \"endianness\");\n\t\tconst { byteOffset = 0, endianness: endianness$1 = \"system\" } = options != null ? options : {};\n\t\tthis.byteOffset = byteOffset;\n\t\tconst systemEndianness = /* @__PURE__ */ getSystemEndianness();\n\t\tthis.endianness = endianness$1 === \"system\" ? systemEndianness : endianness$1;\n\t\tthis.littleEndian = this.endianness === \"little\";\n\t\tthis.needsByteSwap = this.endianness !== systemEndianness;\n\t\tconst unwrapped = /* @__PURE__ */ unwrapBuffer(buffer$1);\n\t\tthis.byteOffset += unwrapped.byteOffset;\n\t\tthis.dataView = new DataView(unwrapped.buffer);\n\t}\n\tget currentByteOffset() {\n\t\treturn this.byteOffset;\n\t}\n\tseekTo(offset) {\n\t\tthis.byteOffset = offset;\n\t}\n\tskipBytes(bytes) {\n\t\tthis.byteOffset += bytes;\n\t}\n};\nvar BufferReader = class extends BufferIOBase {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"_cachedTextDecoder\");\n\t}\n\tget _textDecoder() {\n\t\tif (!this._cachedTextDecoder) this._cachedTextDecoder = new TextDecoder(void 0, { fatal: true });\n\t\treturn this._cachedTextDecoder;\n\t}\n\treadBool() {\n\t\treturn this.dataView.getUint8(this.byteOffset++) !== 0;\n\t}\n\treadByte() {\n\t\treturn this.dataView.getUint8(this.byteOffset++);\n\t}\n\treadInt8() {\n\t\treturn this.dataView.getInt8(this.byteOffset++);\n\t}\n\treadUint8() {\n\t\treturn this.dataView.getUint8(this.byteOffset++);\n\t}\n\treadInt16() {\n\t\tconst value = this.dataView.getInt16(this.byteOffset, this.littleEndian);\n\t\tthis.byteOffset += 2;\n\t\treturn value;\n\t}\n\treadUint16() {\n\t\tconst value = this.dataView.getUint16(this.byteOffset, this.littleEndian);\n\t\tthis.byteOffset += 2;\n\t\treturn value;\n\t}\n\treadInt32() {\n\t\tconst value = this.dataView.getInt32(this.byteOffset, this.littleEndian);\n\t\tthis.byteOffset += 4;\n\t\treturn value;\n\t}\n\treadUint32() {\n\t\tconst value = this.dataView.getUint32(this.byteOffset, this.littleEndian);\n\t\tthis.byteOffset += 4;\n\t\treturn value;\n\t}\n\treadFloat16() {\n\t\tconst value = this.dataView.getFloat16(this.byteOffset, this.littleEndian);\n\t\tthis.byteOffset += 2;\n\t\treturn value;\n\t}\n\treadFloat32() {\n\t\tconst value = this.dataView.getFloat32(this.byteOffset, this.littleEndian);\n\t\tthis.byteOffset += 4;\n\t\treturn value;\n\t}\n\treadString() {\n\t\tlet strLength = 0;\n\t\twhile (this.byteOffset + strLength \u003c this.dataView.byteLength) if (this.dataView.getUint8(this.byteOffset + strLength++) === 0) break;\n\t\tconst result = this._textDecoder.decode(new Uint8Array(this.dataView.buffer, this.byteOffset, strLength - 1));\n\t\tthis.byteOffset += strLength;\n\t\treturn result;\n\t}\n\treadSlice(bufferView, offset, byteLength) {\n\t\tconst unwrapped = /* @__PURE__ */ unwrapBuffer(bufferView);\n\t\tconst destU8 = new Uint8Array(unwrapped.buffer, unwrapped.byteOffset + offset);\n\t\tconst bytesPerElement = bufferView.BYTES_PER_ELEMENT;\n\t\tif (this.needsByteSwap \u0026\u0026 bytesPerElement \u003e 1) for (let i = 0; i \u003c byteLength; i += bytesPerElement) for (let j = bytesPerElement - 1; j \u003e= 0; j--) destU8[i + j] = this.dataView.getUint8(this.byteOffset++);\n\t\telse {\n\t\t\tdestU8.set(new Uint8Array(this.dataView.buffer, this.byteOffset, byteLength));\n\t\t\tthis.byteOffset += byteLength;\n\t\t}\n\t}\n};\nvar BufferWriter = class extends BufferIOBase {\n\tconstructor() {\n\t\tsuper(...arguments);\n\t\t__publicField(this, \"_cachedTextEncoder\");\n\t}\n\tget _textEncoder() {\n\t\tif (!this._cachedTextEncoder) this._cachedTextEncoder = new TextEncoder();\n\t\treturn this._cachedTextEncoder;\n\t}\n\twriteBool(value) {\n\t\tthis.dataView.setUint8(this.byteOffset++, value ? 1 : 0);\n\t}\n\twriteByte(value) {\n\t\tthis.dataView.setUint8(this.byteOffset++, value);\n\t}\n\twriteInt8(value) {\n\t\tthis.dataView.setInt8(this.byteOffset++, value);\n\t}\n\twriteUint8(value) {\n\t\tthis.dataView.setUint8(this.byteOffset++, value);\n\t}\n\twriteInt16(value) {\n\t\tthis.dataView.setInt16(this.byteOffset, value, this.littleEndian);\n\t\tthis.byteOffset += 2;\n\t}\n\twriteUint16(value) {\n\t\tthis.dataView.setUint16(this.byteOffset, value, this.littleEndian);\n\t\tthis.byteOffset += 2;\n\t}\n\twriteInt32(value) {\n\t\tthis.dataView.setInt32(this.byteOffset, value, this.littleEndian);\n\t\tthis.byteOffset += 4;\n\t}\n\twriteUint32(value) {\n\t\tthis.dataView.setUint32(this.byteOffset, value, this.littleEndian);\n\t\tthis.byteOffset += 4;\n\t}\n\twriteFloat16(value) {\n\t\tthis.dataView.setFloat16(this.byteOffset, value, this.littleEndian);\n\t\tthis.byteOffset += 2;\n\t}\n\twriteFloat32(value) {\n\t\tthis.dataView.setFloat32(this.byteOffset, value, this.littleEndian);\n\t\tthis.byteOffset += 4;\n\t}\n\twriteString(value) {\n\t\tconst result = this._textEncoder.encodeInto(value, new Uint8Array(this.dataView.buffer, this.byteOffset));\n\t\tthis.byteOffset += result.written;\n\t\tthis.dataView.setUint8(this.byteOffset++, 0);\n\t}\n\twriteSlice(bufferView) {\n\t\tconst unwrapped = /* @__PURE__ */ unwrapBuffer(bufferView);\n\t\tconst srcU8 = new Uint8Array(unwrapped.buffer, unwrapped.byteOffset, unwrapped.byteLength);\n\t\tconst bytesPerElement = bufferView.BYTES_PER_ELEMENT;\n\t\tif (this.needsByteSwap \u0026\u0026 bytesPerElement \u003e 1) for (let i = 0; i \u003c srcU8.length; i += bytesPerElement) for (let j = bytesPerElement - 1; j \u003e= 0; j--) this.dataView.setUint8(this.byteOffset++, srcU8[i + j]);\n\t\telse {\n\t\t\tnew Uint8Array(this.dataView.buffer, this.byteOffset).set(srcU8);\n\t\t\tthis.byteOffset += srcU8.length;\n\t\t}\n\t}\n};\nfunction alignIO(io, baseAlignment) {\n\tconst currentPos = \"size\" in io ? io.size : io.currentByteOffset;\n\tconst bitMask = baseAlignment - 1;\n\tconst offset = currentPos \u0026 bitMask;\n\tif (\"skipBytes\" in io) io.skipBytes(baseAlignment - offset \u0026 bitMask);\n\telse io.add(baseAlignment - offset \u0026 bitMask);\n}\nvar alignIO_default = alignIO;\nvar cachedOffsets = /* @__PURE__ */ new WeakMap();\nfunction offsetsForProps(struct$1) {\n\tconst cached = cachedOffsets.get(struct$1);\n\tif (cached) return cached;\n\tconst measurer = new Measurer();\n\tconst offsets = {};\n\tlet lastEntry;\n\tfor (const key in struct$1.propTypes) {\n\t\tconst prop = struct$1.propTypes[key];\n\t\tif (prop === void 0) throw new Error(`Property ${key} is undefined in struct`);\n\t\tconst beforeAlignment = measurer.size;\n\t\talignIO_default(measurer, isUnstruct(struct$1) ? customAlignmentOf(prop) : alignmentOf(prop));\n\t\tif (lastEntry) lastEntry.padding = measurer.size - beforeAlignment;\n\t\tconst propSize = sizeOf(prop);\n\t\toffsets[key] = {\n\t\t\toffset: measurer.size,\n\t\t\tsize: propSize\n\t\t};\n\t\tlastEntry = offsets[key];\n\t\tmeasurer.add(propSize);\n\t}\n\tif (lastEntry) lastEntry.padding = roundUp(sizeOf(struct$1), alignmentOf(struct$1)) - measurer.size;\n\tcachedOffsets.set(struct$1, offsets);\n\treturn offsets;\n}\nvar OFFSET_MARKER = Symbol(\"indirectOffset\");\nvar CONTIGUOUS_MARKER = Symbol(\"indirectContiguous\");\nfunction isOffsetProxy(value) {\n\treturn typeof value === \"object\" \u0026\u0026 value !== null \u0026\u0026 OFFSET_MARKER in value \u0026\u0026 CONTIGUOUS_MARKER in value;\n}\nfunction scalarNode(offset, contiguous) {\n\treturn {\n\t\t[OFFSET_MARKER]: offset,\n\t\t[CONTIGUOUS_MARKER]: contiguous\n\t};\n}\nfunction getMarker(target, prop) {\n\tif (prop === OFFSET_MARKER) return target[OFFSET_MARKER];\n\tif (prop === CONTIGUOUS_MARKER) return target[CONTIGUOUS_MARKER];\n}\nfunction makeProxy(schema, baseOffset, contiguous = sizeOf(schema)) {\n\tconst unwrapped = undecorate(schema);\n\tconst vecComponentCount = isVec(unwrapped) ? unwrapped.componentCount : void 0;\n\tif (vecComponentCount !== void 0) {\n\t\tconst componentSize = sizeOf(unwrapped.primitive);\n\t\treturn makeVecProxy(scalarNode(baseOffset, contiguous), componentSize, vecComponentCount);\n\t}\n\tif (isWgslStruct(unwrapped)) return makeStructProxy(unwrapped, scalarNode(baseOffset, contiguous));\n\tif (isWgslArray(unwrapped)) return makeArrayProxy(unwrapped, scalarNode(baseOffset, contiguous));\n\treturn scalarNode(baseOffset, contiguous);\n}\nfunction createOffsetProxy(schema, baseOffset = 0) {\n\treturn makeProxy(schema, baseOffset, sizeOf(schema));\n}\nfunction makeVecProxy(target, componentSize, componentCount) {\n\tconst baseOffset = target[OFFSET_MARKER];\n\treturn new Proxy(target, { get(t, prop) {\n\t\tconst marker = getMarker(t, prop);\n\t\tif (marker !== void 0) return marker;\n\t\tconst idx = prop === \"x\" || prop === \"0\" ? 0 : prop === \"y\" || prop === \"1\" ? 1 : prop === \"z\" || prop === \"2\" ? 2 : prop === \"w\" || prop === \"3\" ? 3 : -1;\n\t\tif (idx \u003c 0 || idx \u003e= componentCount) return;\n\t\tconst byteOffset = idx * componentSize;\n\t\tconst contiguous = Math.max(0, t[CONTIGUOUS_MARKER] - byteOffset);\n\t\treturn scalarNode(baseOffset + byteOffset, contiguous);\n\t} });\n}\nfunction makeArrayProxy(array, target) {\n\tconst elementType = array.elementType;\n\tconst elementSize = sizeOf(elementType);\n\tconst stride = roundUp(elementSize, alignmentOf(elementType));\n\tconst hasPadding = stride \u003e elementSize;\n\treturn new Proxy(target, { get(t, prop) {\n\t\tconst marker = getMarker(t, prop);\n\t\tif (marker !== void 0) return marker;\n\t\tif (prop === \"length\") return array.elementCount;\n\t\tif (typeof prop !== \"string\") return;\n\t\tconst index = Number(prop);\n\t\tif (!Number.isInteger(index) || index \u003c 0 || index \u003e= array.elementCount) return;\n\t\tconst elementOffset = index * stride;\n\t\tconst remainingFromHere = !isContiguous(elementType) ? elementSize + getLongestContiguousPrefix(elementType) : Math.max(0, t[CONTIGUOUS_MARKER] - elementOffset);\n\t\tconst childContiguous = hasPadding ? Math.min(remainingFromHere, elementSize) : remainingFromHere;\n\t\treturn makeProxy(elementType, t[OFFSET_MARKER] + elementOffset, childContiguous);\n\t} });\n}\nfunction makeStructProxy(struct$1, target) {\n\tconst offsets = offsetsForProps(struct$1);\n\tconst propTypes = struct$1.propTypes;\n\tconst propNames = Object.keys(propTypes);\n\tconst meta = /* @__PURE__ */ new Map();\n\tlet runStart = 0;\n\tfor (let i = 0; i \u003c propNames.length; i++) {\n\t\tconst name = propNames[i];\n\t\tif (!name) continue;\n\t\tconst type = propTypes[name];\n\t\tif (!type) continue;\n\t\tconst info = offsets[name];\n\t\tconst padding = info.padding ?? 0;\n\t\tconst typeContiguous = isContiguous(type);\n\t\tif (!(i === propNames.length - 1 || padding \u003e 0 || !typeContiguous)) continue;\n\t\tconst runEnd = info.offset + (typeContiguous ? info.size : getLongestContiguousPrefix(type));\n\t\tfor (let j = runStart; j \u003c= i; j++) {\n\t\t\tconst runName = propNames[j];\n\t\t\tif (!runName) continue;\n\t\t\tconst runInfo = offsets[runName];\n\t\t\tmeta.set(runName, {\n\t\t\t\toffset: runInfo.offset,\n\t\t\t\trunEnd\n\t\t\t});\n\t\t}\n\t\trunStart = i + 1;\n\t}\n\treturn new Proxy(target, { get(t, prop) {\n\t\tconst marker = getMarker(t, prop);\n\t\tif (marker !== void 0) return marker;\n\t\tif (typeof prop !== \"string\") return;\n\t\tconst m = meta.get(prop);\n\t\tif (!m) return;\n\t\tconst remainingFromHere = Math.max(0, t[CONTIGUOUS_MARKER] - m.offset);\n\t\tconst localLimit = Math.max(0, m.runEnd - m.offset);\n\t\tconst propSchema = propTypes[prop];\n\t\tif (!propSchema) return;\n\t\treturn makeProxy(propSchema, t[OFFSET_MARKER] + m.offset, sizeOf(struct$1) === m.runEnd ? remainingFromHere : localLimit);\n\t} });\n}\nfunction getRootContiguous(schema) {\n\tconst unwrapped = undecorate(schema);\n\tif (isWgslStruct(unwrapped)) {\n\t\tconst offsets = offsetsForProps(unwrapped);\n\t\tconst propTypes = unwrapped.propTypes;\n\t\tconst propNames = Object.keys(propTypes);\n\t\tfor (let i = 0; i \u003c propNames.length; i++) {\n\t\t\tconst name = propNames[i];\n\t\t\tif (!name) continue;\n\t\t\tconst info = offsets[name];\n\t\t\tconst padding = info.padding ?? 0;\n\t\t\tconst runEnd = info.offset + info.size;\n\t\t\tif (i === propNames.length - 1 || padding \u003e 0) return runEnd;\n\t\t}\n\t\treturn 0;\n\t}\n\tif (isWgslArray(unwrapped)) {\n\t\tconst elementType = unwrapped.elementType;\n\t\tconst elementSize = sizeOf(elementType);\n\t\tconst stride = roundUp(elementSize, alignmentOf(elementType));\n\t\tconst totalSize = sizeOf(schema);\n\t\tif (!Number.isFinite(totalSize)) return elementSize;\n\t\treturn stride \u003e elementSize ? elementSize : totalSize;\n\t}\n\treturn sizeOf(schema);\n}\nfunction memoryLayoutOf(schema, accessor$1) {\n\tif (!accessor$1) return {\n\t\toffset: 0,\n\t\tcontiguous: getRootContiguous(schema)\n\t};\n\tconst result = accessor$1(createOffsetProxy(schema));\n\tif (isOffsetProxy(result)) return {\n\t\toffset: result[OFFSET_MARKER],\n\t\tcontiguous: result[CONTIGUOUS_MARKER]\n\t};\n\tthrow 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) =\u003e s.position.x`).\");\n}\nfunction defineBuiltin(dataType, value) {\n\treturn attribute(dataType, {\n\t\t[$internal]: true,\n\t\ttype: \"@builtin\",\n\t\tparams: [value]\n\t});\n}\nconst builtin = {\n\tvertexIndex: defineBuiltin(u32, \"vertex_index\"),\n\tinstanceIndex: defineBuiltin(u32, \"instance_index\"),\n\tclipDistances: defineBuiltin(arrayOf(u32, 8), \"clip_distances\"),\n\tposition: defineBuiltin(vec4f, \"position\"),\n\tfrontFacing: defineBuiltin(bool, \"front_facing\"),\n\tfragDepth: defineBuiltin(f32, \"frag_depth\"),\n\tprimitiveIndex: defineBuiltin(u32, \"primitive_index\"),\n\tsampleIndex: defineBuiltin(u32, \"sample_index\"),\n\tsampleMask: defineBuiltin(u32, \"sample_mask\"),\n\tlocalInvocationId: defineBuiltin(vec3u, \"local_invocation_id\"),\n\tlocalInvocationIndex: defineBuiltin(u32, \"local_invocation_index\"),\n\tglobalInvocationId: defineBuiltin(vec3u, \"global_invocation_id\"),\n\tglobalInvocationIndex: defineBuiltin(u32, \"global_invocation_index\"),\n\tworkgroupId: defineBuiltin(vec3u, \"workgroup_id\"),\n\tworkgroupIndex: defineBuiltin(u32, \"workgroup_index\"),\n\tnumWorkgroups: defineBuiltin(vec3u, \"num_workgroups\"),\n\tsubgroupInvocationId: defineBuiltin(u32, \"subgroup_invocation_id\"),\n\tsubgroupSize: defineBuiltin(u32, \"subgroup_size\"),\n\tsubgroupId: defineBuiltin(u32, \"subgroup_id\"),\n\tnumSubgroups: defineBuiltin(u32, \"num_subgroups\")\n};\nassignInfixOperators();\nconst vec2f$1 = (() =\u003e (assignInfixOperators(), vec2f))();\nassignInfixOperators();\nconst vec2i$1 = (() =\u003e (assignInfixOperators(), vec2i))();\nconst vec2u$1 = (() =\u003e (assignInfixOperators(), vec2u))();\nassignInfixOperators();\nconst vec3f$1 = (() =\u003e (assignInfixOperators(), vec3f))();\nassignInfixOperators();\nassignInfixOperators();\nconst vec3u$1 = (() =\u003e (assignInfixOperators(), vec3u))();\nassignInfixOperators();\nconst vec4f$1 = (() =\u003e (assignInfixOperators(), vec4f))();\nassignInfixOperators();\nassignInfixOperators();\nassignInfixOperators();\nassignInfixOperators();\nconst mat3x3f$1 = (() =\u003e (assignInfixOperators(), mat3x3f))();\nassignInfixOperators();\nfunction getGPUValue(object$1) {\n\treturn object$1?.[$gpuValueOf];\n}\nfunction withLocations(members, locations = {}) {\n\tlet nextLocation = 0;\n\tconst usedCustomLocations = /* @__PURE__ */ new Set();\n\treturn Object.fromEntries(Object.entries(members ?? {}).map(([key, member]) =\u003e {\n\t\tconst customLocation = getCustomLocation(member);\n\t\tif (customLocation !== void 0) {\n\t\t\tif (usedCustomLocations.has(customLocation)) throw new Error(\"Duplicate custom location attributes found\");\n\t\t\tusedCustomLocations.add(customLocation);\n\t\t}\n\t\treturn [key, member];\n\t}).map(([key, member]) =\u003e {\n\t\tif (isBuiltin(member)) return [key, member];\n\t\tif (getCustomLocation(member) !== void 0) return [key, member];\n\t\tif (locations[key]) return [key, location(locations[key], member)];\n\t\twhile (usedCustomLocations.has(nextLocation)) nextLocation++;\n\t\treturn [key, location(nextLocation++, member)];\n\t}));\n}\nfunction separateBuiltins(schema, locations = {}) {\n\tconst positionalArgs = [];\n\tconst dataFields = {};\n\tfor (const [key, type] of Object.entries(schema)) if (isBuiltin(type)) positionalArgs.push({\n\t\tschemaKey: key,\n\t\ttype\n\t});\n\telse dataFields[key] = type;\n\treturn {\n\t\tdataSchema: Object.keys(dataFields).length \u003e 0 ? INTERNAL_createStruct(withLocations(dataFields, locations), false) : void 0,\n\t\tpositionalArgs\n\t};\n}\nfunction separateAllAsPositional(schema) {\n\tconst withLocs = withLocations(schema);\n\treturn {\n\t\tdataSchema: void 0,\n\t\tpositionalArgs: Object.entries(withLocs).map(([key, type]) =\u003e ({\n\t\t\tschemaKey: key,\n\t\t\ttype\n\t\t}))\n\t};\n}\nfunction createIoSchema(layout, locations = {}) {\n\treturn isData(layout) ? isVoid(layout) ? layout : isBuiltin(layout) ? layout : getCustomLocation(layout) !== void 0 ? layout : location(0, layout) : INTERNAL_createStruct(withLocations(layout, locations), false);\n}\nvar AutoStruct = class {\n\t#validProps;\n\t#allocated;\n\t#usedWgslKeys;\n\t#locations;\n\t#cachedStruct;\n\t#typeForExtraProps;\n\tconstructor(validProps, typeForExtraProps, locations) {\n\t\tthis.#validProps = validProps;\n\t\tthis.#typeForExtraProps = typeForExtraProps;\n\t\tthis.#allocated = {};\n\t\tthis.#locations = locations;\n\t\tthis.#usedWgslKeys = /* @__PURE__ */ new Set();\n\t}\n\taccessProp(key) {\n\t\tconst dataType = this.#validProps[key] ?? this.#typeForExtraProps;\n\t\tif (!dataType) return;\n\t\treturn this.provideProp(key, dataType);\n\t}\n\tprovideProp(key, dataType) {\n\t\tlet alloc = this.#allocated[key];\n\t\tif (!alloc) {\n\t\t\tconst wgslKey = key.replaceAll(\"$\", \"\");\n\t\t\tif (this.#usedWgslKeys.has(wgslKey)) throw new Error(`Property name '${wgslKey}' causes naming clashes. Choose a different name.`);\n\t\t\tconst result = /* @__PURE__ */ validateProp(wgslKey);\n\t\t\tif (!result.success) throw new Error(`Invalid property key '${key}'${result.error ? `: ${result.error}` : \"\"}`);\n\t\t\tthis.#usedWgslKeys.add(wgslKey);\n\t\t\talloc = {\n\t\t\t\tprop: wgslKey,\n\t\t\t\ttype: dataType\n\t\t\t};\n\t\t\tthis.#allocated[key] = alloc;\n\t\t}\n\t\treturn alloc;\n\t}\n\tget completeStruct() {\n\t\tif (!this.#cachedStruct) {\n\t\t\tthis.#cachedStruct = createIoSchema(Object.fromEntries(Object.values(this.#allocated).map((alloc) =\u003e {\n\t\t\t\treturn [alloc.prop, alloc.type];\n\t\t\t})), this.#locations);\n\t\t\tconst ownName = getName(this);\n\t\t\tif (ownName) setName(this.#cachedStruct, ownName);\n\t\t}\n\t\treturn this.#cachedStruct;\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.resolve(this.completeStruct);\n\t}\n\ttoString() {\n\t\treturn `auto-struct:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n};\nAutoStruct.prototype[$internal] = {};\nAutoStruct.prototype.type = \"auto-struct\";\nvar EntryInputRouter = class {\n\t[$internal] = {};\n\ttype = \"entry-input-router\";\n\tstructArg;\n\tpositionalArgsMap;\n\tconstructor(structArg, positionalArgs) {\n\t\tthis.structArg = structArg;\n\t\tthis.positionalArgsMap = new Map(positionalArgs.map((a) =\u003e [a.schemaKey, a.arg]));\n\t}\n\ttoString() {\n\t\treturn \"entry-input-router\";\n\t}\n\taccessProp(propName) {\n\t\tconst positionalEntry = this.positionalArgsMap.get(propName);\n\t\tif (positionalEntry) return positionalEntry();\n\t\tconst structSnippet = this.structArg?.();\n\t\tif (structSnippet \u0026\u0026 isWgslStruct(structSnippet.dataType)) return {\n\t\t\ttarget: structSnippet,\n\t\t\tprop: propName\n\t\t};\n\t}\n};\nvar infixKinds = [\n\t\"vec2f\",\n\t\"vec3f\",\n\t\"vec4f\",\n\t\"vec2h\",\n\t\"vec3h\",\n\t\"vec4h\",\n\t\"vec2i\",\n\t\"vec3i\",\n\t\"vec4i\",\n\t\"vec2u\",\n\t\"vec3u\",\n\t\"vec4u\",\n\t\"mat2x2f\",\n\t\"mat3x3f\",\n\t\"mat4x4f\"\n];\nvar swizzleLenToType = {\n\tf: {\n\t\t1: f32,\n\t\t2: vec2f,\n\t\t3: vec3f,\n\t\t4: vec4f\n\t},\n\th: {\n\t\t1: f16,\n\t\t2: vec2h,\n\t\t3: vec3h,\n\t\t4: vec4h\n\t},\n\ti: {\n\t\t1: i32,\n\t\t2: vec2i,\n\t\t3: vec3i,\n\t\t4: vec4i\n\t},\n\tu: {\n\t\t1: u32,\n\t\t2: vec2u,\n\t\t3: vec3u,\n\t\t4: vec4u\n\t},\n\tb: {\n\t\t1: bool,\n\t\t2: vec2b,\n\t\t3: vec3b,\n\t\t4: vec4b\n\t}\n};\nfunction accessProp(target, propName) {\n\tif (infixKinds.includes(target.dataType.type) \u0026\u0026 propName in infixOperators) {\n\t\tconst operator = infixOperators[propName];\n\t\treturn snip(new InfixDispatch(target, operator), UnknownData, target.origin, target.possibleSideEffects);\n\t}\n\tif (isWgslArray(target.dataType) \u0026\u0026 propName === \"length\") {\n\t\tif (target.dataType.elementCount === 0) return snip(stitch`arrayLength(\u0026${target})`, u32, \"runtime\", target.possibleSideEffects);\n\t\treturn numericLiteralToSnippet(target.dataType.elementCount);\n\t}\n\tif (isMat(target.dataType) \u0026\u0026 propName === \"columns\") return snip(new MatrixColumnsAccess(target), UnknownData, target.origin, target.possibleSideEffects);\n\tif (isWgslStruct(target.dataType) || isUnstruct(target.dataType)) return accessStructProp(target, propName);\n\tif (target.dataType instanceof AutoStruct) {\n\t\tconst result = target.dataType.accessProp(propName);\n\t\tif (!result) return;\n\t\treturn snip(stitch`${target}.${result.prop}`, result.type, \"argument\", target.possibleSideEffects);\n\t}\n\tif (target.dataType instanceof EntryInputRouter) {\n\t\tconst result = target.dataType.accessProp(propName);\n\t\tif (isSnippet(result)) return result;\n\t\tif (result) return accessProp(result.target, result.prop);\n\t\treturn;\n\t}\n\tif (isPtr(target.dataType)) {\n\t\tconst derefed = derefSnippet(target);\n\t\tif (propName === \"$\") return derefed;\n\t\treturn accessProp(derefed, propName);\n\t}\n\tif (isVec(target.dataType)) {\n\t\tif (propName === \"kind\") return snip(target.dataType.type, UnknownData, \"constant\", false);\n\t}\n\tconst propLength = propName.length;\n\tif (isVec(target.dataType) \u0026\u0026 propLength \u003e= 1 \u0026\u0026 propLength \u003c= 4 \u0026\u0026 /^[xyzw]+$|^[rgba]+$/.test(propName)) {\n\t\tconst swizzleType = swizzleLenToType[target.dataType.type.includes(\"bool\") ? \"b\" : target.dataType.type[4]][propLength];\n\t\tif (!swizzleType) return;\n\t\treturn snip(isKnownAtComptime(target) ? target.value[propName] : stitch`${target}.${propName}`, swizzleType, propLength === 1 ? target.origin : target.origin === \"constant\" || target.origin === \"constant-immutable-def\" ? \"constant\" : \"runtime\", target.possibleSideEffects);\n\t}\n\tif (isKnownAtComptime(target) || target.dataType === UnknownData) {\n\t\tconst prop = target.value[propName];\n\t\tif (isNamable(prop) \u0026\u0026 getName(prop) === void 0) setName(prop, propName);\n\t\treturn coerceToSnippet(prop);\n\t}\n}\nvar indexableTypeToResult = {\n\tmat2x2f: vec2f,\n\tmat3x3f: vec3f,\n\tmat4x4f: vec4f\n};\nfunction accessIndex(target, indexArg) {\n\tconst index = typeof indexArg === \"number\" ? coerceToSnippet(indexArg) : indexArg;\n\tif (isWgslArray(target.dataType) || isDisarray(target.dataType)) {\n\t\tconst elementType = target.dataType.elementType;\n\t\tlet origin;\n\t\tif (target.origin === \"constant-immutable-def\") origin = index.origin === \"constant\" || index.origin === \"constant-immutable-def\" ? \"constant-immutable-def\" : \"runtime-immutable-def\";\n\t\telse if (target.origin === \"constant\") origin = index.origin === \"constant\" || index.origin === \"constant-immutable-def\" ? \"constant\" : \"runtime\";\n\t\telse origin = target.origin;\n\t\tif (target.value instanceof ArrayExpression \u0026\u0026 isKnownAtComptime(index)) return target.value.elements[index.value];\n\t\treturn snip(isKnownAtComptime(target) \u0026\u0026 isKnownAtComptime(index) ? target.value[index.value] : stitch`${target}[${index}]`, elementType, origin, target.possibleSideEffects || index.possibleSideEffects);\n\t}\n\tif (isVec(target.dataType)) return snip(isKnownAtComptime(target) \u0026\u0026 isKnownAtComptime(index) ? target.value[index.value] : stitch`${target}[${index}]`, target.dataType.primitive, target.origin, target.possibleSideEffects || index.possibleSideEffects);\n\tif (isPtr(target.dataType)) return accessIndex(derefSnippet(target), index);\n\tif (target.value instanceof MatrixColumnsAccess) {\n\t\tconst propType = indexableTypeToResult[target.value.matrix.dataType.type];\n\t\treturn snip(stitch`${target.value.matrix}[${index}]`, propType, target.origin, target.possibleSideEffects || index.possibleSideEffects);\n\t}\n\tif (target.dataType.type in indexableTypeToResult) throw new Error(\"The only way of accessing matrix elements in TypeGPU functions is through the 'columns' property.\");\n\tif (isKnownAtComptime(target) \u0026\u0026 isKnownAtComptime(index)) return coerceToSnippet(target.value[index.value]);\n\tif (isWgslStruct(target.dataType) \u0026\u0026 isKnownAtComptime(index) \u0026\u0026 typeof index.value === \"string\") return accessProp(target, index.value);\n}\nconst valueProxyHandler = { get(target, prop) {\n\tif (prop in target) return Reflect.get(target, prop);\n\tif (prop === \"toString\" || prop === Symbol.toStringTag || prop === Symbol.toPrimitive) return () =\u003e target.toString();\n\tif (typeof prop === \"symbol\") return;\n\tconst targetSnippet = getOwnSnippet(target);\n\tconst index = Number(prop);\n\tif (!Number.isNaN(index)) {\n\t\tconst accessed$1 = accessIndex(targetSnippet, index);\n\t\tif (!accessed$1) return;\n\t\treturn new Proxy({\n\t\t\t[$internal]: true,\n\t\t\t[$resolve]: (ctx) =\u003e ctx.resolveSnippet(accessed$1),\n\t\t\t[$ownSnippet]: accessed$1,\n\t\t\ttoString: () =\u003e `${String(target)}[${prop}]`\n\t\t}, valueProxyHandler);\n\t}\n\tconst accessed = accessProp(targetSnippet, String(prop));\n\tif (!accessed) return;\n\treturn new Proxy({\n\t\t[$internal]: true,\n\t\t[$resolve]: (ctx) =\u003e ctx.resolveSnippet(accessed),\n\t\t[$ownSnippet]: accessed,\n\t\ttoString: () =\u003e `${String(target)}.${prop}`\n\t}, valueProxyHandler);\n} };\nfunction getGpuValueRecursively(value) {\n\tlet unwrapped = value;\n\twhile (true) {\n\t\tconst gpuValue = getGPUValue(unwrapped);\n\t\tif (!gpuValue) break;\n\t\tunwrapped = gpuValue;\n\t}\n\treturn unwrapped;\n}\nfunction makeDereferenceable(value, options) {\n\tObject.defineProperty(value, $gpuValueOf, { get() {\n\t\tif (\"get\" in options.codegenMode) return options.codegenMode.get.apply(this);\n\t\tconst resource = this;\n\t\treturn new Proxy({\n\t\t\t[$internal]: true,\n\t\t\tget [$ownSnippet]() {\n\t\t\t\tif (!(\"getBaseSnippet\" in options.codegenMode)) throw new Error(`Expected 'getBaseSnippet' to be defined.`);\n\t\t\t\treturn options.codegenMode.getBaseSnippet.apply(resource, [this]);\n\t\t\t},\n\t\t\t[$resolve]: (ctx) =\u003e ctx.resolve(resource),\n\t\t\ttoString: () =\u003e `${resource.toString()}.$`\n\t\t}, valueProxyHandler);\n\t} });\n\tObject.defineProperty(value, \"$\", {\n\t\tget() {\n\t\t\tconst mode = getExecMode();\n\t\t\tif (mode.type === \"codegen\") return this[$gpuValueOf];\n\t\t\tif (mode.type === \"simulate\") {\n\t\t\t\tif (options.simulateMode?.get) return options.simulateMode.get.apply(this, [mode]);\n\t\t\t\treturn options.normalMode.get.apply(this);\n\t\t\t}\n\t\t\tif (mode.type === \"normal\") return options.normalMode.get.apply(this);\n\t\t\treturn assertExhaustive$2(mode, \"makeDereferenceable.ts#$ (get)\");\n\t\t},\n\t\tset(value$1) {\n\t\t\tconst mode = getExecMode();\n\t\t\tif (mode.type === \"normal\") {\n\t\t\t\tif (!options.normalMode.set) throw new Error(`'${this.toString()}' cannot be set in normal mode`);\n\t\t\t\toptions.normalMode.set.apply(this, [value$1]);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (mode.type === \"simulate\") {\n\t\t\t\tif (options.simulateMode?.set) options.simulateMode.set.apply(this, [mode, value$1]);\n\t\t\t\telse if (options.normalMode.set) options.normalMode.set.apply(this, [value$1]);\n\t\t\t\telse throw new Error(`'${this.toString()}' cannot be set in simulate mode`);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (mode.type === \"codegen\") throw new Error(\"Unreachable makeDerefenceable.ts#$ (set)\");\n\t\t\treturn assertExhaustive$2(mode, \"makeDereferenceable.ts#$ (set)\");\n\t\t}\n\t});\n\treturn value;\n}\nfunction makeResolvable(value, options) {\n\tif (!isMarkedInternal(value)) Object.defineProperty(value, $internal, {\n\t\tvalue: true,\n\t\twritable: true\n\t});\n\tObject.defineProperty(value, \"toString\", { value() {\n\t\treturn options.asString.apply(this);\n\t} });\n\tObject.defineProperty(value, $resolve, { value(ctx) {\n\t\treturn options.resolve.apply(this, [ctx]);\n\t} });\n\treturn value;\n}\nfunction constant(dataType, value) {\n\tif (!isData(dataType)) {\n\t\tif (!Array.isArray(value)) throw new Error(`Expected an array value for a partially-applied array schema, but received: ${typeof value}.`);\n\t\treturn new TgpuConstImpl(dataType(value.length), value);\n\t}\n\treturn new TgpuConstImpl(dataType, value);\n}\nfunction deepFreeze(object$1) {\n\tconst propNames = Reflect.ownKeys(object$1);\n\tfor (const name of propNames) {\n\t\tconst value = object$1[name];\n\t\tif (value \u0026\u0026 typeof value === \"object\" || typeof value === \"function\") deepFreeze(value);\n\t}\n\treturn Object.freeze(object$1);\n}\nvar TgpuConstImpl = class TgpuConstImpl {\n\t[$soul];\n\tstatic #_ = (() =\u003e {\n\t\tTgpuConstImpl.prototype[$internal] = {};\n\t\tTgpuConstImpl.prototype.resourceType = \"const\";\n\t\tmakeDereferenceable(makeResolvable(TgpuConstImpl.prototype, {\n\t\t\tasString() {\n\t\t\t\treturn `const:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t\t\t},\n\t\t\tresolve(ctx) {\n\t\t\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\t\t\treturn ctx.gen.declareGlobalConst({\n\t\t\t\t\tid,\n\t\t\t\t\tdataType: this.dataType,\n\t\t\t\t\tinit: snip(this[$soul].value, this.dataType, \"constant\")\n\t\t\t\t});\n\t\t\t}\n\t\t}), {\n\t\t\tcodegenMode: { getBaseSnippet(trackingProxy) {\n\t\t\t\treturn snip(trackingProxy, this.dataType, \"constant-immutable-def\", false);\n\t\t\t} },\n\t\t\tnormalMode: { get() {\n\t\t\t\treturn this[$soul].value;\n\t\t\t} }\n\t\t});\n\t})();\n\tconstructor(dataType, value) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"const\",\n\t\t\tdataType,\n\t\t\tvalue: value \u0026\u0026 typeof value === \"object\" ? deepFreeze(value) : value,\n\t\t\tlabel: void 0\n\t\t};\n\t}\n\tget dataType() {\n\t\treturn this[$soul].dataType;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n};\nfunction isResolvable(value) {\n\treturn isWgsl(value) || isLooseData(value) || hasTinyestMetadata(value);\n}\nfunction mergeFunctionExternals(fnExternals) {\n\tconst base = fnExternals.pluginProvided ?? fnExternals.userProvided ?? {};\n\tconst result = Object.defineProperties({}, Object.getOwnPropertyDescriptors(base));\n\tfor (const flatExternal of [fnExternals.args, fnExternals.out].filter((e) =\u003e e !== void 0)) for (const [key, value] of Object.entries(flatExternal)) {\n\t\tif (key in result \u0026\u0026 result[key] !== value) throw new Error(`Key '${key}' appears in externals despite already being used for argument/return type. Please rename this external.`);\n\t\tresult[key] = value;\n\t}\n\treturn result;\n}\nfunction addArgTypesToExternals(implementation, argTypes, core) {\n\tconst argTypeNames = [...implementation.matchAll(/:\\s*(?\u003carg\u003e.*?)\\s*[,)]/g)].map((found) =\u003e found?.[1]);\n\tconst args = Object.fromEntries(argTypes.flatMap((argType, i) =\u003e {\n\t\tconst argTypeName = argTypeNames?.[i];\n\t\treturn isWgslStruct(argType) \u0026\u0026 argTypeName !== void 0 ? [[argTypeName, argType]] : [];\n\t}));\n\tcore.setExternals(\"args\", args);\n}\nfunction addReturnTypeToExternals(implementation, returnType, core) {\n\tconst matched = implementation.match(/-\u003e\\s(?\u003coutput\u003e[\\w\\d_]+)\\s{/);\n\tconst outputName = matched ? matched[1]?.trim() : void 0;\n\tif (isWgslStruct(returnType) \u0026\u0026 outputName \u0026\u0026 !/\\s/g.test(outputName)) core.setExternals(\"out\", { [outputName]: returnType });\n}\nconst anyIdent = /([$_\\p{XID_Start}][$\\p{XID_Continue}]*)/u;\nvar anyPropChain = new RegExp(`(${anyIdent.source})(\\\\.${anyIdent.source})*`, \"ug\");\nconst boundedPropChain = new RegExp(`(?\u003c![\\\\p{XID_Continue}\\\\$.])${anyPropChain.source}(?![\\\\p{XID_Continue}\\\\$])`, \"ug\");\nfunction replaceExternalsInWgsl(ctx, externalMap, wgsl) {\n\tconst keys = Object.keys(externalMap);\n\tif (keys.length === 0) return wgsl;\n\tconst maybeInvalidKey = keys.find((key) =\u003e key.includes(\".\"));\n\tif (maybeInvalidKey) throw new Error(`External key '${maybeInvalidKey}' contains invalid character '.'`);\n\treturn wgsl.replaceAll(boundedPropChain, (match) =\u003e {\n\t\tconst chain = match.split(\".\");\n\t\tif (!Object.hasOwn(externalMap, chain.at(0))) return match;\n\t\tlet currentItem = externalMap;\n\t\tlet suffix = \"\";\n\t\tfor (const [i, elem] of chain.entries()) {\n\t\t\tcurrentItem = currentItem[elem];\n\t\t\tif (isResolvable(currentItem) || typeof currentItem === \"string\") {\n\t\t\t\tsuffix = chain.slice(i + 1).map((s) =\u003e `.${s}`).join(\"\");\n\t\t\t\tif (isNamable(currentItem) \u0026\u0026 getName(currentItem) === void 0) setName(currentItem, chain.slice(0, i + 1).join(\"_\"));\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (typeof currentItem !== \"object\" || currentItem === null || i === chain.length - 1) {\n\t\t\t\tlogger.warn(\"external-omitted\", `During resolution, the external '${chain.slice(0, i + 1).join(\".\")}' has been omitted. Only TGPU resources, 'use gpu' functions, primitives, and plain JS objects can be used as externals.`);\n\t\t\t\treturn match;\n\t\t\t}\n\t\t}\n\t\treturn ctx.resolve(currentItem).value + suffix;\n\t});\n}\nvar ResolvableString = class {\n\t[$internal] = true;\n\t#value;\n\tconstructor(value) {\n\t\tthis.#value = value;\n\t}\n\t[$resolve]() {\n\t\treturn snip(this.#value, UnknownData, \"runtime\", true);\n\t}\n};\nconst lineBreaks = new Set([\n\t\"\\n\",\n\t\"\\v\",\n\t\"\\f\",\n\t\"\\r\",\n\t\"\",\n\t\"\\u2028\",\n\t\"\\u2029\"\n]);\nconst blankSpaces = new Set([\n\t...lineBreaks,\n\t\" \",\n\t\"\t\",\n\t\"‎\",\n\t\"‏\"\n]);\nfunction extractArgs(rawCode) {\n\tconst { strippedCode, argRange: range$1 } = strip(rawCode);\n\tconst code = new ParsableString(strippedCode);\n\tcode.consume(\"(\");\n\tconst args = [];\n\twhile (!code.isAt(\")\")) {\n\t\tconst attributes = [];\n\t\twhile (code.isAt(\"@\")) {\n\t\t\tcode.parseUntil(closingParenthesis, parentheses);\n\t\t\tcode.consume(\")\");\n\t\t\tattributes.push(code.lastParsed);\n\t\t}\n\t\tcode.parseUntil(identifierEndSymbols);\n\t\tconst identifier = code.lastParsed;\n\t\tlet maybeType;\n\t\tif (code.isAt(\":\")) {\n\t\t\tcode.consume(\":\");\n\t\t\tcode.parseUntil(typeEndSymbols, angleBrackets);\n\t\t\tmaybeType = code.lastParsed;\n\t\t}\n\t\targs.push({\n\t\t\tidentifier,\n\t\t\tattributes,\n\t\t\ttype: maybeType\n\t\t});\n\t\tif (code.isAt(\",\")) code.consume(\",\");\n\t}\n\tcode.consume(\")\");\n\tlet maybeRet;\n\tif (code.isAt(\"-\u003e\")) {\n\t\tcode.consume(\"-\u003e\");\n\t\tconst attributes = [];\n\t\twhile (code.isAt(\"@\")) {\n\t\t\tcode.parseUntil(closingParenthesis, parentheses);\n\t\t\tcode.consume(\")\");\n\t\t\tattributes.push(code.lastParsed);\n\t\t}\n\t\tmaybeRet = {\n\t\t\ttype: code.str.slice(code.pos),\n\t\t\tattributes\n\t\t};\n\t}\n\treturn {\n\t\targs,\n\t\tret: maybeRet,\n\t\trange: {\n\t\t\tbegin: range$1[0],\n\t\t\tend: range$1[1]\n\t\t}\n\t};\n}\nfunction strip(rawCode) {\n\tconst code = new ParsableString(rawCode);\n\tlet strippedCode = \"\";\n\tlet argsStart;\n\twhile (!code.isFinished()) {\n\t\tif (code.isAt(blankSpaces)) {\n\t\t\tcode.advanceBy(1);\n\t\t\tcontinue;\n\t\t}\n\t\tif (code.isAt(\"//\")) {\n\t\t\tcode.consume(\"//\");\n\t\t\tcode.parseUntil(lineBreaks);\n\t\t\tcode.advanceBy(1);\n\t\t\tcontinue;\n\t\t}\n\t\tif (code.isAt(\"/*\")) {\n\t\t\tcode.parseUntil(openingCommentBlock, commentBlocks);\n\t\t\tcode.consume(\"*/\");\n\t\t\tcontinue;\n\t\t}\n\t\tif (code.isAt(\"{\")) return {\n\t\t\tstrippedCode,\n\t\t\targRange: [argsStart, code.pos]\n\t\t};\n\t\tif (code.isAt(\"(\") \u0026\u0026 argsStart === void 0) argsStart = code.pos;\n\t\tif (argsStart !== void 0) strippedCode += code.str[code.pos];\n\t\tcode.advanceBy(1);\n\t}\n\tthrow new Error(\"Invalid wgsl code!\");\n}\nvar ParsableString = class {\n\tstr;\n\t#parseStartPos;\n\t#pos;\n\tconstructor(str) {\n\t\tthis.str = str;\n\t\tthis.#pos = 0;\n\t}\n\tget pos() {\n\t\treturn this.#pos;\n\t}\n\tget lastParsed() {\n\t\tif (this.#parseStartPos === void 0) throw new Error(\"Parse was not called yet!\");\n\t\treturn this.str.slice(this.#parseStartPos, this.pos);\n\t}\n\tisFinished() {\n\t\treturn this.#pos \u003e= this.str.length;\n\t}\n\tisAt(substr) {\n\t\tif (typeof substr === \"string\") {\n\t\t\tfor (let i = 0; i \u003c substr.length; i++) if (this.str[this.#pos + i] !== substr[i]) return false;\n\t\t\treturn true;\n\t\t}\n\t\tfor (const elem of substr) if (this.isAt(elem)) return true;\n\t\treturn false;\n\t}\n\tparseUntil(toFind, brackets) {\n\t\tthis.#parseStartPos = this.#pos;\n\t\tlet openedBrackets = 0;\n\t\twhile (this.#pos \u003c this.str.length) {\n\t\t\tif (brackets \u0026\u0026 this.isAt(brackets[0])) openedBrackets += 1;\n\t\t\tif (brackets \u0026\u0026 this.isAt(brackets[1])) openedBrackets -= 1;\n\t\t\tif (openedBrackets === 0) {\n\t\t\t\tif (this.isAt(toFind)) return this.#pos;\n\t\t\t}\n\t\t\tthis.#pos += 1;\n\t\t}\n\t\tthrow new Error(\"Reached the end of the string without finding a match!\");\n\t}\n\tadvanceBy(steps) {\n\t\tthis.#pos += steps;\n\t}\n\tconsume(str) {\n\t\tif (!this.isAt(str)) throw new Error(`Expected '${str}' at position ${this.#pos}, but found '${this.str.slice(this.#pos, this.#pos + str.length)}'`);\n\t\tthis.advanceBy(str.length);\n\t}\n};\nvar closingParenthesis = new Set([\")\"]);\nvar identifierEndSymbols = new Set([\n\t\":\",\n\t\",\",\n\t\")\"\n]);\nvar typeEndSymbols = new Set([\",\", \")\"]);\nvar openingCommentBlock = new Set([\"*/\"]);\nvar parentheses = [\"(\", \")\"];\nvar angleBrackets = [\"\u003c\", \"\u003e\"];\nvar commentBlocks = [\"/*\", \"*/\"];\nfunction createFnCore(implementation, functionType, workgroupSize) {\n\tconst externals = {};\n\treturn {\n\t\t[$getNameForward]: typeof implementation === \"function\" ? implementation : void 0,\n\t\tsetExternals(key, newExternal) {\n\t\t\tif (key === \"userProvided\" \u0026\u0026 \"userProvided\" in externals) throw new Error(\"Cannot call '$uses' multiple times. If you wish to override dependencies, use slots or accessors instead.\");\n\t\t\texternals[key] = newExternal;\n\t\t\tif (externals.userProvided \u0026\u0026 externals.pluginProvided) throw new Error(\"Cannot call '$uses' on functions whose metadata was provided by unplugin-typegpu.\");\n\t\t},\n\t\tresolve(ctx, argTypes, returnType, entryInput) {\n\t\t\tlet attributes = \"\";\n\t\t\tif (functionType === \"compute\") attributes = `@compute @workgroup_size(${workgroupSize?.join(\", \")}) `;\n\t\t\telse if (functionType === \"vertex\") attributes = `@vertex `;\n\t\t\telse if (functionType === \"fragment\") attributes = `@fragment `;\n\t\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\t\tif (typeof implementation === \"string\") {\n\t\t\t\tif (!returnType) throw new Error(\"Explicit return type is required for string implementation\");\n\t\t\t\tif (entryInput) {\n\t\t\t\t\tfor (const arg of entryInput.positionalArgs) {\n\t\t\t\t\t\tconst result = /* @__PURE__ */ validateIdentifier(arg.schemaKey);\n\t\t\t\t\t\tif (!result.success) throw new Error(`Invalid argument name \"${arg.schemaKey}\"${result.error ? `: ${result.error}` : \"\"}`);\n\t\t\t\t\t\tif (ctx.isIdentifierBanned(arg.schemaKey)) throw new Error(`Invalid argument name \"${arg.schemaKey}\", the identifier is a reserved keyword.`);\n\t\t\t\t\t}\n\t\t\t\t\tthis.setExternals(\"args\", { in: Object.fromEntries(entryInput.positionalArgs.map((a) =\u003e [a.schemaKey, new ResolvableString(a.schemaKey)])) });\n\t\t\t\t}\n\t\t\t\tconst replacedImpl = replaceExternalsInWgsl(ctx, mergeFunctionExternals(externals), implementation);\n\t\t\t\tlet header = \"\";\n\t\t\t\tlet body = \"\";\n\t\t\t\tif (functionType !== \"normal\" \u0026\u0026 entryInput) {\n\t\t\t\t\tconst { dataSchema, positionalArgs } = entryInput;\n\t\t\t\t\tconst parts = [];\n\t\t\t\t\tif (dataSchema \u0026\u0026 isArgUsedInBody(\"in\", replacedImpl)) parts.push(`in: ${ctx.resolve(dataSchema).value}`);\n\t\t\t\t\tfor (const a of positionalArgs) {\n\t\t\t\t\t\tconst argName = a.schemaKey;\n\t\t\t\t\t\tif (isArgUsedInBody(argName, replacedImpl)) parts.push(`${getAttributesString(a.type)}${argName}: ${ctx.resolve(a.type).value}`);\n\t\t\t\t\t}\n\t\t\t\t\tconst input = `(${parts.join(\", \")})`;\n\t\t\t\t\tconst attributes$1 = isWgslData(returnType) ? getAttributesString(returnType) : \"\";\n\t\t\t\t\theader = `${input}${returnType !== Void ? isWgslStruct(returnType) ? ` -\u003e ${ctx.resolve(returnType).value} ` : ` -\u003e ${attributes$1 !== \"\" ? attributes$1 : \"@location(0)\"} ${ctx.resolve(returnType).value} ` : \" \"}`;\n\t\t\t\t\tbody = replacedImpl;\n\t\t\t\t} else {\n\t\t\t\t\tconst providedArgs = extractArgs(replacedImpl);\n\t\t\t\t\tif (providedArgs.args.length !== argTypes.length) throw new Error(`WGSL implementation has ${providedArgs.args.length} arguments, while the shell has ${argTypes.length} arguments.`);\n\t\t\t\t\theader = `(${providedArgs.args.map((argInfo, i) =\u003e `${argInfo.identifier}: ${checkAndReturnType(ctx, `parameter ${argInfo.identifier}`, argInfo.type, argTypes[i])}`).join(\", \")})${returnType === Void ? \" \" : ` -\u003e ${checkAndReturnType(ctx, \"return type\", providedArgs.ret?.type, returnType)} `}`;\n\t\t\t\t\tbody = replacedImpl.slice(providedArgs.range.end);\n\t\t\t\t}\n\t\t\t\tctx.addDeclaration(`${attributes}fn ${id}${header}${body}`, id);\n\t\t\t\treturn snip(id, returnType, \"runtime\");\n\t\t\t}\n\t\t\tconst pluginData = getFunctionMetadata(implementation);\n\t\t\tconst pluginExternals = pluginData?.externals();\n\t\t\tif (pluginExternals) this.setExternals(\"pluginProvided\", pluginExternals);\n\t\t\tconst ast = pluginData?.ast;\n\t\t\tif (!ast) throw new Error(\"Missing metadata for tgpu.fn function body (either missing 'use gpu' directive, or misconfigured `unplugin-typegpu`)\");\n\t\t\tconst maybeSecondArg = ast.params[1];\n\t\t\tif (maybeSecondArg \u0026\u0026 maybeSecondArg.type === \"i\" \u0026\u0026 functionType !== \"normal\") this.setExternals(\"out\", { [maybeSecondArg.name]: undecorate(returnType) });\n\t\t\tconst { code, returnType: actualReturnType } = ctx.resolveFunction({\n\t\t\t\tfunctionType,\n\t\t\t\tname: id,\n\t\t\t\tworkgroupSize,\n\t\t\t\targTypes,\n\t\t\t\tentryInput,\n\t\t\t\tparams: ast.params,\n\t\t\t\treturnType,\n\t\t\t\tbody: ast.body,\n\t\t\t\texternalMap: mergeFunctionExternals(externals)\n\t\t\t});\n\t\t\tctx.addDeclaration(code, id);\n\t\t\treturn snip(id, actualReturnType, \"runtime\");\n\t\t}\n\t};\n}\nfunction isArgUsedInBody(argName, body) {\n\treturn (/* @__PURE__ */ new RegExp(`\\\\b${argName}\\\\b`)).test(body);\n}\nfunction checkAndReturnType(ctx, name, wgslType, jsType) {\n\tconst resolvedJsType = ctx.resolve(jsType).value.replace(/\\s/g, \"\");\n\tif (!wgslType) return resolvedJsType;\n\tconst resolvedWgslType = wgslType.replace(/\\s/g, \"\");\n\tif (resolvedWgslType !== resolvedJsType) throw new Error(`Type mismatch between TGPU shell and WGSL code string: ${name}, JS type \"${resolvedJsType}\", WGSL type \"${resolvedWgslType}\".`);\n\treturn wgslType;\n}\nfunction stripTemplate(arg, ...values) {\n\treturn isTemplateStringsArray(arg) ? templateLiteralIdentity(arg, ...values) : arg;\n}\nfunction isTemplateStringsArray(value) {\n\treturn Array.isArray(value) \u0026\u0026 \"raw\" in value \u0026\u0026 Array.isArray(value.raw) \u0026\u0026 value.raw.every((item) =\u003e typeof item === \"string\");\n}\nfunction templateLiteralIdentity(strings, ...values) {\n\treturn strings.slice(1).reduce((acc, elem, index) =\u003e `${acc}${values[index]}${elem}`, strings[0]);\n}\nfunction fn(argTypesOrCallback, returnType) {\n\tif (typeof argTypesOrCallback === \"function\") return createGenericFn(argTypesOrCallback, []);\n\tconst argTypes = argTypesOrCallback;\n\tconst shell = {\n\t\t[$internal]: true,\n\t\targTypes,\n\t\treturnType: returnType ?? Void\n\t};\n\tconst call$1 = (arg, ...values) =\u003e createFn(shell, stripTemplate(arg, ...values));\n\treturn Object.assign(call$1, shell);\n}\nfunction isTgpuFn(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.resourceType === \"function\";\n}\nfunction isGenericFn(value) {\n\treturn isMarkedInternal(value) \u0026\u0026 value?.resourceType === \"generic-function\";\n}\nfunction stringifyPair([slot$1, value]) {\n\treturn `${getName(slot$1) ?? \"\u003cunnamed\u003e\"}=${value}`;\n}\nfunction createFn(shell, _implementation) {\n\tlet pairs = [];\n\tlet implementation;\n\tif (isGenericFn(_implementation)) {\n\t\tpairs = _implementation[$providing]?.pairs ?? [];\n\t\timplementation = _implementation[$internal].inner;\n\t} else implementation = _implementation;\n\tconst core = createFnCore(implementation, \"normal\");\n\tconst fnBase = {\n\t\tshell,\n\t\tresourceType: \"function\",\n\t\t[$internal]: { implementation },\n\t\t$uses(newExternals) {\n\t\t\tcore.setExternals(\"userProvided\", newExternals);\n\t\t\treturn this;\n\t\t},\n\t\t[$getNameForward]: core,\n\t\t$name(label) {\n\t\t\tsetName(this, label);\n\t\t\treturn this;\n\t\t},\n\t\twith: comptime((slot$1, value) =\u003e {\n\t\t\treturn createBoundFunction(fn$1, [[isAccessor(slot$1) || isMutableAccessor(slot$1) ? slot$1.slot : slot$1, value]]);\n\t\t}),\n\t\t[$resolve](ctx) {\n\t\t\tif (typeof implementation === \"string\") {\n\t\t\t\taddArgTypesToExternals(implementation, shell.argTypes, core);\n\t\t\t\taddReturnTypeToExternals(implementation, shell.returnType, core);\n\t\t\t}\n\t\t\treturn core.resolve(ctx, shell.argTypes, shell.returnType);\n\t\t}\n\t};\n\tconst call$1 = dualImpl({\n\t\tname: void 0,\n\t\tnoComptime: true,\n\t\tsignature: {\n\t\t\targTypes: shell.argTypes,\n\t\t\treturnType: shell.returnType\n\t\t},\n\t\tnormalImpl: (...args) =\u003e provideInsideTgpuFn(() =\u003e {\n\t\t\ttry {\n\t\t\t\tif (typeof implementation === \"string\") throw new Error(\"Cannot execute on the CPU functions constructed with raw WGSL\");\n\t\t\t\tconst castAndCopiedArgs = args.map((arg, index) =\u003e schemaCallWrapper(shell.argTypes[index], arg));\n\t\t\t\tconst result = implementation(...castAndCopiedArgs);\n\t\t\t\treturn schemaCallWrapper(shell.returnType, result);\n\t\t\t} catch (err) {\n\t\t\t\tif (err instanceof ExecutionError) throw err.appendToTrace(fn$1);\n\t\t\t\tthrow new ExecutionError(err, [fn$1]);\n\t\t\t}\n\t\t}),\n\t\tcodegenImpl: (ctx, args) =\u003e ctx.withResetIndentLevel(() =\u003e stitch`${ctx.resolve(fn$1).value}(${args})`),\n\t\tsideEffects: true\n\t});\n\tconst fn$1 = Object.assign(call$1, fnBase);\n\tObject.defineProperty(fn$1, \"toString\", { value() {\n\t\treturn `fn:${getName(core) ?? \"\u003cunnamed\u003e\"}`;\n\t} });\n\tif (pairs.length \u003e 0) return createBoundFunction(fn$1, pairs);\n\treturn fn$1;\n}\nfunction createBoundFunction(innerFn, pairs) {\n\tconst fnBase = {\n\t\tresourceType: \"function\",\n\t\tshell: innerFn.shell,\n\t\t[$internal]: { implementation: innerFn[$internal].implementation },\n\t\t[$providing]: {\n\t\t\tinner: innerFn,\n\t\t\tpairs\n\t\t},\n\t\t$uses(newExternals) {\n\t\t\tinnerFn.$uses(newExternals);\n\t\t\treturn this;\n\t\t},\n\t\t$name(label) {\n\t\t\tsetName(this, label);\n\t\t\treturn this;\n\t\t},\n\t\twith: comptime((slot$1, value) =\u003e {\n\t\t\tconst s = isAccessor(slot$1) || isMutableAccessor(slot$1) ? slot$1.slot : slot$1;\n\t\t\treturn createBoundFunction(innerFn, [...pairs, [s, value]]);\n\t\t})\n\t};\n\tconst call$1 = dualImpl({\n\t\tname: void 0,\n\t\tnoComptime: true,\n\t\tsignature: {\n\t\t\targTypes: innerFn.shell.argTypes,\n\t\t\treturnType: innerFn.shell.returnType\n\t\t},\n\t\tnormalImpl: innerFn,\n\t\tcodegenImpl: (ctx, args) =\u003e ctx.withResetIndentLevel(() =\u003e stitch`${ctx.resolve(fn$1).value}(${args})`),\n\t\tsideEffects: true\n\t});\n\tconst fn$1 = Object.assign(call$1, fnBase);\n\tObject.defineProperty(fn$1, \"toString\", { value() {\n\t\treturn `fn:${getName(this) ?? \"\u003cunnamed\u003e\"}[${pairs.map(stringifyPair).join(\", \")}]`;\n\t} });\n\tconst innerName = getName(innerFn);\n\tif (innerName) setName(fn$1, innerName);\n\treturn fn$1;\n}\nfunction createGenericFn(inner, pairs) {\n\tconst fnBase = {\n\t\t[$internal]: { inner },\n\t\tresourceType: \"generic-function\",\n\t\t[$providing]: pairs.length \u003e 0 ? {\n\t\t\tinner,\n\t\t\tpairs\n\t\t} : void 0,\n\t\t$name(label) {\n\t\t\tsetName(this, label);\n\t\t\tif (!getName(inner)) setName(inner, label);\n\t\t\treturn this;\n\t\t},\n\t\t[$resolve](ctx) {\n\t\t\treturn ctx.resolve(inner);\n\t\t},\n\t\twith(slot$1, value) {\n\t\t\tconst s = isAccessor(slot$1) || isMutableAccessor(slot$1) ? slot$1.slot : slot$1;\n\t\t\treturn createGenericFn(inner, [...pairs, [s, value]]);\n\t\t}\n\t};\n\tconst call$1 = (...args) =\u003e {\n\t\treturn inner(...args);\n\t};\n\tconst genericFn = Object.assign(call$1, fnBase);\n\tconst innerName = getName(inner);\n\tif (innerName) setName(genericFn, innerName);\n\tObject.defineProperty(genericFn, \"toString\", { value() {\n\t\tconst fnLabel = getName(genericFn) ?? \"\u003cunnamed\u003e\";\n\t\tif (pairs.length \u003e 0) return `fn*:${fnLabel}[${pairs.map(stringifyPair).join(\", \")}]`;\n\t\treturn `fn*:${fnLabel}`;\n\t} });\n\treturn genericFn;\n}\nvar NodeTypeCatalog = {\n\tblock: 0,\n\tbinaryExpr: 1,\n\tassignmentExpr: 2,\n\tlogicalExpr: 3,\n\tunaryExpr: 4,\n\tnumericLiteral: 5,\n\tcall: 6,\n\tmemberAccess: 7,\n\tindexAccess: 8,\n\treturn: 10,\n\tif: 11,\n\tlet: 12,\n\tconst: 13,\n\tfor: 14,\n\twhile: 15,\n\tcontinue: 16,\n\tbreak: 17,\n\tforOf: 18,\n\tarrayExpr: 100,\n\tpreUpdate: 101,\n\tpostUpdate: 102,\n\tstringLiteral: 103,\n\tobjectExpr: 104,\n\tconditionalExpr: 105\n};\nvar FuncParameterType = {\n\tidentifier: \"i\",\n\tdestructuredObject: \"d\"\n};\nvar tinyest_exports = /* @__PURE__ */ __export$1({\n\tFuncParameterType: () =\u003e FuncParameterType,\n\tNodeTypeCatalog: () =\u003e NodeTypeCatalog\n});\nvar unaryIdentitySignature = (arg) =\u003e {\n\treturn {\n\t\targTypes: [arg],\n\t\treturnType: arg\n\t};\n};\nvar variadicUnifySignature = (...args) =\u003e {\n\tconst uargs = unify(args) ?? args;\n\treturn {\n\t\targTypes: uargs,\n\t\treturnType: uargs[0]\n\t};\n};\nvar unifyRestrictedSignature = (restrict) =\u003e (...args) =\u003e {\n\tconst uargs = unify(args, restrict);\n\tif (!uargs) throw new SignatureNotSupportedError(args, restrict);\n\treturn {\n\t\targTypes: uargs,\n\t\treturnType: uargs[0]\n\t};\n};\nfunction variadicReduce(fn$1) {\n\treturn (fst, ...rest) =\u003e {\n\t\tlet acc = fst;\n\t\tfor (const r of rest) acc = fn$1(acc, r);\n\t\treturn acc;\n\t};\n}\nfunction variadicStitch(wrapper) {\n\treturn (_ctx, [fst, ...rest]) =\u003e {\n\t\tlet acc = stitch`${fst}`;\n\t\tfor (const r of rest) acc = stitch`${wrapper}(${acc}, ${r})`;\n\t\treturn acc;\n\t};\n}\nvar anyFloatPrimitive = [\n\tf32,\n\tf16,\n\tabstractFloat\n];\nvar anyFloatVec = [\n\tvec2f,\n\tvec3f,\n\tvec4f,\n\tvec2h,\n\tvec3h,\n\tvec4h\n];\nvar anyFloat = [...anyFloatPrimitive, ...anyFloatVec];\nvar anyConcreteIntegerPrimitive = [i32, u32];\nvar anyConcreteIntegerVec = [\n\tvec2i,\n\tvec3i,\n\tvec4i,\n\tvec2u,\n\tvec3u,\n\tvec4u\n];\nvar anyConcreteInteger = [...anyConcreteIntegerPrimitive, ...anyConcreteIntegerVec];\nfunction cpuAbs(value) {\n\treturn generalizeFn(Math.abs, [value]);\n}\nconst abs = dualImpl({\n\tname: \"abs\",\n\tsignature: unaryIdentitySignature,\n\tnormalImpl: cpuAbs,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`abs(${value})`,\n\tsideEffects: false\n});\nfunction cpuAcos(value) {\n\treturn generalizeFn(Math.acos, [value]);\n}\nconst acos = dualImpl({\n\tname: \"acos\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuAcos,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`acos(${value})`,\n\tsideEffects: false\n});\nfunction cpuAcosh(value) {\n\treturn generalizeFn(Math.acosh, [value]);\n}\nconst acosh = dualImpl({\n\tname: \"acosh\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuAcosh,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`acosh(${value})`,\n\tsideEffects: false\n});\nfunction cpuAsin(value) {\n\treturn generalizeFn(Math.asin, [value]);\n}\nconst asin = dualImpl({\n\tname: \"asin\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuAsin,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`asin(${value})`,\n\tsideEffects: false\n});\nfunction cpuAsinh(value) {\n\treturn generalizeFn(Math.asinh, [value]);\n}\nconst asinh = dualImpl({\n\tname: \"asinh\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuAsinh,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`asinh(${value})`,\n\tsideEffects: false\n});\nfunction cpuAtan(value) {\n\treturn generalizeFn(Math.atan, [value]);\n}\nconst atan = dualImpl({\n\tname: \"atan\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuAtan,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`atan(${value})`,\n\tsideEffects: false\n});\nfunction cpuAtanh(value) {\n\treturn generalizeFn(Math.atanh, [value]);\n}\nconst atanh = dualImpl({\n\tname: \"atanh\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuAtanh,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`atanh(${value})`,\n\tsideEffects: false\n});\nfunction cpuAtan2(y, x) {\n\treturn generalizeFn(Math.atan2, [y, x]);\n}\nconst atan2 = dualImpl({\n\tname: \"atan2\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuAtan2,\n\tcodegenImpl: (_ctx, [y, x]) =\u003e stitch`atan2(${y}, ${x})`,\n\tsideEffects: false\n});\nfunction cpuCeil(value) {\n\treturn generalizeFn(Math.ceil, [value]);\n}\nconst ceil = dualImpl({\n\tname: \"ceil\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuCeil,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`ceil(${value})`,\n\tsideEffects: false\n});\nfunction cpuClamp(value, low, high) {\n\treturn generalizeFn(clampScalar, [\n\t\tvalue,\n\t\tlow,\n\t\thigh\n\t]);\n}\nconst clamp = dualImpl({\n\tname: \"clamp\",\n\tsignature: variadicUnifySignature,\n\tnormalImpl: cpuClamp,\n\tcodegenImpl: (_ctx, [value, low, high]) =\u003e stitch`clamp(${value}, ${low}, ${high})`,\n\tsideEffects: false\n});\nfunction cpuCos(value) {\n\treturn generalizeFn(Math.cos, [value]);\n}\nconst cos = dualImpl({\n\tname: \"cos\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuCos,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`cos(${value})`,\n\tsideEffects: false\n});\nfunction cpuCosh(value) {\n\treturn generalizeFn(Math.cosh, [value]);\n}\nconst cosh = dualImpl({\n\tname: \"cosh\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuCosh,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`cosh(${value})`,\n\tsideEffects: false\n});\nconst countLeadingZeros = dualImpl({\n\tname: \"countLeadingZeros\",\n\tsignature: unifyRestrictedSignature(anyConcreteInteger),\n\tnormalImpl: \"CPU implementation for countLeadingZeros not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`countLeadingZeros(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"countOneBits\",\n\tsignature: unifyRestrictedSignature(anyConcreteInteger),\n\tnormalImpl: \"CPU implementation for countOneBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`countOneBits(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"countTrailingZeros\",\n\tsignature: unifyRestrictedSignature(anyConcreteInteger),\n\tnormalImpl: \"CPU implementation for countTrailingZeros not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`countTrailingZeros(${value})`,\n\tsideEffects: false\n});\nconst cross = dualImpl({\n\tname: \"cross\",\n\tsignature: unifyRestrictedSignature([vec3f, vec3h]),\n\tnormalImpl: (a, b) =\u003e VectorOps.cross[a.kind](a, b),\n\tcodegenImpl: (_ctx, [a, b]) =\u003e stitch`cross(${a}, ${b})`,\n\tsideEffects: false\n});\nfunction cpuDegrees(value) {\n\tif (typeof value === \"number\") return value * 180 / Math.PI;\n\tthrow new MissingCpuImplError(\"CPU implementation for degrees on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\ndualImpl({\n\tname: \"degrees\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuDegrees,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`degrees(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"determinant\",\n\tsignature: (arg) =\u003e {\n\t\tif (!(arg.type === \"mat2x2f\" || arg.type === \"mat3x3f\" || arg.type === \"mat4x4f\")) throw new SignatureNotSupportedError([arg], [\n\t\t\tmat2x2f,\n\t\t\tmat3x3f,\n\t\t\tmat4x4f\n\t\t]);\n\t\treturn {\n\t\t\targTypes: [arg],\n\t\t\treturnType: f32\n\t\t};\n\t},\n\tnormalImpl: \"CPU implementation for determinant not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`determinant(${value})`,\n\tsideEffects: false\n});\nfunction cpuDistance(a, b) {\n\tif (typeof a === \"number\" \u0026\u0026 typeof b === \"number\") return Math.abs(a - b);\n\treturn length(sub(a, b));\n}\ndualImpl({\n\tname: \"distance\",\n\tsignature: (...args) =\u003e {\n\t\tconst uargs = unify(args, anyFloat);\n\t\tif (!uargs) throw new SignatureNotSupportedError(args, anyFloat);\n\t\treturn {\n\t\t\targTypes: uargs,\n\t\t\treturnType: isHalfPrecisionSchema(uargs[0]) ? f16 : f32\n\t\t};\n\t},\n\tnormalImpl: cpuDistance,\n\tcodegenImpl: (_ctx, [a, b]) =\u003e stitch`distance(${a}, ${b})`,\n\tsideEffects: false\n});\nconst dot = dualImpl({\n\tname: \"dot\",\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: args[0].primitive\n\t}),\n\tnormalImpl: (lhs, rhs) =\u003e VectorOps.dot[lhs.kind](lhs, rhs),\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`dot(${lhs}, ${rhs})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"dot4U8Packed\",\n\tsignature: {\n\t\targTypes: [u32, u32],\n\t\treturnType: u32\n\t},\n\tnormalImpl: \"CPU implementation for dot4U8Packed not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [e1, e2]) =\u003e stitch`dot4U8Packed(${e1}, ${e2})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"dot4I8Packed\",\n\tsignature: {\n\t\targTypes: [u32, u32],\n\t\treturnType: i32\n\t},\n\tnormalImpl: \"CPU implementation for dot4I8Packed not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [e1, e2]) =\u003e stitch`dot4I8Packed(${e1}, ${e2})`,\n\tsideEffects: false\n});\nfunction cpuExp(value) {\n\treturn generalizeFn(Math.exp, [value]);\n}\nconst exp = dualImpl({\n\tname: \"exp\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuExp,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`exp(${value})`,\n\tsideEffects: false\n});\nfunction cpuExp2(value) {\n\treturn generalizeFn((val) =\u003e 2 ** val, [value]);\n}\nconst exp2 = dualImpl({\n\tname: \"exp2\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuExp2,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`exp2(${value})`,\n\tsideEffects: false\n});\nconst extractBits = dualImpl({\n\tname: \"extractBits\",\n\tsignature: (arg, _offset, _count) =\u003e {\n\t\tconst argRestricted = unify([arg], anyConcreteInteger)?.[0];\n\t\tif (!argRestricted) throw new SignatureNotSupportedError([arg], anyConcreteInteger);\n\t\treturn {\n\t\t\targTypes: [\n\t\t\t\targRestricted,\n\t\t\t\tu32,\n\t\t\t\tu32\n\t\t\t],\n\t\t\treturnType: argRestricted\n\t\t};\n\t},\n\tnormalImpl: \"CPU implementation for extractBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [e, offset, count]) =\u003e stitch`extractBits(${e}, ${offset}, ${count})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"faceForward\",\n\tsignature: unifyRestrictedSignature(anyFloatVec),\n\tnormalImpl: \"CPU implementation for faceForward not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [e1, e2, e3]) =\u003e stitch`faceForward(${e1}, ${e2}, ${e3})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"firstLeadingBit\",\n\tsignature: unaryIdentitySignature,\n\tnormalImpl: \"CPU implementation for firstLeadingBit not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`firstLeadingBit(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"firstTrailingBit\",\n\tsignature: unifyRestrictedSignature(anyConcreteInteger),\n\tnormalImpl: \"CPU implementation for firstTrailingBit not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`firstTrailingBit(${value})`,\n\tsideEffects: false\n});\nfunction cpuFloor(value) {\n\treturn generalizeFn(Math.floor, [value]);\n}\nconst floor = dualImpl({\n\tname: \"floor\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuFloor,\n\tcodegenImpl: (_ctx, [arg]) =\u003e stitch`floor(${arg})`,\n\tsideEffects: false\n});\nfunction cpuFma(e1, e2, e3) {\n\tif (typeof e1 === \"number\") return e1 * e2 + e3;\n\tthrow new MissingCpuImplError(\"CPU implementation for fma on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\ndualImpl({\n\tname: \"fma\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuFma,\n\tcodegenImpl: (_ctx, [e1, e2, e3]) =\u003e stitch`fma(${e1}, ${e2}, ${e3})`,\n\tsideEffects: false\n});\nfunction cpuFract(value) {\n\treturn generalizeFn((value$1) =\u003e value$1 - Math.floor(value$1), [value]);\n}\nconst fract = dualImpl({\n\tname: \"fract\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuFract,\n\tcodegenImpl: (_ctx, [a]) =\u003e stitch`fract(${a})`,\n\tsideEffects: false\n});\nvar FrexpResults = {\n\tf32: abstruct({\n\t\tfract: f32,\n\t\texp: i32\n\t}),\n\tf16: abstruct({\n\t\tfract: f16,\n\t\texp: i32\n\t}),\n\tabstractFloat: abstruct({\n\t\tfract: abstractFloat,\n\t\texp: abstractInt\n\t}),\n\tvec2f: abstruct({\n\t\tfract: vec2f,\n\t\texp: vec2i\n\t}),\n\tvec3f: abstruct({\n\t\tfract: vec3f,\n\t\texp: vec3i\n\t}),\n\tvec4f: abstruct({\n\t\tfract: vec4f,\n\t\texp: vec4i\n\t}),\n\tvec2h: abstruct({\n\t\tfract: vec2h,\n\t\texp: vec2i\n\t}),\n\tvec3h: abstruct({\n\t\tfract: vec3h,\n\t\texp: vec3i\n\t}),\n\tvec4h: abstruct({\n\t\tfract: vec4h,\n\t\texp: vec4i\n\t})\n};\ndualImpl({\n\tname: \"frexp\",\n\tnormalImpl: \"CPU implementation for frexp not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tsignature: (value) =\u003e {\n\t\tconst returnType = FrexpResults[value.type];\n\t\tif (!returnType) throw new SignatureNotSupportedError([value], anyFloat);\n\t\treturn {\n\t\t\targTypes: [value],\n\t\t\treturnType\n\t\t};\n\t},\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`frexp(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"insertBits\",\n\tsignature: (e, newbits, _offset, _count) =\u003e {\n\t\tconst uargs = unify([e, newbits], anyConcreteInteger);\n\t\tif (!uargs) throw new SignatureNotSupportedError([e, newbits], anyConcreteInteger);\n\t\treturn {\n\t\t\targTypes: [\n\t\t\t\t...uargs,\n\t\t\t\tu32,\n\t\t\t\tu32\n\t\t\t],\n\t\t\treturnType: uargs[0]\n\t\t};\n\t},\n\tnormalImpl: \"CPU implementation for insertBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [e, newbits, offset, count]) =\u003e stitch`insertBits(${e}, ${newbits}, ${offset}, ${count})`,\n\tsideEffects: false\n});\nfunction cpuInverseSqrt(value) {\n\tif (typeof value === \"number\") return 1 / Math.sqrt(value);\n\tthrow new MissingCpuImplError(\"CPU implementation for inverseSqrt on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\ndualImpl({\n\tname: \"inverseSqrt\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuInverseSqrt,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`inverseSqrt(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"ldexp\",\n\tsignature: (e1, _e2) =\u003e {\n\t\tswitch (e1.type) {\n\t\t\tcase \"abstractFloat\": return {\n\t\t\t\targTypes: [e1, abstractInt],\n\t\t\t\treturnType: e1\n\t\t\t};\n\t\t\tcase \"f32\":\n\t\t\tcase \"f16\": return {\n\t\t\t\targTypes: [e1, i32],\n\t\t\t\treturnType: e1\n\t\t\t};\n\t\t\tcase \"vec2f\":\n\t\t\tcase \"vec2h\": return {\n\t\t\t\targTypes: [e1, vec2i],\n\t\t\t\treturnType: e1\n\t\t\t};\n\t\t\tcase \"vec3f\":\n\t\t\tcase \"vec3h\": return {\n\t\t\t\targTypes: [e1, vec3i],\n\t\t\t\treturnType: e1\n\t\t\t};\n\t\t\tcase \"vec4f\":\n\t\t\tcase \"vec4h\": return {\n\t\t\t\targTypes: [e1, vec4i],\n\t\t\t\treturnType: e1\n\t\t\t};\n\t\t\tdefault: throw new Error(`Unsupported data type for ldexp: ${e1.type}. Supported types are abstractFloat, f32, f16, vec2f, vec2h, vec3f, vec3h, vec4f, vec4h.`);\n\t\t}\n\t},\n\tnormalImpl: \"CPU implementation for ldexp not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [e1, e2]) =\u003e stitch`ldexp(${e1}, ${e2})`,\n\tsideEffects: false\n});\nfunction cpuLength(value) {\n\tif (typeof value === \"number\") return Math.abs(value);\n\treturn VectorOps.length[value.kind](value);\n}\nconst length = dualImpl({\n\tname: \"length\",\n\tsignature: (arg) =\u003e {\n\t\tconst uarg = unify([arg], anyFloat);\n\t\tif (!uarg) throw new SignatureNotSupportedError([arg], anyFloat);\n\t\treturn {\n\t\t\targTypes: uarg,\n\t\t\treturnType: isHalfPrecisionSchema(uarg[0]) ? f16 : f32\n\t\t};\n\t},\n\tnormalImpl: cpuLength,\n\tcodegenImpl: (_ctx, [arg]) =\u003e stitch`length(${arg})`,\n\tsideEffects: false\n});\nfunction cpuLog(value) {\n\treturn generalizeFn(Math.log, [value]);\n}\nconst log = dualImpl({\n\tname: \"log\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuLog,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`log(${value})`,\n\tsideEffects: false\n});\nfunction cpuLog2(value) {\n\treturn generalizeFn(Math.log2, [value]);\n}\nconst log2 = dualImpl({\n\tname: \"log2\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuLog2,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`log2(${value})`,\n\tsideEffects: false\n});\nfunction cpuMax(a, b) {\n\treturn generalizeFn(Math.max, [a, b]);\n}\nconst max = dualImpl({\n\tname: \"max\",\n\tsignature: variadicUnifySignature,\n\tnormalImpl: variadicReduce(cpuMax),\n\tcodegenImpl: variadicStitch(\"max\"),\n\tsideEffects: false\n});\nfunction cpuMin(a, b) {\n\treturn generalizeFn(Math.min, [a, b]);\n}\nconst min = dualImpl({\n\tname: \"min\",\n\tsignature: variadicUnifySignature,\n\tnormalImpl: variadicReduce(cpuMin),\n\tcodegenImpl: variadicStitch(\"min\"),\n\tsideEffects: false\n});\nfunction cpuMix(e1, e2, e3) {\n\treturn generalizeFn((e1$1, e2$1, e3$1) =\u003e e1$1 * (1 - e3$1) + e2$1 * e3$1, [e1, ...upCast([e2, e3])]);\n}\nconst mix = dualImpl({\n\tname: \"mix\",\n\tsignature: (e1, e2, e3) =\u003e {\n\t\tif (e1.type.startsWith(\"vec\") \u0026\u0026 !e3.type.startsWith(\"vec\")) {\n\t\t\tconst uarg = unify([e3], [e1.primitive]);\n\t\t\tif (!uarg) throw new SignatureNotSupportedError([e3], [e1.primitive]);\n\t\t\treturn {\n\t\t\t\targTypes: [\n\t\t\t\t\te1,\n\t\t\t\t\te2,\n\t\t\t\t\tuarg[0]\n\t\t\t\t],\n\t\t\t\treturnType: e1\n\t\t\t};\n\t\t}\n\t\tconst uargs = unify([\n\t\t\te1,\n\t\t\te2,\n\t\t\te3\n\t\t], anyFloat);\n\t\tif (!uargs) throw new SignatureNotSupportedError([\n\t\t\te1,\n\t\t\te2,\n\t\t\te3\n\t\t], anyFloat);\n\t\treturn {\n\t\t\targTypes: uargs,\n\t\t\treturnType: uargs[0]\n\t\t};\n\t},\n\tnormalImpl: cpuMix,\n\tcodegenImpl: (_ctx, [e1, e2, e3]) =\u003e stitch`mix(${e1}, ${e2}, ${e3})`,\n\tsideEffects: false\n});\nvar ModfResult = {\n\tf32: abstruct({\n\t\tfract: f32,\n\t\twhole: f32\n\t}),\n\tf16: abstruct({\n\t\tfract: f16,\n\t\twhole: f16\n\t}),\n\tabstractFloat: abstruct({\n\t\tfract: abstractFloat,\n\t\twhole: abstractFloat\n\t}),\n\tvec2f: abstruct({\n\t\tfract: vec2f,\n\t\twhole: vec2f\n\t}),\n\tvec3f: abstruct({\n\t\tfract: vec3f,\n\t\twhole: vec3f\n\t}),\n\tvec4f: abstruct({\n\t\tfract: vec4f,\n\t\twhole: vec4f\n\t}),\n\tvec2h: abstruct({\n\t\tfract: vec2h,\n\t\twhole: vec2h\n\t}),\n\tvec3h: abstruct({\n\t\tfract: vec3h,\n\t\twhole: vec3h\n\t}),\n\tvec4h: abstruct({\n\t\tfract: vec4h,\n\t\twhole: vec4h\n\t})\n};\ndualImpl({\n\tname: \"modf\",\n\tsignature: (e) =\u003e {\n\t\tconst returnType = ModfResult[e.type];\n\t\tif (!returnType) throw new Error(`Unsupported data type for modf: ${e.type}. Supported types are f32, f16, abstractFloat, vec2f, vec3f, vec4f, vec2h, vec3h, vec4h.`);\n\t\treturn {\n\t\t\targTypes: [e],\n\t\t\treturnType\n\t\t};\n\t},\n\tnormalImpl: \"CPU implementation for modf not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`modf(${value})`,\n\tsideEffects: false\n});\nconst normalize = dualImpl({\n\tname: \"normalize\",\n\tsignature: unifyRestrictedSignature(anyFloatVec),\n\tnormalImpl: (v) =\u003e {\n\t\tconst len = length(v);\n\t\treturn generalizeFn((e) =\u003e e / len, [v]);\n\t},\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`normalize(${value})`,\n\tsideEffects: false\n});\nfunction powCpu(base, exponent) {\n\treturn generalizeFn((a, b) =\u003e a ** b, [base, exponent]);\n}\nconst pow = dualImpl({\n\tname: \"pow\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: powCpu,\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`pow(${lhs}, ${rhs})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"quantizeToF16\",\n\tsignature: (arg) =\u003e {\n\t\tconst candidates = [\n\t\t\tvec2f,\n\t\t\tvec3f,\n\t\t\tvec4f,\n\t\t\tf32\n\t\t];\n\t\tconst uarg = unify([arg], candidates)?.[0];\n\t\tif (!uarg) throw new SignatureNotSupportedError([arg], candidates);\n\t\treturn {\n\t\t\targTypes: [uarg],\n\t\t\treturnType: uarg\n\t\t};\n\t},\n\tnormalImpl: \"CPU implementation for quantizeToF16 not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`quantizeToF16(${value})`,\n\tsideEffects: false\n});\nfunction cpuRadians(value) {\n\tif (typeof value === \"number\") return value * Math.PI / 180;\n\tthrow new MissingCpuImplError(\"CPU implementation for radians on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\nconst radians = dualImpl({\n\tname: \"radians\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuRadians,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`radians(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"reflect\",\n\tsignature: (...args) =\u003e {\n\t\tconst uargs = unify(args, anyFloatVec);\n\t\tif (!uargs) throw new SignatureNotSupportedError(args, anyFloatVec);\n\t\treturn {\n\t\t\targTypes: uargs,\n\t\t\treturnType: uargs[0]\n\t\t};\n\t},\n\tnormalImpl: (e1, e2) =\u003e sub(e1, mul(2 * dot(e2, e1), e2)),\n\tcodegenImpl: (_ctx, [e1, e2]) =\u003e stitch`reflect(${e1}, ${e2})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"refract\",\n\tnormalImpl: \"CPU implementation for refract not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [e1, e2, e3]) =\u003e stitch`refract(${e1}, ${e2}, ${e3})`,\n\tsignature: (e1, e2, _e3) =\u003e ({\n\t\targTypes: [\n\t\t\te1,\n\t\t\te2,\n\t\t\tisHalfPrecisionSchema(e1) ? f16 : f32\n\t\t],\n\t\treturnType: e1\n\t}),\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"reverseBits\",\n\tsignature: unifyRestrictedSignature(anyConcreteInteger),\n\tnormalImpl: \"CPU implementation for reverseBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`reverseBits(${value})`,\n\tsideEffects: false\n});\nfunction cpuRound(value) {\n\tif (typeof value === \"number\") {\n\t\tconst floor$1 = Math.floor(value);\n\t\tif (value === floor$1 + .5) {\n\t\t\tif (floor$1 % 2 === 0) return floor$1;\n\t\t\treturn floor$1 + 1;\n\t\t}\n\t\treturn Math.round(value);\n\t}\n\tthrow new MissingCpuImplError(\"CPU implementation for round on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\nconst round = dualImpl({\n\tname: \"round\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuRound,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`round(${value})`,\n\tsideEffects: false\n});\nfunction cpuSaturate(value) {\n\tif (typeof value === \"number\") return Math.max(0, Math.min(1, value));\n\tthrow new MissingCpuImplError(\"CPU implementation for saturate on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\ndualImpl({\n\tname: \"saturate\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuSaturate,\n\tcodegenImpl: (ctx, [value]) =\u003e ctx.gen.emitCall(\"saturate\", [], [value]),\n\tsideEffects: false\n});\nfunction cpuSign(e) {\n\treturn generalizeFn(Math.sign, [e]);\n}\nconst sign = dualImpl({\n\tname: \"sign\",\n\tsignature: (arg) =\u003e {\n\t\tconst candidates = [\n\t\t\t...anyFloat,\n\t\t\ti32,\n\t\t\tvec2i,\n\t\t\tvec3i,\n\t\t\tvec4i\n\t\t];\n\t\tconst uarg = unify([arg], candidates)?.[0];\n\t\tif (!uarg) throw new SignatureNotSupportedError([arg], candidates);\n\t\treturn {\n\t\t\targTypes: [uarg],\n\t\t\treturnType: uarg\n\t\t};\n\t},\n\tnormalImpl: cpuSign,\n\tcodegenImpl: (_ctx, [e]) =\u003e stitch`sign(${e})`,\n\tsideEffects: false\n});\nfunction cpuSin(value) {\n\treturn generalizeFn(Math.sin, [value]);\n}\nconst sin = dualImpl({\n\tname: \"sin\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuSin,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`sin(${value})`,\n\tsideEffects: false\n});\nfunction cpuSinh(value) {\n\treturn generalizeFn(Math.sinh, [value]);\n}\nconst sinh = dualImpl({\n\tname: \"sinh\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuSinh,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`sinh(${value})`,\n\tsideEffects: false\n});\nfunction cpuSmoothstep(edge0, edge1, x) {\n\treturn generalizeFn(smoothstepScalar, [\n\t\tedge0,\n\t\tedge1,\n\t\tx\n\t]);\n}\nconst smoothstep = dualImpl({\n\tname: \"smoothstep\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuSmoothstep,\n\tcodegenImpl: (_ctx, [edge0, edge1, x]) =\u003e stitch`smoothstep(${edge0}, ${edge1}, ${x})`,\n\tsideEffects: false\n});\nfunction cpuSqrt(value) {\n\treturn generalizeFn(Math.sqrt, [value]);\n}\nconst sqrt = dualImpl({\n\tname: \"sqrt\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuSqrt,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`sqrt(${value})`,\n\tsideEffects: false\n});\nfunction cpuStep(edge, x) {\n\tif (typeof edge === \"number\") return edge \u003c= x ? 1 : 0;\n\tthrow new MissingCpuImplError(\"CPU implementation for step on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\nconst step = dualImpl({\n\tname: \"step\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuStep,\n\tcodegenImpl: (_ctx, [edge, x]) =\u003e stitch`step(${edge}, ${x})`,\n\tsideEffects: false\n});\nfunction cpuTan(value) {\n\tif (typeof value === \"number\") return Math.tan(value);\n\tthrow new MissingCpuImplError(\"CPU implementation for tan on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\");\n}\nconst tan = dualImpl({\n\tname: \"tan\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuTan,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`tan(${value})`,\n\tsideEffects: false\n});\nfunction cpuTanh(value) {\n\treturn generalizeFn(Math.tanh, [value]);\n}\nconst tanh = dualImpl({\n\tname: \"tanh\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: cpuTanh,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`tanh(${value})`,\n\tsideEffects: false\n});\nfunction cpuTranspose(value) {\n\tconst transposed = WORKAROUND_getSchema(value)();\n\tconst src = value.columns;\n\tconst dst = transposed.columns;\n\tif (src.length === 2) {\n\t\tdst[0][0] = src[0][0];\n\t\tdst[0][1] = src[1][0];\n\t\tdst[1][0] = src[0][1];\n\t\tdst[1][1] = src[1][1];\n\t} else if (src.length === 3) {\n\t\tdst[0][0] = src[0][0];\n\t\tdst[0][1] = src[1][0];\n\t\tdst[0][2] = src[2][0];\n\t\tdst[1][0] = src[0][1];\n\t\tdst[1][1] = src[1][1];\n\t\tdst[1][2] = src[2][1];\n\t\tconst dst2 = dst[2];\n\t\tdst2[0] = src[0][2];\n\t\tdst2[1] = src[1][2];\n\t\tdst2[2] = src[2][2];\n\t} else if (src.length === 4) {\n\t\tdst[0][0] = src[0][0];\n\t\tdst[0][1] = src[1][0];\n\t\tdst[0][2] = src[2][0];\n\t\tdst[0][3] = src[3][0];\n\t\tdst[1][0] = src[0][1];\n\t\tdst[1][1] = src[1][1];\n\t\tdst[1][2] = src[2][1];\n\t\tdst[1][3] = src[3][1];\n\t\tconst dst2 = dst[2];\n\t\tdst2[0] = src[0][2];\n\t\tdst2[1] = src[1][2];\n\t\tdst2[2] = src[2][2];\n\t\tdst2[3] = src[3][2];\n\t\tconst dst3 = dst[3];\n\t\tdst3[0] = src[0][3];\n\t\tdst3[1] = src[1][3];\n\t\tdst3[2] = src[2][3];\n\t\tdst3[3] = src[3][3];\n\t} else assertExhaustive$2(src, \"std/numeric.ts#cpuTranspose\");\n\treturn transposed;\n}\ndualImpl({\n\tname: \"transpose\",\n\tsignature: unaryIdentitySignature,\n\tnormalImpl: cpuTranspose,\n\tcodegenImpl: (_ctx, [e]) =\u003e stitch`transpose(${e})`,\n\tsideEffects: false\n});\nconst trunc = dualImpl({\n\tname: \"trunc\",\n\tsignature: unifyRestrictedSignature(anyFloat),\n\tnormalImpl: \"CPU implementation for trunc not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`trunc(${value})`,\n\tsideEffects: false\n});\nfunction cpuIntdiv(lhs, rhs) {\n\tif (typeof lhs !== \"number\" || typeof rhs !== \"number\") throw new Error(\"std.intdiv called with invalid arguments.\");\n\treturn Math.trunc(Math.trunc(lhs) / Math.trunc(rhs));\n}\ndualImpl({\n\tname: \"intdiv\",\n\tsignature: (lhs, rhs) =\u003e {\n\t\tconst unified = unify([lhs, rhs], [u32, i32]);\n\t\tif (!unified) throw new SignatureNotSupportedError([lhs, rhs], [\n\t\t\tu32,\n\t\t\ti32,\n\t\t\tabstractInt\n\t\t]);\n\t\treturn {\n\t\t\targTypes: unified,\n\t\t\treturnType: unified[0]\n\t\t};\n\t},\n\tnormalImpl: cpuIntdiv,\n\tcodegenImpl: (ctx, [lhs, rhs]) =\u003e ctx.gen.emitBinaryOp(lhs, \"/\", rhs),\n\tsideEffects: false\n});\nfunction cpuCopy(e) {\n\tif (isVecInstance(e) || isMatInstance(e)) return WORKAROUND_getSchema(e)(e);\n\tif (Array.isArray(e)) return e.map(cpuCopy);\n\tif (typeof e === \"object\" \u0026\u0026 e !== null) return Object.fromEntries(Object.entries(e).map(([key, value]) =\u003e [key, cpuCopy(value)]));\n\treturn e;\n}\ndualImpl({\n\tname: \"copy\",\n\tsignature: (arg) =\u003e {\n\t\treturn {\n\t\t\targTypes: [arg],\n\t\t\treturnType: arg\n\t\t};\n\t},\n\tnormalImpl: cpuCopy,\n\tcodegenImpl(_ctx, [a]) {\n\t\treturn stitch`${a}`;\n\t},\n\tsideEffects: false\n});\nfunction correspondingBooleanVectorSchema(dataType) {\n\tif (dataType.type.includes(\"2\")) return vec2b;\n\tif (dataType.type.includes(\"3\")) return vec3b;\n\treturn vec4b;\n}\nconst allEq = dualImpl({\n\tname: \"allEq\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: bool\n\t}),\n\tnormalImpl: (lhs, rhs) =\u003e cpuAll(cpuEq(lhs, rhs)),\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`all(${lhs} == ${rhs})`,\n\tsideEffects: false\n});\nvar cpuEq = (lhs, rhs) =\u003e generalizeBoolFn((a, b) =\u003e a === b, [lhs, rhs]);\nconst eq = dualImpl({\n\tname: \"eq\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: correspondingBooleanVectorSchema(argTypes[0])\n\t}),\n\tnormalImpl: cpuEq,\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} == ${rhs})`,\n\tsideEffects: false\n});\nconst ne = dualImpl({\n\tname: \"ne\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: correspondingBooleanVectorSchema(argTypes[0])\n\t}),\n\tnormalImpl: (lhs, rhs) =\u003e cpuNot(cpuEq(lhs, rhs)),\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} != ${rhs})`,\n\tsideEffects: false\n});\nvar cpuLt = (lhs, rhs) =\u003e generalizeBoolFn((a, b) =\u003e a \u003c b, [lhs, rhs]);\nconst lt = dualImpl({\n\tname: \"lt\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: correspondingBooleanVectorSchema(argTypes[0])\n\t}),\n\tnormalImpl: cpuLt,\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} \u003c ${rhs})`,\n\tsideEffects: false\n});\nconst le = dualImpl({\n\tname: \"le\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: correspondingBooleanVectorSchema(argTypes[0])\n\t}),\n\tnormalImpl: (lhs, rhs) =\u003e cpuOr(cpuLt(lhs, rhs), cpuEq(lhs, rhs)),\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} \u003c= ${rhs})`,\n\tsideEffects: false\n});\nconst gt = dualImpl({\n\tname: \"gt\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: correspondingBooleanVectorSchema(argTypes[0])\n\t}),\n\tnormalImpl: (lhs, rhs) =\u003e cpuAnd(cpuNot(cpuLt(lhs, rhs)), cpuNot(cpuEq(lhs, rhs))),\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} \u003e ${rhs})`,\n\tsideEffects: false\n});\nconst ge = dualImpl({\n\tname: \"ge\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: correspondingBooleanVectorSchema(argTypes[0])\n\t}),\n\tnormalImpl: (lhs, rhs) =\u003e cpuNot(cpuLt(lhs, rhs)),\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} \u003e= ${rhs})`,\n\tsideEffects: false\n});\nfunction cpuNot(value) {\n\tif (typeof value === \"boolean\") return !value;\n\tif (!isVecBoolInstance(value)) throw new Error(`'std.not' requires a boolean or boolean vector.`);\n\tswitch (value.length) {\n\t\tcase 2: return vec2b(cpuNot(value.x), cpuNot(value.y));\n\t\tcase 3: return vec3b(cpuNot(value.x), cpuNot(value.y), cpuNot(value.z));\n\t\tcase 4: return vec4b(cpuNot(value.x), cpuNot(value.y), cpuNot(value.z), cpuNot(value.w));\n\t}\n}\nconst not = dualImpl({\n\tname: \"not\",\n\tsignature: (arg) =\u003e {\n\t\tif (!isBool(arg) \u0026\u0026 !isVecBool(arg)) throw new SignatureNotSupportedError([arg], [\n\t\t\tbool,\n\t\t\tvec2b,\n\t\t\tvec3b,\n\t\t\tvec4b\n\t\t]);\n\t\treturn {\n\t\t\targTypes: [arg],\n\t\t\treturnType: arg\n\t\t};\n\t},\n\tnormalImpl: cpuNot,\n\tcodegenImpl: (_ctx, [arg]) =\u003e stitch`!(${arg})`,\n\tsideEffects: false\n});\nvar cpuOr = (lhs, rhs) =\u003e generalizeBoolFn((a, b) =\u003e a || b, [lhs, rhs]);\ndualImpl({\n\tname: \"or\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: argTypes[0]\n\t}),\n\tnormalImpl: cpuOr,\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} | ${rhs})`,\n\tsideEffects: false\n});\nvar cpuAnd = (lhs, rhs) =\u003e cpuNot(cpuOr(cpuNot(lhs), cpuNot(rhs)));\ndualImpl({\n\tname: \"and\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: argTypes[0]\n\t}),\n\tnormalImpl: cpuAnd,\n\tcodegenImpl: (_ctx, [lhs, rhs]) =\u003e stitch`(${lhs} \u0026 ${rhs})`,\n\tsideEffects: false\n});\nvar cpuAll = (value) =\u003e VectorOps.all[value.kind](value);\nconst all = dualImpl({\n\tname: \"all\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: bool\n\t}),\n\tnormalImpl: cpuAll,\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`all(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"any\",\n\tsignature: (...argTypes) =\u003e ({\n\t\targTypes,\n\t\treturnType: bool\n\t}),\n\tnormalImpl: (value) =\u003e !cpuAll(cpuNot(value)),\n\tcodegenImpl: (_ctx, [arg]) =\u003e stitch`any(${arg})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"isCloseTo\",\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: bool\n\t}),\n\tnormalImpl: (lhs, rhs, precision = .01) =\u003e {\n\t\tconst componentResult = generalizeBoolFn((lhs$1, rhs$1) =\u003e Math.abs(lhs$1 - rhs$1) \u003c precision, [lhs, rhs]);\n\t\treturn typeof componentResult === \"boolean\" ? componentResult : all(componentResult);\n\t},\n\tcodegenImpl: (_ctx, [lhs, rhs, precision = snip(.01, f32, \"constant\", false)]) =\u003e {\n\t\tif (isSnippetNumeric(lhs) \u0026\u0026 isSnippetNumeric(rhs)) return stitch`(abs(f32(${lhs}) - f32(${rhs})) \u003c= ${precision})`;\n\t\tif (!isSnippetNumeric(lhs) \u0026\u0026 !isSnippetNumeric(rhs)) return stitch`all(abs(${lhs} - ${rhs}) \u003c= (${lhs} - ${lhs}) + ${precision})`;\n\t\treturn \"false\";\n\t},\n\tsideEffects: false\n});\nfunction cpuSelect(f, t, cond) {\n\tif (typeof cond === \"boolean\") return cpuCopy(cond ? t : f);\n\treturn generalizeFn((f$1, t$1, c) =\u003e c ? t$1 : f$1, [\n\t\tf,\n\t\tt,\n\t\tcond\n\t]);\n}\nconst validSelectBranchTypes = [\n\tf32,\n\tf16,\n\ti32,\n\tu32,\n\tbool,\n\tvec2f,\n\tvec3f,\n\tvec4f,\n\tvec2h,\n\tvec3h,\n\tvec4h,\n\tvec2i,\n\tvec3i,\n\tvec4i,\n\tvec2u,\n\tvec3u,\n\tvec4u,\n\tvec2b,\n\tvec3b,\n\tvec4b\n];\nconst select = dualImpl({\n\tname: \"select\",\n\tsignature: (f, t, cond) =\u003e {\n\t\tconst [uf, ut] = unify([f, t], validSelectBranchTypes) ?? [f, t];\n\t\treturn {\n\t\t\targTypes: [\n\t\t\t\tuf,\n\t\t\t\tut,\n\t\t\t\tcond\n\t\t\t],\n\t\t\treturnType: uf\n\t\t};\n\t},\n\tnormalImpl: cpuSelect,\n\tcodegenImpl: (ctx, [f, t, cond]) =\u003e {\n\t\tconst result = ctx.gen.emitCall(\"select\", [], [\n\t\t\tf,\n\t\t\tt,\n\t\t\tcond\n\t\t]);\n\t\tif (!validSelectBranchTypes.includes(f.dataType) || !validSelectBranchTypes.includes(t.dataType)) throw new Error(`'${result}' is invalid, std.select requires both branches to be either scalars or vectors.`);\n\t\tif (f.dataType !== t.dataType) {\n\t\t\tconst fStr = ctx.resolve(f.dataType);\n\t\t\tconst tStr = ctx.resolve(t.dataType);\n\t\t\tthrow new Error(`'${result}' is invalid, std.select requires both branches to be the same type, got [${fStr.value}, ${tStr.value}].`);\n\t\t}\n\t\treturn result;\n\t},\n\tsideEffects: false\n});\nfunction isAttribute(value) {\n\treturn typeof value?.format === \"string\";\n}\nfunction connectAttributesToShader(shaderInputLayout, attributes) {\n\tconst usedVertexLayouts = [];\n\tif (isData(shaderInputLayout)) {\n\t\tif (!isAttribute(attributes)) throw new Error(\"Shader expected a single attribute, not a record of attributes to be passed in.\");\n\t\tusedVertexLayouts.push(attributes._layout);\n\t\treturn {\n\t\t\tusedVertexLayouts,\n\t\t\tbufferDefinitions: [{\n\t\t\t\tarrayStride: attributes._layout.stride,\n\t\t\t\tstepMode: attributes._layout.stepMode,\n\t\t\t\tattributes: [{\n\t\t\t\t\tformat: attributes.format,\n\t\t\t\t\toffset: attributes.offset,\n\t\t\t\t\tshaderLocation: getCustomLocation(shaderInputLayout) ?? 0\n\t\t\t\t}]\n\t\t\t}]\n\t\t};\n\t}\n\tconst bufferDefinitions = [];\n\tconst layoutToAttribListMap = /* @__PURE__ */ new WeakMap();\n\tlet nextShaderLocation = 0;\n\tfor (const [key, member] of Object.entries(shaderInputLayout)) {\n\t\tif (isBuiltin(member)) continue;\n\t\tconst matchingAttribute = attributes[key];\n\t\tif (!matchingAttribute) throw new Error(`An attribute by the name of '${key}' was not provided to the shader.`);\n\t\tconst layout = matchingAttribute._layout;\n\t\tlet attribList = layoutToAttribListMap.get(layout);\n\t\tif (!attribList) {\n\t\t\tusedVertexLayouts.push(layout);\n\t\t\tattribList = [];\n\t\t\tbufferDefinitions.push({\n\t\t\t\tarrayStride: layout.stride,\n\t\t\t\tstepMode: layout.stepMode,\n\t\t\t\tattributes: attribList\n\t\t\t});\n\t\t\tlayoutToAttribListMap.set(layout, attribList);\n\t\t}\n\t\tnextShaderLocation = getCustomLocation(member) ?? nextShaderLocation;\n\t\tattribList.push({\n\t\t\tformat: matchingAttribute.format,\n\t\t\toffset: matchingAttribute.offset,\n\t\t\tshaderLocation: nextShaderLocation++\n\t\t});\n\t}\n\treturn {\n\t\tusedVertexLayouts,\n\t\tbufferDefinitions\n\t};\n}\nvar identityTypes = [\n\t\"bool\",\n\t\"f32\",\n\t\"f16\",\n\t\"i32\",\n\t\"u32\",\n\t\"vec2f\",\n\t\"vec3f\",\n\t\"vec4f\",\n\t\"vec2h\",\n\t\"vec3h\",\n\t\"vec4h\",\n\t\"vec2i\",\n\t\"vec3i\",\n\t\"vec4i\",\n\t\"vec2u\",\n\t\"vec3u\",\n\t\"vec4u\",\n\t\"vec2\u003cbool\u003e\",\n\t\"vec3\u003cbool\u003e\",\n\t\"vec4\u003cbool\u003e\",\n\t\"mat2x2f\",\n\t\"mat3x3f\",\n\t\"mat4x4f\",\n\t\"texture_external\"\n];\nfunction isIdentityType(data) {\n\treturn identityTypes.includes(data.type);\n}\nfunction resolveStructProperty(ctx, [key, property]) {\n\treturn `  ${getAttributesString(property)}${key}: ${ctx.resolve(property).value},\\n`;\n}\nfunction resolveStruct(ctx, struct$1) {\n\tif (struct$1[$internal].isAbstruct) throw new Error(\"Cannot resolve abstract struct types to WGSL.\");\n\tconst id = ctx.makeUniqueIdentifier(getName(struct$1), \"global\");\n\tctx.addDeclaration(`\\\nstruct ${id} {\n${Object.entries(struct$1.propTypes).map((prop) =\u003e resolveStructProperty(ctx, prop)).join(\"\")}\\\n}`, id);\n\treturn id;\n}\nfunction resolveUnstruct(ctx, unstruct) {\n\tconst id = ctx.makeUniqueIdentifier(getName(unstruct), \"global\");\n\tctx.addDeclaration(`\\\nstruct ${id} {\n${Object.entries(unstruct.propTypes).map((prop) =\u003e isAttribute(prop[1]) ? resolveStructProperty(ctx, [prop[0], formatToWGSLType[prop[1].format]]) : resolveStructProperty(ctx, prop)).join(\"\")}\n}`, id);\n\treturn id;\n}\nfunction resolveArray(ctx, array) {\n\tconst element = ctx.resolve(array.elementType).value;\n\treturn array.elementCount === 0 ? `array\u003c${element}\u003e` : `array\u003c${element}, ${array.elementCount}\u003e`;\n}\nfunction resolveDisarray(ctx, disarray) {\n\tconst element = ctx.resolve(isAttribute(disarray.elementType) ? formatToWGSLType[disarray.elementType.format] : disarray.elementType).value;\n\treturn disarray.elementCount === 0 ? `array\u003c${element}\u003e` : `array\u003c${element}, ${disarray.elementCount}\u003e`;\n}\nfunction resolveData(ctx, data) {\n\tif (isLooseData(data)) {\n\t\tif (data.type === \"unstruct\") return resolveUnstruct(ctx, data);\n\t\tif (data.type === \"disarray\") return resolveDisarray(ctx, data);\n\t\tif (data.type === \"loose-decorated\") return ctx.resolve(isAttribute(data.inner) ? formatToWGSLType[data.inner.format] : data.inner).value;\n\t\treturn ctx.resolve(formatToWGSLType[data.type]).value;\n\t}\n\tif (isIdentityType(data)) return data.type;\n\tif (data.type === \"struct\") return resolveStruct(ctx, data);\n\tif (data.type === \"array\") return resolveArray(ctx, data);\n\tif (data.type === \"atomic\") return `atomic\u003c${resolveData(ctx, data.inner)}\u003e`;\n\tif (data.type === \"decorated\") return ctx.resolve(data.inner).value;\n\tif (data.type === \"ptr\") {\n\t\tif (data.addressSpace === \"storage\") return `ptr\u003cstorage, ${ctx.resolve(data.inner).value}, ${data.access === \"read-write\" ? \"read_write\" : data.access}\u003e`;\n\t\treturn `ptr\u003c${data.addressSpace}, ${ctx.resolve(data.inner).value}\u003e`;\n\t}\n\tif (data.type === \"abstractInt\" || data.type === \"abstractFloat\" || data.type === \"void\" || data.type === \"u16\") throw new Error(`${data.type} has no representation in WGSL`);\n\tif (isWgslStorageTexture(data)) return `${data.type}\u003c${data.format}, ${accessModeMap[data.access]}\u003e`;\n\tif (isWgslTexture(data)) return data.type.startsWith(\"texture_depth\") ? data.type : `${data.type}\u003c${data.sampleType.type}\u003e`;\n\tif (isWgslComparisonSampler(data) || isWgslSampler(data)) return data.type;\n\tassertExhaustive$2(data, \"resolveData\");\n}\nvar UnrollableIterable = class {\n\t[$internal] = true;\n\tsnippet;\n\tconstructor(snippet) {\n\t\tthis.snippet = snippet;\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.resolveSnippet(this.snippet);\n\t}\n};\nconst unroll = (() =\u003e {\n\tfunction jsImpl(iterable) {\n\t\treturn iterable;\n\t}\n\tconst impl = jsImpl;\n\tsetName(impl, \"unroll\");\n\timpl.toString = () =\u003e \"unroll\";\n\timpl[$internal] = true;\n\timpl[$gpuCallable] = { call(_ctx, [value]) {\n\t\treturn withValue(new UnrollableIterable(value), value);\n\t} };\n\treturn impl;\n})();\nconst mathToStd = new Map([\n\t[Math.abs, abs],\n\t[Math.acos, acos],\n\t[Math.acosh, acosh],\n\t[Math.asin, asin],\n\t[Math.asinh, asinh],\n\t[Math.atan, atan],\n\t[Math.atan2, atan2],\n\t[Math.atanh, atanh],\n\t[Math.ceil, ceil],\n\t[Math.cos, cos],\n\t[Math.cosh, cosh],\n\t[Math.exp, exp],\n\t[Math.floor, floor],\n\t[Math.fround, f32],\n\t[Math.clz32, countLeadingZeros],\n\t[Math.trunc, trunc],\n\t[Math.log, log],\n\t[Math.log2, log2],\n\t[Math.pow, pow],\n\t[Math.sign, sign],\n\t[Math.sin, sin],\n\t[Math.sinh, sinh],\n\t[Math.sqrt, sqrt],\n\t[Math.tan, tan],\n\t[Math.tanh, tanh],\n\t[Math.max, max],\n\t[Math.min, min]\n]);\nconst supportedLogOps = () =\u003e [\n\tconsole.log,\n\tconsole.debug,\n\tconsole.info,\n\tconsole.warn,\n\tconsole.error,\n\tconsole.clear\n];\nvar sizeOfPointedToArray = (dataType) =\u003e isPtr(dataType) \u0026\u0026 isWgslArray(dataType.inner) ? dataType.inner.elementCount : 0;\nconst arrayLength = dualImpl({\n\tname: \"arrayLength\",\n\tsignature: (arg) =\u003e {\n\t\tconst ptrArg = isPtr(arg) ? arg : ptrFn(arg);\n\t\treturn {\n\t\t\targTypes: [ptrArg],\n\t\t\treturnType: sizeOfPointedToArray(ptrArg) \u003e 0 ? abstractInt : u32\n\t\t};\n\t},\n\tnormalImpl: (a) =\u003e isRef(a) ? a.$.length : a.length,\n\tcodegenImpl(ctx, [a]) {\n\t\tconst length$1 = sizeOfPointedToArray(a.dataType);\n\t\treturn length$1 \u003e 0 ? `${length$1}` : ctx.gen.emitCall(\"arrayLength\", [], [a]);\n\t},\n\tsideEffects: false\n});\ncomptime((start, end, step$1 = 1) =\u003e {\n\tif (end === void 0) {\n\t\tend = start;\n\t\tstart = 0;\n\t}\n\tif (!Number.isInteger(start)) throw new Error(`'start' must be an integer, got ${start}`);\n\tif (!Number.isInteger(end)) throw new Error(`'end' must be an integer, got ${end}`);\n\tif (!Number.isInteger(step$1) || step$1 === 0) throw new Error(`'step' must be a non-zero integer, got ${step$1}`);\n\tconst result = [];\n\tresult.start = start;\n\tresult.end = end;\n\tresult.step = step$1;\n\tif (Math.sign(step$1) !== Math.sign(end - start)) return result;\n\tif (step$1 \u003e 0) for (let i = start; i \u003c end; i += step$1) result.push(i);\n\tif (step$1 \u003c 0) for (let i = start; i \u003e end; i += step$1) result.push(i);\n\treturn result;\n});\nfunction isTgpuRange(value) {\n\treturn Array.isArray(value) \u0026\u0026 \"start\" in value \u0026\u0026 \"end\" in value \u0026\u0026 \"step\" in value;\n}\nfunction getLoopVarKind(elementSnippet) {\n\treturn elementSnippet.origin === \"constant-immutable-def\" ? \"const\" : \"let\";\n}\nfunction getElementSnippet(iterableSnippet, index) {\n\tconst elementSnippet = accessIndex(iterableSnippet, index);\n\tif (!elementSnippet) throw new WgslTypeError(\"`for ... of ...` loops only support array or vector iterables\");\n\treturn elementSnippet;\n}\nfunction getElementType(elementSnippet, iterableSnippet) {\n\tlet elementType = elementSnippet.dataType;\n\tif (elementType === UnknownData) throw new WgslTypeError(stitch`The elements in iterable ${iterableSnippet} are of unknown type`);\n\tif (isNaturallyEphemeral(elementSnippet.dataType) || elementSnippet.origin === \"runtime\" || elementSnippet.origin === \"constant\" || elementSnippet.origin === \"constant-immutable-def\" || elementSnippet.origin === \"runtime-immutable-def\") return elementType;\n\tif (!isPtr(elementType)) {\n\t\tconst ptrType = createPtrFromOrigin(elementSnippet.origin, concretize(elementType));\n\t\tinvariant(ptrType !== void 0, `Creating pointer type from origin ${elementSnippet.origin}`);\n\t\telementType = ptrType;\n\t}\n\treturn implicitFrom(elementType);\n}\nfunction getRangeSnippets(ctx, iterableSnippet, unroll$1 = false) {\n\tconst { value, dataType } = iterableSnippet;\n\tif (isTgpuRange(value)) {\n\t\tconst { start, end, step: step$1 } = value;\n\t\tconst dataType$1 = [\n\t\t\tstart,\n\t\t\tend,\n\t\t\tstep$1\n\t\t].every((v) =\u003e v \u003e= 0) ? u32 : i32;\n\t\treturn {\n\t\t\tstart: snip(start, dataType$1, \"constant\", false),\n\t\t\tend: snip(end, dataType$1, \"constant\", false),\n\t\t\tstep: snip(step$1, dataType$1, \"constant\", false),\n\t\t\tcomparison: step$1 \u003c 0 ? \"\u003e\" : \"\u003c\"\n\t\t};\n\t}\n\tif (!unroll$1 \u0026\u0026 !isAlias(iterableSnippet)) 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-----`);\n\tconst defaults = {\n\t\tstart: snip(0, u32, \"constant\", false),\n\t\tstep: snip(1, u32, \"constant\", false),\n\t\tcomparison: \"\u003c\"\n\t};\n\tif (isWgslArray(dataType)) return {\n\t\t...defaults,\n\t\tend: dataType.elementCount \u003e 0 ? snip(dataType.elementCount, u32, \"constant\", false) : arrayLength[$gpuCallable].call(ctx, [iterableSnippet])\n\t};\n\tif (isVec(dataType)) return {\n\t\t...defaults,\n\t\tend: snip(dataType.componentCount, u32, \"constant\", false)\n\t};\n\tif (unroll$1) {\n\t\tif (Array.isArray(value)) return {\n\t\t\t...defaults,\n\t\t\tend: snip(value.length, u32, \"constant\", false)\n\t\t};\n\t\tif (value instanceof ArrayExpression) return {\n\t\t\t...defaults,\n\t\t\tend: snip(value.elements.length, u32, \"constant\", false)\n\t\t};\n\t}\n\tthrow new WgslTypeError(\"`for ... of ...` loops only support array or vector iterables\");\n}\nvar { NodeTypeCatalog: NODE$1 } = tinyest_exports;\nfunction stringifyNode(node) {\n\tif (isExpression(node)) return stringifyExpression(node, \"\");\n\treturn stringifyStatement(node, \"\");\n}\nfunction stringifyStatement(node, ident) {\n\tif (isExpression(node)) return `${ident}${stringifyExpression(node, ident)};`;\n\tif (node[0] === NODE$1.block) return `{\\n${node[1].map((n) =\u003e stringifyStatement(n, ident + \"  \")).join(\"\\n\")}\\n${ident}}`;\n\tif (node[0] === NODE$1.return) return `${ident}return${node[1] === void 0 ? \"\" : ` ${stringifyExpression(node[1], \"\")}`};`;\n\tif (node[0] === NODE$1.if) {\n\t\tconst base = `${ident}if (${stringifyExpression(node[1], ident)}) ${stringifyStatement(node[2], ident)}`;\n\t\tif (node[3] !== void 0) return `${base} else ${stringifyStatement(node[3], ident)}`;\n\t\treturn base;\n\t}\n\tif (node[0] === NODE$1.let) {\n\t\tif (node[2] !== void 0) return `${ident}let ${node[1]} = ${stringifyExpression(node[2], ident)};`;\n\t\treturn `${ident}let ${node[1]};`;\n\t}\n\tif (node[0] === NODE$1.const) {\n\t\tif (node[2] !== void 0) return `${ident}const ${node[1]} = ${stringifyExpression(node[2], ident)};`;\n\t\treturn `${ident}const ${node[1]};`;\n\t}\n\tif (node[0] === NODE$1.for) {\n\t\tconst init$1 = node[1] ? stringifyStatement(node[1], \"\") : \";\";\n\t\tconst cond = node[2] ? stringifyExpression(node[2], ident) : \"\";\n\t\tconst update = node[3] ? stringifyStatement(node[3], \"\") : \"\";\n\t\tconst body = stringifyStatement(node[4], ident);\n\t\treturn `${ident}for (${init$1} ${cond}; ${update.slice(0, -1)}) ${body}`;\n\t}\n\tif (node[0] === NODE$1.while) return `${ident}while (${stringifyExpression(node[1], ident)}) ${stringifyStatement(node[2], ident)}`;\n\tif (node[0] === NODE$1.continue) return `${ident}continue;`;\n\tif (node[0] === NODE$1.break) return `${ident}break;`;\n\tif (node[0] === NODE$1.forOf) return `${ident}for (${node[1][0] === NODE$1.const ? \"const\" : \"let\"} ${node[1][1]} of ${stringifyExpression(node[2], ident)}) ${stringifyStatement(node[3], ident)}`;\n\tassertExhaustive$1(node);\n}\nfunction stringifyExpression(node, ident) {\n\tif (typeof node === \"string\") return node;\n\tif (typeof node === \"boolean\") return `${node}`;\n\tif (node[0] === NODE$1.numericLiteral) return node[1];\n\tif (node[0] === NODE$1.stringLiteral) return JSON.stringify(node[1]);\n\tif (node[0] === NODE$1.arrayExpr) return `[${node[1].map((n) =\u003e stringifyExpression(n, ident)).join(\", \")}]`;\n\tif (node[0] === NODE$1.binaryExpr) return `${wrapIfComplex(node[1], ident)} ${node[2]} ${wrapIfComplex(node[3], ident)}`;\n\tif (node[0] === NODE$1.assignmentExpr) return `${stringifyExpression(node[1], ident)} ${node[2]} ${stringifyExpression(node[3], ident)}`;\n\tif (node[0] === NODE$1.logicalExpr) return `${wrapIfComplex(node[1], ident)} ${node[2]} ${wrapIfComplex(node[3], ident)}`;\n\tif (node[0] === NODE$1.unaryExpr) {\n\t\tconst sep = node[1].length \u003e 1 ? \" \" : \"\";\n\t\treturn `${node[1]}${sep}${wrapIfComplex(node[2], ident)}`;\n\t}\n\tif (node[0] === NODE$1.call) return `${wrapIfComplex(node[1], ident)}(${node[2].map((n) =\u003e stringifyExpression(n, ident)).join(\", \")})`;\n\tif (node[0] === NODE$1.memberAccess) {\n\t\tif (Array.isArray(node[1]) \u0026\u0026 node[1][0] === NODE$1.numericLiteral) return `(${stringifyExpression(node[1], ident)}).${node[2]}`;\n\t\treturn `${wrapIfComplex(node[1], ident)}.${node[2]}`;\n\t}\n\tif (node[0] === NODE$1.indexAccess) return `${wrapIfComplex(node[1], ident)}[${stringifyExpression(node[2], ident)}]`;\n\tif (node[0] === NODE$1.preUpdate) return `${node[1]}${wrapIfComplex(node[2], ident)}`;\n\tif (node[0] === NODE$1.postUpdate) return `${wrapIfComplex(node[2], ident)}${node[1]}`;\n\tif (node[0] === NODE$1.objectExpr) return `{ ${Object.entries(node[1]).map(([key, val]) =\u003e `${key}: ${stringifyExpression(val, ident)}`).join(\", \")} }`;\n\tif (node[0] === NODE$1.conditionalExpr) return `${wrapIfComplex(node[1], ident)} ? ${wrapIfComplex(node[2], ident)} : ${wrapIfComplex(node[3], ident)}`;\n\tassertExhaustive$1(node);\n}\nfunction assertExhaustive$1(value) {\n\tthrow new Error(`'${JSON.stringify(value)}' was not handled by the stringify function.`);\n}\nfunction isExpression(node) {\n\tif (typeof node === \"string\" || typeof node === \"boolean\" || node[0] === NODE$1.numericLiteral || node[0] === NODE$1.stringLiteral || node[0] === NODE$1.arrayExpr || node[0] === NODE$1.binaryExpr || node[0] === NODE$1.assignmentExpr || node[0] === NODE$1.logicalExpr || node[0] === NODE$1.unaryExpr || node[0] === NODE$1.call || node[0] === NODE$1.memberAccess || node[0] === NODE$1.indexAccess || node[0] === NODE$1.preUpdate || node[0] === NODE$1.postUpdate || node[0] === NODE$1.objectExpr || node[0] === NODE$1.conditionalExpr) return true;\n\treturn false;\n}\nvar SIMPLE_NODES = [\n\tNODE$1.memberAccess,\n\tNODE$1.indexAccess,\n\tNODE$1.call,\n\tNODE$1.arrayExpr,\n\tNODE$1.stringLiteral,\n\tNODE$1.numericLiteral\n];\nfunction wrapIfComplex(node, ident) {\n\tconst s = stringifyExpression(node, ident);\n\tif (typeof node === \"string\" || typeof node === \"boolean\") return s;\n\tif (SIMPLE_NODES.includes(node[0])) return s;\n\treturn `(${s})`;\n}\nvar { NodeTypeCatalog: NODE } = tinyest_exports;\nvar parenthesizedOps = [\n\t\"==\",\n\t\"!=\",\n\t\"===\",\n\t\"!==\",\n\t\"\u003c\",\n\t\"\u003c=\",\n\t\"\u003e\",\n\t\"\u003e=\",\n\t\"\u003c\u003c\",\n\t\"\u003e\u003e\",\n\t\"\u003e\u003e\u003e\",\n\t\"+\",\n\t\"-\",\n\t\"*\",\n\t\"/\",\n\t\"%\",\n\t\"|\",\n\t\"^\",\n\t\"\u0026\"\n];\nvar binaryLogicalOps = [\n\t\"\u0026\u0026\",\n\t\"||\",\n\t\"==\",\n\t\"!=\",\n\t\"===\",\n\t\"!==\",\n\t\"\u003c\",\n\t\"\u003c=\",\n\t\"\u003e\",\n\t\"\u003e=\"\n];\nvar binaryRelationalOpToStdMap = {\n\t\"===\": eq.toString(),\n\t\"!==\": ne.toString(),\n\t\"\u003c\": lt.toString(),\n\t\"\u003c=\": le.toString(),\n\t\"\u003e\": gt.toString(),\n\t\"\u003e=\": ge.toString()\n};\nvar bitShiftOps = [\n\t\"\u003c\u003c\",\n\t\"\u003e\u003e\",\n\t\"\u003c\u003c=\",\n\t\"\u003e\u003e=\",\n\t\"\u003e\u003e\u003e\",\n\t\"\u003e\u003e\u003e=\"\n];\nvar OP_MAP = {\n\t\"===\": \"==\",\n\t\"!==\": \"!=\",\n\t\"\u003e\u003e\u003e\": \"\u003e\u003e\",\n\tget in() {\n\t\tthrow new Error(\"The `in` operator is unsupported in TypeGPU functions.\");\n\t},\n\tget instanceof() {\n\t\tthrow new Error(\"The `instanceof` operator is unsupported in TypeGPU functions.\");\n\t},\n\tget \"|\u003e\"() {\n\t\tthrow new Error(\"The `|\u003e` operator is unsupported in TypeGPU functions.\");\n\t},\n\tget \"??\"() {\n\t\tthrow new Error(\"The `??` operator is unsupported in TypeGPU functions.\");\n\t},\n\t\"\u003e\u003e\u003e=\": \"\u003e\u003e=\",\n\tget \"**=\"() {\n\t\tthrow new Error(\"The `**=` operator is unsupported in TypeGPU functions.\");\n\t},\n\tget \"??=\"() {\n\t\tthrow new Error(\"The `??=` operator is unsupported in TypeGPU functions.\");\n\t},\n\tget \"\u0026\u0026=\"() {\n\t\tthrow new Error(\"The `\u0026\u0026=` operator is unsupported in TypeGPU functions.\");\n\t},\n\tget \"||=\"() {\n\t\tthrow new Error(\"The `||=` operator is unsupported in TypeGPU functions.\");\n\t}\n};\nfunction operatorToType(lhs, op, rhs) {\n\tif (!rhs) {\n\t\tif (op === \"!\") return bool;\n\t\treturn lhs;\n\t}\n\tif (binaryLogicalOps.includes(op)) return bool;\n\tif (op === \"=\") return rhs;\n\treturn lhs;\n}\nvar unaryOpCodeToCodegen = {\n\t\"-\": neg[$gpuCallable].call.bind(neg),\n\tvoid: () =\u003e snip(void 0, Void, \"constant\", false),\n\t\"!\": (ctx, [argExpr]) =\u003e {\n\t\tif (argExpr === void 0) throw new Error(\"The unary operator `!` expects 1 argument, but 0 were provided.\");\n\t\tif (isKnownAtComptime(argExpr)) return snip(!argExpr.value, bool, \"constant\", false);\n\t\tconst argStr = ctx.resolveSnippet(argExpr).value;\n\t\tif (!isBool(argExpr.dataType)) throw new WgslTypeError(`Unary operator ! requires boolean operand. Got ${String(argExpr.dataType)}.${isVecBool(argExpr.dataType) ? ` For component-wise negation, use 'std.${not.toString()}'.` : \"\"}`);\n\t\treturn snip(`!(${argStr})`, bool, \"runtime\", argExpr.possibleSideEffects);\n\t}\n};\nvar binaryOpCodeToCodegen = {\n\t\"+\": add[$gpuCallable].call.bind(add),\n\t\"-\": sub[$gpuCallable].call.bind(sub),\n\t\"*\": mul[$gpuCallable].call.bind(mul),\n\t\"/\": div[$gpuCallable].call.bind(div),\n\t\"**\": pow[$gpuCallable].call.bind(pow)\n};\nvar usageToVarTemplateMap = {\n\tprivate: \"private\",\n\tworkgroup: \"workgroup\",\n\tuniform: \"uniform\",\n\tmutable: \"storage, read_write\",\n\treadonly: \"storage, read\"\n};\nvar functionInitialBlockDepth = 2;\nvar WgslGenerator = class WgslGenerator {\n\t#ctx = void 0;\n\t#unrollingChain = [];\n\tstatic #_ = WgslGenerator.prototype.languageKey = \"wgsl\";\n\tinitGenerator(ctx) {\n\t\tif (this.#ctx !== void 0) throw new Error(`Cannot initialize shader generators twice. Create one generator per resolution.`);\n\t\tthis.#ctx = ctx;\n\t}\n\tget ctx() {\n\t\tif (!this.#ctx) throw new Error(\"WGSL Generator has not yet been initialized. Please call initialize(ctx) before using the generator.\");\n\t\treturn this.#ctx;\n\t}\n\t_block([_, statementNodes], allowInlining, externalMap) {\n\t\tthis.ctx.pushBlockScope();\n\t\ttry {\n\t\t\tif (externalMap) {\n\t\t\t\tconst externals = Object.fromEntries(Object.entries(externalMap).map(([id, value]) =\u003e [id, coerceToSnippet(value)]));\n\t\t\t\tthis.ctx.setBlockExternals(externals);\n\t\t\t}\n\t\t\tlet body = \"\";\n\t\t\tlet definesInNearestScope = false;\n\t\t\tlet endsWithControlFlow;\n\t\t\tthis.ctx.indent();\n\t\t\tfor (const statementNode of statementNodes) {\n\t\t\t\tconst statement = this._statement(statementNode);\n\t\t\t\tif (statement.code.length \u003e 0) body += `${statement.code}\\n`;\n\t\t\t\tdefinesInNearestScope ||= statement.definesInNearestScope ?? false;\n\t\t\t\tif (statement.endsWithControlFlow !== void 0) {\n\t\t\t\t\tendsWithControlFlow = statement.endsWithControlFlow;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.ctx.dedent();\n\t\t\tconst willInline = allowInlining \u0026\u0026 !definesInNearestScope;\n\t\t\tif (this.ctx.blockDepth === functionInitialBlockDepth) body = body.replace(/[ ]*return\\s*;\\s*$/u, \"\");\n\t\t\tif (body === \"\") return {\n\t\t\t\tcode: \"\",\n\t\t\t\tendsWithControlFlow,\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t\tif (willInline) return {\n\t\t\t\tcode: this.ctx.getDedented(body.trim()),\n\t\t\t\tendsWithControlFlow,\n\t\t\t\tdefinesInNearestScope\n\t\t\t};\n\t\t\treturn {\n\t\t\t\tcode: `{\\n${body}${this.ctx.pre}}`,\n\t\t\t\tendsWithControlFlow,\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t} finally {\n\t\t\tthis.ctx.popBlockScope();\n\t\t}\n\t}\n\t_blockStatement(block, externalMap) {\n\t\tconst { code,...properties } = this._block(block, true, externalMap);\n\t\tif (code === \"\") return {\n\t\t\t...properties,\n\t\t\tcode: \"\"\n\t\t};\n\t\treturn {\n\t\t\t...properties,\n\t\t\tcode: `${this.ctx.pre}${code}`\n\t\t};\n\t}\n\trefVariable(id, dataType) {\n\t\tconst varName = this.ctx.makeUniqueIdentifier(id, \"block\");\n\t\tconst ptrType = ptrFn(dataType);\n\t\tconst snippet = snip(new RefOperator(snip(varName, dataType, \"function\", false), ptrType), ptrType, \"function\", false);\n\t\tthis.ctx.defineVariable(id, snippet);\n\t\treturn varName;\n\t}\n\t_emitVarDecl(keyword, name, _dataType, rhsStr) {\n\t\treturn `${this.ctx.pre}${keyword} ${name} = ${rhsStr};`;\n\t}\n\t_identifier(id) {\n\t\tif (!id) throw new Error(\"Cannot resolve an empty identifier\");\n\t\tif (id === \"undefined\") return snip(void 0, Void, \"constant\", false);\n\t\tconst res = this.ctx.getById(id);\n\t\tif (!res) throw new Error(`Identifier ${id} not found`);\n\t\treturn res;\n\t}\n\t_callShellless(callee, args) {\n\t\tconst isGeneric = isGenericFn(callee);\n\t\tconst slotPairs = isGeneric ? callee[$providing]?.pairs ?? [] : [];\n\t\tconst callback = isGeneric ? callee[$internal].inner : callee;\n\t\treturn this.ctx.withRenamed(callback, getName(callee), () =\u003e this.ctx.withSlots(slotPairs, () =\u003e {\n\t\t\tconst shellless = this.ctx.shelllessRepo.get(callback, args);\n\t\t\tif (!shellless) return;\n\t\t\tconst converted = args.map((s, idx) =\u003e {\n\t\t\t\tconst argType = shellless.argTypes[idx];\n\t\t\t\treturn tryConvertSnippet(this.ctx, s, argType, false);\n\t\t\t});\n\t\t\treturn this.ctx.withResetIndentLevel(() =\u003e {\n\t\t\t\tconst snippet = this.ctx.resolve(shellless);\n\t\t\t\treturn snip(stitch`${snippet.value}(${converted})`, snippet.dataType, \"runtime\");\n\t\t\t});\n\t\t}));\n\t}\n\t_typedExpression(expression, expectedType) {\n\t\tconst prevExpectedType = this.ctx.expectedType;\n\t\tthis.ctx.expectedType = expectedType;\n\t\ttry {\n\t\t\tconst result = this._expression(expression);\n\t\t\tif (expectedType instanceof AutoStruct) return result;\n\t\t\treturn tryConvertSnippet(this.ctx, result, expectedType);\n\t\t} finally {\n\t\t\tthis.ctx.expectedType = prevExpectedType;\n\t\t}\n\t}\n\t_expression(expression) {\n\t\tif (typeof expression === \"string\") return this._identifier(expression);\n\t\tif (typeof expression === \"boolean\") return snip(expression, bool, \"constant\", false);\n\t\tif (expression[0] === NODE.logicalExpr) {\n\t\t\tconst [_, lhs, op, rhs] = expression;\n\t\t\tconst lhsExpr = this._expression(lhs);\n\t\t\tif (isKnownAtComptime(lhsExpr)) {\n\t\t\t\tconst castToBool = isBool(this.ctx.expectedType);\n\t\t\t\tif (!(op === \"\u0026\u0026\" ? lhsExpr.value : !lhsExpr.value)) return castToBool ? snip(op === \"||\", bool, \"constant\", false) : coerceToSnippet(lhsExpr.value);\n\t\t\t\tconst rhsExpr$1 = this._expression(rhs);\n\t\t\t\tif (isKnownAtComptime(rhsExpr$1)) {\n\t\t\t\t\tconst rhsSnippet = coerceToSnippet(rhsExpr$1.value);\n\t\t\t\t\treturn castToBool ? tryConvertSnippet(this.ctx, rhsSnippet, bool, false) : rhsSnippet;\n\t\t\t\t}\n\t\t\t\tif (rhsExpr$1.dataType === UnknownData) throw new WgslTypeError(`Right-hand side of '${op}' is of unknown type`);\n\t\t\t\treturn castToBool ? tryConvertSnippet(this.ctx, rhsExpr$1, bool, false) : rhsExpr$1;\n\t\t\t}\n\t\t\tconst rhsExpr = this._expression(rhs);\n\t\t\tif (lhsExpr.dataType === UnknownData) throw new WgslTypeError(`Left-hand side of '${op}' is of unknown type`);\n\t\t\tif (!isKnownAtComptime(rhsExpr) \u0026\u0026 rhsExpr.dataType === UnknownData) throw new WgslTypeError(`Right-hand side of '${op}' is of unknown type`);\n\t\t\tif (!isBool(lhsExpr.dataType) || !isBool(rhsExpr.dataType)) throw new WgslTypeError(`Logical expression '${op}' requires boolean operands. Got '${String(lhsExpr.dataType)}' and '${String(rhsExpr.dataType)}'.`);\n\t\t\tconst lhsStr = this.ctx.resolveSnippet(lhsExpr).value;\n\t\t\tconst rhsStr = this.ctx.resolveSnippet(rhsExpr).value;\n\t\t\treturn snip(`(${lhsStr} ${op} ${rhsStr})`, bool, \"runtime\", lhsExpr.possibleSideEffects || rhsExpr.possibleSideEffects);\n\t\t}\n\t\tif (expression[0] === NODE.binaryExpr || expression[0] === NODE.assignmentExpr) {\n\t\t\tconst [exprType, lhs, op, rhs] = expression;\n\t\t\tconst lhsExpr = this._expression(lhs);\n\t\t\tconst rhsExpr = this._expression(rhs);\n\t\t\tif (rhsExpr.value instanceof RefOperator) throw new WgslTypeError(stitch`Cannot assign a ref to an existing variable '${stringifyNode(lhs)}', define a new variable instead.`);\n\t\t\tif (op === \"==\") throw new Error(\"Please use the === operator instead of ==\");\n\t\t\tif (op === \"!=\") throw new Error(\"Please use the !== operator instead of !=\");\n\t\t\tconst stdBinaryRelationalOp = binaryRelationalOpToStdMap[op];\n\t\t\tif (stdBinaryRelationalOp \u0026\u0026 isKnownAtComptime(lhsExpr) \u0026\u0026 isKnownAtComptime(rhsExpr)) {\n\t\t\t\tconst left = lhsExpr.value;\n\t\t\t\tconst right = rhsExpr.value;\n\t\t\t\tswitch (op) {\n\t\t\t\t\tcase \"===\": return snip(left === right, bool, \"constant\", false);\n\t\t\t\t\tcase \"!==\": return snip(left !== right, bool, \"constant\", false);\n\t\t\t\t}\n\t\t\t\tif (typeof left !== \"number\" || typeof right !== \"number\") throw new WgslTypeError(`Comparison '${op}' requires numeric operands.${isVec(lhsExpr.dataType) \u0026\u0026 isVec(rhsExpr.dataType) ? ` For component-wise comparison, use 'std.${stdBinaryRelationalOp}'.` : \"\"}`);\n\t\t\t\tswitch (op) {\n\t\t\t\t\tcase \"\u003c\": return snip(left \u003c right, bool, \"constant\", false);\n\t\t\t\t\tcase \"\u003c=\": return snip(left \u003c= right, bool, \"constant\", false);\n\t\t\t\t\tcase \"\u003e\": return snip(left \u003e right, bool, \"constant\", false);\n\t\t\t\t\tcase \"\u003e=\": return snip(left \u003e= right, bool, \"constant\", false);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (lhsExpr.dataType === UnknownData) throw new WgslTypeError(`Left-hand side of '${op}' is of unknown type`);\n\t\t\tif (rhsExpr.dataType === UnknownData) throw new WgslTypeError(`Right-hand side of '${op}' is of unknown type`);\n\t\t\tconst codegen = binaryOpCodeToCodegen[op];\n\t\t\tif (codegen) return codegen(this.ctx, [lhsExpr, rhsExpr]);\n\t\t\tlet convLhs;\n\t\t\tlet convRhs;\n\t\t\tif (bitShiftOps.includes(op)) {\n\t\t\t\tconst lhsDataType = lhsExpr.dataType;\n\t\t\t\tif (!isInteger(lhsDataType) \u0026\u0026 !isIntegerVec(lhsDataType)) throw new WgslTypeError(`Expression: ${stringifyNode(expression)}\\nLeft-hand side of '${op}' must be an integer or vector of integers.\\nGot ${this.ctx.resolve(lhsDataType).value}.`);\n\t\t\t\tconst lhsPrimitive = isVec(lhsDataType) ? lhsDataType.primitive : lhsDataType;\n\t\t\t\tif ([\"\u003e\u003e\u003e\", \"\u003e\u003e\u003e=\"].includes(op) \u0026\u0026 lhsPrimitive.type !== \"u32\") throw new WgslTypeError(`Expression: ${stringifyNode(expression)}\\nLeft-hand side of '${op}' must be an unsigned integer or vector of unsigned integers.\\nGot ${this.ctx.resolve(lhsDataType).value}.\\nUse ${op.slice(1)} instead.`);\n\t\t\t\tif ([\"\u003e\u003e\", \"\u003e\u003e=\"].includes(op) \u0026\u0026 lhsPrimitive.type === \"u32\") logger.warn(\"deprecated\", `\\nExpression: ${stringifyNode(expression)}\\nUsing u32 or vecN\u003cu32\u003e as left-hand side of ${op} is deprecated.\\nUse \u003e${op} instead.`);\n\t\t\t\tlet rhsTarget;\n\t\t\t\tif (isVec(lhsDataType)) {\n\t\t\t\t\tconst cc = lhsDataType.componentCount;\n\t\t\t\t\trhsTarget = cc === 2 ? vec2u : cc === 3 ? vec3u : vec4u;\n\t\t\t\t} else rhsTarget = u32;\n\t\t\t\tconvRhs = tryConvertSnippet(this.ctx, rhsExpr, rhsTarget, false);\n\t\t\t\tconvLhs = lhsExpr;\n\t\t\t} else {\n\t\t\t\tconst forcedType = exprType === NODE.assignmentExpr ? [lhsExpr.dataType] : void 0;\n\t\t\t\t[convLhs, convRhs] = convertToCommonType(this.ctx, [lhsExpr, rhsExpr], forcedType) ?? [lhsExpr, rhsExpr];\n\t\t\t}\n\t\t\tconst type = operatorToType(convLhs.dataType, op, convRhs.dataType);\n\t\t\tif (exprType === NODE.assignmentExpr) {\n\t\t\t\tvalidateSnippetMutation(convLhs, expression);\n\t\t\t\tthis.tryMarkModified(lhs);\n\t\t\t\tif (op === \"=\" \u0026\u0026 isAlias(rhsExpr) \u0026\u0026 !isNaturallyEphemeral(rhsExpr.dataType)) throw new WgslTypeError(`'${stringifyNode(expression)}' is invalid, because references cannot be assigned.\\n-----\\nTry '${stringifyNode(lhs)} = ${this.ctx.resolve(unptr(rhsExpr.dataType)).value}(${stringifyNode(rhs)})' to copy the value instead.\\n-----`);\n\t\t\t}\n\t\t\tif (stdBinaryRelationalOp) {\n\t\t\t\tconst equalityCheck = [\"===\", \"!==\"].includes(op);\n\t\t\t\tif (!(isNumericSchema(convLhs.dataType) \u0026\u0026 isNumericSchema(convRhs.dataType) || equalityCheck \u0026\u0026 isBool(convLhs.dataType) \u0026\u0026 isBool(convRhs.dataType))) {\n\t\t\t\t\tconst bothVectors = isVec(convLhs.dataType) \u0026\u0026 isVec(convRhs.dataType);\n\t\t\t\t\tthrow new WgslTypeError(`Comparison '${op}' requires numeric${equalityCheck ? \" or boolean\" : \"\"} operands. Got '${String(convLhs.dataType)}' and '${String(convRhs.dataType)}'.${bothVectors ? ` For component-wise comparison, use 'std.${stdBinaryRelationalOp}'.` : \"\"}`);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn snip(this.emitBinaryOp(convLhs, OP_MAP[op] ?? op, convRhs), type, \"runtime\", exprType === NODE.assignmentExpr || lhsExpr.possibleSideEffects || rhsExpr.possibleSideEffects);\n\t\t}\n\t\tif (expression[0] === NODE.postUpdate) throw new Error(`'${stringifyNode(expression)}' is invalid because update is only allowed as a statement.`);\n\t\tif (expression[0] === NODE.unaryExpr) {\n\t\t\tconst [_, op, arg] = expression;\n\t\t\tconst argExpr = this._expression(arg);\n\t\t\tconst codegen = unaryOpCodeToCodegen[op];\n\t\t\tif (codegen) return codegen(this.ctx, [argExpr]);\n\t\t\tconst argStr = this.ctx.resolveSnippet(argExpr).value;\n\t\t\tconst type = operatorToType(argExpr.dataType, op);\n\t\t\treturn snip(`${op}${argStr}`, type, \"runtime\", argExpr.possibleSideEffects);\n\t\t}\n\t\tif (expression[0] === NODE.memberAccess) {\n\t\t\tconst [_, targetNode, property] = expression;\n\t\t\tconst accessed = accessProp(this._expression(targetNode), property);\n\t\t\tif (!accessed) throw new Error(`Property '${property}' not found on '${stringifyNode(targetNode)}'`);\n\t\t\treturn accessed;\n\t\t}\n\t\tif (expression[0] === NODE.indexAccess) {\n\t\t\tconst [_, targetNode, propertyNode] = expression;\n\t\t\tconst target = this._expression(targetNode);\n\t\t\tconst inProperty = this._expression(propertyNode);\n\t\t\tconst accessed = accessIndex(target, convertToCommonType(this.ctx, [inProperty], [u32, i32], false)?.[0] ?? inProperty);\n\t\t\tif (!accessed) throw new Error(`Index access '${stringifyNode(expression)}' 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.`);\n\t\t\treturn accessed;\n\t\t}\n\t\tif (expression[0] === NODE.numericLiteral) {\n\t\t\tconst type = typeof expression[1] === \"string\" ? numericLiteralToSnippet(parseNumericString(expression[1])) : numericLiteralToSnippet(expression[1]);\n\t\t\tinvariant(type, `Expected ${stringifyNode(expression)} to be valid numeric literal`);\n\t\t\treturn type;\n\t\t}\n\t\tif (expression[0] === NODE.call) {\n\t\t\tconst [_, calleeNode, argNodes] = expression;\n\t\t\tconst _callee = this._expression(calleeNode);\n\t\t\tconst callee = mathToStd.has(_callee.value) ? snip(mathToStd.get(_callee.value), UnknownData, \"runtime\", _callee.possibleSideEffects) : _callee;\n\t\t\tif (supportedLogOps().includes(callee.value)) return this.ctx.generateLog(callee.value, argNodes.map((arg) =\u003e this._expression(arg)));\n\t\t\tif (isWgslStruct(callee.value)) {\n\t\t\t\tif (argNodes.length \u003e 1) throw new WgslTypeError(\"Struct schemas should always be called with at most 1 argument\");\n\t\t\t\tif (!argNodes[0]) return snip(`${this.ctx.resolve(callee.value).value}()`, callee.value, \"runtime\", false);\n\t\t\t\tconst arg = this._typedExpression(argNodes[0], callee.value);\n\t\t\t\treturn snip(this.ctx.resolveSnippet(arg).value, callee.value, \"runtime\", arg.possibleSideEffects);\n\t\t\t}\n\t\t\tif (isWgslArray(callee.value)) {\n\t\t\t\tif (argNodes.length \u003e 1) throw new WgslTypeError(\"Array schemas should always be called with at most 1 argument\");\n\t\t\t\tif (!argNodes[0]) return this.typeInstantiation(callee.value, []);\n\t\t\t\tconst arg = this._typedExpression(argNodes[0], callee.value);\n\t\t\t\tif (arg.value instanceof ArrayExpression) return this.typeInstantiation(callee.value, arg.value.elements);\n\t\t\t\treturn snip(this.ctx.resolveSnippet(arg).value, callee.value, \"runtime\", arg.possibleSideEffects);\n\t\t\t}\n\t\t\tif (callee.value === constant) throw new Error(\"Constants cannot be defined within TypeGPU function scope. To address this, move the constant definition outside the function scope.\");\n\t\t\tif (isInfixDispatch(callee.value)) {\n\t\t\t\tif (!argNodes[0]) throw new WgslTypeError(`An infix operator '${getName(callee.value.operator)}' was called without any arguments`);\n\t\t\t\tconst lhs = coerceToSnippet(callee.value.lhs);\n\t\t\t\tconst rhs = this._expression(argNodes[0]);\n\t\t\t\treturn callee.value.operator[$gpuCallable].call(this.ctx, [lhs, rhs]);\n\t\t\t}\n\t\t\tif ((callee.value === _ref || callee.value === unroll) \u0026\u0026 argNodes[0]) this.tryMarkModified(argNodes[0]);\n\t\t\tif (isGPUCallable(callee.value)) {\n\t\t\t\tconst callable = callee.value[$gpuCallable];\n\t\t\t\tconst strictSignature = callable.strictSignature;\n\t\t\t\tlet convertedArguments;\n\t\t\t\tif (strictSignature) convertedArguments = argNodes.map((arg, i) =\u003e {\n\t\t\t\t\tconst argType = strictSignature.argTypes[i];\n\t\t\t\t\tif (!argType) throw new WgslTypeError(`Call '${stringifyNode(expression)}' is invalid since the function expected fewer arguments`);\n\t\t\t\t\treturn this._typedExpression(arg, argType);\n\t\t\t\t});\n\t\t\t\telse convertedArguments = argNodes.map((arg) =\u003e this._expression(arg));\n\t\t\t\ttry {\n\t\t\t\t\treturn callable.call(this.ctx, convertedArguments);\n\t\t\t\t} catch (err) {\n\t\t\t\t\tif (err instanceof ResolutionError) throw err;\n\t\t\t\t\tthrow new ResolutionError(err, [{ toString: () =\u003e `fn:${getName(callee.value)}` }]);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (!isMarkedInternal(callee.value) || isGenericFn(callee.value)) {\n\t\t\t\tconst args = argNodes.map((arg) =\u003e this._expression(arg));\n\t\t\t\tconst result = this._callShellless(callee.value, args);\n\t\t\t\tif (result) return result;\n\t\t\t}\n\t\t\tconst maybeMathMethod = Object.getOwnPropertyNames(Math).find((prop) =\u003e Math[prop] === callee.value);\n\t\t\tif (maybeMathMethod) throw new Error(`Unsupported Math functionality 'Math.${maybeMathMethod}()'. Use an std alternative, or implement the function manually.`);\n\t\t\tconst maybeConsoleMethod = Object.getOwnPropertyNames(console).find((prop) =\u003e console[prop] === callee.value);\n\t\t\tif (maybeConsoleMethod) throw new Error(`Unsupported console functionality 'console.${maybeConsoleMethod}()'.`);\n\t\t\tthrow new Error(`Function '${getName(callee.value) ?? String(callee.value)}' is not marked with the 'use gpu' directive and cannot be used in a shader`);\n\t\t}\n\t\tif (expression[0] === NODE.objectExpr) {\n\t\t\tconst obj = expression[1];\n\t\t\tconst structType = this.ctx.expectedType;\n\t\t\tif (structType instanceof AutoStruct) {\n\t\t\t\tconst entries = Object.fromEntries(Object.entries(obj).map(([key, value]) =\u003e {\n\t\t\t\t\tlet accessed = structType.accessProp(key);\n\t\t\t\t\tlet expr$1;\n\t\t\t\t\tif (accessed) expr$1 = this._typedExpression(value, accessed.type);\n\t\t\t\t\telse {\n\t\t\t\t\t\texpr$1 = this._expression(value);\n\t\t\t\t\t\tif (expr$1.dataType === UnknownData) throw new WgslTypeError(stitch`Property ${key} in object literal has a value of unknown type: '${expr$1}'`);\n\t\t\t\t\t\taccessed = structType.provideProp(key, unptr(concretize(expr$1.dataType)));\n\t\t\t\t\t}\n\t\t\t\t\treturn [accessed.prop, expr$1];\n\t\t\t\t}));\n\t\t\t\tconst completeStruct = structType.completeStruct;\n\t\t\t\tconst convertedSnippets = convertStructValues(this.ctx, completeStruct, entries);\n\t\t\t\treturn snip(stitch`${this.ctx.resolve(structType).value}(${convertedSnippets})`, completeStruct, \"runtime\");\n\t\t\t}\n\t\t\tif (isWgslStruct(structType)) {\n\t\t\t\tconst entries = Object.fromEntries(Object.entries(structType.propTypes).map(([key, value]) =\u003e {\n\t\t\t\t\tconst val = obj[key];\n\t\t\t\t\tif (val === void 0) throw new WgslTypeError(`Missing property ${key} in object literal for struct ${structType}`);\n\t\t\t\t\treturn [key, this._typedExpression(val, value)];\n\t\t\t\t}));\n\t\t\t\tconst convertedSnippets = convertStructValues(this.ctx, structType, entries);\n\t\t\t\treturn snip(stitch`${this.ctx.resolve(structType).value}(${convertedSnippets})`, structType, \"runtime\", convertedSnippets.some((s) =\u003e s.possibleSideEffects));\n\t\t\t}\n\t\t\tthrow new WgslTypeError(`No target type could be inferred for object '${stringifyNode(expression)}', please wrap the object in the corresponding schema.`);\n\t\t}\n\t\tif (expression[0] === NODE.arrayExpr) {\n\t\t\tconst [_, valueNodes] = expression;\n\t\t\tconst arrType = this.ctx.expectedType;\n\t\t\tlet elemType;\n\t\t\tlet values;\n\t\t\tif (isWgslArray(arrType)) {\n\t\t\t\telemType = arrType.elementType;\n\t\t\t\tvalues = valueNodes.map((value) =\u003e this._typedExpression(value, elemType));\n\t\t\t\tif (values.length !== arrType.elementCount) throw new WgslTypeError(`Cannot create value of type '${arrType}' from an array of length: ${values.length}`);\n\t\t\t} else {\n\t\t\t\tconst valuesSnippets = valueNodes.map((value) =\u003e this._expression(value));\n\t\t\t\tif (valuesSnippets.length === 0) throw new WgslTypeError(\"Cannot infer the type of an empty array literal.\");\n\t\t\t\tconst converted = convertToCommonType(this.ctx, valuesSnippets);\n\t\t\t\tif (!converted) throw new WgslTypeError(`Values '${stringifyNode(expression)}' cannot be automatically converted to a common type. Consider wrapping the array in an appropriate schema`);\n\t\t\t\tvalues = converted;\n\t\t\t\telemType = concretize(values[0]?.dataType);\n\t\t\t}\n\t\t\tconst arrayType = arrayOf(elemType, values.length);\n\t\t\tconst allConstant = values.every((value) =\u003e value.origin === \"constant\");\n\t\t\treturn snip(new ArrayExpression(arrayType, values), arrayType, allConstant ? \"constant\" : \"runtime\", values.some((v) =\u003e v.possibleSideEffects));\n\t\t}\n\t\tif (expression[0] === NODE.conditionalExpr) {\n\t\t\tconst [_, testNode, consequentNode, alternativeNode] = expression;\n\t\t\tconst test = this._expression(testNode);\n\t\t\tif (isKnownAtComptime(test)) return test.value ? this._expression(consequentNode) : this._expression(alternativeNode);\n\t\t\telse {\n\t\t\t\tconst convertedTest = tryConvertSnippet(this.ctx, test, bool, false);\n\t\t\t\tconst consequent = this._expression(consequentNode);\n\t\t\t\tconst alternative = this._expression(alternativeNode);\n\t\t\t\tconst [con, alt] = convertToCommonType(this.ctx, [consequent, alternative], validSelectBranchTypes) ?? [];\n\t\t\t\tif (!con || !alt || consequent.possibleSideEffects || alternative.possibleSideEffects || isAlias(consequent) \u0026\u0026 !isNaturallyEphemeral(consequent.dataType) || isAlias(alternative) \u0026\u0026 !isNaturallyEphemeral(alternative.dataType)) throw new Error(`Ternary operator '${stringifyNode(expression)}' is invalid. For more complex branching, please use 'std.select' or if/else statements.`);\n\t\t\t\treturn snip(stitch`select(${alt}, ${con}, ${convertedTest})`, con.dataType, \"runtime\", test.possibleSideEffects);\n\t\t\t}\n\t\t}\n\t\tif (expression[0] === NODE.stringLiteral) return snip(expression[1], UnknownData, \"constant\", false);\n\t\tif (expression[0] === NODE.preUpdate) throw new Error(\"Cannot use pre-updates in TypeGPU functions.\");\n\t\tassertExhaustive(expression);\n\t}\n\tdeclareGlobalConst(options) {\n\t\tconst resolvedDataType = this.ctx.resolve(options.dataType).value;\n\t\tconst resolvedValue = this.ctx.resolveSnippet(options.init).value;\n\t\tthis.ctx.addDeclaration(`const ${options.id}: ${resolvedDataType} = ${resolvedValue};`, options.id);\n\t\treturn snip(options.id, options.dataType, \"constant-immutable-def\");\n\t}\n\tdeclareGlobalVar(options) {\n\t\tlet pre = \"\";\n\t\tif (options.group !== void 0) pre += `@group(${options.group}) `;\n\t\tif (options.binding !== void 0) pre += `@binding(${options.binding}) `;\n\t\tif (options.scope in usageToVarTemplateMap) pre += `var\u003c${usageToVarTemplateMap[options.scope]}\u003e `;\n\t\telse pre += `var `;\n\t\tpre += `${options.id}: ${this.ctx.resolve(options.dataType).value}`;\n\t\tthis.ctx.addDeclaration(options.init ? `${pre} = ${this.ctx.resolveSnippet(options.init).value};` : `${pre};`, options.id);\n\t\treturn snip(options.id, options.dataType, options.scope);\n\t}\n\tfunctionDefinition(options) {\n\t\tinvariant(this.ctx.blockDepth === functionInitialBlockDepth - 1, `Expecting exactly ${functionInitialBlockDepth - 1} block(s) before going into the first function block scope`);\n\t\tlet body = this._block(options.body, false);\n\t\tconst scope = this.ctx.topFunctionScope;\n\t\tinvariant(scope, \"Expected function scope to be present\");\n\t\tconst replacements = Object.fromEntries([...scope.placeholderForVariable.entries()].map(([variable, placeholder]) =\u003e [placeholder, scope.modifiedVariables.has(variable) ? \"var\" : \"let\"]));\n\t\tif (Object.keys(replacements).length \u003e 0) {\n\t\t\tconst regex = new RegExp(Object.keys(replacements).join(\"|\"), \"gi\");\n\t\t\tbody.code = body.code.replace(regex, (match) =\u003e replacements[match] ?? \"#ERR\");\n\t\t}\n\t\tconst returnType = options.determineReturnType();\n\t\tconst argList = options.args.filter((arg) =\u003e arg.used || options.functionType === \"normal\").map((arg) =\u003e {\n\t\t\treturn `${getAttributesString(arg.decoratedType)}${arg.name}: ${this.ctx.resolve(arg.decoratedType).value}`;\n\t\t}).join(\", \");\n\t\tconst head = returnType.type !== \"void\" ? `(${argList}) -\u003e ${getAttributesString(returnType)}${this.ctx.resolve(returnType).value} ` : `(${argList}) `;\n\t\tlet attributes = \"\";\n\t\tif (options.functionType === \"compute\") {\n\t\t\tif (!options.workgroupSize) throw new Error(\"Compute shaders must have a workgroup size\");\n\t\t\tattributes = `@compute @workgroup_size(${options.workgroupSize.join(\", \")}) `;\n\t\t} else if (options.functionType === \"vertex\") attributes = `@vertex `;\n\t\telse if (options.functionType === \"fragment\") attributes = `@fragment `;\n\t\treturn `${attributes}fn ${options.name}${head}${body.code || \"{}\"}`;\n\t}\n\temitTypeAnnotation(data) {\n\t\treturn resolveData(this.ctx, data);\n\t}\n\ttypeInstantiation(schema, args) {\n\t\tif (args.length === 1 \u0026\u0026 args[0]?.dataType === schema) return snip(stitch`${args[0]}`, schema, fallthroughCopyOrigin(args[0].origin), args[0].possibleSideEffects);\n\t\treturn snip(stitch`${this.ctx.resolve(schema).value}(${args})`, schema, \"runtime\", args.some((s) =\u003e s.possibleSideEffects));\n\t}\n\tnumericLiteral(value, schema) {\n\t\tif (!Number.isFinite(value)) throw new Error(`Value '${value}' (${schema.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.`);\n\t\tif (schema.type === \"abstractInt\") return snip(`${value}`, schema, \"constant\", false);\n\t\tif (schema.type === \"u32\") return snip(`${value}u`, schema, \"constant\", false);\n\t\tif (schema.type === \"i32\") return snip(`${value}i`, schema, \"constant\", false);\n\t\tconst exp$1 = value.toExponential();\n\t\tconst decimal = schema.type === \"abstractFloat\" \u0026\u0026 Number.isInteger(value) ? `${value}.` : `${value}`;\n\t\tconst base = exp$1.length \u003c decimal.length ? exp$1 : decimal;\n\t\tif (schema.type === \"f32\") return snip(`${base}f`, schema, \"constant\", false);\n\t\tif (schema.type === \"f16\") return snip(`${base}h`, schema, \"constant\", false);\n\t\treturn snip(base, schema, \"constant\", false);\n\t}\n\temitCall(name, templateParams, args) {\n\t\tconst resolvedTemplateParams = templateParams.map((arg) =\u003e this.ctx.resolveSnippet(arg).value).join(\", \");\n\t\tconst resolvedArgs = args.map((arg) =\u003e this.ctx.resolveSnippet(arg).value).join(\", \");\n\t\tif (resolvedTemplateParams.length \u003e 0) return `${name}\u003c${resolvedTemplateParams}\u003e(${resolvedArgs})`;\n\t\treturn `${name}(${resolvedArgs})`;\n\t}\n\temitBinaryOp(lhs, op, rhs) {\n\t\tconst lhsStr = this.ctx.resolveSnippet(lhs).value;\n\t\tconst rhsStr = this.ctx.resolveSnippet(rhs).value;\n\t\treturn parenthesizedOps.includes(op) ? `(${lhsStr} ${op} ${rhsStr})` : `${lhsStr} ${op} ${rhsStr}`;\n\t}\n\t_return(statement) {\n\t\tconst returnNode = statement[1];\n\t\tif (returnNode !== void 0) {\n\t\t\tconst expectedReturnType = this.ctx.topFunctionReturnType;\n\t\t\tlet returnSnippet = expectedReturnType ? this._typedExpression(returnNode, expectedReturnType) : this._expression(returnNode);\n\t\t\tif (returnSnippet.value === void 0 \u0026\u0026 isVoid(returnSnippet.dataType)) {\n\t\t\t\tthis.ctx.reportReturnType(Void);\n\t\t\t\treturn `${this.ctx.pre}return;`;\n\t\t\t}\n\t\t\tif (returnSnippet.value instanceof RefOperator) throw new WgslTypeError(`Cannot return '${stringifyNode(returnNode)}' because it is a d.ref`);\n\t\t\tif (returnSnippet.origin === \"argument\" \u0026\u0026 !isNaturallyEphemeral(returnSnippet.dataType) \u0026\u0026 this.ctx.topFunctionScope?.functionType === \"normal\") throw new WgslTypeError(`'${stringifyNode(statement)}' is invalid, cannot return references to arguments. Copy the argument before returning it.`);\n\t\t\tif (!expectedReturnType \u0026\u0026 isAlias(returnSnippet) \u0026\u0026 !isNaturallyEphemeral(returnSnippet.dataType) \u0026\u0026 returnSnippet.origin !== \"local-def\") {\n\t\t\t\tconst str = stringifyNode(returnNode);\n\t\t\t\tconst typeStr = this.ctx.resolve(unptr(returnSnippet.dataType)).value;\n\t\t\t\tthrow new WgslTypeError(`'return ${str};' is invalid, cannot return references.\n-----\nTry 'return ${typeStr}(${str});' instead.\n-----`);\n\t\t\t}\n\t\t\treturnSnippet = tryConvertSnippet(this.ctx, returnSnippet, unptr(returnSnippet.dataType), false);\n\t\t\tinvariant(returnSnippet.dataType !== UnknownData, \"Return type should be known\");\n\t\t\tthis.ctx.reportReturnType(returnSnippet.dataType);\n\t\t\treturn stitch`${this.ctx.pre}return ${returnSnippet};`;\n\t\t}\n\t\tthis.ctx.reportReturnType(Void);\n\t\treturn `${this.ctx.pre}return;`;\n\t}\n\t_letStatement(statement) {\n\t\tconst [_, rawId, eqNode] = statement;\n\t\tif (eqNode === void 0) throw new Error(`'${stringifyNode(statement)}' is invalid because all variables need initializers.`);\n\t\tconst eq$1 = this._expression(eqNode);\n\t\tif (eq$1.value instanceof RefOperator) {\n\t\t\tconst rhsStr$1 = stringifyNode(eqNode);\n\t\t\tthrow new WgslTypeError(`'let ${rawId} = ${rhsStr$1}' is invalid, cannot initialize 'let' variables with d.ref()\n-----\n- Try 'const ${rawId} = ${rhsStr$1}'.\n-----`);\n\t\t}\n\t\tconst definitionDataType = eq$1.dataType;\n\t\tif (definitionDataType === UnknownData) {\n\t\t\tconst rhsStr$1 = stringifyNode(eqNode);\n\t\t\tthrow new WgslTypeError(`'let ${rawId} = ${rhsStr$1}' is invalid, cannot determine WGSL type of '${rhsStr$1}'\n-----\n- Try using or defining a schema that matches your desired value the most, and wrap the value with it: 'let ${rawId} = Schema(${rhsStr$1})'\n-----`);\n\t\t}\n\t\tif (isAlias(eq$1) \u0026\u0026 !isNaturallyEphemeral(eq$1.dataType)) {\n\t\t\tconst rhsStr$1 = stringifyNode(eqNode);\n\t\t\tconst rhsTypeStr = this.ctx.resolve(unptr(eq$1.dataType)).value;\n\t\t\tthrow new WgslTypeError(`'let ${rawId} = ${rhsStr$1}' is invalid, because references cannot be assigned to 'let' variable declarations.\n-----\n- Try 'let ${rawId} = ${rhsTypeStr}(${rhsStr$1})' if you need to reassign '${rawId}' later\n- Try 'const ${rawId} = ${rhsStr$1}' if you won't reassign '${rawId}' later.\n-----`);\n\t\t}\n\t\tconst concreteType = concretize(definitionDataType);\n\t\tconst snippet = snip(this.ctx.makeUniqueIdentifier(rawId, \"block\"), concreteType, \"local-def\", false);\n\t\tthis.ctx.defineVariable(rawId, snippet);\n\t\tconst rhsSnippet = tryConvertSnippet(this.ctx, eq$1, definitionDataType, false);\n\t\tconst rhsStr = this.ctx.resolveSnippet(rhsSnippet).value;\n\t\tconst scope = this.ctx.topFunctionScope;\n\t\tinvariant(scope, `Expected function scope to be present for ${rawId}`);\n\t\tconst emittedVarType = `#VAR_${scope.placeholderForVariable.size}#`;\n\t\tscope.placeholderForVariable.set(snippet, emittedVarType);\n\t\treturn {\n\t\t\tcode: this._emitVarDecl(emittedVarType, snippet.value, concreteType, rhsStr),\n\t\t\tdefinesInNearestScope: true\n\t\t};\n\t}\n\t_constStatement(statement) {\n\t\tconst [_, rawId, eqNode] = statement;\n\t\tif (eqNode === void 0) throw new Error(`'${stringifyNode(statement)}' is invalid because all variables need initializers.`);\n\t\tconst eq$1 = this._expression(eqNode);\n\t\tif (eq$1.value instanceof RefOperator) {\n\t\t\tif (eq$1.dataType !== UnknownData) throw new WgslTypeError(`Cannot store d.ref() in a variable if it references another value. Copy the value passed into d.ref() instead.`);\n\t\t\tconst refSnippet = eq$1.value.snippet;\n\t\t\tconst varName = this.refVariable(rawId, concretize(refSnippet.dataType));\n\t\t\treturn {\n\t\t\t\tcode: stitch`${this.ctx.pre}var ${varName} = ${tryConvertSnippet(this.ctx, refSnippet, refSnippet.dataType, false)};`,\n\t\t\t\tdefinesInNearestScope: true\n\t\t\t};\n\t\t}\n\t\tconst rhsNaturallyEphemeral = isNaturallyEphemeral(eq$1.dataType);\n\t\tlet varOrigin = \"local-def\";\n\t\tlet varType = \"\u003cdeferred\u003e\";\n\t\tlet definitionDataType = eq$1.dataType;\n\t\tif (definitionDataType === UnknownData) {\n\t\t\tconst rhsStr$1 = stringifyNode(eqNode);\n\t\t\tthrow new WgslTypeError(`'const ${rawId} = ${rhsStr$1}' is invalid, cannot determine WGSL type of '${rhsStr$1}'\n-----\n- Try using or defining a schema that matches your desired value the most, and wrap the value with it: 'const ${rawId} = Schema(${rhsStr$1})'\n-----`);\n\t\t}\n\t\tif (eq$1.origin === \"argument\") {\n\t\t\tvarType = \"let\";\n\t\t\tvarOrigin = rhsNaturallyEphemeral ? \"local-def\" : \"argument\";\n\t\t} else if (eq$1.origin === \"constant-immutable-def\") {\n\t\t\tvarType = \"const\";\n\t\t\tvarOrigin = \"constant-immutable-def\";\n\t\t} else if (eq$1.origin === \"runtime-immutable-def\") {\n\t\t\tvarType = \"let\";\n\t\t\tvarOrigin = \"runtime-immutable-def\";\n\t\t} else if (rhsNaturallyEphemeral) {\n\t\t\tvarType = eq$1.origin === \"constant\" ? \"const\" : \"let\";\n\t\t\tvarOrigin = \"local-def\";\n\t\t} else if (!isAlias(eq$1)) {\n\t\t\tvarType = \"\u003cdeferred\u003e\";\n\t\t\tvarOrigin = \"local-def\";\n\t\t} else return this._aliasConstStatement(rawId, eqNode, eq$1);\n\t\tconst concreteType = concretize(definitionDataType);\n\t\tconst snippet = snip(this.ctx.makeUniqueIdentifier(rawId, \"block\"), concreteType, varOrigin, false);\n\t\tthis.ctx.defineVariable(rawId, snippet);\n\t\tconst rhsSnippet = tryConvertSnippet(this.ctx, eq$1, definitionDataType, false);\n\t\tconst rhsStr = this.ctx.resolveSnippet(rhsSnippet).value;\n\t\tlet emittedVarType;\n\t\tif (varType === \"\u003cdeferred\u003e\") {\n\t\t\tconst scope = this.ctx.topFunctionScope;\n\t\t\tinvariant(scope, `Expected function scope to be present for ${rawId}`);\n\t\t\temittedVarType = `#VAR_${scope.placeholderForVariable.size}#`;\n\t\t\tscope.placeholderForVariable.set(snippet, emittedVarType);\n\t\t} else emittedVarType = varType;\n\t\treturn {\n\t\t\tcode: this._emitVarDecl(emittedVarType, snippet.value, concreteType, rhsStr),\n\t\t\tdefinesInNearestScope: true\n\t\t};\n\t}\n\t_aliasConstStatement(rawId, eqNode, eq$1) {\n\t\tlet definitionDataType = eq$1.dataType;\n\t\tif (!isPtr(definitionDataType)) {\n\t\t\tconst ptrType = createPtrFromOrigin(eq$1.origin, concretize(definitionDataType));\n\t\t\tinvariant(ptrType !== void 0, `Creating pointer type from origin ${eq$1.origin}`);\n\t\t\tdefinitionDataType = ptrType;\n\t\t}\n\t\tdefinitionDataType = implicitFrom(definitionDataType);\n\t\tthis.tryMarkModified(eqNode);\n\t\tconst concreteType = concretize(definitionDataType);\n\t\tconst snippet = snip(this.ctx.makeUniqueIdentifier(rawId, \"block\"), concreteType, eq$1.origin, false);\n\t\tthis.ctx.defineVariable(rawId, snippet);\n\t\tconst rhsSnippet = tryConvertSnippet(this.ctx, eq$1, definitionDataType, false);\n\t\tconst rhsStr = this.ctx.resolveSnippet(rhsSnippet).value;\n\t\treturn {\n\t\t\tcode: this._emitVarDecl(\"let\", snippet.value, concreteType, rhsStr),\n\t\t\tdefinesInNearestScope: true\n\t\t};\n\t}\n\t_statement(statement) {\n\t\tif (typeof statement === \"string\") {\n\t\t\tconst id = this._identifier(statement);\n\t\t\tconst resolved$1 = id.value !== void 0 \u0026\u0026 id.value !== null ? this.ctx.resolveSnippet(id).value : \"\";\n\t\t\treturn {\n\t\t\t\tcode: resolved$1 ? `${this.ctx.pre}${resolved$1};` : \"\",\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t}\n\t\tif (typeof statement === \"boolean\") return {\n\t\t\tcode: `${this.ctx.pre}${statement ? \"true\" : \"false\"};`,\n\t\t\tdefinesInNearestScope: false\n\t\t};\n\t\tif (statement[0] === NODE.return) return {\n\t\t\tcode: this._return(statement),\n\t\t\tendsWithControlFlow: \"return\",\n\t\t\tdefinesInNearestScope: false\n\t\t};\n\t\tif (statement[0] === NODE.if) {\n\t\t\tconst [_, condNode, consNode, altNode] = statement;\n\t\t\tconst condition = this._typedExpression(condNode, bool);\n\t\t\tif (typeof condition.value === \"boolean\") {\n\t\t\t\tlet node = condition.value ? consNode : altNode;\n\t\t\t\tif (node === void 0) return {\n\t\t\t\t\tcode: \"\",\n\t\t\t\t\tdefinesInNearestScope: false\n\t\t\t\t};\n\t\t\t\tif (!Array.isArray(node)) node = blockifySingleStatement(node);\n\t\t\t\tif (node[0] === NODE.block \u0026\u0026 node[1].length === 1 \u0026\u0026 node[1][0][0] === NODE.if) return this._statement(node[1][0]);\n\t\t\t\tif (node[0] === NODE.if) return this._statement(node);\n\t\t\t\treturn this._blockStatement(blockifySingleStatement(node));\n\t\t\t}\n\t\t\tconst consequent = this._block(blockifySingleStatement(consNode), false);\n\t\t\tconst alternate = !altNode ? void 0 : this._block(blockifySingleStatement(altNode), false).code;\n\t\t\tif (!alternate) return {\n\t\t\t\tcode: stitch`${this.ctx.pre}if (${condition}) ${consequent.code || \"{}\"}`,\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t\treturn {\n\t\t\t\tcode: stitch`\\\n${this.ctx.pre}if (${condition}) ${consequent.code || \"{}\"}\n${this.ctx.pre}else ${alternate}`,\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t}\n\t\tif (statement[0] === NODE.let) return this._letStatement(statement);\n\t\tif (statement[0] === NODE.const) return this._constStatement(statement);\n\t\tif (statement[0] === NODE.block) return this._blockStatement(statement);\n\t\tif (statement[0] === NODE.for) {\n\t\t\tconst [_, init$1, condition, update, body] = statement;\n\t\t\tconst prevUnrollingChain = this.#unrollingChain;\n\t\t\tthis.#unrollingChain = [];\n\t\t\ttry {\n\t\t\t\tthis.ctx.pushBlockScope();\n\t\t\t\tconst [initStatement, conditionExpr, updateStatement] = this.ctx.withResetIndentLevel(() =\u003e [\n\t\t\t\t\tinit$1 ? this._statement(init$1).code : void 0,\n\t\t\t\t\tcondition ? this._typedExpression(condition, bool) : void 0,\n\t\t\t\t\tupdate ? this._statement(update).code : void 0\n\t\t\t\t]);\n\t\t\t\tconst initStr = initStatement ? initStatement.slice(0, -1) : \"\";\n\t\t\t\tconst updateStr = updateStatement ? updateStatement.slice(0, -1) : \"\";\n\t\t\t\tconst bodyStr = this._block(blockifySingleStatement(body), false).code;\n\t\t\t\treturn {\n\t\t\t\t\tcode: stitch`${this.ctx.pre}for (${initStr}; ${conditionExpr}; ${updateStr}) ${bodyStr || \"{}\"}`,\n\t\t\t\t\tdefinesInNearestScope: false\n\t\t\t\t};\n\t\t\t} finally {\n\t\t\t\tthis.#unrollingChain = prevUnrollingChain;\n\t\t\t\tthis.ctx.popBlockScope();\n\t\t\t}\n\t\t}\n\t\tif (statement[0] === NODE.while) {\n\t\t\tconst prevUnrollingChain = this.#unrollingChain;\n\t\t\tthis.#unrollingChain = [];\n\t\t\ttry {\n\t\t\t\tconst [_, condition, body] = statement;\n\t\t\t\tconst condSnippet = this._typedExpression(condition, bool);\n\t\t\t\tconst conditionStr = this.ctx.resolveSnippet(condSnippet).value;\n\t\t\t\tconst bodyStr = this._block(blockifySingleStatement(body), false).code;\n\t\t\t\treturn {\n\t\t\t\t\tcode: `${this.ctx.pre}while (${conditionStr}) ${bodyStr || \"{}\"}`,\n\t\t\t\t\tdefinesInNearestScope: false\n\t\t\t\t};\n\t\t\t} finally {\n\t\t\t\tthis.#unrollingChain = prevUnrollingChain;\n\t\t\t}\n\t\t}\n\t\tif (statement[0] === NODE.forOf) {\n\t\t\tconst [_, loopVar, iterable, body] = statement;\n\t\t\tif (loopVar[0] !== NODE.const) throw new WgslTypeError(\"Only `for (const ... of ... )` loops are supported\");\n\t\t\tthis.tryMarkModified(iterable);\n\t\t\tlet ctxIndent = false;\n\t\t\tconst prevUnrollingChain = this.#unrollingChain;\n\t\t\ttry {\n\t\t\t\tthis.ctx.pushBlockScope();\n\t\t\t\tconst iterableExpr = this._expression(iterable);\n\t\t\t\tconst shouldUnroll = iterableExpr.value instanceof UnrollableIterable;\n\t\t\t\tconst iterableSnippet = shouldUnroll ? iterableExpr.value.snippet : iterableExpr;\n\t\t\t\tconst range$1 = getRangeSnippets(this.ctx, iterableSnippet, shouldUnroll);\n\t\t\t\tconst originalLoopVarName = loopVar[1];\n\t\t\t\tconst blockified = blockifySingleStatement(body);\n\t\t\t\tif (shouldUnroll) {\n\t\t\t\t\tif (!isKnownAtComptime(range$1.end)) throw new Error(\"Cannot unroll loop. Length of iterable is unknown at comptime.\");\n\t\t\t\t\tconst length$1 = range$1.end.value;\n\t\t\t\t\tif (length$1 === 0) return {\n\t\t\t\t\t\tcode: \"\",\n\t\t\t\t\t\tdefinesInNearestScope: false\n\t\t\t\t\t};\n\t\t\t\t\tconst { value } = iterableSnippet;\n\t\t\t\t\tconst elements = isTgpuRange(value) ? value.map((i) =\u003e coerceToSnippet(i)) : value instanceof ArrayExpression ? value.elements : Array.from({ length: length$1 }, (_$1, i) =\u003e getElementSnippet(iterableSnippet, snip(i, u32, \"constant\")));\n\t\t\t\t\tconst firstElement = elements[0];\n\t\t\t\t\tif (!isAlias(firstElement) \u0026\u0026 !isNaturallyEphemeral(firstElement.dataType)) throw new WgslTypeError(`Cannot unroll '${stringifyNode(iterable)}'. The elements of iterable are constructed in place but are not value types.`);\n\t\t\t\t\tlet blocksCode = \"\";\n\t\t\t\t\tlet endsWithControlFlow;\n\t\t\t\t\tlet definesInNearestScope = false;\n\t\t\t\t\tfor (let i = 0; i \u003c elements.length; i++) {\n\t\t\t\t\t\tconst e = elements[i];\n\t\t\t\t\t\tthis.#unrollingChain = [...prevUnrollingChain, i];\n\t\t\t\t\t\tconst resolvedBlock = this._blockStatement(blockified, { [originalLoopVarName]: e });\n\t\t\t\t\t\tdefinesInNearestScope ||= resolvedBlock.definesInNearestScope;\n\t\t\t\t\t\tblocksCode += `${this.ctx.pre}// unrolled iteration ${this.#unrollingChain.map((idx) =\u003e `#${idx}`).join(\" / \")}\\n${resolvedBlock.code}\\n`;\n\t\t\t\t\t\tif (resolvedBlock.endsWithControlFlow !== void 0) {\n\t\t\t\t\t\t\tendsWithControlFlow = resolvedBlock.endsWithControlFlow;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn {\n\t\t\t\t\t\tcode: `${blocksCode}${this.ctx.pre}// ---`,\n\t\t\t\t\t\tendsWithControlFlow,\n\t\t\t\t\t\tdefinesInNearestScope\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tthis.#unrollingChain = [];\n\t\t\t\tconst index = this.ctx.makeUniqueIdentifier(\"i\", \"block\");\n\t\t\t\tconst forHeaderStr = stitch`${this.ctx.pre}for (var ${index} = ${range$1.start}; ${index} ${range$1.comparison} ${range$1.end}; ${index} += ${range$1.step})`;\n\t\t\t\tlet bodyStr = \"\";\n\t\t\t\tif (isTgpuRange(iterableSnippet.value)) bodyStr = this._block(blockified, false, { [originalLoopVarName]: snip(index, range$1.start.dataType, \"runtime\", false) }).code;\n\t\t\t\telse {\n\t\t\t\t\tthis.ctx.indent();\n\t\t\t\t\tctxIndent = true;\n\t\t\t\t\tconst loopVarName = this.ctx.makeUniqueIdentifier(originalLoopVarName, \"block\");\n\t\t\t\t\tconst elementSnippet = getElementSnippet(iterableSnippet, snip(index, u32, \"runtime\"));\n\t\t\t\t\tconst loopVarKind = getLoopVarKind(elementSnippet);\n\t\t\t\t\tconst elementType = getElementType(elementSnippet, iterableSnippet);\n\t\t\t\t\tbodyStr = `{\\n${stitch`${this.ctx.pre}${loopVarKind} ${loopVarName} = ${tryConvertSnippet(this.ctx, elementSnippet, elementType, false)};`}\\n${this._blockStatement(blockified, { [originalLoopVarName]: snip(loopVarName, elementType, elementSnippet.origin, false) }).code}\\n`;\n\t\t\t\t\tthis.ctx.dedent();\n\t\t\t\t\tbodyStr += `${this.ctx.pre}}`;\n\t\t\t\t\tctxIndent = false;\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tcode: stitch`${forHeaderStr} ${bodyStr.trim() || \"{}\"}`,\n\t\t\t\t\tdefinesInNearestScope: false\n\t\t\t\t};\n\t\t\t} finally {\n\t\t\t\tif (ctxIndent) this.ctx.dedent();\n\t\t\t\tthis.#unrollingChain = prevUnrollingChain;\n\t\t\t\tthis.ctx.popBlockScope();\n\t\t\t}\n\t\t}\n\t\tif (statement[0] === NODE.postUpdate) {\n\t\t\tconst [_, op, arg] = statement;\n\t\t\tconst argExpr = this._expression(arg);\n\t\t\tconst argStr = this.ctx.resolveSnippet(argExpr).value;\n\t\t\tvalidateSnippetMutation(argExpr, statement);\n\t\t\tthis.tryMarkModified(arg);\n\t\t\treturn {\n\t\t\t\tcode: `${this.ctx.pre}${argStr}${op};`,\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t}\n\t\tif (statement[0] === NODE.continue) {\n\t\t\tif (this.#unrollingChain.length \u003e 0) throw new WgslTypeError(\"Cannot unroll loop containing `continue`\");\n\t\t\treturn {\n\t\t\t\tcode: `${this.ctx.pre}continue;`,\n\t\t\t\tendsWithControlFlow: \"continue\",\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t}\n\t\tif (statement[0] === NODE.break) {\n\t\t\tif (this.#unrollingChain.length \u003e 0) throw new WgslTypeError(\"Cannot unroll loop containing `break`\");\n\t\t\treturn {\n\t\t\t\tcode: `${this.ctx.pre}break;`,\n\t\t\t\tendsWithControlFlow: \"break\",\n\t\t\t\tdefinesInNearestScope: false\n\t\t\t};\n\t\t}\n\t\tconst expr$1 = this._expression(statement);\n\t\tconst resolved = expr$1.value !== void 0 \u0026\u0026 expr$1.value !== null ? this.ctx.resolveSnippet(expr$1).value : \"\";\n\t\treturn {\n\t\t\tcode: resolved ? `${this.ctx.pre}${resolved};` : \"\",\n\t\t\tdefinesInNearestScope: false\n\t\t};\n\t}\n\ttryMarkModified(expr$1) {\n\t\tif (!expr$1) return;\n\t\tconst maybeObject = extractObject(expr$1);\n\t\tif (maybeObject !== void 0) {\n\t\t\tconst snippet = this.ctx.getById(maybeObject);\n\t\t\tconst scope = this.ctx.topFunctionScope;\n\t\t\tif (snippet \u0026\u0026 scope \u0026\u0026 scope.placeholderForVariable.has(snippet)) scope.modifiedVariables.add(snippet);\n\t\t}\n\t}\n};\nfunction validateSnippetMutation(mutated, expr$1) {\n\tif (mutated.origin === \"constant\" || mutated.origin === \"constant-immutable-def\" || mutated.origin === \"runtime-immutable-def\") {\n\t\tif (isKnownAtComptime(mutated)) throw new WgslTypeError(`'${stringifyNode(expr$1)}' 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.`);\n\t\tthrow new WgslTypeError(`'${stringifyNode(expr$1)}' is invalid, because the left side is a constant.`);\n\t}\n\tif (mutated.origin === \"uniform\") throw new WgslTypeError(`'${stringifyNode(expr$1)}' is invalid, because uniform buffers cannot be mutated.`);\n\tif (mutated.origin === \"readonly\") throw new WgslTypeError(`'${stringifyNode(expr$1)}' is invalid, because readonly buffers cannot be mutated.`);\n\tif (mutated.origin === \"argument\") throw new WgslTypeError(`'${stringifyNode(expr$1)}' is invalid, because non-pointer arguments cannot be mutated.`);\n}\nfunction assertExhaustive(value) {\n\tthrow new Error(`'${safeStringify(value)}' was not handled by the WGSL generator.`);\n}\nfunction parseNumericString(str) {\n\tif (/^0x[0-9a-f]+$/i.test(str)) return Number.parseInt(str);\n\tif (/^0b[01]+$/i.test(str)) return Number.parseInt(str.slice(2), 2);\n\treturn Number.parseFloat(str);\n}\nfunction blockifySingleStatement(statement) {\n\treturn typeof statement !== \"object\" || statement[0] !== NODE.block ? [NODE.block, [statement]] : statement;\n}\nfunction extractObject(expr$1) {\n\tlet object$1 = expr$1;\n\twhile (Array.isArray(object$1) \u0026\u0026 (object$1[0] === NODE.memberAccess || object$1[0] === NODE.indexAccess)) object$1 = object$1[1];\n\tif (typeof object$1 === \"string\") return object$1;\n}\nconst EVAL_ALLOWED_IN_ENV = (() =\u003e {\n\ttry {\n\t\tnew Function(\"return true\");\n\t\treturn true;\n\t} catch {\n\t\treturn false;\n\t}\n})();\nvar compiledWriters = /* @__PURE__ */ new WeakMap();\nvar didWarnAboutEvalFallback = false;\nvar typeToPrimitive = {\n\tu32: \"u32\",\n\tvec2u: \"u32\",\n\tvec3u: \"u32\",\n\tvec4u: \"u32\",\n\tu16: \"u16\",\n\ti32: \"i32\",\n\tvec2i: \"i32\",\n\tvec3i: \"i32\",\n\tvec4i: \"i32\",\n\tf32: \"f32\",\n\tvec2f: \"f32\",\n\tvec3f: \"f32\",\n\tvec4f: \"f32\",\n\tf16: \"f16\",\n\tvec2h: \"f16\",\n\tvec3h: \"f16\",\n\tvec4h: \"f16\",\n\tmat2x2f: \"f32\",\n\tmat3x3f: \"f32\",\n\tmat4x4f: \"f32\"\n};\nvar vertexFormatToPrimitive = {\n\tuint8: \"u8\",\n\tuint8x2: \"u8\",\n\tuint8x4: \"u8\",\n\tsint8: \"i8\",\n\tsint8x2: \"i8\",\n\tsint8x4: \"i8\",\n\tunorm8: \"u8\",\n\tunorm8x2: \"u8\",\n\tunorm8x4: \"u8\",\n\tsnorm8: \"i8\",\n\tsnorm8x2: \"i8\",\n\tsnorm8x4: \"i8\",\n\tuint16: \"u16\",\n\tuint16x2: \"u16\",\n\tuint16x4: \"u16\",\n\tsint16: \"i16\",\n\tsint16x2: \"i16\",\n\tsint16x4: \"i16\",\n\tunorm16: \"u16\",\n\tunorm16x2: \"u16\",\n\tunorm16x4: \"u16\",\n\tsnorm16: \"i16\",\n\tsnorm16x2: \"i16\",\n\tsnorm16x4: \"i16\",\n\tfloat16: \"f16\",\n\tfloat16x2: \"f16\",\n\tfloat16x4: \"f16\",\n\tfloat32: \"f32\",\n\tfloat32x2: \"f32\",\n\tfloat32x3: \"f32\",\n\tfloat32x4: \"f32\",\n\tuint32: \"u32\",\n\tuint32x2: \"u32\",\n\tuint32x3: \"u32\",\n\tuint32x4: \"u32\",\n\tsint32: \"i32\",\n\tsint32x2: \"i32\",\n\tsint32x3: \"i32\",\n\tsint32x4: \"i32\"\n};\nvar primitiveToWriteFunction = {\n\tu32: \"setUint32\",\n\ti32: \"setInt32\",\n\tf32: \"setFloat32\",\n\tu16: \"setUint16\",\n\ti16: \"setInt16\",\n\tf16: \"setFloat16\",\n\tu8: \"setUint8\",\n\ti8: \"setInt8\"\n};\nvar vertexFormatValueTransform = {\n\tunorm8: (value) =\u003e `Math.round(${value} * 255)`,\n\tunorm8x2: (value) =\u003e `Math.round(${value} * 255)`,\n\tunorm8x4: (value) =\u003e `Math.round(${value} * 255)`,\n\tsnorm8: (value) =\u003e `Math.round(${value} * 127)`,\n\tsnorm8x2: (value) =\u003e `Math.round(${value} * 127)`,\n\tsnorm8x4: (value) =\u003e `Math.round(${value} * 127)`,\n\tunorm16: (value) =\u003e `Math.round(${value} * 65535)`,\n\tunorm16x2: (value) =\u003e `Math.round(${value} * 65535)`,\n\tunorm16x4: (value) =\u003e `Math.round(${value} * 65535)`,\n\tsnorm16: (value) =\u003e `Math.round(${value} * 32767)`,\n\tsnorm16x2: (value) =\u003e `Math.round(${value} * 32767)`,\n\tsnorm16x4: (value) =\u003e `Math.round(${value} * 32767)`\n};\nvar specialPackedFormats = {\n\t\"unorm10-10-10-2\": {\n\t\twriteFunction: \"setUint32\",\n\t\tgenerator: (offsetExpr, valueExpr) =\u003e `output.setUint32(${offsetExpr}, ((${valueExpr}.x*1023\u00260x3FF)\u003c\u003c22)|((${valueExpr}.y*1023\u00260x3FF)\u003c\u003c12)|((${valueExpr}.z*1023\u00260x3FF)\u003c\u003c2)|(${valueExpr}.w*3\u00263), littleEndian);\\n`\n\t},\n\t\"unorm8x4-bgra\": {\n\t\twriteFunction: \"setUint8\",\n\t\tgenerator: (offsetExpr, valueExpr) =\u003e {\n\t\t\treturn [\n\t\t\t\t\"z\",\n\t\t\t\t\"y\",\n\t\t\t\t\"x\",\n\t\t\t\t\"w\"\n\t\t\t].map((c, idx) =\u003e `output.setUint8((${offsetExpr} + ${idx}), Math.round(${valueExpr}.${c} * 255), littleEndian);\\n`).join(\"\");\n\t\t}\n\t}\n};\nfunction buildWriter(node, offsetExpr, valueExpr, depth = 0, partial = false) {\n\tconst emitWrite = (writeFunc, addr, value) =\u003e partial ? `if (${addr} \u003c endOffset) { output.${writeFunc}(${addr}, ${value}, littleEndian); }\\n` : `output.${writeFunc}(${addr}, ${value}, littleEndian);\\n`;\n\tconst emitBlock = (addr, block) =\u003e partial ? `if (${addr} \u003c endOffset) {\\n${block}}\\n` : block;\n\tfunction go(node$1, offsetExpr$1, valueExpr$1, depth$1) {\n\t\tconst loopVar = [\n\t\t\t\"i\",\n\t\t\t\"j\",\n\t\t\t\"k\"\n\t\t][depth$1] || `i${depth$1}`;\n\t\tif (isAtomic(node$1) || isDecorated(node$1)) return go(node$1.inner, offsetExpr$1, valueExpr$1, depth$1);\n\t\tif (isWgslStruct(node$1) || isUnstruct(node$1)) return Object.entries(offsetsForProps(node$1)).map(([key, propOffset]) =\u003e {\n\t\t\tconst subSchema = node$1.propTypes[key];\n\t\t\treturn subSchema ? go(subSchema, `(${offsetExpr$1} + ${propOffset.offset})`, `${valueExpr$1}.${key}`, depth$1) : \"\";\n\t\t}).join(\"\");\n\t\tif (isWgslArray(node$1) || isDisarray(node$1)) {\n\t\t\tif (node$1.elementCount === 0) throw new Error(\"Cannot write using a runtime-sized schema.\");\n\t\t\tconst elementSize = roundUp(sizeOf(node$1.elementType), alignmentOf(node$1));\n\t\t\tconst totalSize = node$1.elementCount * elementSize;\n\t\t\tconst copyLen = partial ? `Math.min(${valueExpr$1}.byteLength, Math.max(0, endOffset - (${offsetExpr$1})))` : `Math.min(${valueExpr$1}.byteLength, ${totalSize})`;\n\t\t\tlet code = `if (ArrayBuffer.isView(${valueExpr$1})) {\\n`;\n\t\t\tcode += `  new Uint8Array(output.buffer).set(new Uint8Array(${valueExpr$1}.buffer, ${valueExpr$1}.byteOffset, ${copyLen}), output.byteOffset + (${offsetExpr$1}));\\n`;\n\t\t\tcode += `} else {\\n`;\n\t\t\tcode += `for (let ${loopVar} = 0; ${loopVar} \u003c ${node$1.elementCount}; ${loopVar}++) {\\n`;\n\t\t\tif (partial) code += `if ((${offsetExpr$1} + ${loopVar} * ${elementSize}) \u003e= endOffset) return;\\n`;\n\t\t\tcode += go(node$1.elementType, `(${offsetExpr$1} + ${loopVar} * ${elementSize})`, `${valueExpr$1}[${loopVar}]`, depth$1 + 1);\n\t\t\tcode += \"}\\n\";\n\t\t\tcode += \"}\\n\";\n\t\t\treturn code;\n\t\t}\n\t\tif (isVec(node$1)) {\n\t\t\tif (isVecBool(node$1)) throw new Error(\"Compiled writers do not support boolean vectors\");\n\t\t\tconst primitive$1 = typeToPrimitive[node$1.type];\n\t\t\tconst componentSize = sizeOf(node$1.primitive);\n\t\t\tconst writeFunc = primitiveToWriteFunction[primitive$1];\n\t\t\treturn Array.from({ length: node$1.componentCount }, (_, i) =\u003e emitWrite(writeFunc, `(${offsetExpr$1} + ${i * componentSize})`, `${valueExpr$1}[${i}]`)).join(\"\");\n\t\t}\n\t\tif (isMat(node$1)) {\n\t\t\tconst writeFunc = primitiveToWriteFunction[typeToPrimitive[node$1.type]];\n\t\t\tconst matSize = isMat2x2f(node$1) ? 2 : isMat3x3f(node$1) ? 3 : 4;\n\t\t\tconst rowStride = roundUp(matSize * 4, 8);\n\t\t\tconst components = [\n\t\t\t\t\"x\",\n\t\t\t\t\"y\",\n\t\t\t\t\"z\",\n\t\t\t\t\"w\"\n\t\t\t];\n\t\t\tconst wgslElementStride = rowStride / 4;\n\t\t\treturn Array.from({ length: matSize * matSize }, (_, idx) =\u003e {\n\t\t\t\tconst col = Math.floor(idx / matSize);\n\t\t\t\tconst row = idx % matSize;\n\t\t\t\tconst packedIndex = col * matSize + row;\n\t\t\t\tconst wgslIndex = col * wgslElementStride + row;\n\t\t\t\treturn emitWrite(writeFunc, `(${offsetExpr$1} + ${col * rowStride + row * 4})`, `ArrayBuffer.isView(${valueExpr$1}) ? ${valueExpr$1}[${wgslIndex}] : Array.isArray(${valueExpr$1}) ? ${valueExpr$1}[${packedIndex}] : ${valueExpr$1}.columns[${col}].${components[row]}`);\n\t\t\t}).join(\"\");\n\t\t}\n\t\tif (isPackedData(node$1)) {\n\t\t\tconst formatName = node$1.type;\n\t\t\tif (formatName in specialPackedFormats) {\n\t\t\t\tconst handler = specialPackedFormats[formatName];\n\t\t\t\treturn emitBlock(`(${offsetExpr$1})`, handler.generator(offsetExpr$1, valueExpr$1));\n\t\t\t}\n\t\t\tconst primitive$1 = vertexFormatToPrimitive[formatName];\n\t\t\tconst writeFunc = primitiveToWriteFunction[primitive$1];\n\t\t\tconst wgslType = formatToWGSLType[formatName];\n\t\t\tconst componentCount = isVec(wgslType) ? wgslType.componentCount : 1;\n\t\t\tconst componentSize = primitive$1 === \"u8\" || primitive$1 === \"i8\" ? 1 : primitive$1 === \"u16\" || primitive$1 === \"i16\" || primitive$1 === \"f16\" ? 2 : 4;\n\t\t\tconst components = [\n\t\t\t\t\"x\",\n\t\t\t\t\"y\",\n\t\t\t\t\"z\",\n\t\t\t\t\"w\"\n\t\t\t];\n\t\t\tconst transform = vertexFormatValueTransform[formatName];\n\t\t\treturn Array.from({ length: componentCount }, (_, idx) =\u003e {\n\t\t\t\tconst accessor$1 = componentCount === 1 ? valueExpr$1 : `${valueExpr$1}.${components[idx]}`;\n\t\t\t\tconst value = transform ? transform(accessor$1) : accessor$1;\n\t\t\t\treturn emitWrite(writeFunc, `(${offsetExpr$1} + ${idx * componentSize})`, value);\n\t\t\t}).join(\"\");\n\t\t}\n\t\tif (!Object.hasOwn(typeToPrimitive, node$1.type)) throw new Error(`Primitive ${node$1.type} is unsupported by compiled writer`);\n\t\tconst primitive = typeToPrimitive[node$1.type];\n\t\treturn emitWrite(primitiveToWriteFunction[primitive], offsetExpr$1, valueExpr$1);\n\t}\n\treturn go(node, offsetExpr, valueExpr, depth);\n}\nfunction getCompiledWriter(schema) {\n\tif (!EVAL_ALLOWED_IN_ENV) {\n\t\tif (!didWarnAboutEvalFallback) {\n\t\t\tlogger.warn(\"fallback\", \"This environment does not allow eval - using default writer as fallback\");\n\t\t\tdidWarnAboutEvalFallback = true;\n\t\t}\n\t\treturn;\n\t}\n\tconst cached = compiledWriters.get(schema);\n\tif (cached) return cached;\n\ttry {\n\t\tconst fullBody = buildWriter(schema, \"offset\", \"value\", 0, false);\n\t\tconst body = `if (offset \u003e 0 || endOffset \u003c output.byteLength) {\\n${buildWriter(schema, \"offset\", \"value\", 0, true)}} else {\\n${fullBody}}\\n`;\n\t\tconst fn$1 = new Function(\"output\", \"offset\", \"value\", \"littleEndian=true\", \"endOffset=output.byteLength\", body);\n\t\tcompiledWriters.set(schema, fn$1);\n\t\treturn fn$1;\n\t} catch (error) {\n\t\tlogger.warn(\"fallback\", `Failed to compile writer for schema: ${schema}\\nReason: ${error instanceof Error ? error.message : String(error)}\\nFalling back to default writer`);\n\t}\n}\nfunction writeFloat16(output, value) {\n\toutput.writeUint16(toHalfBits(value));\n}\nfunction readFloat16(input) {\n\treturn fromHalfBits(input.readUint16());\n}\nvar dataWriters = {\n\tbool() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\tf32(output, _schema, value) {\n\t\toutput.writeFloat32(value);\n\t},\n\tf16(output, _schema, value) {\n\t\twriteFloat16(output, value);\n\t},\n\ti32(output, _schema, value) {\n\t\toutput.writeInt32(value);\n\t},\n\tu32(output, _schema, value) {\n\t\toutput.writeUint32(value);\n\t},\n\tu16(output, _schema, value) {\n\t\toutput.writeUint16(value);\n\t},\n\tvec2f(output, _, value) {\n\t\toutput.writeFloat32(value[0]);\n\t\toutput.writeFloat32(value[1]);\n\t},\n\tvec2h(output, _, value) {\n\t\twriteFloat16(output, value[0]);\n\t\twriteFloat16(output, value[1]);\n\t},\n\tvec2i(output, _, value) {\n\t\toutput.writeInt32(value[0]);\n\t\toutput.writeInt32(value[1]);\n\t},\n\tvec2u(output, _, value) {\n\t\toutput.writeUint32(value[0]);\n\t\toutput.writeUint32(value[1]);\n\t},\n\t\"vec2\u003cbool\u003e\"() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\tvec3f(output, _, value) {\n\t\toutput.writeFloat32(value[0]);\n\t\toutput.writeFloat32(value[1]);\n\t\toutput.writeFloat32(value[2]);\n\t},\n\tvec3h(output, _, value) {\n\t\twriteFloat16(output, value[0]);\n\t\twriteFloat16(output, value[1]);\n\t\twriteFloat16(output, value[2]);\n\t},\n\tvec3i(output, _, value) {\n\t\toutput.writeInt32(value[0]);\n\t\toutput.writeInt32(value[1]);\n\t\toutput.writeInt32(value[2]);\n\t},\n\tvec3u(output, _, value) {\n\t\toutput.writeUint32(value[0]);\n\t\toutput.writeUint32(value[1]);\n\t\toutput.writeUint32(value[2]);\n\t},\n\t\"vec3\u003cbool\u003e\"() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\tvec4f(output, _, value) {\n\t\toutput.writeFloat32(value[0]);\n\t\toutput.writeFloat32(value[1]);\n\t\toutput.writeFloat32(value[2]);\n\t\toutput.writeFloat32(value[3]);\n\t},\n\tvec4h(output, _, value) {\n\t\twriteFloat16(output, value[0]);\n\t\twriteFloat16(output, value[1]);\n\t\twriteFloat16(output, value[2]);\n\t\twriteFloat16(output, value[3]);\n\t},\n\tvec4i(output, _, value) {\n\t\toutput.writeInt32(value[0]);\n\t\toutput.writeInt32(value[1]);\n\t\toutput.writeInt32(value[2]);\n\t\toutput.writeInt32(value[3]);\n\t},\n\tvec4u(output, _, value) {\n\t\toutput.writeUint32(value[0]);\n\t\toutput.writeUint32(value[1]);\n\t\toutput.writeUint32(value[2]);\n\t\toutput.writeUint32(value[3]);\n\t},\n\t\"vec4\u003cbool\u003e\"() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\tmat2x2f(output, _, value) {\n\t\tfor (let i = 0; i \u003c value.length; ++i) output.writeFloat32(value[i]);\n\t},\n\tmat3x3f(output, _, value) {\n\t\tfor (let i = 0; i \u003c value.length; ++i) output.writeFloat32(value[i]);\n\t},\n\tmat4x4f(output, _, value) {\n\t\tfor (let i = 0; i \u003c value.length; ++i) output.writeFloat32(value[i]);\n\t},\n\tstruct(output, schema, value) {\n\t\tconst alignment = alignmentOf(schema);\n\t\talignIO_default(output, alignment);\n\t\tfor (const [key, property] of Object.entries(schema.propTypes)) {\n\t\t\talignIO_default(output, alignmentOf(property));\n\t\t\twriteData(output, property, value[key]);\n\t\t}\n\t\talignIO_default(output, alignment);\n\t},\n\tarray(output, schema, value) {\n\t\tif (schema.elementCount === 0) throw new Error(\"Cannot write using a runtime-sized schema.\");\n\t\tconst alignment = alignmentOf(schema);\n\t\talignIO_default(output, alignment);\n\t\tconst beginning = output.currentByteOffset;\n\t\tfor (let i = 0; i \u003c Math.min(schema.elementCount, value.length); i++) {\n\t\t\talignIO_default(output, alignment);\n\t\t\twriteData(output, schema.elementType, value[i]);\n\t\t}\n\t\toutput.seekTo(beginning + sizeOf(schema));\n\t},\n\tptr() {\n\t\tthrow new Error(\"Pointers are not host-shareable\");\n\t},\n\tatomic(output, schema, value) {\n\t\tdataWriters[schema.inner.type]?.(output, schema, value);\n\t},\n\tdecorated(output, schema, value) {\n\t\talignIO_default(output, customAlignmentOf(schema));\n\t\tconst beginning = output.currentByteOffset;\n\t\tdataWriters[schema.inner?.type]?.(output, schema.inner, value);\n\t\toutput.seekTo(beginning + sizeOf(schema));\n\t},\n\tuint8(output, _, value) {\n\t\toutput.writeUint8(value);\n\t},\n\tuint8x2(output, _, value) {\n\t\toutput.writeUint8(value.x);\n\t\toutput.writeUint8(value.y);\n\t},\n\tuint8x4(output, _, value) {\n\t\toutput.writeUint8(value.x);\n\t\toutput.writeUint8(value.y);\n\t\toutput.writeUint8(value.z);\n\t\toutput.writeUint8(value.w);\n\t},\n\tsint8(output, _, value) {\n\t\toutput.writeInt8(value);\n\t},\n\tsint8x2(output, _, value) {\n\t\toutput.writeInt8(value.x);\n\t\toutput.writeInt8(value.y);\n\t},\n\tsint8x4(output, _, value) {\n\t\toutput.writeInt8(value.x);\n\t\toutput.writeInt8(value.y);\n\t\toutput.writeInt8(value.z);\n\t\toutput.writeInt8(value.w);\n\t},\n\tunorm8(output, _, value) {\n\t\toutput.writeUint8(Math.round(value * 255));\n\t},\n\tunorm8x2(output, _, value) {\n\t\toutput.writeUint8(Math.round(value.x * 255));\n\t\toutput.writeUint8(Math.round(value.y * 255));\n\t},\n\tunorm8x4(output, _, value) {\n\t\toutput.writeUint8(Math.round(value.x * 255));\n\t\toutput.writeUint8(Math.round(value.y * 255));\n\t\toutput.writeUint8(Math.round(value.z * 255));\n\t\toutput.writeUint8(Math.round(value.w * 255));\n\t},\n\tsnorm8(output, _, value) {\n\t\toutput.writeInt8(Math.round(value * 127));\n\t},\n\tsnorm8x2(output, _, value) {\n\t\toutput.writeInt8(Math.round(value.x * 127));\n\t\toutput.writeInt8(Math.round(value.y * 127));\n\t},\n\tsnorm8x4(output, _, value) {\n\t\toutput.writeInt8(Math.round(value.x * 127));\n\t\toutput.writeInt8(Math.round(value.y * 127));\n\t\toutput.writeInt8(Math.round(value.z * 127));\n\t\toutput.writeInt8(Math.round(value.w * 127));\n\t},\n\tuint16(output, _, value) {\n\t\toutput.writeUint16(value);\n\t},\n\tuint16x2(output, _, value) {\n\t\toutput.writeUint16(value.x);\n\t\toutput.writeUint16(value.y);\n\t},\n\tuint16x4(output, _, value) {\n\t\toutput.writeUint16(value.x);\n\t\toutput.writeUint16(value.y);\n\t\toutput.writeUint16(value.z);\n\t\toutput.writeUint16(value.w);\n\t},\n\tsint16(output, _, value) {\n\t\toutput.writeInt16(value);\n\t},\n\tsint16x2(output, _, value) {\n\t\toutput.writeInt16(value.x);\n\t\toutput.writeInt16(value.y);\n\t},\n\tsint16x4(output, _, value) {\n\t\toutput.writeInt16(value.x);\n\t\toutput.writeInt16(value.y);\n\t\toutput.writeInt16(value.z);\n\t\toutput.writeInt16(value.w);\n\t},\n\tunorm16(output, _, value) {\n\t\toutput.writeUint16(value * 65535);\n\t},\n\tunorm16x2(output, _, value) {\n\t\toutput.writeUint16(value.x * 65535);\n\t\toutput.writeUint16(value.y * 65535);\n\t},\n\tunorm16x4(output, _, value) {\n\t\toutput.writeUint16(value.x * 65535);\n\t\toutput.writeUint16(value.y * 65535);\n\t\toutput.writeUint16(value.z * 65535);\n\t\toutput.writeUint16(value.w * 65535);\n\t},\n\tsnorm16(output, _, value) {\n\t\toutput.writeInt16(Math.round(value * 32767));\n\t},\n\tsnorm16x2(output, _, value) {\n\t\toutput.writeInt16(Math.round(value.x * 32767));\n\t\toutput.writeInt16(Math.round(value.y * 32767));\n\t},\n\tsnorm16x4(output, _, value) {\n\t\toutput.writeInt16(Math.round(value.x * 32767));\n\t\toutput.writeInt16(Math.round(value.y * 32767));\n\t\toutput.writeInt16(Math.round(value.z * 32767));\n\t\toutput.writeInt16(Math.round(value.w * 32767));\n\t},\n\tfloat16(output, _, value) {\n\t\twriteFloat16(output, value);\n\t},\n\tfloat16x2(output, _, value) {\n\t\twriteFloat16(output, value.x);\n\t\twriteFloat16(output, value.y);\n\t},\n\tfloat16x4(output, _, value) {\n\t\twriteFloat16(output, value.x);\n\t\twriteFloat16(output, value.y);\n\t\twriteFloat16(output, value.z);\n\t\twriteFloat16(output, value.w);\n\t},\n\tfloat32(output, _, value) {\n\t\toutput.writeFloat32(value);\n\t},\n\tfloat32x2(output, _, value) {\n\t\toutput.writeFloat32(value.x);\n\t\toutput.writeFloat32(value.y);\n\t},\n\tfloat32x3(output, _, value) {\n\t\toutput.writeFloat32(value.x);\n\t\toutput.writeFloat32(value.y);\n\t\toutput.writeFloat32(value.z);\n\t},\n\tfloat32x4(output, _, value) {\n\t\toutput.writeFloat32(value.x);\n\t\toutput.writeFloat32(value.y);\n\t\toutput.writeFloat32(value.z);\n\t\toutput.writeFloat32(value.w);\n\t},\n\tuint32(output, _, value) {\n\t\toutput.writeUint32(value);\n\t},\n\tuint32x2(output, _, value) {\n\t\toutput.writeUint32(value.x);\n\t\toutput.writeUint32(value.y);\n\t},\n\tuint32x3(output, _, value) {\n\t\toutput.writeUint32(value.x);\n\t\toutput.writeUint32(value.y);\n\t\toutput.writeUint32(value.z);\n\t},\n\tuint32x4(output, _, value) {\n\t\toutput.writeUint32(value.x);\n\t\toutput.writeUint32(value.y);\n\t\toutput.writeUint32(value.z);\n\t\toutput.writeUint32(value.w);\n\t},\n\tsint32(output, _, value) {\n\t\toutput.writeInt32(value);\n\t},\n\tsint32x2(output, _, value) {\n\t\toutput.writeInt32(value.x);\n\t\toutput.writeInt32(value.y);\n\t},\n\tsint32x3(output, _, value) {\n\t\toutput.writeInt32(value.x);\n\t\toutput.writeInt32(value.y);\n\t\toutput.writeInt32(value.z);\n\t},\n\tsint32x4(output, _, value) {\n\t\toutput.writeInt32(value.x);\n\t\toutput.writeInt32(value.y);\n\t\toutput.writeInt32(value.z);\n\t\toutput.writeInt32(value.w);\n\t},\n\t\"unorm10-10-10-2\"(output, _, value) {\n\t\tlet packed = 0;\n\t\tpacked |= (value.x * 1023 \u0026 1023) \u003c\u003c 22;\n\t\tpacked |= (value.y * 1023 \u0026 1023) \u003c\u003c 12;\n\t\tpacked |= (value.z * 1023 \u0026 1023) \u003c\u003c 2;\n\t\tpacked |= value.w * 3 \u0026 3;\n\t\toutput.writeUint32(packed);\n\t},\n\t\"unorm8x4-bgra\"(output, _, value) {\n\t\toutput.writeUint8(value.z * 255);\n\t\toutput.writeUint8(value.y * 255);\n\t\toutput.writeUint8(value.x * 255);\n\t\toutput.writeUint8(value.w * 255);\n\t},\n\tdisarray(output, schema, value) {\n\t\tconst alignment = alignmentOf(schema);\n\t\talignIO_default(output, alignment);\n\t\tconst beginning = output.currentByteOffset;\n\t\tfor (let i = 0; i \u003c Math.min(schema.elementCount, value.length); i++) {\n\t\t\talignIO_default(output, alignment);\n\t\t\tdataWriters[schema.elementType?.type]?.(output, schema.elementType, value[i]);\n\t\t}\n\t\toutput.seekTo(beginning + sizeOf(schema));\n\t},\n\tunstruct(output, schema, value) {\n\t\tconst propTypes = schema.propTypes;\n\t\tfor (const [key, property] of Object.entries(propTypes)) dataWriters[property.type]?.(output, property, value[key]);\n\t},\n\t\"loose-decorated\"(output, schema, value) {\n\t\talignIO_default(output, customAlignmentOf(schema));\n\t\tconst beginning = output.currentByteOffset;\n\t\tconst writer = dataWriters[schema.inner?.type];\n\t\twriter?.(output, schema.inner, value);\n\t\toutput.seekTo(beginning + sizeOf(schema));\n\t\treturn value;\n\t}\n};\nfunction writeData(output, schema, value) {\n\tif (ArrayBuffer.isView(value)) {\n\t\tconst src = value;\n\t\tconst expected = sizeOf(schema);\n\t\tif (src.byteLength !== expected) logger.warn(\"suspicious\", `TypedArray size mismatch: schema expects ${expected} bytes, got ${src.byteLength}. ` + (src.byteLength \u003c expected ? \"Data truncated.\" : \"Excess ignored.\"));\n\t\tconst start = output.currentByteOffset;\n\t\toutput.writeSlice(new Uint8Array(src.buffer, src.byteOffset, Math.min(src.byteLength, expected)));\n\t\toutput.seekTo(start + expected);\n\t\treturn;\n\t}\n\tconst writer = dataWriters[schema.type];\n\tif (!writer) throw new Error(`Cannot write data of type '${schema.type}'.`);\n\twriter(output, schema, value);\n}\nvar dataReaders = {\n\tbool() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\tf32(input) {\n\t\treturn input.readFloat32();\n\t},\n\tf16(input) {\n\t\treturn readFloat16(input);\n\t},\n\ti32(input) {\n\t\treturn input.readInt32();\n\t},\n\tu32(input) {\n\t\treturn input.readUint32();\n\t},\n\tu16(input) {\n\t\treturn input.readUint16();\n\t},\n\tvec2f(input) {\n\t\treturn vec2f(input.readFloat32(), input.readFloat32());\n\t},\n\tvec3f(input) {\n\t\treturn vec3f(input.readFloat32(), input.readFloat32(), input.readFloat32());\n\t},\n\tvec4f(input) {\n\t\treturn vec4f(input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32());\n\t},\n\tvec2h(input) {\n\t\treturn vec2h(readFloat16(input), readFloat16(input));\n\t},\n\tvec3h(input) {\n\t\treturn vec3h(readFloat16(input), readFloat16(input), readFloat16(input));\n\t},\n\tvec4h(input) {\n\t\treturn vec4h(readFloat16(input), readFloat16(input), readFloat16(input), readFloat16(input));\n\t},\n\tvec2i(input) {\n\t\treturn vec2i(input.readInt32(), input.readInt32());\n\t},\n\tvec3i(input) {\n\t\treturn vec3i(input.readInt32(), input.readInt32(), input.readInt32());\n\t},\n\tvec4i(input) {\n\t\treturn vec4i(input.readInt32(), input.readInt32(), input.readInt32(), input.readInt32());\n\t},\n\tvec2u(input) {\n\t\treturn vec2u(input.readUint32(), input.readUint32());\n\t},\n\tvec3u(input) {\n\t\treturn vec3u(input.readUint32(), input.readUint32(), input.readUint32());\n\t},\n\tvec4u(input) {\n\t\treturn vec4u(input.readUint32(), input.readUint32(), input.readUint32(), input.readUint32());\n\t},\n\t\"vec2\u003cbool\u003e\"() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\t\"vec3\u003cbool\u003e\"() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\t\"vec4\u003cbool\u003e\"() {\n\t\tthrow new Error(\"Booleans are not host-shareable\");\n\t},\n\tmat2x2f(input) {\n\t\treturn mat2x2f(input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32());\n\t},\n\tmat3x3f(input) {\n\t\tconst skipOneAfter = () =\u003e {\n\t\t\tconst value = input.readFloat32();\n\t\t\tinput.readFloat32();\n\t\t\treturn value;\n\t\t};\n\t\treturn mat3x3f(input.readFloat32(), input.readFloat32(), skipOneAfter(), input.readFloat32(), input.readFloat32(), skipOneAfter(), input.readFloat32(), input.readFloat32(), skipOneAfter());\n\t},\n\tmat4x4f(input) {\n\t\treturn mat4x4f(input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32(), input.readFloat32());\n\t},\n\tstruct(input, schema) {\n\t\tconst alignment = alignmentOf(schema);\n\t\talignIO_default(input, alignment);\n\t\tconst result = {};\n\t\tconst propTypes = schema.propTypes;\n\t\tfor (const [key, property] of Object.entries(propTypes)) {\n\t\t\talignIO_default(input, alignmentOf(property));\n\t\t\tresult[key] = readData(input, property);\n\t\t}\n\t\talignIO_default(input, alignment);\n\t\treturn result;\n\t},\n\tarray(input, schema) {\n\t\tif (schema.elementCount === 0) throw new Error(\"Cannot read using a runtime-sized schema.\");\n\t\tconst alignment = alignmentOf(schema);\n\t\tconst elements = [];\n\t\tfor (let i = 0; i \u003c schema.elementCount; i++) {\n\t\t\talignIO_default(input, alignment);\n\t\t\tconst elementType = schema.elementType;\n\t\t\tconst value = readData(input, elementType);\n\t\t\telements.push(value);\n\t\t}\n\t\talignIO_default(input, alignment);\n\t\treturn elements;\n\t},\n\tptr() {\n\t\tthrow new Error(\"Pointers are not host-shareable\");\n\t},\n\tatomic(input, schema) {\n\t\treturn readData(input, schema.inner);\n\t},\n\tdecorated(input, schema) {\n\t\talignIO_default(input, customAlignmentOf(schema));\n\t\tconst beginning = input.currentByteOffset;\n\t\tconst value = readData(input, schema.inner);\n\t\tinput.seekTo(beginning + sizeOf(schema));\n\t\treturn value;\n\t},\n\tuint8: (i) =\u003e i.readUint8(),\n\tuint8x2: (i) =\u003e vec2u(i.readUint8(), i.readUint8()),\n\tuint8x4: (i) =\u003e vec4u(i.readUint8(), i.readUint8(), i.readUint8(), i.readUint8()),\n\tsint8: (i) =\u003e i.readInt8(),\n\tsint8x2: (i) =\u003e {\n\t\treturn vec2i(i.readInt8(), i.readInt8());\n\t},\n\tsint8x4: (i) =\u003e vec4i(i.readInt8(), i.readInt8(), i.readInt8(), i.readInt8()),\n\tunorm8: (i) =\u003e i.readUint8() / 255,\n\tunorm8x2: (i) =\u003e vec2f(i.readUint8() / 255, i.readUint8() / 255),\n\tunorm8x4: (i) =\u003e vec4f(i.readUint8() / 255, i.readUint8() / 255, i.readUint8() / 255, i.readUint8() / 255),\n\tsnorm8: (i) =\u003e i.readInt8() / 127,\n\tsnorm8x2: (i) =\u003e vec2f(i.readInt8() / 127, i.readInt8() / 127),\n\tsnorm8x4: (i) =\u003e vec4f(i.readInt8() / 127, i.readInt8() / 127, i.readInt8() / 127, i.readInt8() / 127),\n\tuint16: (i) =\u003e i.readUint16(),\n\tuint16x2: (i) =\u003e vec2u(i.readUint16(), i.readUint16()),\n\tuint16x4: (i) =\u003e vec4u(i.readUint16(), i.readUint16(), i.readUint16(), i.readUint16()),\n\tsint16: (i) =\u003e i.readInt16(),\n\tsint16x2: (i) =\u003e vec2i(i.readInt16(), i.readInt16()),\n\tsint16x4: (i) =\u003e vec4i(i.readInt16(), i.readInt16(), i.readInt16(), i.readInt16()),\n\tunorm16: (i) =\u003e i.readUint16() / 65535,\n\tunorm16x2: (i) =\u003e vec2f(i.readUint16() / 65535, i.readUint16() / 65535),\n\tunorm16x4: (i) =\u003e vec4f(i.readUint16() / 65535, i.readUint16() / 65535, i.readUint16() / 65535, i.readUint16() / 65535),\n\tsnorm16: (i) =\u003e i.readInt16() / 32767,\n\tsnorm16x2: (i) =\u003e vec2f(i.readInt16() / 32767, i.readInt16() / 32767),\n\tsnorm16x4: (i) =\u003e vec4f(i.readInt16() / 32767, i.readInt16() / 32767, i.readInt16() / 32767, i.readInt16() / 32767),\n\tfloat16(i) {\n\t\treturn readFloat16(i);\n\t},\n\tfloat16x2: (i) =\u003e vec2f(readFloat16(i), readFloat16(i)),\n\tfloat16x4: (i) =\u003e vec4f(readFloat16(i), readFloat16(i), readFloat16(i), readFloat16(i)),\n\tfloat32: (i) =\u003e i.readFloat32(),\n\tfloat32x2: (i) =\u003e vec2f(i.readFloat32(), i.readFloat32()),\n\tfloat32x3: (i) =\u003e vec3f(i.readFloat32(), i.readFloat32(), i.readFloat32()),\n\tfloat32x4: (i) =\u003e vec4f(i.readFloat32(), i.readFloat32(), i.readFloat32(), i.readFloat32()),\n\tuint32: (i) =\u003e i.readUint32(),\n\tuint32x2: (i) =\u003e vec2u(i.readUint32(), i.readUint32()),\n\tuint32x3: (i) =\u003e vec3u(i.readUint32(), i.readUint32(), i.readUint32()),\n\tuint32x4: (i) =\u003e vec4u(i.readUint32(), i.readUint32(), i.readUint32(), i.readUint32()),\n\tsint32: (i) =\u003e i.readInt32(),\n\tsint32x2: (i) =\u003e vec2i(i.readInt32(), i.readInt32()),\n\tsint32x3: (i) =\u003e vec3i(i.readInt32(), i.readInt32(), i.readInt32()),\n\tsint32x4: (i) =\u003e vec4i(i.readInt32(), i.readInt32(), i.readInt32(), i.readInt32()),\n\t\"unorm10-10-10-2\"(i) {\n\t\tconst packed = i.readUint32();\n\t\treturn vec4f((packed \u003e\u003e 22) / 1023, (packed \u003e\u003e 12 \u0026 1023) / 1023, (packed \u003e\u003e 2 \u0026 1023) / 1023, (packed \u0026 3) / 3);\n\t},\n\t\"unorm8x4-bgra\"(i) {\n\t\tconst b = i.readByte() / 255;\n\t\tconst g = i.readByte() / 255;\n\t\treturn vec4f(i.readByte() / 255, g, b, i.readByte() / 255);\n\t},\n\tunstruct(input, schema) {\n\t\tconst result = {};\n\t\tconst propTypes = schema.propTypes;\n\t\tfor (const [key, property] of Object.entries(propTypes)) result[key] = readData(input, property);\n\t\treturn result;\n\t},\n\tdisarray(input, schema) {\n\t\tconst alignment = alignmentOf(schema);\n\t\tconst elements = [];\n\t\tfor (let i = 0; i \u003c schema.elementCount; i++) {\n\t\t\talignIO_default(input, alignment);\n\t\t\telements.push(readData(input, schema.elementType));\n\t\t}\n\t\talignIO_default(input, alignment);\n\t\treturn elements;\n\t},\n\t\"loose-decorated\"(input, schema) {\n\t\talignIO_default(input, customAlignmentOf(schema));\n\t\tconst beginning = input.currentByteOffset;\n\t\tconst value = readData(input, schema.inner);\n\t\tinput.seekTo(beginning + sizeOf(schema));\n\t\treturn value;\n\t}\n};\nfunction readData(input, schema) {\n\tconst reader = dataReaders[schema.type];\n\tif (!reader) throw new Error(`Cannot read data of type '${schema.type}'.`);\n\treturn reader(input, schema);\n}\nvar endianness = /* @__PURE__ */ getSystemEndianness();\nfunction calculateOffsets(options, schema, data) {\n\tconst bufferSize = sizeOf(schema);\n\tconst startOffset = options?.startOffset ?? 0;\n\tlet naturalSize = void 0;\n\tif (isWgslArray(schema) \u0026\u0026 Array.isArray(data)) naturalSize = data.length * roundUp(sizeOf(schema.elementType), alignmentOf(schema.elementType));\n\telse if (ArrayBuffer.isView(data) || data instanceof ArrayBuffer) naturalSize = data.byteLength;\n\tconst naturalEndOffset = naturalSize !== void 0 ? Math.min(startOffset + naturalSize, bufferSize) : void 0;\n\treturn {\n\t\tstartOffset,\n\t\tendOffset: options?.endOffset ?? naturalEndOffset ?? bufferSize\n\t};\n}\nfunction writeToArrayBuffer(buffer$1, schema, data, options) {\n\tconst { startOffset, endOffset } = calculateOffsets(options, schema, data);\n\tif (data instanceof ArrayBuffer || ArrayBuffer.isView(data)) {\n\t\tconst src = data instanceof ArrayBuffer ? new Uint8Array(data) : new Uint8Array(data.buffer, data.byteOffset, data.byteLength);\n\t\tconst regionSize = endOffset - startOffset;\n\t\tif (src.byteLength !== regionSize) logger.warn(\"suspicious\", `Buffer size mismatch: expected ${regionSize} bytes, got ${src.byteLength}. ` + (src.byteLength \u003c regionSize ? \"Data truncated.\" : \"Excess ignored.\"));\n\t\tconst copyLen = Math.min(src.byteLength, regionSize);\n\t\tnew Uint8Array(buffer$1).set(src.subarray(0, copyLen), startOffset);\n\t\treturn;\n\t}\n\tconst dataView = new DataView(buffer$1);\n\tconst isLittleEndian$1 = endianness === \"little\";\n\tconst compiledWriter = getCompiledWriter(schema);\n\tif (compiledWriter) try {\n\t\tcompiledWriter(dataView, startOffset, data, isLittleEndian$1, endOffset);\n\t\treturn;\n\t} catch (error) {\n\t\tlogger.warn(\"fallback\", `Error when using compiled writer for data type '${schema.type}' (${getName(schema) ?? \"unnamed\"}) - this is likely a bug, please submit an issue at https://github.com/software-mansion/TypeGPU/issues\\nUsing fallback writer instead.`, error);\n\t}\n\tconst writer = new BufferWriter(buffer$1);\n\twriter.seekTo(startOffset);\n\twriteData(writer, schema, data);\n}\nfunction readFromArrayBuffer(buffer$1, schema) {\n\treturn readData(new BufferReader(buffer$1), schema);\n}\nfunction convertPartialToPatch(schema, data) {\n\tif (data === void 0 || data === null) return data;\n\tif (isWgslStruct(schema) || isUnstruct(schema)) {\n\t\tconst result = {};\n\t\tconst record = data;\n\t\tfor (const key of Object.keys(schema.propTypes)) {\n\t\t\tconst subSchema = schema.propTypes[key];\n\t\t\tconst value = record[key];\n\t\t\tif (value !== void 0 \u0026\u0026 subSchema) result[key] = convertPartialToPatch(subSchema, value);\n\t\t}\n\t\treturn result;\n\t}\n\tif (isWgslArray(schema) || isDisarray(schema)) {\n\t\tconst arrSchema = schema;\n\t\tconst result = {};\n\t\tfor (const { idx, value } of data) result[idx] = convertPartialToPatch(arrSchema.elementType, value);\n\t\treturn result;\n\t}\n\treturn data;\n}\nvar isLittleEndian = /* @__PURE__ */ getSystemEndianness() === \"little\";\nfunction getPatchInstructions(schema, data, targetBuffer) {\n\tconst totalSize = sizeOf(schema);\n\tif (totalSize === 0 || data === void 0 || data === null) return [];\n\tconst buf = targetBuffer ?? new ArrayBuffer(totalSize);\n\tconst writer = new BufferWriter(buf);\n\tconst compiledView = new DataView(buf);\n\tconst segments = [];\n\tfunction collect(node, value, offset, padding) {\n\t\tif (value === void 0 || value === null) return;\n\t\tif (isWgslStruct(node) || isUnstruct(node)) {\n\t\t\tconst propOffsets = offsetsForProps(node);\n\t\t\tfor (const [key, propOffset] of Object.entries(propOffsets)) {\n\t\t\t\tconst childValue = value[key];\n\t\t\t\tconst subSchema = node.propTypes[key];\n\t\t\t\tif (childValue !== void 0 \u0026\u0026 subSchema) collect(subSchema, childValue, offset + propOffset.offset, propOffset.padding ?? padding);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (isWgslArray(node) || isDisarray(node)) {\n\t\t\tconst arrSchema = node;\n\t\t\tconst elementSize = roundUp(sizeOf(arrSchema.elementType), alignmentOf(arrSchema.elementType));\n\t\t\tconst elementPadding = elementSize - sizeOf(arrSchema.elementType);\n\t\t\tif (ArrayBuffer.isView(value)) {\n\t\t\t\tconst copyLen = Math.min(value.byteLength, arrSchema.elementCount * elementSize);\n\t\t\t\tnew Uint8Array(buf, offset, copyLen).set(new Uint8Array(value.buffer, value.byteOffset, copyLen));\n\t\t\t\tsegments.push({\n\t\t\t\t\tstart: offset,\n\t\t\t\t\tend: offset + copyLen,\n\t\t\t\t\tpadding\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (Array.isArray(value)) {\n\t\t\t\tfor (let i = 0; i \u003c Math.min(arrSchema.elementCount, value.length); i++) collect(arrSchema.elementType, value[i], offset + i * elementSize, elementPadding);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst sparse = value;\n\t\t\tfor (const key of Object.keys(sparse)) {\n\t\t\t\tconst idx = Number(key);\n\t\t\t\tif (!Number.isNaN(idx)) collect(arrSchema.elementType, sparse[key], offset + idx * elementSize, elementPadding);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tconst leafSize = sizeOf(node);\n\t\tconst compiledWriter = getCompiledWriter(node);\n\t\tif (compiledWriter) compiledWriter(compiledView, offset, value, isLittleEndian, offset + leafSize);\n\t\telse {\n\t\t\twriter.seekTo(offset);\n\t\t\twriteData(writer, node, value);\n\t\t}\n\t\tsegments.push({\n\t\t\tstart: offset,\n\t\t\tend: offset + leafSize,\n\t\t\tpadding\n\t\t});\n\t}\n\tcollect(schema, data, 0);\n\tconst instructions = [];\n\tlet run = null;\n\tfor (const seg of segments) if (run \u0026\u0026 seg.start === run.end + (run.padding ?? 0)) run = {\n\t\tstart: run.start,\n\t\tend: seg.end,\n\t\tpadding: seg.padding\n\t};\n\telse {\n\t\tif (run) instructions.push({\n\t\t\tgpuOffset: run.start,\n\t\t\tdata: new Uint8Array(buf, run.start, run.end - run.start).slice()\n\t\t});\n\t\trun = seg;\n\t}\n\tif (run) instructions.push({\n\t\tgpuOffset: run.start,\n\t\tdata: new Uint8Array(buf, run.start, run.end - run.start).slice()\n\t});\n\treturn instructions;\n}\nfunction patchArrayBuffer(buffer$1, schema, data) {\n\tconst instructions = getPatchInstructions(schema, data, buffer$1);\n\tconst mappedView = new Uint8Array(buffer$1);\n\tfor (const { data: data$1, gpuOffset } of instructions) mappedView.set(data$1, gpuOffset);\n}\nvar NotStorageError = class NotStorageError extends Error {\n\tconstructor(value) {\n\t\tsuper(`Resource '${getName(value) ?? \"\u003cunnamed\u003e\"}' cannot be bound as 'storage'. Use .$usage('storage') to allow it.`);\n\t\tObject.setPrototypeOf(this, NotStorageError.prototype);\n\t}\n};\nfunction isBufferBinding(value) {\n\treturn value instanceof TgpuBufferBindingImpl;\n}\nfunction isUniformBinding(value) {\n\treturn isBufferBinding(value) \u0026\u0026 value.resourceType === \"uniform\";\n}\nfunction isMutableBinding(value) {\n\treturn isBufferBinding(value) \u0026\u0026 value.resourceType === \"mutable\";\n}\nfunction isReadonlyBinding(value) {\n\treturn isBufferBinding(value) \u0026\u0026 value.resourceType === \"readonly\";\n}\nvar TgpuBufferBindingImpl = class TgpuBufferBindingImpl {\n\t[$soul];\n\t[$getNameForward];\n\tresourceType;\n\tstatic #_ = (() =\u003e {\n\t\tTgpuBufferBindingImpl.prototype[$internal] = true;\n\t\tmakeDereferenceable(makeResolvable(TgpuBufferBindingImpl.prototype, {\n\t\t\tasString() {\n\t\t\t\treturn `${this.resourceType}BufferBinding:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t\t\t},\n\t\t\tresolve(ctx) {\n\t\t\t\tconst dataType = this.buffer.dataType;\n\t\t\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\t\t\tconst { group, binding } = ctx.allocateFixedEntry(this.resourceType === \"uniform\" ? { uniform: dataType } : {\n\t\t\t\t\tstorage: dataType,\n\t\t\t\t\taccess: this.resourceType\n\t\t\t\t}, this.buffer);\n\t\t\t\treturn ctx.gen.declareGlobalVar({\n\t\t\t\t\tgroup,\n\t\t\t\t\tbinding,\n\t\t\t\t\tscope: this.resourceType,\n\t\t\t\t\tid,\n\t\t\t\t\tdataType,\n\t\t\t\t\tinit: void 0\n\t\t\t\t});\n\t\t\t}\n\t\t}), {\n\t\t\tcodegenMode: { getBaseSnippet(trackingProxy) {\n\t\t\t\treturn snip(trackingProxy, this.buffer.dataType, this.resourceType, false);\n\t\t\t} },\n\t\t\tsimulateMode: {\n\t\t\t\tget(state) {\n\t\t\t\t\tif (!state.buffers.has(this.buffer)) state.buffers.set(this.buffer, schemaCallWrapper(this.buffer.dataType, this.buffer.initial));\n\t\t\t\t\treturn state.buffers.get(this.buffer);\n\t\t\t\t},\n\t\t\t\tset(state, value) {\n\t\t\t\t\tstate.buffers.set(this.buffer, value);\n\t\t\t\t}\n\t\t\t},\n\t\t\tnormalMode: {\n\t\t\t\tget() {\n\t\t\t\t\tthrow new IllegalBufferAccessError(isInsideTgpuFn() ? `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()`\");\n\t\t\t\t},\n\t\t\t\tset() {\n\t\t\t\t\tthrow new IllegalBufferAccessError(isInsideTgpuFn() ? `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()`\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t})();\n\tconstructor(usage, buffer$1) {\n\t\tthis.resourceType = usage;\n\t\tthis[$getNameForward] = buffer$1;\n\t\tthis[$soul] = {\n\t\t\ttype: usage,\n\t\t\tbuffer: buffer$1,\n\t\t\tlabel: void 0\n\t\t};\n\t}\n\tget buffer() {\n\t\treturn this[$soul].buffer;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n\twrite(data, options) {\n\t\tthis.buffer.write(data, options);\n\t}\n\twritePartial(data) {\n\t\tthis.buffer.writePartial(data);\n\t}\n\tpatch(data) {\n\t\tthis.buffer.patch(data);\n\t}\n\tread() {\n\t\treturn this.buffer.read();\n\t}\n};\nvar mutableUsageMap = /* @__PURE__ */ new WeakMap();\nfunction mutable(buffer$1) {\n\tif (!isUsableAsStorage(buffer$1)) throw new Error(`Cannot call as('mutable') on ${buffer$1}, as it is not allowed to be used as storage. To allow it, call .$usage('storage') when creating the buffer.`);\n\tlet usage = mutableUsageMap.get(buffer$1);\n\tif (!usage) {\n\t\tusage = new TgpuBufferBindingImpl(\"mutable\", buffer$1);\n\t\tmutableUsageMap.set(buffer$1, usage);\n\t}\n\treturn usage;\n}\nvar readonlyUsageMap = /* @__PURE__ */ new WeakMap();\nfunction readonly(buffer$1) {\n\tif (!isUsableAsStorage(buffer$1)) throw new Error(`Cannot call as('readonly') on ${buffer$1}, as it is not allowed to be used as storage. To allow it, call .$usage('storage') when creating the buffer.`);\n\tlet usage = readonlyUsageMap.get(buffer$1);\n\tif (!usage) {\n\t\tusage = new TgpuBufferBindingImpl(\"readonly\", buffer$1);\n\t\treadonlyUsageMap.set(buffer$1, usage);\n\t}\n\treturn usage;\n}\nvar uniformUsageMap = /* @__PURE__ */ new WeakMap();\nfunction uniform(buffer$1) {\n\tif (!isUsableAsUniform(buffer$1)) throw new Error(`Cannot call as('uniform') on ${buffer$1}, as it is not allowed to be used as a uniform. To allow it, call .$usage('uniform') when creating the buffer.`);\n\tlet usage = uniformUsageMap.get(buffer$1);\n\tif (!usage) {\n\t\tusage = new TgpuBufferBindingImpl(\"uniform\", buffer$1);\n\t\tuniformUsageMap.set(buffer$1, usage);\n\t}\n\treturn usage;\n}\nfunction warnIfOverflow(layouts, limits) {\n\tconst entries = Object.values(layouts).flatMap((layout) =\u003e Object.values(layout.entries)).filter((entry) =\u003e entry !== null);\n\tconst uniform$1 = entries.filter((entry) =\u003e \"uniform\" in entry).length;\n\tconst storage = entries.filter((entry) =\u003e \"storage\" in entry).length;\n\tif (uniform$1 \u003e limits.maxUniformBuffersPerShaderStage) logger.warn(\"webgpu-limits-exceeded\", `Total number of uniform buffers (${uniform$1}) exceeds maxUniformBuffersPerShaderStage (${limits.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.`);\n\tif (storage \u003e limits.maxStorageBuffersPerShaderStage) logger.warn(\"webgpu-limits-exceeded\", `Total number of storage buffers (${storage}) exceeds maxStorageBuffersPerShaderStage (${limits.maxStorageBuffersPerShaderStage}).`);\n}\nfunction requiredAlignOf(schema) {\n\tif (isWgslStruct(schema) || isWgslArray(schema)) return roundUp(alignmentOf(schema), 16);\n\treturn alignmentOf(schema);\n}\nfunction warnIfNotUniformAligned(schema) {\n\tif (isWgslArray(schema)) {\n\t\twarnIfNotUniformAligned(schema.elementType);\n\t\tconst stride = roundUp(sizeOf(schema.elementType), alignmentOf(schema.elementType));\n\t\tif (stride % 16 !== 0) logger.warn(\"uniform-schema-misaligned\", `\\\nSchema '${getName(schema.elementType) ?? \"\u003cunnamed\u003e\"}' is used in an array in a uniform buffer, and its stride (${stride}) 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'.`);\n\t}\n\tif (isWgslStruct(schema)) {\n\t\tObject.values(schema.propTypes).forEach(warnIfNotUniformAligned);\n\t\tObject.entries(schema.propTypes).forEach(([key, value]) =\u003e {\n\t\t\tconst offset = memoryLayoutOf(schema, (schema$1) =\u003e schema$1[key]).offset;\n\t\t\tconst requiredAlignment = requiredAlignOf(value);\n\t\t\tif (offset % requiredAlignment) logger.warn(\"uniform-schema-misaligned\", `\\\nSchema '${getName(schema) ?? \"\u003cunnamed\u003e\"}' is used in a uniform buffer, and its property '${key}' does not meet required alignment (offset is ${offset}, required alignment is ${requiredAlignment}).\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 '${key}' in 'd.align(${requiredAlignment}, ...)'.`);\n\t\t});\n\t\tconst keys = Object.keys(schema.propTypes);\n\t\tfor (let i = 0; i \u003c keys.length - 1; i++) {\n\t\t\tconst thisKey = keys[i];\n\t\t\tconst nextKey = keys[i + 1];\n\t\t\tinvariant(thisKey \u0026\u0026 nextKey);\n\t\t\tconst thisValue = schema.propTypes[thisKey];\n\t\t\tinvariant(thisValue);\n\t\t\tif (!isWgslStruct(thisValue)) continue;\n\t\t\tconst minimumDifference = roundUp(sizeOf(thisValue), 16);\n\t\t\tconst thisKeyOffset = memoryLayoutOf(schema, (schema$1) =\u003e schema$1[thisKey]).offset;\n\t\t\tconst difference$1 = memoryLayoutOf(schema, (schema$1) =\u003e schema$1[nextKey]).offset - thisKeyOffset;\n\t\t\tif (minimumDifference \u003e difference$1) logger.warn(\"uniform-schema-misaligned\", `\\\nSchema '${getName(schema) ?? \"\u003cunnamed\u003e\"}' is used in a uniform buffer, and the difference between memory offsets of '${thisKey}' and '${nextKey}' props (${difference$1}) is less than recommended (${minimumDifference}).\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 '${thisKey}' prop in 'd.size(${minimumDifference}, ...)'.`);\n\t\t}\n\t}\n}\nvar usageToUsageConstructor = {\n\tuniform,\n\tmutable,\n\treadonly\n};\nfunction INTERNAL_createBuffer(group, typeSchema, initialOrBuffer) {\n\tif (!isWgslData(typeSchema)) return new TgpuBufferImpl(group, typeSchema, initialOrBuffer, [\"storage\", \"uniform\"]);\n\treturn new TgpuBufferImpl(group, typeSchema, initialOrBuffer);\n}\nvar TgpuBufferImpl = class {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"buffer\";\n\t#ownBuffer;\n\t#destroyed = false;\n\t#internalBuffer;\n\tget #hostBuffer() {\n\t\treturn this.#internalBuffer ??= new ArrayBuffer(sizeOf(this.dataType));\n\t}\n\t#mappedRange;\n\t#initialCallback;\n\t#disallowedUsages;\n\tinitial;\n\tusableAsUniform = false;\n\tusableAsStorage = false;\n\tusableAsVertex = false;\n\tusableAsIndex = false;\n\tusableAsIndirect = false;\n\tconstructor(root, dataType, initialOrBuffer, disallowedUsages) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"buffer\",\n\t\t\tdevice: root.device,\n\t\t\tdataType,\n\t\t\tflags: GPUBufferUsage.COPY_DST | GPUBufferUsage.COPY_SRC,\n\t\t\tusages: [],\n\t\t\traw: void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis.#disallowedUsages = disallowedUsages;\n\t\tif (isGPUBuffer(initialOrBuffer)) {\n\t\t\tthis.#ownBuffer = false;\n\t\t\tthis[$soul].raw = initialOrBuffer;\n\t\t} else {\n\t\t\tthis.#ownBuffer = true;\n\t\t\tif (typeof initialOrBuffer === \"function\") this.#initialCallback = initialOrBuffer;\n\t\t\telse this.initial = initialOrBuffer;\n\t\t}\n\t\tthis[$internal] = {\n\t\t\troot,\n\t\t\tmaterialize: () =\u003e {\n\t\t\t\tif (this.#destroyed) throw new Error(\"This buffer has been destroyed\");\n\t\t\t\tconst soul = this[$soul];\n\t\t\t\tif (!soul.raw) {\n\t\t\t\t\tsoul.raw = soul.device.createBuffer({\n\t\t\t\t\t\tsize: sizeOf(soul.dataType),\n\t\t\t\t\t\tusage: soul.flags,\n\t\t\t\t\t\tmappedAtCreation: !!this.initial || !!this.#initialCallback,\n\t\t\t\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\"\n\t\t\t\t\t});\n\t\t\t\t\tif (this.initial || this.#initialCallback) {\n\t\t\t\t\t\tif (this.#initialCallback) this.#initialCallback(this);\n\t\t\t\t\t\telse if (this.initial) writeToArrayBuffer(this.#getMappedRange(), this.dataType, this.initial);\n\t\t\t\t\t\tthis.#unmapBuffer();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn soul.raw;\n\t\t\t}\n\t\t};\n\t}\n\tget dataType() {\n\t\treturn this[$soul].dataType;\n\t}\n\tget flags() {\n\t\treturn this[$soul].flags;\n\t}\n\tset flags(value) {\n\t\tthis[$soul].flags = value;\n\t}\n\tget buffer() {\n\t\treturn this[$internal].materialize();\n\t}\n\tget destroyed() {\n\t\treturn this.#destroyed;\n\t}\n\tget arrayBuffer() {\n\t\tif (this.buffer.mapState === \"mapped\") return this.#getMappedRange();\n\t\treturn this.#hostBuffer;\n\t}\n\t#getMappedRange() {\n\t\tconst raw = this[$soul].raw;\n\t\tif (!raw || raw.mapState !== \"mapped\") throw new Error(\"Buffer is not mapped.\");\n\t\tthis.#mappedRange ??= raw.getMappedRange();\n\t\treturn this.#mappedRange;\n\t}\n\t#unmapBuffer() {\n\t\tconst raw = this[$soul].raw;\n\t\tif (!raw || raw.mapState !== \"mapped\") return;\n\t\tthis.#mappedRange = void 0;\n\t\traw.unmap();\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\tconst raw = this[$soul].raw;\n\t\tif (raw) raw.label = label;\n\t\treturn this;\n\t}\n\t$usage(...usages) {\n\t\tfor (const usage of usages) {\n\t\t\tif (this.#disallowedUsages?.includes(usage)) throw new Error(`Buffer of type ${this.dataType.type} cannot be used as ${usage}`);\n\t\t\tif (usage === \"uniform\") warnIfNotUniformAligned(this.dataType);\n\t\t\tthis.flags |= usage === \"uniform\" ? GPUBufferUsage.UNIFORM : 0;\n\t\t\tthis.flags |= usage === \"storage\" ? GPUBufferUsage.STORAGE : 0;\n\t\t\tthis.flags |= usage === \"vertex\" ? GPUBufferUsage.VERTEX : 0;\n\t\t\tthis.flags |= usage === \"index\" ? GPUBufferUsage.INDEX : 0;\n\t\t\tthis.flags |= usage === \"indirect\" ? GPUBufferUsage.INDIRECT : 0;\n\t\t\tthis.usableAsUniform = this.usableAsUniform || usage === \"uniform\";\n\t\t\tthis.usableAsStorage = this.usableAsStorage || usage === \"storage\";\n\t\t\tthis.usableAsVertex = this.usableAsVertex || usage === \"vertex\";\n\t\t\tthis.usableAsIndex = this.usableAsIndex || usage === \"index\";\n\t\t\tthis.usableAsIndirect = this.usableAsIndirect || usage === \"indirect\";\n\t\t\tif (!this[$soul].usages.includes(usage)) this[$soul].usages.push(usage);\n\t\t}\n\t\treturn this;\n\t}\n\t$addFlags(flags) {\n\t\tif (!this.#ownBuffer) throw new Error(\"Cannot add flags to a buffer that is not managed by TypeGPU.\");\n\t\tif (flags \u0026 GPUBufferUsage.MAP_READ) {\n\t\t\tthis.flags = GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ;\n\t\t\treturn this;\n\t\t}\n\t\tif (flags \u0026 GPUBufferUsage.MAP_WRITE) {\n\t\t\tthis.flags = GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE;\n\t\t\treturn this;\n\t\t}\n\t\tthis.flags |= flags;\n\t\treturn this;\n\t}\n\tcompileWriter() {\n\t\tgetCompiledWriter(this.dataType);\n\t}\n\twrite(data, options) {\n\t\tconst gpuBuffer = this.buffer;\n\t\tif (gpuBuffer.mapState === \"mapped\") {\n\t\t\tconst mapped = this.#getMappedRange();\n\t\t\tif (data instanceof ArrayBuffer \u0026\u0026 data === mapped) return;\n\t\t\twriteToArrayBuffer(mapped, this.dataType, data, options);\n\t\t\treturn;\n\t\t}\n\t\tif (!(data instanceof ArrayBuffer \u0026\u0026 data === this.#hostBuffer)) writeToArrayBuffer(this.#hostBuffer, this.dataType, data, options);\n\t\tconst { startOffset, endOffset } = calculateOffsets(options, this.dataType, data);\n\t\tconst size$1 = endOffset - startOffset;\n\t\tthis[$soul].device.queue.writeBuffer(gpuBuffer, startOffset, this.#hostBuffer, startOffset, size$1);\n\t}\n\twritePartial(data) {\n\t\tthis.patch(convertPartialToPatch(this.dataType, data));\n\t}\n\tpatch(data) {\n\t\tconst gpuBuffer = this.buffer;\n\t\tif (gpuBuffer.mapState === \"mapped\") patchArrayBuffer(this.#getMappedRange(), this.dataType, data);\n\t\telse {\n\t\t\tconst instructions = getPatchInstructions(this.dataType, data, this.#hostBuffer);\n\t\t\tfor (const { data: data$1, gpuOffset } of instructions) this[$soul].device.queue.writeBuffer(gpuBuffer, gpuOffset, data$1);\n\t\t}\n\t}\n\tclear(encoder) {\n\t\tconst gpuBuffer = this.buffer;\n\t\tif (encoder) {\n\t\t\tencoder[$internal].rawEncoder.clearBuffer(gpuBuffer);\n\t\t\treturn;\n\t\t}\n\t\tif (gpuBuffer.mapState === \"mapped\") {\n\t\t\tnew Uint8Array(this.#getMappedRange()).fill(0);\n\t\t\treturn;\n\t\t}\n\t\tconst rawEncoder = this[$soul].device.createCommandEncoder();\n\t\trawEncoder.clearBuffer(gpuBuffer);\n\t\tthis[$soul].device.queue.submit([rawEncoder.finish()]);\n\t}\n\tcopyFrom(srcBuffer, encoder) {\n\t\tif (this.buffer.mapState === \"mapped\") throw new Error(\"Cannot copy to a mapped buffer.\");\n\t\tconst size$1 = sizeOf(this.dataType);\n\t\tif (encoder) {\n\t\t\tencoder[$internal].rawEncoder.copyBufferToBuffer(srcBuffer.buffer, 0, this.buffer, 0, size$1);\n\t\t\treturn;\n\t\t}\n\t\tconst rawEncoder = this[$soul].device.createCommandEncoder();\n\t\trawEncoder.copyBufferToBuffer(srcBuffer.buffer, 0, this.buffer, 0, size$1);\n\t\tthis[$soul].device.queue.submit([rawEncoder.finish()]);\n\t}\n\tasync read() {\n\t\tconst gpuBuffer = this.buffer;\n\t\tif (gpuBuffer.mapState === \"mapped\") return readFromArrayBuffer(this.#getMappedRange(), this.dataType);\n\t\tif (gpuBuffer.usage \u0026 GPUBufferUsage.MAP_READ) {\n\t\t\tawait gpuBuffer.mapAsync(GPUMapMode.READ);\n\t\t\tconst res$1 = readFromArrayBuffer(this.#getMappedRange(), this.dataType);\n\t\t\tthis.#unmapBuffer();\n\t\t\treturn res$1;\n\t\t}\n\t\tconst stagingBuffer = this[$soul].device.createBuffer({\n\t\t\tsize: sizeOf(this.dataType),\n\t\t\tusage: GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ\n\t\t});\n\t\tconst commandEncoder = this[$soul].device.createCommandEncoder();\n\t\tcommandEncoder.copyBufferToBuffer(gpuBuffer, 0, stagingBuffer, 0, sizeOf(this.dataType));\n\t\tthis[$soul].device.queue.submit([commandEncoder.finish()]);\n\t\tawait stagingBuffer.mapAsync(GPUMapMode.READ, 0, sizeOf(this.dataType));\n\t\tconst res = readFromArrayBuffer(stagingBuffer.getMappedRange(), this.dataType);\n\t\tstagingBuffer.unmap();\n\t\tstagingBuffer.destroy();\n\t\treturn res;\n\t}\n\tas(usage) {\n\t\treturn usageToUsageConstructor[usage](this);\n\t}\n\tdestroy() {\n\t\tif (this.#destroyed) return;\n\t\tthis.#destroyed = true;\n\t\tthis.#mappedRange = void 0;\n\t\tif (this.#ownBuffer) this[$soul].raw?.destroy();\n\t}\n\ttoString() {\n\t\treturn `buffer:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n};\nvar ConfigurableImpl = class ConfigurableImpl {\n\tbindings;\n\tconstructor(bindings) {\n\t\tthis.bindings = bindings;\n\t}\n\twith(slot$1, value) {\n\t\treturn new ConfigurableImpl([...this.bindings, [isAccessor(slot$1) || isMutableAccessor(slot$1) ? slot$1.slot : slot$1, value]]);\n\t}\n\tpipe(transform) {\n\t\tconst newCfg = transform(this);\n\t\treturn new ConfigurableImpl([...this.bindings, ...newCfg.bindings]);\n\t}\n};\nfunction* naturalsExcept(excluded) {\n\tlet next = 0;\n\twhile (true) {\n\t\tif (!excluded.has(next)) yield next;\n\t\tnext++;\n\t}\n}\nfunction INTERNAL_createSampler(props, root) {\n\treturn new TgpuFixedSamplerImpl(sampler(), props, root);\n}\nfunction INTERNAL_createComparisonSampler(props, root) {\n\treturn new TgpuFixedSamplerImpl(comparisonSampler(), props, root);\n}\nfunction isSampler(resource) {\n\tconst maybe = resource;\n\treturn maybe?.resourceType === \"sampler\" \u0026\u0026 !!maybe[$internal];\n}\nfunction isComparisonSampler(resource) {\n\tconst maybe = resource;\n\treturn maybe?.resourceType === \"sampler-comparison\" \u0026\u0026 !!maybe[$internal];\n}\nvar TgpuLaidOutSamplerImpl = class TgpuLaidOutSamplerImpl {\n\t[$internal] = { materialize: void 0 };\n\tresourceType;\n\tschema;\n\t#membership;\n\tstatic #_ = makeDereferenceable(makeResolvable(TgpuLaidOutSamplerImpl.prototype, {\n\t\tasString() {\n\t\t\treturn `${this.resourceType}:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t\t},\n\t\tresolve(ctx) {\n\t\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\t\tconst group = ctx.allocateLayoutEntry(this.#membership.layout);\n\t\t\tctx.addDeclaration(`@group(${group}) @binding(${this.#membership.idx}) var ${id}: ${ctx.resolve(this.schema).value};`, id);\n\t\t\treturn snip(id, this.schema, \"handle\");\n\t\t}\n\t}), {\n\t\tcodegenMode: { getBaseSnippet(trackingProxy) {\n\t\t\treturn snip(trackingProxy, this.schema, \"handle\", false);\n\t\t} },\n\t\tnormalMode: { get() {\n\t\t\tthrow new Error(\"Direct access to sampler values is possible only as part of a compute dispatch or draw call.\");\n\t\t} }\n\t});\n\tconstructor(schema, membership) {\n\t\tthis.schema = schema;\n\t\tthis.#membership = membership;\n\t\tthis.resourceType = schema.type === \"sampler_comparison\" ? \"sampler-comparison\" : \"sampler\";\n\t\tsetName(this, membership.key);\n\t}\n};\nvar TgpuFixedSamplerImpl = class TgpuFixedSamplerImpl {\n\t[$internal];\n\t[$soul];\n\tresourceType;\n\tschema;\n\t#filtering;\n\tstatic #_ = makeDereferenceable(makeResolvable(TgpuFixedSamplerImpl.prototype, {\n\t\tasString() {\n\t\t\treturn `${this.resourceType}:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t\t},\n\t\tresolve(ctx) {\n\t\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\t\tconst { group, binding } = ctx.allocateFixedEntry(this.schema.type === \"sampler_comparison\" ? { sampler: \"comparison\" } : { sampler: this.#filtering ? \"filtering\" : \"non-filtering\" }, this);\n\t\t\tctx.addDeclaration(`@group(${group}) @binding(${binding}) var ${id}: ${ctx.resolve(this.schema).value};`, id);\n\t\t\treturn snip(id, this.schema, \"handle\");\n\t\t}\n\t}), {\n\t\tcodegenMode: { getBaseSnippet(trackingProxy) {\n\t\t\treturn snip(trackingProxy, this.schema, \"handle\", false);\n\t\t} },\n\t\tnormalMode: { get() {\n\t\t\tthrow new Error(\"Direct access to sampler values is possible only as part of a compute dispatch or draw call.\");\n\t\t} }\n\t});\n\tconstructor(schema, props, root) {\n\t\tthis.schema = schema;\n\t\tthis.resourceType = schema.type === \"sampler_comparison\" ? \"sampler-comparison\" : \"sampler\";\n\t\tthis[$soul] = {\n\t\t\ttype: this.resourceType,\n\t\t\tdevice: root.device,\n\t\t\tprops,\n\t\t\traw: void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis[$internal] = {\n\t\t\troot,\n\t\t\tmaterialize: () =\u003e {\n\t\t\t\tconst soul = this[$soul];\n\t\t\t\tif (!soul.raw) soul.raw = soul.device.createSampler({\n\t\t\t\t\t...soul.props,\n\t\t\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\"\n\t\t\t\t});\n\t\t\t\treturn soul.raw;\n\t\t\t}\n\t\t};\n\t\tthis.#filtering = props.minFilter === \"linear\" || props.magFilter === \"linear\" || props.mipmapFilter === \"linear\";\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n};\nvar TgpuExternalTextureImpl = class {\n\tresourceType = \"external-texture\";\n\t[$internal] = true;\n\tschema;\n\t#membership;\n\tconstructor(schema, membership) {\n\t\tthis.schema = schema;\n\t\tthis.#membership = membership;\n\t\tsetName(this, membership.key);\n\t}\n\t[$resolve](ctx) {\n\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\tconst group = ctx.allocateLayoutEntry(this.#membership.layout);\n\t\tctx.addDeclaration(`@group(${group}) @binding(${this.#membership.idx}) var ${id}: ${ctx.resolve(this.schema).value};`, id);\n\t\treturn snip(id, textureExternal(), \"handle\");\n\t}\n\tget [$gpuValueOf]() {\n\t\tconst schema = this.schema;\n\t\treturn new Proxy({\n\t\t\t[$internal]: true,\n\t\t\tget [$ownSnippet]() {\n\t\t\t\treturn snip(this, schema, \"handle\", false);\n\t\t\t},\n\t\t\t[$resolve]: (ctx) =\u003e ctx.resolve(this),\n\t\t\ttoString: () =\u003e `textureExternal:${getName(this) ?? \"\u003cunnamed\u003e\"}.$`\n\t\t}, valueProxyHandler);\n\t}\n\tget $() {\n\t\tif (inCodegenMode()) return this[$gpuValueOf];\n\t\tthrow 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\");\n\t}\n\ttoString() {\n\t\treturn `textureExternal:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n};\nvar DEPTH_ASPECT_NON_COPYABLE = {\n\tchannelType: f32,\n\tvectorType: vec4f,\n\tsampleTypes: [\"depth\", \"unfilterable-float\"],\n\ttexelSize: \"non-copyable\"\n};\nvar DEPTH_ASPECT_16 = {\n\tchannelType: f32,\n\tvectorType: vec4f,\n\tsampleTypes: [\"depth\", \"unfilterable-float\"],\n\ttexelSize: 2\n};\nvar DEPTH_ASPECT_32 = {\n\tchannelType: f32,\n\tvectorType: vec4f,\n\tsampleTypes: [\"depth\", \"unfilterable-float\"],\n\ttexelSize: 4\n};\nvar STENCIL_ASPECT = {\n\tchannelType: u32,\n\tvectorType: vec4u,\n\tsampleTypes: [\"uint\"],\n\ttexelSize: 1\n};\nvar formatInfoCache = /* @__PURE__ */ new Map();\nfunction getTextureFormatInfo(format) {\n\tlet info = formatInfoCache.get(format);\n\tif (info === void 0) {\n\t\tinfo = createFormatInfo(format);\n\t\tformatInfoCache.set(format, info);\n\t}\n\treturn info;\n}\nfunction createFormatInfo(format) {\n\tconst channelType = parseChannelType(format);\n\tconst depthAspect = getDepthAspect(format);\n\tconst hasStencil = format.includes(\"stencil\");\n\treturn {\n\t\tchannelType,\n\t\tvectorType: channelType === u32 ? vec4u : channelType === i32 ? vec4i : vec4f,\n\t\ttexelSize: parseTexelSize(format),\n\t\tsampleTypes: parseSampleTypes(format),\n\t\tcanRenderAttachment: canRenderAttachment(format),\n\t\t...depthAspect \u0026\u0026 { depthAspect },\n\t\t...hasStencil \u0026\u0026 { stencilAspect: STENCIL_ASPECT }\n\t};\n}\nfunction getDepthAspect(format) {\n\tif (format === \"depth16unorm\") return DEPTH_ASPECT_16;\n\tif (format === \"depth32float\" || format === \"depth32float-stencil8\") return DEPTH_ASPECT_32;\n\tif (format === \"depth24plus\" || format === \"depth24plus-stencil8\") return DEPTH_ASPECT_NON_COPYABLE;\n}\nfunction canRenderAttachment(format) {\n\tif (format.startsWith(\"bc\") || format.startsWith(\"etc2\") || format.startsWith(\"eac\") || format.startsWith(\"astc\")) return false;\n\tif (format === \"rgb9e5ufloat\") return false;\n\treturn true;\n}\nfunction parseChannelType(format) {\n\tif (format === \"stencil8\") return u32;\n\tif (format.includes(\"uint\")) return u32;\n\tif (format.includes(\"sint\")) return i32;\n\treturn f32;\n}\nfunction parseTexelSize(format) {\n\tconst [, channels, bits] = format.match(/^(rgba|bgra|rg|r)(8|16|32)/) ?? [];\n\tif (channels \u0026\u0026 bits) return channels.length * Number(bits) / 8;\n\tif (format === \"stencil8\") return 1;\n\tif (format === \"depth16unorm\") return 2;\n\tif (format === \"depth32float\") return 4;\n\tif (format === \"depth32float-stencil8\") return 5;\n\tif (format === \"depth24plus\" || format === \"depth24plus-stencil8\") return \"non-copyable\";\n\tif (/^(bc[14]-|etc2-rgb8|eac-r11)/.test(format)) return 8;\n\tif (/^(bc|astc-|etc2-rgba|eac-rg)/.test(format)) return 16;\n\treturn 4;\n}\nfunction parseSampleTypes(format) {\n\tif (format === \"stencil8\") return [\"uint\"];\n\tif (format.includes(\"uint\")) return [\"uint\"];\n\tif (format.includes(\"sint\")) return [\"sint\"];\n\tif (format.includes(\"depth\")) return [\"depth\", \"unfilterable-float\"];\n\tif (/^(r|rg|rgba)16(u|s)norm$/.test(format)) return [\"unfilterable-float\"];\n\treturn [\"float\", \"unfilterable-float\"];\n}\nvar FLOAT32_FORMATS = new Set([\n\t\"r32float\",\n\t\"rg32float\",\n\t\"rgba32float\"\n]);\nfunction getEffectiveSampleTypes(device, format) {\n\tif (FLOAT32_FORMATS.has(format) \u0026\u0026 !device.features.has(\"float32-filterable\")) return [\"unfilterable-float\"];\n\treturn getTextureFormatInfo(format).sampleTypes;\n}\nfunction getImageSourceDimensions(source) {\n\tconst { videoWidth, videoHeight } = source;\n\tif (videoWidth \u0026\u0026 videoHeight) return {\n\t\twidth: videoWidth,\n\t\theight: videoHeight\n\t};\n\tconst { naturalWidth, naturalHeight } = source;\n\tif (naturalWidth \u0026\u0026 naturalHeight) return {\n\t\twidth: naturalWidth,\n\t\theight: naturalHeight\n\t};\n\tconst { codedWidth, codedHeight } = source;\n\tif (codedWidth \u0026\u0026 codedHeight) return {\n\t\twidth: codedWidth,\n\t\theight: codedHeight\n\t};\n\tconst { width, height } = source;\n\tif (width \u0026\u0026 height) return {\n\t\twidth,\n\t\theight\n\t};\n\tthrow new Error(\"Cannot determine dimensions of the provided image source.\");\n}\nvar FULLSCREEN_VERTEX_SHADER = `\nstruct VertexOutput {\n  @builtin(position) pos: vec4f,\n  @location(0) uv: vec2f,\n}\n\n@vertex\nfn vs_main(@builtin(vertex_index) i: u32) -\u003e 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}`;\nvar SAMPLE_FRAGMENT_SHADER = `\n@group(0) @binding(0) var src: texture_2d\u003cf32\u003e;\n@group(0) @binding(1) var samp: sampler;\n\n@fragment\nfn fs_main(@location(0) uv: vec2f) -\u003e @location(0) vec4f {\n  return textureSample(src, samp, uv);\n}`;\nvar GATHER_FRAGMENT_SHADER = `\n@group(0) @binding(0) var src: texture_2d\u003cf32\u003e;\n@group(0) @binding(1) var samp: sampler;\n\n@fragment\nfn fs_main(@location(0) uv: vec2f) -\u003e @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}`;\nvar blitCache = /* @__PURE__ */ new WeakMap();\nfunction getOrCreateDeviceCache(device) {\n\tlet cache = blitCache.get(device);\n\tif (!cache) {\n\t\tcache = {\n\t\t\tvertexModule: device.createShaderModule({ code: FULLSCREEN_VERTEX_SHADER }),\n\t\t\tfilterableResources: /* @__PURE__ */ new Map(),\n\t\t\tlayoutResources: /* @__PURE__ */ new Map()\n\t\t};\n\t\tblitCache.set(device, cache);\n\t}\n\treturn cache;\n}\nfunction getBlitResources(device, filterable, sampleType) {\n\tconst cache = getOrCreateDeviceCache(device);\n\tlet filterableRes = cache.filterableResources.get(filterable);\n\tif (!filterableRes) {\n\t\tfilterableRes = {\n\t\t\tfragmentModule: device.createShaderModule({ code: filterable ? SAMPLE_FRAGMENT_SHADER : GATHER_FRAGMENT_SHADER }),\n\t\t\tsampler: device.createSampler(filterable ? {\n\t\t\t\tmagFilter: \"linear\",\n\t\t\t\tminFilter: \"linear\"\n\t\t\t} : {})\n\t\t};\n\t\tcache.filterableResources.set(filterable, filterableRes);\n\t}\n\tconst layoutKey = `${filterable}:${sampleType}`;\n\tlet layoutRes = cache.layoutResources.get(layoutKey);\n\tif (!layoutRes) {\n\t\tconst bindGroupLayout$1 = device.createBindGroupLayout({ entries: [{\n\t\t\tbinding: 0,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\ttexture: { sampleType }\n\t\t}, {\n\t\t\tbinding: 1,\n\t\t\tvisibility: GPUShaderStage.FRAGMENT,\n\t\t\tsampler: { type: filterable ? \"filtering\" : \"non-filtering\" }\n\t\t}] });\n\t\tlayoutRes = {\n\t\t\tbindGroupLayout: bindGroupLayout$1,\n\t\t\tpipelineLayout: device.createPipelineLayout({ bindGroupLayouts: [bindGroupLayout$1] })\n\t\t};\n\t\tcache.layoutResources.set(layoutKey, layoutRes);\n\t}\n\treturn {\n\t\tvertexModule: cache.vertexModule,\n\t\t...filterableRes,\n\t\t...layoutRes\n\t};\n}\nfunction blit(options) {\n\tconst { device, source, destination, format, filterable, sampleType } = options;\n\tconst resources = getBlitResources(device, filterable, sampleType);\n\tconst pipeline = device.createRenderPipeline({\n\t\tlayout: resources.pipelineLayout,\n\t\tvertex: { module: resources.vertexModule },\n\t\tfragment: {\n\t\t\tmodule: resources.fragmentModule,\n\t\t\ttargets: [{ format }]\n\t\t},\n\t\tprimitive: { topology: \"triangle-list\" }\n\t});\n\tconst bindGroup = device.createBindGroup({\n\t\tlayout: resources.bindGroupLayout,\n\t\tentries: [{\n\t\t\tbinding: 0,\n\t\t\tresource: source\n\t\t}, {\n\t\t\tbinding: 1,\n\t\t\tresource: resources.sampler\n\t\t}]\n\t});\n\tconst ownEncoder = !options.encoder;\n\tconst encoder = options.encoder ?? device.createCommandEncoder();\n\tconst pass = encoder.beginRenderPass({ colorAttachments: [{\n\t\tview: destination,\n\t\tloadOp: \"clear\",\n\t\tstoreOp: \"store\"\n\t}] });\n\tpass.setPipeline(pipeline);\n\tpass.setBindGroup(0, bindGroup);\n\tpass.draw(3);\n\tpass.end();\n\tif (ownEncoder) device.queue.submit([encoder.finish()]);\n}\nfunction clearTextureUtilsCache(device) {\n\tblitCache.delete(device);\n}\nfunction validateBlitFormat(device, format, operation) {\n\tconst info = getTextureFormatInfo(format);\n\tconst effectiveSampleTypes = getEffectiveSampleTypes(device, format);\n\tconst isFloat = effectiveSampleTypes.includes(\"float\");\n\tconst isUnfilterableFloat = effectiveSampleTypes.includes(\"unfilterable-float\");\n\tif (!isFloat \u0026\u0026 !isUnfilterableFloat) throw new Error(`Cannot ${operation} for format '${format}': only float formats are supported.`);\n\tif (!info.canRenderAttachment) throw new Error(`Cannot ${operation} for format '${format}': format does not support render attachments.`);\n\treturn {\n\t\tfilterable: isFloat,\n\t\tsampleType: isFloat ? \"float\" : \"unfilterable-float\"\n\t};\n}\nfunction generateTextureMipmaps(device, texture, baseMipLevel = 0, mipLevels) {\n\tif (texture.dimension !== \"2d\") throw new Error(\"Mipmap generation only supports 2D textures.\");\n\tconst { filterable, sampleType } = validateBlitFormat(device, texture.format, \"generate mipmaps\");\n\tconst levels = mipLevels ?? texture.mipLevelCount - baseMipLevel;\n\tfor (let layer = 0; layer \u003c texture.depthOrArrayLayers; layer++) for (let mip = baseMipLevel; mip \u003c baseMipLevel + levels - 1; mip++) {\n\t\tconst viewOptions = (level) =\u003e ({\n\t\t\tdimension: \"2d\",\n\t\t\tbaseMipLevel: level,\n\t\t\tmipLevelCount: 1,\n\t\t\tbaseArrayLayer: layer,\n\t\t\tarrayLayerCount: 1\n\t\t});\n\t\tblit({\n\t\t\tdevice,\n\t\t\tsource: texture.createView(viewOptions(mip)),\n\t\t\tdestination: texture.createView(viewOptions(mip + 1)),\n\t\t\tformat: texture.format,\n\t\t\tfilterable,\n\t\t\tsampleType\n\t\t});\n\t}\n}\nfunction resampleImage(device, targetTexture, image, layer = 0) {\n\tif (targetTexture.dimension !== \"2d\") throw new Error(\"Resampling only supports 2D textures.\");\n\tconst { filterable } = validateBlitFormat(device, targetTexture.format, \"resample\");\n\tconst { width, height } = getImageSourceDimensions(image);\n\tconst inputTexture = device.createTexture({\n\t\tsize: [width, height],\n\t\tformat: \"rgba8unorm\",\n\t\tusage: GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.COPY_DST | GPUTextureUsage.RENDER_ATTACHMENT\n\t});\n\tdevice.queue.copyExternalImageToTexture({ source: image }, { texture: inputTexture }, [width, height]);\n\tconst renderTexture = device.createTexture({\n\t\tsize: [targetTexture.width, targetTexture.height],\n\t\tformat: targetTexture.format,\n\t\tusage: GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.COPY_SRC\n\t});\n\tconst encoder = device.createCommandEncoder();\n\tblit({\n\t\tdevice,\n\t\tsource: inputTexture.createView(),\n\t\tdestination: renderTexture.createView(),\n\t\tformat: targetTexture.format,\n\t\tfilterable,\n\t\tsampleType: \"float\",\n\t\tencoder\n\t});\n\tencoder.copyTextureToTexture({ texture: renderTexture }, {\n\t\ttexture: targetTexture,\n\t\torigin: {\n\t\t\tx: 0,\n\t\t\ty: 0,\n\t\t\tz: layer\n\t\t}\n\t}, {\n\t\twidth: targetTexture.width,\n\t\theight: targetTexture.height,\n\t\tdepthOrArrayLayers: 1\n\t});\n\tdevice.queue.submit([encoder.finish()]);\n\tinputTexture.destroy();\n\trenderTexture.destroy();\n}\nfunction getDescriptorForProps(props) {\n\treturn {\n\t\tdimension: props.dimension ?? \"2d\",\n\t\tsampleType: getTextureFormatInfo(props.format).channelType,\n\t\tmultisampled: !((props.sampleCount ?? 1) === 1)\n\t};\n}\nfunction INTERNAL_createTexture(props, root, rawTexture) {\n\treturn new TgpuTextureImpl(props, root, rawTexture);\n}\nfunction isTexture(value) {\n\treturn value?.resourceType === \"texture\" \u0026\u0026 !!value[$internal];\n}\nfunction isTextureView(value) {\n\treturn value?.resourceType === \"texture-view\" \u0026\u0026 !!value[$internal];\n}\nvar TgpuTextureImpl = class {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"texture\";\n\tusableAsSampled = false;\n\tusableAsStorage = false;\n\tusableAsRender = false;\n\t#formatInfo;\n\t#destroyed = false;\n\t#ownTexture;\n\tconstructor(props, root, rawTexture) {\n\t\tthis.#ownTexture = rawTexture === void 0;\n\t\tthis[$soul] = {\n\t\t\ttype: \"texture\",\n\t\t\tdevice: root.device,\n\t\t\tprops,\n\t\t\tflags: GPUTextureUsage.COPY_DST | GPUTextureUsage.COPY_SRC,\n\t\t\tflagsOverridden: false,\n\t\t\tusages: [],\n\t\t\traw: rawTexture,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis.#formatInfo = getTextureFormatInfo(props.format);\n\t\tthis[$internal] = {\n\t\t\troot,\n\t\t\tmaterialize: () =\u003e {\n\t\t\t\tif (this.#destroyed) throw new Error(\"This texture has been destroyed\");\n\t\t\t\tconst soul = this[$soul];\n\t\t\t\tif (!soul.raw) {\n\t\t\t\t\tconst props$1 = soul.props;\n\t\t\t\t\tsoul.raw = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(soul.device.createTexture({\n\t\t\t\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\",\n\t\t\t\t\t\tformat: props$1.format,\n\t\t\t\t\t\tsize: props$1.size,\n\t\t\t\t\t\tusage: soul.flags,\n\t\t\t\t\t\tdimension: props$1.dimension ?? \"2d\",\n\t\t\t\t\t\tviewFormats: props$1.viewFormats ?? [],\n\t\t\t\t\t\tmipLevelCount: props$1.mipLevelCount ?? 1,\n\t\t\t\t\t\tsampleCount: props$1.sampleCount ?? 1\n\t\t\t\t\t}), \"raw\");\n\t\t\t\t}\n\t\t\t\treturn soul.raw;\n\t\t\t}\n\t\t};\n\t}\n\tget props() {\n\t\treturn this[$soul].props;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n\t$usage(...usages) {\n\t\tconst soul = this[$soul];\n\t\tif (soul.flagsOverridden) throw new Error(\"Cannot call $usage() after $overrideFlags().\");\n\t\tconst hasStorage = usages.includes(\"storage\");\n\t\tconst hasSampled = usages.includes(\"sampled\");\n\t\tconst hasRender = usages.includes(\"render\");\n\t\tconst hasTransient = usages.includes(\"transient\");\n\t\tconst bindingFlags = (hasSampled ? GPUTextureUsage.TEXTURE_BINDING : 0) | (hasStorage ? GPUTextureUsage.STORAGE_BINDING : 0);\n\t\tconst transientFlags = GPUTextureUsage.TRANSIENT_ATTACHMENT | GPUTextureUsage.RENDER_ATTACHMENT;\n\t\tconst nextFlags = soul.flags | bindingFlags | (hasRender ? GPUTextureUsage.RENDER_ATTACHMENT : 0);\n\t\tconst hasTransientUsage = hasTransient || !!(soul.flags \u0026 GPUTextureUsage.TRANSIENT_ATTACHMENT);\n\t\tconst hasSampledOrStorageUsage = !!(nextFlags \u0026 (GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.STORAGE_BINDING));\n\t\tif (hasTransientUsage \u0026\u0026 hasSampledOrStorageUsage) throw new Error(\"Transient texture usage cannot be combined with 'sampled' or 'storage'.\");\n\t\tsoul.flags = hasTransient ? transientFlags : nextFlags;\n\t\tthis.usableAsStorage ||= hasStorage;\n\t\tthis.usableAsSampled ||= hasSampled;\n\t\tthis.usableAsRender ||= hasRender || hasTransient;\n\t\tfor (const usage of usages) if (!soul.usages.includes(usage)) soul.usages.push(usage);\n\t\treturn this;\n\t}\n\t$overrideFlags(flags) {\n\t\tconst soul = this[$soul];\n\t\tsoul.flags = flags;\n\t\tsoul.flagsOverridden = true;\n\t\tthis.usableAsSampled = true;\n\t\tthis.usableAsStorage = true;\n\t\tthis.usableAsRender = true;\n\t\treturn this;\n\t}\n\tcreateView(schema, viewDescriptor) {\n\t\tif (schema === \"render\") return new TgpuTextureRenderViewImpl(this, viewDescriptor);\n\t\treturn new TgpuFixedTextureViewImpl(schema ?? textureDescriptorToSchema(getDescriptorForProps(this.props)), this, viewDescriptor);\n\t}\n\t#clearMipLevel(mip = 0) {\n\t\tconst scale = 2 ** mip;\n\t\tconst [width, height, depth] = [\n\t\t\tMath.max(1, Math.floor((this.props.size[0] ?? 1) / scale)),\n\t\t\tMath.max(1, Math.floor((this.props.size[1] ?? 1) / scale)),\n\t\t\tMath.max(1, Math.floor((this.props.size[2] ?? 1) / scale))\n\t\t];\n\t\tconst texelSize = this.#formatInfo.texelSize;\n\t\tif (texelSize === \"non-copyable\") throw new Error(`Cannot clear texture with format '${this.props.format}': this format does not support copy operations.`);\n\t\tthis[$soul].device.queue.writeTexture({\n\t\t\ttexture: this[$internal].materialize(),\n\t\t\tmipLevel: mip\n\t\t}, new Uint8Array(width * height * depth * texelSize), {\n\t\t\tbytesPerRow: texelSize * width,\n\t\t\trowsPerImage: height\n\t\t}, [\n\t\t\twidth,\n\t\t\theight,\n\t\t\tdepth\n\t\t]);\n\t}\n\tclear(mipLevel = \"all\") {\n\t\tif (mipLevel === \"all\") {\n\t\t\tconst mipLevels = this.props.mipLevelCount ?? 1;\n\t\t\tfor (let i = 0; i \u003c mipLevels; i++) this.#clearMipLevel(i);\n\t\t} else this.#clearMipLevel(mipLevel);\n\t}\n\tgenerateMipmaps(baseMipLevel = 0, mipLevels) {\n\t\tif (!this.usableAsRender) throw new Error(\"generateMipmaps called without specifying 'render' usage. Add it via the $usage('render') method.\");\n\t\tconst actualMipLevels = mipLevels ?? (this.props.mipLevelCount ?? 1) - baseMipLevel;\n\t\tif (actualMipLevels \u003c= 1) {\n\t\t\tlogger.warn(\"suspicious\", `generateMipmaps is a no-op: would generate ${actualMipLevels} mip levels (base: ${baseMipLevel}, total: ${this.props.mipLevelCount ?? 1})`);\n\t\t\treturn;\n\t\t}\n\t\tif (baseMipLevel \u003e= (this.props.mipLevelCount ?? 1)) throw new Error(`Base mip level ${baseMipLevel} is out of range. Texture has ${this.props.mipLevelCount ?? 1} mip levels.`);\n\t\tgenerateTextureMipmaps(this[$soul].device, this[$internal].materialize(), baseMipLevel, actualMipLevels);\n\t}\n\twrite(source, optionsOrMipLevel = 0) {\n\t\tif (source instanceof ArrayBuffer || ArrayBuffer.isView(source)) {\n\t\t\tthis.#writeBufferData(source, typeof optionsOrMipLevel === \"number\" ? optionsOrMipLevel : 0);\n\t\t\treturn;\n\t\t}\n\t\tif (!this.usableAsRender) throw new Error(\"texture.write(...) with image sources requires 'render' usage. Add it via the $usage('render') method.\");\n\t\tconst options = typeof optionsOrMipLevel === \"number\" ? void 0 : optionsOrMipLevel;\n\t\tconst dimension = this.props.dimension ?? \"2d\";\n\t\tif (!Array.isArray(source)) {\n\t\t\tthis.#writeSingleLayer(source, dimension === \"3d\" ? 0 : void 0, options);\n\t\t\treturn;\n\t\t}\n\t\tconst layerCount = this.props.size[2] ?? 1;\n\t\tif (source.length \u003e layerCount) logger.warn(\"suspicious\", `Too many image sources provided. Expected ${layerCount} layers, got ${source.length}. Extra sources will be ignored.`);\n\t\tfor (let layer = 0; layer \u003c Math.min(source.length, layerCount); layer++) {\n\t\t\tconst bitmap = source[layer];\n\t\t\tif (bitmap) this.#writeSingleLayer(bitmap, layer, options);\n\t\t}\n\t}\n\t#writeBufferData(source, mipLevel) {\n\t\tconst mipWidth = Math.max(1, this.props.size[0] \u003e\u003e mipLevel);\n\t\tconst mipHeight = Math.max(1, (this.props.size[1] ?? 1) \u003e\u003e mipLevel);\n\t\tconst mipDepth = Math.max(1, (this.props.size[2] ?? 1) \u003e\u003e mipLevel);\n\t\tconst texelSize = this.#formatInfo.texelSize;\n\t\tif (texelSize === \"non-copyable\") throw new Error(`Cannot write to texture with format '${this.props.format}': this format does not support copy operations.`);\n\t\tconst expectedSize = mipWidth * mipHeight * mipDepth * texelSize;\n\t\tconst actualSize = source.byteLength ?? source.byteLength;\n\t\tif (actualSize !== expectedSize) throw new Error(`Buffer size mismatch. Expected ${expectedSize} bytes for mip level ${mipLevel}, got ${actualSize} bytes.`);\n\t\tthis[$soul].device.queue.writeTexture({\n\t\t\ttexture: this[$internal].materialize(),\n\t\t\tmipLevel\n\t\t}, \"buffer\" in source ? source.buffer : source, {\n\t\t\tbytesPerRow: texelSize * mipWidth,\n\t\t\trowsPerImage: mipHeight\n\t\t}, [\n\t\t\tmipWidth,\n\t\t\tmipHeight,\n\t\t\tmipDepth\n\t\t]);\n\t}\n\t#writeSingleLayer(source, layer, options) {\n\t\tconst targetWidth = this.props.size[0];\n\t\tconst targetHeight = this.props.size[1] ?? 1;\n\t\tconst { width: sourceWidth, height: sourceHeight } = getImageSourceDimensions(source);\n\t\tif (sourceWidth !== targetWidth || sourceHeight !== targetHeight) {\n\t\t\tif (options?.fit !== \"stretch\") throw new Error(`Texture write source size ${sourceWidth}x${sourceHeight} does not match target size ${targetWidth}x${targetHeight}. Pass fit: 'stretch' to resize explicitly.`);\n\t\t\tresampleImage(this[$soul].device, this[$internal].materialize(), source, layer);\n\t\t\treturn;\n\t\t}\n\t\tthis[$soul].device.queue.copyExternalImageToTexture({ source }, {\n\t\t\ttexture: this[$internal].materialize(),\n\t\t\t...layer !== void 0 \u0026\u0026 { origin: {\n\t\t\t\tx: 0,\n\t\t\t\ty: 0,\n\t\t\t\tz: layer\n\t\t\t} }\n\t\t}, layer !== void 0 ? [\n\t\t\ttargetWidth,\n\t\t\ttargetHeight,\n\t\t\t1\n\t\t] : this.props.size);\n\t}\n\tcopyFrom(source) {\n\t\tif (source.props.format !== this.props.format) throw new Error(`Texture format mismatch. Source texture has format ${source.props.format}, target texture has format ${this.props.format}`);\n\t\tif (source.props.size[0] !== this.props.size[0] || (source.props.size[1] ?? 1) !== (this.props.size[1] ?? 1) || (source.props.size[2] ?? 1) !== (this.props.size[2] ?? 1)) throw new Error(`Texture size mismatch. Source texture has size ${source.props.size.join(\"x\")}, target texture has size ${this.props.size.join(\"x\")}`);\n\t\tconst commandEncoder = this[$soul].device.createCommandEncoder();\n\t\tcommandEncoder.copyTextureToTexture({ texture: source[$internal].materialize() }, { texture: this[$internal].materialize() }, source.props.size);\n\t\tthis[$soul].device.queue.submit([commandEncoder.finish()]);\n\t}\n\ttoString() {\n\t\treturn `${this.resourceType}:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n\tget destroyed() {\n\t\treturn this.#destroyed;\n\t}\n\tdestroy() {\n\t\tif (this.#destroyed) return;\n\t\tthis.#destroyed = true;\n\t\tif (this.#ownTexture) this[$soul].raw?.destroy();\n\t}\n};\nvar TgpuFixedTextureViewImpl = class {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"texture-view\";\n\tconstructor(schema, baseTexture, descriptor) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"texture-view\",\n\t\t\ttexture: baseTexture,\n\t\t\tschema,\n\t\t\tdescriptor,\n\t\t\traw: void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis[$internal] = {\n\t\t\tunwrap: () =\u003e {\n\t\t\t\tconst soul = this[$soul];\n\t\t\t\tif (!soul.raw) {\n\t\t\t\t\tconst schema$1 = soul.schema;\n\t\t\t\t\tconst format = isWgslStorageTexture(schema$1) ? schema$1.format : soul.texture.props.format;\n\t\t\t\t\tsoul.raw = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(soul.texture[$internal].materialize().createView({\n\t\t\t\t\t\t...soul.descriptor,\n\t\t\t\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\",\n\t\t\t\t\t\tformat: soul.descriptor?.format ?? format,\n\t\t\t\t\t\tdimension: schema$1.dimension\n\t\t\t\t\t}), \"raw\");\n\t\t\t\t}\n\t\t\t\treturn soul.raw;\n\t\t\t},\n\t\t\tformat: descriptor?.format ?? (isWgslStorageTexture(schema) ? schema.format : baseTexture.props.format),\n\t\t\taspect: descriptor?.aspect\n\t\t};\n\t}\n\tget schema() {\n\t\treturn this[$soul].schema;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\tif (this[$soul].raw) this[$soul].raw.label = label;\n\t\treturn this;\n\t}\n\tget [$gpuValueOf]() {\n\t\tconst schema = this.schema;\n\t\treturn new Proxy({\n\t\t\t[$internal]: true,\n\t\t\tget [$ownSnippet]() {\n\t\t\t\treturn snip(this, schema, \"handle\", false);\n\t\t\t},\n\t\t\t[$resolve]: (ctx) =\u003e ctx.resolve(this),\n\t\t\ttoString: () =\u003e `${this.toString()}.$`\n\t\t}, valueProxyHandler);\n\t}\n\tget $() {\n\t\tif (inCodegenMode()) return this[$gpuValueOf];\n\t\tthrow 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\");\n\t}\n\tget size() {\n\t\treturn this[$soul].texture.props.size;\n\t}\n\ttoString() {\n\t\treturn `textureView:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n\t[$resolve](ctx) {\n\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\tconst { group, binding } = ctx.allocateFixedEntry(isWgslStorageTexture(this.schema) ? { storageTexture: this.schema } : {\n\t\t\ttexture: this.schema,\n\t\t\tsampleType: this[$soul].descriptor?.sampleType ?? this.schema.bindingSampleType[0]\n\t\t}, this);\n\t\treturn ctx.gen.declareGlobalVar({\n\t\t\tgroup,\n\t\t\tbinding,\n\t\t\tid,\n\t\t\tdataType: this.schema,\n\t\t\tscope: \"handle\",\n\t\t\tinit: void 0\n\t\t});\n\t}\n};\nvar TgpuLaidOutTextureViewImpl = class {\n\t[$internal] = { unwrap: void 0 };\n\tresourceType = \"texture-view\";\n\t#membership;\n\tschema;\n\tconstructor(schema, membership) {\n\t\tthis.schema = schema;\n\t\tthis.#membership = membership;\n\t\tsetName(this, membership.key);\n\t}\n\ttoString() {\n\t\treturn `textureView:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n\t[$resolve](ctx) {\n\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\tconst group = ctx.allocateLayoutEntry(this.#membership.layout);\n\t\tctx.addDeclaration(`@group(${group}) @binding(${this.#membership.idx}) var ${id}: ${ctx.resolve(this.schema).value};`, id);\n\t\treturn snip(id, this.schema, \"handle\");\n\t}\n\tget [$gpuValueOf]() {\n\t\tconst schema = this.schema;\n\t\treturn new Proxy({\n\t\t\t[$internal]: true,\n\t\t\tget [$ownSnippet]() {\n\t\t\t\treturn snip(this, schema, \"handle\", false);\n\t\t\t},\n\t\t\t[$resolve]: (ctx) =\u003e ctx.resolve(this),\n\t\t\ttoString: () =\u003e `${this.toString()}.$`\n\t\t}, valueProxyHandler);\n\t}\n\tget $() {\n\t\tif (inCodegenMode()) return this[$gpuValueOf];\n\t\tthrow new Error(`Accessed view '${getName(this) ?? \"\u003cunnamed\u003e\"}' 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`);\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n};\nvar TgpuTextureRenderViewImpl = class {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"texture-view\";\n\tconstructor(baseTexture, descriptor = {}) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"texture-view\",\n\t\t\ttexture: baseTexture,\n\t\t\tschema: \"render\",\n\t\t\tdescriptor,\n\t\t\traw: void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis[$internal] = {\n\t\t\tunwrap: () =\u003e {\n\t\t\t\treturn baseTexture[$internal].materialize().createView({\n\t\t\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\",\n\t\t\t\t\t...this.descriptor\n\t\t\t\t});\n\t\t\t},\n\t\t\tformat: descriptor.format ?? baseTexture.props.format,\n\t\t\taspect: descriptor.aspect\n\t\t};\n\t}\n\tget descriptor() {\n\t\treturn this[$soul].descriptor ?? {};\n\t}\n};\nfunction isUsableAsSampled(value) {\n\treturn !!value?.usableAsSampled;\n}\nvar NotSampledError = class NotSampledError extends Error {\n\tconstructor(value) {\n\t\tsuper(`Resource '${getName(value) ?? \"\u003cunnamed\u003e\"}' cannot be bound as 'sampled'. Use .$usage('sampled') to allow it.`);\n\t\tObject.setPrototypeOf(this, NotSampledError.prototype);\n\t}\n};\nvar TgpuLaidOutBufferImpl = class TgpuLaidOutBufferImpl {\n\t[$internal];\n\tusage;\n\tdataType;\n\t#membership;\n\tstatic #_ = (() =\u003e {\n\t\tTgpuLaidOutBufferImpl.prototype.resourceType = \"laid-out-buffer\";\n\t\tmakeDereferenceable(makeResolvable(TgpuLaidOutBufferImpl.prototype, {\n\t\t\tasString() {\n\t\t\t\treturn `${this.usage}:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t\t\t},\n\t\t\tresolve(ctx) {\n\t\t\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\t\t\tconst group = ctx.allocateLayoutEntry(this.#membership.layout);\n\t\t\t\treturn ctx.gen.declareGlobalVar({\n\t\t\t\t\tgroup,\n\t\t\t\t\tbinding: this.#membership.idx,\n\t\t\t\t\tscope: this.usage,\n\t\t\t\t\tid,\n\t\t\t\t\tdataType: this.dataType,\n\t\t\t\t\tinit: void 0\n\t\t\t\t});\n\t\t\t}\n\t\t}), {\n\t\t\tcodegenMode: { getBaseSnippet(trackingProxy) {\n\t\t\t\treturn snip(trackingProxy, this.dataType, this.usage, false);\n\t\t\t} },\n\t\t\tnormalMode: { get() {\n\t\t\t\tthrow new Error(\"Direct access to buffer values is possible only as part of a compute dispatch or draw call. Try .read() or .write() instead\");\n\t\t\t} }\n\t\t});\n\t})();\n\tconstructor(usage, dataType, membership) {\n\t\tthis[$internal] = { dataType };\n\t\tthis.usage = usage;\n\t\tthis.dataType = dataType;\n\t\tthis.#membership = membership;\n\t\tsetName(this, membership.key);\n\t}\n};\nfunction bindGroupLayout(entries) {\n\treturn new TgpuBindGroupLayoutImpl({ ...entries });\n}\nfunction isBindGroupLayout(value) {\n\treturn !!value \u0026\u0026 value.resourceType === \"bind-group-layout\";\n}\nfunction isBindGroup(value) {\n\treturn !!value \u0026\u0026 value.resourceType === \"bind-group\";\n}\nvar MissingBindingError = class MissingBindingError extends Error {\n\tconstructor(groupLabel, key) {\n\t\tsuper(`Bind group '${groupLabel ?? \"\u003cunnamed\u003e\"}' is missing a required binding '${key}'`);\n\t\tObject.setPrototypeOf(this, MissingBindingError.prototype);\n\t}\n};\nvar DEFAULT_MUTABLE_VISIBILITY = [\"compute\", \"fragment\"];\nvar DEFAULT_READONLY_VISIBILITY = [\n\t\"compute\",\n\t\"vertex\",\n\t\"fragment\"\n];\nvar TgpuBindGroupLayoutImpl = class {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"bind-group-layout\";\n\t$ = {};\n\tentries;\n\tget [$gpuValueOf]() {\n\t\treturn this.$;\n\t}\n\tconstructor(entries) {\n\t\tthis.entries = entries;\n\t\tthis[$internal] = [];\n\t\tconst normalizedEntries = {};\n\t\tthis[$soul] = {\n\t\t\ttype: \"bind-group-layout\",\n\t\t\tentries: normalizedEntries,\n\t\t\tindex: void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tlet idx = 0;\n\t\tfor (const [key, entry] of Object.entries(entries)) {\n\t\t\tif (entry === null) {\n\t\t\t\tnormalizedEntries[key] = null;\n\t\t\t\tidx++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst membership = {\n\t\t\t\tlayout: this,\n\t\t\t\tkey,\n\t\t\t\tidx\n\t\t\t};\n\t\t\tlet item = void 0;\n\t\t\tnormalizedEntries[key] = entry;\n\t\t\tif (\"uniform\" in entry) item = new TgpuLaidOutBufferImpl(\"uniform\", entry.uniform, membership);\n\t\t\tif (\"storage\" in entry) {\n\t\t\t\tconst dataType = \"type\" in entry.storage ? entry.storage : entry.storage(0);\n\t\t\t\titem = new TgpuLaidOutBufferImpl(entry.access ?? \"readonly\", dataType, membership);\n\t\t\t\tnormalizedEntries[key] = {\n\t\t\t\t\t...entry,\n\t\t\t\t\tstorage: dataType\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (\"texture\" in entry) item = new TgpuLaidOutTextureViewImpl(entry.texture, membership);\n\t\t\tif (\"storageTexture\" in entry) item = new TgpuLaidOutTextureViewImpl(entry.storageTexture, membership);\n\t\t\tif (\"externalTexture\" in entry) item = new TgpuExternalTextureImpl(entry.externalTexture, membership);\n\t\t\tif (\"sampler\" in entry) item = new TgpuLaidOutSamplerImpl(entry.sampler === \"comparison\" ? comparisonSampler() : sampler(), membership);\n\t\t\tinvariant(item !== void 0, \"Internal error, expected item to be defined\");\n\t\t\tObject.defineProperty(this.$, key, { get: () =\u003e {\n\t\t\t\treturn item.$;\n\t\t\t} });\n\t\t\tthis[$internal].push(item);\n\t\t\tidx++;\n\t\t}\n\t}\n\ttoString() {\n\t\treturn `bindGroupLayout:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n\tget index() {\n\t\treturn this[$soul].index;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n\t$idx(index) {\n\t\tthis[$soul].index = index;\n\t\treturn this;\n\t}\n\tunwrap(unwrapper) {\n\t\treturn unwrapper.device.createBindGroupLayout({\n\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\",\n\t\t\tentries: Object.values(this.entries).map((entry, idx) =\u003e {\n\t\t\t\tif (entry === null) return null;\n\t\t\t\tlet visibility = entry.visibility;\n\t\t\t\tconst binding = {\n\t\t\t\t\tbinding: idx,\n\t\t\t\t\tvisibility: 0\n\t\t\t\t};\n\t\t\t\tif (\"uniform\" in entry) {\n\t\t\t\t\tvisibility = visibility ?? DEFAULT_READONLY_VISIBILITY;\n\t\t\t\t\tbinding.buffer = { type: \"uniform\" };\n\t\t\t\t} else if (\"storage\" in entry) {\n\t\t\t\t\tvisibility = visibility ?? (entry.access === \"mutable\" ? DEFAULT_MUTABLE_VISIBILITY : DEFAULT_READONLY_VISIBILITY);\n\t\t\t\t\tbinding.buffer = { type: entry.access === \"mutable\" ? \"storage\" : \"read-only-storage\" };\n\t\t\t\t} else if (\"sampler\" in entry) {\n\t\t\t\t\tvisibility = visibility ?? DEFAULT_READONLY_VISIBILITY;\n\t\t\t\t\tbinding.sampler = { type: entry.sampler };\n\t\t\t\t} else if (\"texture\" in entry) {\n\t\t\t\t\tvisibility = visibility ?? DEFAULT_READONLY_VISIBILITY;\n\t\t\t\t\tconst { multisampled, dimension, bindingSampleType } = entry.texture;\n\t\t\t\t\tbinding.texture = {\n\t\t\t\t\t\tsampleType: entry.sampleType ?? bindingSampleType[0],\n\t\t\t\t\t\tviewDimension: dimension,\n\t\t\t\t\t\tmultisampled\n\t\t\t\t\t};\n\t\t\t\t} else if (\"storageTexture\" in entry) {\n\t\t\t\t\tvisibility = visibility ?? DEFAULT_MUTABLE_VISIBILITY;\n\t\t\t\t\tconst { dimension, access, format } = entry.storageTexture;\n\t\t\t\t\tbinding.storageTexture = {\n\t\t\t\t\t\taccess,\n\t\t\t\t\t\tformat,\n\t\t\t\t\t\tviewDimension: dimension\n\t\t\t\t\t};\n\t\t\t\t} else if (\"externalTexture\" in entry) {\n\t\t\t\t\tvisibility = visibility ?? DEFAULT_READONLY_VISIBILITY;\n\t\t\t\t\tbinding.externalTexture = {};\n\t\t\t\t}\n\t\t\t\tif (visibility?.includes(\"compute\")) binding.visibility |= GPUShaderStage.COMPUTE;\n\t\t\t\tif (visibility?.includes(\"vertex\")) binding.visibility |= GPUShaderStage.VERTEX;\n\t\t\t\tif (visibility?.includes(\"fragment\")) binding.visibility |= GPUShaderStage.FRAGMENT;\n\t\t\t\treturn binding;\n\t\t\t}).filter((v) =\u003e v !== null)\n\t\t});\n\t}\n};\nvar TgpuBindGroupImpl = class {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"bind-group\";\n\t#entries;\n\tconstructor(root, layout, entries, raw) {\n\t\tthis.#entries = entries;\n\t\tthis[$soul] = {\n\t\t\ttype: \"bind-group\",\n\t\t\tdevice: root?.device,\n\t\t\tlayout,\n\t\t\traw,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis[$internal] = { materialize: () =\u003e {\n\t\t\tconst soul = this[$soul];\n\t\t\tif (!soul.raw) {\n\t\t\t\tinvariant(root, \"Cannot unwrap a bind group created outside of a root.\");\n\t\t\t\tsoul.raw = root.unwrap(this);\n\t\t\t}\n\t\t\treturn soul.raw;\n\t\t} };\n\t\tif (!raw) {\n\t\t\tfor (const key of Object.keys(layout.entries)) if (layout.entries[key] !== null \u0026\u0026 !(key in entries)) throw new MissingBindingError(getName(layout), key);\n\t\t}\n\t}\n\tget layout() {\n\t\treturn this[$soul].layout;\n\t}\n\tget entries() {\n\t\treturn this.#entries;\n\t}\n\tunwrap(unwrapper) {\n\t\tconst raw = this[$soul].raw;\n\t\tif (raw) return raw;\n\t\treturn unwrapper.device.createBindGroup({\n\t\t\tlabel: getName(this.layout) ?? \"\u003cunnamed\u003e\",\n\t\t\tlayout: unwrapper.unwrap(this.layout),\n\t\t\tentries: Object.entries(this.layout.entries).map(([key, entry], idx) =\u003e {\n\t\t\t\tif (entry === null) return null;\n\t\t\t\tconst value = this.entries[key];\n\t\t\t\tif (value === void 0) throw new Error(`'${key}' is a resource required to populate bind group layout '${getName(this.layout) ?? \"\u003cunnamed\u003e\"}'.`);\n\t\t\t\tif (\"uniform\" in entry) {\n\t\t\t\t\tlet resource;\n\t\t\t\t\tif (isBuffer(value)) {\n\t\t\t\t\t\tif (!isUsableAsUniform(value)) throw new NotUniformError(value);\n\t\t\t\t\t\tresource = { buffer: unwrapper.unwrap(value) };\n\t\t\t\t\t} else if (isUniformBinding(value)) resource = { buffer: unwrapper.unwrap(value) };\n\t\t\t\t\telse resource = { buffer: value };\n\t\t\t\t\treturn {\n\t\t\t\t\t\tbinding: idx,\n\t\t\t\t\t\tresource\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (\"storage\" in entry) {\n\t\t\t\t\tlet resource;\n\t\t\t\t\tif (isBuffer(value)) {\n\t\t\t\t\t\tif (!isUsableAsStorage(value)) throw new NotStorageError(value);\n\t\t\t\t\t\tresource = { buffer: unwrapper.unwrap(value) };\n\t\t\t\t\t} else if (isMutableBinding(value) || isReadonlyBinding(value)) {\n\t\t\t\t\t\tinvariant(entry.access === \"mutable\" === (value.resourceType === \"mutable\"), \"Invalid buffer access mode.\");\n\t\t\t\t\t\tresource = { buffer: unwrapper.unwrap(value) };\n\t\t\t\t\t} else resource = { buffer: value };\n\t\t\t\t\treturn {\n\t\t\t\t\t\tbinding: idx,\n\t\t\t\t\t\tresource\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (\"texture\" in entry) {\n\t\t\t\t\tlet resource;\n\t\t\t\t\tif (isTexture(value)) {\n\t\t\t\t\t\tif (!isUsableAsSampled(value)) throw new NotSampledError(value);\n\t\t\t\t\t\tresource = unwrapper.unwrap(value.createView(entry.texture));\n\t\t\t\t\t} else if (isTextureView(value)) resource = unwrapper.unwrap(value);\n\t\t\t\t\telse resource = value;\n\t\t\t\t\treturn {\n\t\t\t\t\t\tbinding: idx,\n\t\t\t\t\t\tresource\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (\"storageTexture\" in entry) {\n\t\t\t\t\tlet resource;\n\t\t\t\t\tif (isTexture(value)) {\n\t\t\t\t\t\tif (!isUsableAsStorage(value)) throw new NotStorageError(value);\n\t\t\t\t\t\tresource = unwrapper.unwrap(value.createView(entry.storageTexture));\n\t\t\t\t\t} else if (isTextureView(value)) resource = unwrapper.unwrap(value);\n\t\t\t\t\telse resource = value;\n\t\t\t\t\treturn {\n\t\t\t\t\t\tbinding: idx,\n\t\t\t\t\t\tresource\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (\"sampler\" in entry) {\n\t\t\t\t\tif (isComparisonSampler(value) || isSampler(value)) return {\n\t\t\t\t\t\tbinding: idx,\n\t\t\t\t\t\tresource: unwrapper.unwrap(value)\n\t\t\t\t\t};\n\t\t\t\t\treturn {\n\t\t\t\t\t\tbinding: idx,\n\t\t\t\t\t\tresource: value\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tif (\"externalTexture\" in entry) return {\n\t\t\t\t\tbinding: idx,\n\t\t\t\t\tresource: value\n\t\t\t\t};\n\t\t\t\tthrow new Error(`Malformed bind group entry: ${safeStringify(value)}`);\n\t\t\t}).filter((v) =\u003e v !== null)\n\t\t});\n\t}\n};\nfunction slot(defaultValue) {\n\treturn new TgpuSlotImpl(defaultValue);\n}\nvar TgpuSlotImpl = class {\n\t[$internal] = true;\n\t[$soul];\n\tresourceType = \"slot\";\n\tconstructor(defaultValue = void 0) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"slot\",\n\t\t\tdefaultValue,\n\t\t\tlabel: void 0\n\t\t};\n\t}\n\tget defaultValue() {\n\t\treturn this[$soul].defaultValue;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n\tareEqual(a, b) {\n\t\treturn Object.is(a, b);\n\t}\n\ttoString() {\n\t\treturn `slot:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n\tget [$gpuValueOf]() {\n\t\tconst ctx = getResolutionCtx();\n\t\tif (!ctx) throw new Error(`Cannot access tgpu.slot's value outside of resolution.`);\n\t\treturn getGpuValueRecursively(ctx.unwrap(this));\n\t}\n\tget $() {\n\t\treturn this[$gpuValueOf];\n\t}\n};\nconst shaderStageSlot = slot(null);\nfunction privateVar(dataType, initialValue) {\n\treturn new TgpuVarImpl(\"private\", dataType, initialValue);\n}\nfunction workgroupVar(dataType) {\n\treturn new TgpuVarImpl(\"workgroup\", dataType);\n}\nvar TgpuVarImpl = class TgpuVarImpl {\n\t[$soul];\n\tstatic #_ = (() =\u003e {\n\t\tconst prototype = TgpuVarImpl.prototype;\n\t\tprototype.resourceType = \"var\";\n\t\tprototype[$internal] = {};\n\t\tmakeDereferenceable(makeResolvable(prototype, {\n\t\t\tasString() {\n\t\t\t\treturn `var:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t\t\t},\n\t\t\tresolve(ctx) {\n\t\t\t\tconst id = ctx.makeUniqueIdentifier(getName(this), \"global\");\n\t\t\t\tconst init$1 = this[$soul].initialValue ? snip(this[$soul].initialValue, this[$soul].dataType, \"constant\") : void 0;\n\t\t\t\treturn ctx.gen.declareGlobalVar({\n\t\t\t\t\tscope: this[$soul].scope,\n\t\t\t\t\tid,\n\t\t\t\t\tdataType: this[$soul].dataType,\n\t\t\t\t\tinit: init$1\n\t\t\t\t});\n\t\t\t}\n\t\t}), {\n\t\t\tcodegenMode: { getBaseSnippet(trackingProxy) {\n\t\t\t\treturn snip(trackingProxy, this[$soul].dataType, this[$soul].scope, false);\n\t\t\t} },\n\t\t\tsimulateMode: {\n\t\t\t\tget(state) {\n\t\t\t\t\tif (!state.vars[this[$soul].scope].has(this)) state.vars[this[$soul].scope].set(this, this[$soul].initialValue);\n\t\t\t\t\treturn state.vars[this[$soul].scope].get(this);\n\t\t\t\t},\n\t\t\t\tset(state, value) {\n\t\t\t\t\tstate.vars[this[$soul].scope].set(this, value);\n\t\t\t\t}\n\t\t\t},\n\t\t\tnormalMode: {\n\t\t\t\tget() {\n\t\t\t\t\tthrow new IllegalVarAccessError(isInsideTgpuFn() ? `Cannot access variable '${getName(this) ?? \"\u003cunnamed\u003e\"}'. 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()`\");\n\t\t\t\t},\n\t\t\t\tset(_value) {\n\t\t\t\t\tthrow new IllegalVarAccessError(isInsideTgpuFn() ? `Cannot access variable ${getName(this) ?? \"\u003cunnamed\u003e\"}. 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()`\");\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t})();\n\tconstructor(scope, dataType, initialValue) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"var\",\n\t\t\tscope,\n\t\t\tdataType,\n\t\t\tinitialValue,\n\t\t\tlabel: void 0\n\t\t};\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n};\nvar dataBlockIndex = privateVar(u32, 0).$name(\"dataBlockIndex\");\nvar dataByteIndex = privateVar(u32, 0).$name(\"dataByteIndex\");\nvar dataBufferSlot = slot().$name(\"dataBuffer\");\nvar nextByteIndex = fn([], u32)`() {\n  let i = dataByteIndex;\n  dataByteIndex = dataByteIndex + 1u;\n  return i;\n}`.$uses({ dataByteIndex }).$name(\"nextByteIndex\");\nvar nextU32 = \"dataBuffer[dataBlockIndex].serializedData[nextByteIndex()]\";\nconst serializerMap = {\n\tf32: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([f32])`(n) {\n  ${nextU32} = bitcast\u003cu32\u003e(n);\n}`, \"f32\"),\n\tf16: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([f16])`(n) {\n  ${nextU32} = pack2x16float(vec2f(f32(n), 0.0));\n}`, \"f16\"),\n\ti32: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([i32])`(n) {\n  ${nextU32} = bitcast\u003cu32\u003e(n);\n}`, \"i32\"),\n\tu32: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([u32])`(n) {\n  ${nextU32} = n;\n}`, \"u32\"),\n\tbool: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([bool])`(b) {\n  ${nextU32} = u32(b);\n}`, \"bool\"),\n\tvec2f: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec2f])`(v) {\n  ${nextU32} = bitcast\u003cu32\u003e(v.x);\n  ${nextU32} = bitcast\u003cu32\u003e(v.y);\n}`, \"vec2f\"),\n\tvec3f: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec3f])`(v) {\n  ${nextU32} = bitcast\u003cu32\u003e(v.x);\n  ${nextU32} = bitcast\u003cu32\u003e(v.y);\n  ${nextU32} = bitcast\u003cu32\u003e(v.z);\n}`, \"vec3f\"),\n\tvec4f: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec4f])`(v) {\n  ${nextU32} = bitcast\u003cu32\u003e(v.x);\n  ${nextU32} = bitcast\u003cu32\u003e(v.y);\n  ${nextU32} = bitcast\u003cu32\u003e(v.z);\n  ${nextU32} = bitcast\u003cu32\u003e(v.w);\n}`, \"vec4f\"),\n\tvec2h: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec2h])`(v) {\n  ${nextU32} = pack2x16float(vec2f(f32(v.x), f32(v.y)));\n}`, \"vec2h\"),\n\tvec3h: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec3h])`(v) {\n  ${nextU32} = pack2x16float(vec2f(f32(v.x), f32(v.y)));\n  ${nextU32} = pack2x16float(vec2f(f32(v.z), 0.0));\n}`, \"vec3h\"),\n\tvec4h: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec4h])`(v) {\n  ${nextU32} = pack2x16float(vec2f(f32(v.x), f32(v.y)));\n  ${nextU32} = pack2x16float(vec2f(f32(v.z), f32(v.w)));\n}`, \"vec4h\"),\n\tvec2i: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec2i])`(v) {\n  ${nextU32} = bitcast\u003cu32\u003e(v.x);\n  ${nextU32} = bitcast\u003cu32\u003e(v.y);\n}`, \"vec2i\"),\n\tvec3i: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec3i])`(v) {\n  ${nextU32} = bitcast\u003cu32\u003e(v.x);\n  ${nextU32} = bitcast\u003cu32\u003e(v.y);\n  ${nextU32} = bitcast\u003cu32\u003e(v.z);\n}`, \"vec3i\"),\n\tvec4i: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec4i])`(v) {\n  ${nextU32} = bitcast\u003cu32\u003e(v.x);\n  ${nextU32} = bitcast\u003cu32\u003e(v.y);\n  ${nextU32} = bitcast\u003cu32\u003e(v.z);\n  ${nextU32} = bitcast\u003cu32\u003e(v.w);\n}`, \"vec4i\"),\n\tvec2u: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec2u])`(v) {\n  ${nextU32} = v.x;\n  ${nextU32} = v.y;\n}`, \"vec2u\"),\n\tvec3u: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec3u])`(v) {\n  ${nextU32} = v.x;\n  ${nextU32} = v.y;\n  ${nextU32} = v.z;\n}`, \"vec3u\"),\n\tvec4u: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([vec4u])`(v) {\n  ${nextU32} = v.x;\n  ${nextU32} = v.y;\n  ${nextU32} = v.z;\n  ${nextU32} = v.w;\n}`, \"vec4u\"),\n\t\"vec2\u003cbool\u003e\": fn([vec2b])`(v) {\n  ${nextU32} = u32(v.x);\n  ${nextU32} = u32(v.y);\n}`,\n\t\"vec3\u003cbool\u003e\": fn([vec3b])`(v) {\n  ${nextU32} = u32(v.x);\n  ${nextU32} = u32(v.y);\n  ${nextU32} = u32(v.z);\n}`,\n\t\"vec4\u003cbool\u003e\": fn([vec4b])`(v) {\n  ${nextU32} = u32(v.x);\n  ${nextU32} = u32(v.y);\n  ${nextU32} = u32(v.z);\n  ${nextU32} = u32(v.w);\n}`,\n\tmat2x2f: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([mat2x2f])`(m) {\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][1]);\n}`, \"mat2x2f\"),\n\tmat3x3f: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([mat3x3f])`(m) {\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][2]);\n  ${nextU32} = 0u;\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][2]);\n  ${nextU32} = 0u;\n  ${nextU32} = bitcast\u003cu32\u003e(m[2][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[2][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[2][2]);\n  ${nextU32} = 0u;\n}`, \"mat3x3f\"),\n\tmat4x4f: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn([mat4x4f])`(m) {\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][2]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[0][3]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][2]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[1][3]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[2][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[2][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[2][2]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[2][3]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[3][0]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[3][1]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[3][2]);\n  ${nextU32} = bitcast\u003cu32\u003e(m[3][3]);\n}`, \"mat4x4f\")\n};\nfor (const [name, serializer] of Object.entries(serializerMap)) serializer.$name(`serialize${name[0].toLocaleUpperCase()}${name.slice(1)}`).$uses({\n\tdataBlockIndex,\n\tnextByteIndex,\n\tdataBuffer: dataBufferSlot\n});\nfunction generateHeader(argTypes) {\n\treturn `(${argTypes.map((_, i) =\u003e `_arg_${i}`).join(\", \")})`;\n}\nfunction getSerializer(dataType, dataBuffer) {\n\tconst maybeSerializer = serializerMap[dataType.type];\n\tif (maybeSerializer) return maybeSerializer.with(dataBufferSlot, dataBuffer);\n\tif (isWgslStruct(dataType)) {\n\t\tconst props = Object.keys(dataType.propTypes);\n\t\tconst propsSerializer = createCompoundSerializer(Object.values(dataType.propTypes), dataBuffer);\n\t\treturn fn([dataType])`(arg) {\\n  propsSerializer(${props.map((prop) =\u003e `arg.${prop}`).join(\", \")});\\n}`.$uses({ propsSerializer }).$name(`${getName(dataType) ?? \"struct\"}Serializer`);\n\t}\n\tif (isWgslArray(dataType)) {\n\t\tconst elementType = dataType.elementType;\n\t\tconst length$1 = dataType.elementCount;\n\t\tconst elementSerializer = getSerializer(elementType, dataBuffer);\n\t\treturn fn([dataType])`(arg) {\\n${Array.from({ length: length$1 }, (_, i) =\u003e `  elementSerializer(arg[${i}]);`).join(\"\\n\")}\\n}`.$uses({ elementSerializer }).$name(\"arraySerializer\");\n\t}\n\tthrow new Error(`Cannot serialize data of type ${dataType.type}`);\n}\nfunction createCompoundSerializer(dataTypes, dataBuffer) {\n\tconst usedSerializers = {};\n\treturn (/* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(fn(dataTypes), \"shell\"))`${generateHeader(dataTypes)} {\\n${dataTypes.map((arg, i) =\u003e {\n\t\tusedSerializers[`serializer${i}`] = getSerializer(arg, dataBuffer);\n\t\treturn `  serializer${i}(_arg_${i});`;\n\t}).join(\"\\n\")}\\n}`.$uses(usedSerializers).$name(\"compoundSerializer\");\n}\nfunction createLoggingFunction(id, dataTypes, dataBuffer, indexBuffer, logOptions) {\n\tconst serializedSize = dataTypes.map(sizeOf).reduce((a, b) =\u003e a + b, 0);\n\tif (serializedSize \u003e logOptions.logSizeLimit) throw new Error(`Logged data needs to fit in ${logOptions.logSizeLimit} bytes (one of the logs requires ${serializedSize} bytes). Consider increasing the limit by passing appropriate options to tgpu.init().`);\n\tconst compoundSerializer = createCompoundSerializer(dataTypes, dataBuffer).$name(`log${id}serializer`);\n\tconst header = generateHeader(dataTypes);\n\treturn fn(dataTypes)`${header} {\n  dataBlockIndex = atomicAdd(\u0026indexBuffer, 1);\n  if (dataBlockIndex \u003e= ${logOptions.logCountLimit}) {\n    return;\n  }\n  dataBuffer[dataBlockIndex].id = ${id};\n  dataByteIndex = 0;\n\n  compoundSerializer${header};\n}`.$uses({\n\t\tindexBuffer,\n\t\tdataBuffer,\n\t\tdataBlockIndex,\n\t\tdataByteIndex,\n\t\tcompoundSerializer\n\t}).$name(`log${id}`);\n}\nvar defaultOptions = {\n\tlogCountLimit: 64,\n\tlogSizeLimit: 252,\n\tmessagePrefix: \" GPU \"\n};\nvar fallbackSnippet = snip(\"/* console.log() */\", Void, \"runtime\");\nvar LogGeneratorNullImpl = class {\n\tget logResources() {}\n\tgenerateLog() {\n\t\tlogger.warn(\"fallback\", \"'console.log' is only supported when resolving pipelines.\");\n\t\treturn fallbackSnippet;\n\t}\n};\nvar LogGeneratorImpl = class {\n\t#options;\n\t#logIdToMeta;\n\t#firstUnusedId = 1;\n\t#indexBuffer;\n\t#dataBuffer;\n\tconstructor(root) {\n\t\tthis.#options = {\n\t\t\t...defaultOptions,\n\t\t\t...root[$internal].logOptions\n\t\t};\n\t\tthis.#logIdToMeta = /* @__PURE__ */ new Map();\n\t\tconst SerializedLogData = struct({\n\t\t\tid: u32,\n\t\t\tserializedData: arrayOf(u32, Math.ceil(this.#options.logSizeLimit / 4))\n\t\t}).$name(\"SerializedLogData\");\n\t\tthis.#dataBuffer = root.createMutable(arrayOf(SerializedLogData, this.#options.logCountLimit)).$name(\"dataBuffer\");\n\t\tthis.#indexBuffer = root.createMutable(atomic(u32)).$name(\"indexBuffer\");\n\t}\n\tgenerateLog(ctx, op, args) {\n\t\tif (shaderStageSlot.$ === \"vertex\") {\n\t\t\tlogger.warn(\"suspicious\", `'console' operations are not supported in vertex shaders.`);\n\t\t\treturn fallbackSnippet;\n\t\t}\n\t\tconst id = this.#firstUnusedId++;\n\t\tconst concreteArgsWithStrings = args.map((arg) =\u003e {\n\t\t\tif (arg.dataType === UnknownData) return arg;\n\t\t\tconst converted = convertToCommonType(ctx, [arg], [unptr(arg.dataType)])?.[0];\n\t\t\tinvariant(converted, `Internal error. Expected type ${arg.dataType} to be convertible to ${unptr(arg.dataType)}`);\n\t\t\treturn converted;\n\t\t}).map(concretizeSnippet);\n\t\tconst concreteArgs = concreteArgsWithStrings.filter((arg) =\u003e arg.dataType !== UnknownData);\n\t\tconst logFn = createLoggingFunction(id, concreteArgs.map((e) =\u003e e.dataType), this.#dataBuffer, this.#indexBuffer, this.#options);\n\t\tconst functionSnippet = snip(stitch`${ctx.resolve(logFn).value}(${concreteArgs})`, Void, \"runtime\");\n\t\tthis.#logIdToMeta.set(id, {\n\t\t\top,\n\t\t\targTypes: concreteArgsWithStrings.map((e) =\u003e e?.dataType === UnknownData ? e?.value : e?.dataType)\n\t\t});\n\t\treturn functionSnippet;\n\t}\n\tget logResources() {\n\t\treturn this.#firstUnusedId === 1 ? void 0 : {\n\t\t\tdataBuffer: this.#dataBuffer,\n\t\t\tindexBuffer: this.#indexBuffer,\n\t\t\toptions: this.#options,\n\t\t\tlogIdToMeta: this.#logIdToMeta\n\t\t};\n\t}\n};\nfunction isShelllessImpl(value) {\n\treturn value?.resourceType === \"shellless-impl\";\n}\nfunction createShelllessImpl(argTypes, implementation) {\n\tconst core = createFnCore(implementation, \"normal\");\n\treturn {\n\t\t[$internal]: true,\n\t\t[$getNameForward]: core,\n\t\tresourceType: \"shellless-impl\",\n\t\targTypes,\n\t\t[$resolve](ctx) {\n\t\t\treturn core.resolve(ctx, argTypes, void 0);\n\t\t},\n\t\ttoString() {\n\t\t\treturn `fn*:${getName(core) ?? \"\u003cunnamed\u003e\"}(${argTypes.map((t) =\u003e t.toString()).join(\", \")})`;\n\t\t}\n\t};\n}\nvar splitRegex = new RegExp(`[${[...blankSpaces].join(\"\")}]+`, \"ug\");\nvar separatorNeededRegex = /[.\\p{XID_Continue}]/u;\nfunction minify(code) {\n\tconst tokens = stripWGSLComments(code).split(splitRegex).filter((token) =\u003e token !== \"\");\n\tlet result = \"\";\n\tfor (let i = 0; i \u003c tokens.length; i++) {\n\t\tconst current = tokens[i];\n\t\tconst next = tokens[i + 1];\n\t\tinvariant(current);\n\t\tresult += current;\n\t\tif (isSpaceRequired(current, next)) result += \" \";\n\t}\n\treturn result;\n}\nfunction isSpaceRequired(current, next) {\n\tif (next === void 0) return false;\n\tconst currentLast = current.at(-1);\n\tconst nextFirst = next.at(0);\n\tinvariant(currentLast?.length === 1 \u0026\u0026 nextFirst?.length === 1, `Expected tokens during minification to not be empty.`);\n\tif (separatorNeededRegex.test(currentLast) \u0026\u0026 separatorNeededRegex.test(nextFirst)) return true;\n\tif ([\n\t\t\"//\",\n\t\t\"/*\",\n\t\t\"*/\"\n\t].includes(`${currentLast}${nextFirst}`)) return true;\n\treturn false;\n}\nfunction stripWGSLComments(code) {\n\tlet result = \"\";\n\tlet copiedUpTo = 0;\n\tlet offset = 0;\n\twhile (offset \u003c code.length) {\n\t\tif (code.startsWith(\"//\", offset)) {\n\t\t\tresult += `${code.slice(copiedUpTo, offset)} `;\n\t\t\toffset += 2;\n\t\t\twhile (offset \u003c code.length \u0026\u0026 !lineBreaks.has(code.charAt(offset))) offset += 1;\n\t\t\tcopiedUpTo = offset;\n\t\t\tcontinue;\n\t\t}\n\t\tif (code.startsWith(\"/*\", offset)) {\n\t\t\tresult += `${code.slice(copiedUpTo, offset)} `;\n\t\t\tlet depth = 1;\n\t\t\toffset += 2;\n\t\t\twhile (offset \u003c code.length \u0026\u0026 depth \u003e 0) if (code.startsWith(\"/*\", offset)) {\n\t\t\t\tdepth += 1;\n\t\t\t\toffset += 2;\n\t\t\t} else if (code.startsWith(\"*/\", offset)) {\n\t\t\t\tdepth -= 1;\n\t\t\t\toffset += 2;\n\t\t\t} else offset += 1;\n\t\t\tif (depth \u003e 0) throw new SyntaxError(`Block comment opening without corresponding closing found during minification.`);\n\t\t\tcopiedUpTo = offset;\n\t\t\tcontinue;\n\t\t}\n\t\tif (code.startsWith(\"*/\", offset)) throw new SyntaxError(`Block comment closing without corresponding opening found during minification.`);\n\t\toffset += 1;\n\t}\n\treturn result + code.slice(copiedUpTo);\n}\nvar CATCHALL_BIND_GROUP_IDX_MARKER = \"#CATCHALL#\";\nvar ItemStateStackImpl = class {\n\t_stack = [];\n\t_itemDepth = 0;\n\tget itemDepth() {\n\t\treturn this._itemDepth;\n\t}\n\tget topItem() {\n\t\tconst state = this._stack[this._stack.length - 1];\n\t\tif (!state || state.type !== \"item\") throw new Error(\"Internal error, expected item layer to be on top.\");\n\t\treturn state;\n\t}\n\tget topFunctionScope() {\n\t\treturn this._stack.findLast((e) =\u003e e.type === \"functionScope\");\n\t}\n\tget topBlockScope() {\n\t\treturn this._stack.findLast((e) =\u003e e.type === \"blockScope\");\n\t}\n\tget blockDepth() {\n\t\tlet depth = 0;\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"functionScope\") break;\n\t\t\tif (layer?.type === \"blockScope\") depth++;\n\t\t}\n\t\treturn depth;\n\t}\n\tpushItem() {\n\t\tthis._itemDepth++;\n\t\tthis._stack.push({\n\t\t\ttype: \"item\",\n\t\t\tusedSlots: /* @__PURE__ */ new Set()\n\t\t});\n\t}\n\tpushSlotBindings(pairs) {\n\t\tthis._stack.push({\n\t\t\ttype: \"slotBinding\",\n\t\t\tbindingMap: new WeakMap(pairs)\n\t\t});\n\t}\n\tpushFunctionScope(functionType, argAccess, returnType, externalMap) {\n\t\tconst scope = {\n\t\t\ttype: \"functionScope\",\n\t\t\tfunctionType,\n\t\t\targAccess,\n\t\t\treturnType,\n\t\t\texternalMap,\n\t\t\treportedReturnTypes: /* @__PURE__ */ new Set(),\n\t\t\tplaceholderForVariable: /* @__PURE__ */ new Map(),\n\t\t\tmodifiedVariables: /* @__PURE__ */ new Set()\n\t\t};\n\t\tthis._stack.push(scope);\n\t\treturn scope;\n\t}\n\tpushBlockScope() {\n\t\tthis._stack.push({\n\t\t\ttype: \"blockScope\",\n\t\t\ttakenLocalIdentifiers: /* @__PURE__ */ new Set(),\n\t\t\tdeclarations: /* @__PURE__ */ new Map(),\n\t\t\texternals: /* @__PURE__ */ new Map()\n\t\t});\n\t}\n\tpop(type) {\n\t\tconst layer = this._stack[this._stack.length - 1];\n\t\tif (!layer || type \u0026\u0026 layer.type !== type) throw new Error(`Internal error, expected a ${type} layer to be on top.`);\n\t\tconst poppedValue = this._stack.pop();\n\t\tif (type === \"item\") this._itemDepth--;\n\t\treturn poppedValue;\n\t}\n\treadSlot(slot$1) {\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"item\") layer.usedSlots.add(slot$1);\n\t\t\telse if (layer?.type === \"slotBinding\") {\n\t\t\t\tconst boundValue = layer.bindingMap.get(slot$1);\n\t\t\t\tif (boundValue !== void 0) return boundValue;\n\t\t\t} else if (layer?.type === \"functionScope\" || layer?.type === \"blockScope\") {} else throw new Error(\"Unknown layer type.\");\n\t\t}\n\t\treturn slot$1.defaultValue;\n\t}\n\tgetSnippetById(id) {\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"functionScope\") {\n\t\t\t\tconst access = layer.argAccess[id];\n\t\t\t\tif (access) return access();\n\t\t\t\tif (Object.hasOwn(layer.externalMap, id)) {\n\t\t\t\t\tconst external = layer.externalMap[id];\n\t\t\t\t\tif (isNamable(external) \u0026\u0026 getName(external) === void 0) setName(external, id.replaceAll(\".\", \"_\"));\n\t\t\t\t\treturn coerceToSnippet(external);\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (layer?.type === \"blockScope\") {\n\t\t\t\tconst snippet = layer.declarations.get(id) ?? layer.externals.get(id);\n\t\t\t\tif (snippet !== void 0) return snippet;\n\t\t\t}\n\t\t}\n\t}\n\tisIdentifierTakenLocally(id) {\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"functionScope\") return false;\n\t\t\tif (layer?.type === \"blockScope\") {\n\t\t\t\tif (layer.takenLocalIdentifiers.has(id)) return true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\tisIdentifierTakenInCallStack(id) {\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"blockScope\") {\n\t\t\t\tif (layer.takenLocalIdentifiers.has(id)) return true;\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\tdefineBlockVariable(id, snippet) {\n\t\tif (snippet.dataType === UnknownData) throw Error(`Tried to define variable '${id}' of unknown type`);\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"blockScope\") {\n\t\t\t\tlayer.declarations.set(id, snippet);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthrow new Error(\"No block scope found to define a variable in.\");\n\t}\n\tsetBlockExternals(externals) {\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"blockScope\") {\n\t\t\t\tObject.entries(externals).forEach(([id, snippet]) =\u003e {\n\t\t\t\t\tlayer.externals.set(id, snippet);\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthrow new Error(\"No block scope found to set externals in.\");\n\t}\n\tclearBlockExternals() {\n\t\tfor (let i = this._stack.length - 1; i \u003e= 0; --i) {\n\t\t\tconst layer = this._stack[i];\n\t\t\tif (layer?.type === \"blockScope\") {\n\t\t\t\tlayer.externals.clear();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthrow new Error(\"No block scope found to clear externals in.\");\n\t}\n};\nvar INDENT = [\n\t\"\",\n\t\"  \",\n\t\"    \",\n\t\"      \",\n\t\"        \",\n\t\"          \",\n\t\"            \",\n\t\"              \",\n\t\"                \"\n];\nvar N = INDENT.length - 1;\nvar IndentController = class {\n\tidentLevel = 0;\n\tget pre() {\n\t\treturn INDENT[this.identLevel] ?? INDENT[N].repeat(this.identLevel / N) + INDENT[this.identLevel % N];\n\t}\n\tindent() {\n\t\tconst str = this.pre;\n\t\tthis.identLevel++;\n\t\treturn str;\n\t}\n\tdedent() {\n\t\tthis.identLevel--;\n\t\treturn this.pre;\n\t}\n\twithResetLevel(callback) {\n\t\tconst savedLevel = this.identLevel;\n\t\tthis.identLevel = 0;\n\t\ttry {\n\t\t\treturn callback();\n\t\t} finally {\n\t\t\tthis.identLevel = savedLevel;\n\t\t}\n\t}\n};\nfunction createArgument(name, type, origin = \"argument\") {\n\tlet used = false;\n\treturn {\n\t\tname,\n\t\taccess: () =\u003e {\n\t\t\tused = true;\n\t\t\treturn snip(name, type, origin, false);\n\t\t},\n\t\tdecoratedType: type,\n\t\tget used() {\n\t\t\treturn used;\n\t\t}\n\t};\n}\nfunction createArgumentPropAccess(argAccess, prop) {\n\treturn () =\u003e {\n\t\tconst argSnippet = argAccess();\n\t\tif (!argSnippet) return;\n\t\treturn accessProp(argSnippet, prop);\n\t};\n}\nvar ResolutionCtxImpl = class {\n\t#namespaceInternal;\n\t_indentController = new IndentController();\n\t_itemStateStack = new ItemStateStackImpl();\n\t#modeStack = [];\n\t_declarations = [];\n\t_varyingLocations;\n\t#startedFunctionResolves = /* @__PURE__ */ new WeakSet();\n\t#logGenerator;\n\tgen;\n\tget varyingLocations() {\n\t\treturn this._varyingLocations;\n\t}\n\t[$internal] = { itemStateStack: this._itemStateStack };\n\tbindGroupLayoutsToPlaceholderMap = /* @__PURE__ */ new Map();\n\t_nextFreeLayoutPlaceholderIdx = 0;\n\tfixedBindings = [];\n\tenableExtensions;\n\texpectedType;\n\t#lastUniqueId = 0;\n\tconstructor(opts) {\n\t\tthis.enableExtensions = opts.enableExtensions;\n\t\tthis.#logGenerator = opts.root ? new LogGeneratorImpl(opts.root) : new LogGeneratorNullImpl();\n\t\tthis.#namespaceInternal = opts.namespace[$internal];\n\t\tthis.gen = opts.shaderGenerator ?? new WgslGenerator();\n\t\tthis.gen.initGenerator(this);\n\t}\n\tisIdentifierBanned(name) {\n\t\treturn bannedTokens.has(name);\n\t}\n\tisIdentifierTaken(name, scope) {\n\t\treturn this.#namespaceInternal.takenGlobalIdentifiers.has(name) || (scope === \"block\" ? this._itemStateStack.isIdentifierTakenLocally(name) : this._itemStateStack.isIdentifierTakenInCallStack(name));\n\t}\n\tmakeUniqueIdentifier(primer = \"item\", scope) {\n\t\tif (scope === \"block\" \u0026\u0026 (/* @__PURE__ */ validateIdentifier(primer)).success \u0026\u0026 !this.isIdentifierTaken(primer, scope)) {\n\t\t\tthis.reserveIdentifier(primer, \"block\");\n\t\t\treturn primer;\n\t\t}\n\t\tconst base = /* @__PURE__ */ sanitizePrimer(primer);\n\t\tlet index = 0;\n\t\tconst random = this.#namespaceInternal.strategy === \"random\";\n\t\tlet name = random ? `${base}_${this.#lastUniqueId++}` : base;\n\t\twhile (this.isIdentifierTaken(name, scope)) name = random ? `${base}_${this.#lastUniqueId++}` : `${base}_${++index}`;\n\t\tthis.reserveIdentifier(name, scope);\n\t\treturn name;\n\t}\n\treserveIdentifier(name, scope) {\n\t\tif (scope === \"block\") {\n\t\t\tconst blockScope = this._itemStateStack.topBlockScope;\n\t\t\tif (blockScope) {\n\t\t\t\tblockScope.takenLocalIdentifiers.add(name);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\tthis.#namespaceInternal.takenGlobalIdentifiers.add(name);\n\t}\n\tget pre() {\n\t\treturn this._indentController.pre;\n\t}\n\tget topFunctionScope() {\n\t\treturn this._itemStateStack.topFunctionScope;\n\t}\n\tget topFunctionReturnType() {\n\t\tconst scope = this._itemStateStack.topFunctionScope;\n\t\tinvariant(scope, \"Internal error, expected function scope to be present.\");\n\t\treturn scope.returnType;\n\t}\n\tget shelllessRepo() {\n\t\treturn this.#namespaceInternal.shelllessRepo;\n\t}\n\tget blockDepth() {\n\t\treturn this._itemStateStack.blockDepth;\n\t}\n\tindent() {\n\t\treturn this._indentController.indent();\n\t}\n\tdedent() {\n\t\treturn this._indentController.dedent();\n\t}\n\tgetDedented(code) {\n\t\treturn code.replaceAll(`\\n${INDENT[1]}`, \"\\n\");\n\t}\n\twithResetIndentLevel(callback) {\n\t\treturn this._indentController.withResetLevel(callback);\n\t}\n\tgetById(id) {\n\t\tconst item = this._itemStateStack.getSnippetById(id);\n\t\tif (item === void 0) return null;\n\t\treturn item;\n\t}\n\tdefineVariable(id, snippet) {\n\t\tthis._itemStateStack.defineBlockVariable(id, snippet);\n\t}\n\treportReturnType(dataType) {\n\t\tconst scope = this._itemStateStack.topFunctionScope;\n\t\tinvariant(scope, \"Internal error, expected function scope to be present.\");\n\t\tscope.reportedReturnTypes.add(dataType);\n\t}\n\tpushBlockScope() {\n\t\tthis._itemStateStack.pushBlockScope();\n\t}\n\tpopBlockScope() {\n\t\tthis._itemStateStack.pop(\"blockScope\");\n\t}\n\tsetBlockExternals(externals) {\n\t\tthis._itemStateStack.setBlockExternals(externals);\n\t}\n\tclearBlockExternals() {\n\t\tthis._itemStateStack.clearBlockExternals();\n\t}\n\tgenerateLog(op, args) {\n\t\treturn this.#logGenerator.generateLog(this, op, args);\n\t}\n\tget logResources() {\n\t\treturn this.#logGenerator.logResources;\n\t}\n\tresolveFunction(options) {\n\t\ttry {\n\t\t\tconst scope = this._itemStateStack.pushFunctionScope(options.functionType, {}, options.returnType, options.externalMap);\n\t\t\tthis._itemStateStack.pushBlockScope();\n\t\t\tconst args = [];\n\t\t\tif (options.entryInput) {\n\t\t\t\tconst { dataSchema, positionalArgs } = options.entryInput;\n\t\t\t\tconst firstParam = options.params[0];\n\t\t\t\tconst structArg = dataSchema ? createArgument(this.makeUniqueIdentifier(\"_arg_0\", \"block\"), dataSchema) : void 0;\n\t\t\t\tif (structArg) args.push(structArg);\n\t\t\t\tif (firstParam?.type === FuncParameterType.destructuredObject) for (const { name, alias } of firstParam.props) {\n\t\t\t\t\tconst argInfo = positionalArgs.find((a) =\u003e a.schemaKey === name);\n\t\t\t\t\tif (argInfo) {\n\t\t\t\t\t\tconst arg = createArgument(this.makeUniqueIdentifier(alias, \"block\"), argInfo.type);\n\t\t\t\t\t\targs.push(arg);\n\t\t\t\t\t\tscope.argAccess[alias] = arg.access;\n\t\t\t\t\t} else if (structArg) scope.argAccess[alias] = createArgumentPropAccess(structArg.access, name);\n\t\t\t\t}\n\t\t\t\telse if (firstParam?.type === FuncParameterType.identifier) {\n\t\t\t\t\tconst proxyEntries = [];\n\t\t\t\t\tfor (const a of positionalArgs) {\n\t\t\t\t\t\tconst arg = createArgument(this.makeUniqueIdentifier(a.schemaKey, \"block\"), a.type);\n\t\t\t\t\t\targs.push(arg);\n\t\t\t\t\t\tproxyEntries.push({\n\t\t\t\t\t\t\tschemaKey: a.schemaKey,\n\t\t\t\t\t\t\targ: arg.access\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\tconst router = new EntryInputRouter(structArg?.access, proxyEntries);\n\t\t\t\t\tscope.argAccess[firstParam.name] = () =\u003e snip(\"N/A\", router, \"argument\");\n\t\t\t\t} else for (const a of positionalArgs) {\n\t\t\t\t\tconst argName = this.makeUniqueIdentifier(`_arg_${a.schemaKey}`, \"block\");\n\t\t\t\t\tconst arg = createArgument(argName, a.type);\n\t\t\t\t\targs.push(arg);\n\t\t\t\t\tscope.argAccess[argName] = arg.access;\n\t\t\t\t}\n\t\t\t} else for (const [i, argType] of options.argTypes.entries()) {\n\t\t\t\tconst astParam = options.params[i];\n\t\t\t\tconst origin = isPtr(argType) ? argType.addressSpace === \"storage\" ? argType.access === \"read\" ? \"readonly\" : \"mutable\" : argType.addressSpace : \"argument\";\n\t\t\t\tswitch (astParam?.type) {\n\t\t\t\t\tcase FuncParameterType.identifier: {\n\t\t\t\t\t\tconst arg = createArgument(this.makeUniqueIdentifier(astParam.name, \"block\"), argType, origin);\n\t\t\t\t\t\targs.push(arg);\n\t\t\t\t\t\tscope.argAccess[astParam.name] = arg.access;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase FuncParameterType.destructuredObject: {\n\t\t\t\t\t\tconst objArg = createArgument(this.makeUniqueIdentifier(`_arg_${i}`, \"block\"), argType, origin);\n\t\t\t\t\t\targs.push(objArg);\n\t\t\t\t\t\tfor (const { name, alias } of astParam.props) scope.argAccess[alias] = createArgumentPropAccess(objArg.access, name);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\tcase void 0: if (!(argType instanceof AutoStruct)) args.push({\n\t\t\t\t\t\tname: this.makeUniqueIdentifier(`_arg_${i}`, \"block\"),\n\t\t\t\t\t\taccess: () =\u003e {\n\t\t\t\t\t\t\tthrow new Error(`Unreachable: Accessing an argument that wasn't named in the function signature`);\n\t\t\t\t\t\t},\n\t\t\t\t\t\tdecoratedType: argType,\n\t\t\t\t\t\tused: false\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tlet returnType;\n\t\t\tconst code = this.gen.functionDefinition({\n\t\t\t\tfunctionType: options.functionType,\n\t\t\t\tname: options.name,\n\t\t\t\tworkgroupSize: options.workgroupSize,\n\t\t\t\targs,\n\t\t\t\tbody: options.body,\n\t\t\t\tdetermineReturnType: () =\u003e {\n\t\t\t\t\tif (returnType) return returnType;\n\t\t\t\t\treturnType = options.returnType;\n\t\t\t\t\tif (returnType instanceof AutoStruct) if (isWgslStruct(scope.reportedReturnTypes.values().next().value)) returnType = returnType.completeStruct;\n\t\t\t\t\telse returnType = void 0;\n\t\t\t\t\tif (!returnType) {\n\t\t\t\t\t\tconst returnTypes = [...scope.reportedReturnTypes];\n\t\t\t\t\t\tif (returnTypes.length === 0) returnType = Void;\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tconst conversion = getBestConversion(returnTypes);\n\t\t\t\t\t\t\tif (conversion \u0026\u0026 !conversion.hasImplicitConversions) returnType = conversion.targetType;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (!returnType) throw new Error(`Expected function to have a single return type, got [${returnTypes.join(\", \")}]. Cast explicitly to the desired type.`);\n\t\t\t\t\t\treturnType = concretize(returnType);\n\t\t\t\t\t\tif (options.functionType === \"vertex\" || options.functionType === \"fragment\") returnType = createIoSchema(returnType);\n\t\t\t\t\t}\n\t\t\t\t\treturn returnType;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif (!returnType) throw new Error(`Failed to determine return type`);\n\t\t\treturn {\n\t\t\t\tcode,\n\t\t\t\treturnType\n\t\t\t};\n\t\t} finally {\n\t\t\tthis._itemStateStack.pop(\"blockScope\");\n\t\t\tthis._itemStateStack.pop(\"functionScope\");\n\t\t}\n\t}\n\taddDeclaration(declaration, name) {\n\t\tthis._declarations.push({\n\t\t\tname,\n\t\t\tcode: declaration\n\t\t});\n\t}\n\tget declarations() {\n\t\treturn this._declarations;\n\t}\n\tallocateLayoutEntry(layout) {\n\t\tconst memoMap = this.bindGroupLayoutsToPlaceholderMap;\n\t\tlet placeholderKey = memoMap.get(layout);\n\t\tif (!placeholderKey) {\n\t\t\tplaceholderKey = `#BIND_GROUP_LAYOUT_${this._nextFreeLayoutPlaceholderIdx++}#`;\n\t\t\tmemoMap.set(layout, placeholderKey);\n\t\t}\n\t\treturn placeholderKey;\n\t}\n\tallocateFixedEntry(layoutEntry, resource) {\n\t\tconst binding = this.fixedBindings.length;\n\t\tthis.fixedBindings.push({\n\t\t\tlayoutEntry,\n\t\t\tresource\n\t\t});\n\t\treturn {\n\t\t\tgroup: CATCHALL_BIND_GROUP_IDX_MARKER,\n\t\t\tbinding\n\t\t};\n\t}\n\treadSlot(slot$1) {\n\t\tconst value = this._itemStateStack.readSlot(slot$1);\n\t\tif (value === void 0) throw new MissingSlotValueError(slot$1);\n\t\treturn value;\n\t}\n\twithSlots(pairs, callback) {\n\t\tif (pairs.length === 0) return callback();\n\t\tthis._itemStateStack.pushSlotBindings(pairs);\n\t\ttry {\n\t\t\treturn callback();\n\t\t} finally {\n\t\t\tthis._itemStateStack.pop(\"slotBinding\");\n\t\t}\n\t}\n\twithVaryingLocations(locations, callback) {\n\t\tthis._varyingLocations = locations;\n\t\ttry {\n\t\t\treturn callback();\n\t\t} finally {\n\t\t\tthis._varyingLocations = void 0;\n\t\t}\n\t}\n\twithRenamed(item, name, callback) {\n\t\tif (!name) return callback();\n\t\tconst oldName = getName(item);\n\t\ttry {\n\t\t\tsetName(item, name);\n\t\t\treturn callback();\n\t\t} finally {\n\t\t\tif (oldName) setName(item, oldName);\n\t\t}\n\t}\n\tunwrap(eventual) {\n\t\tif (isProviding(eventual)) return this.withRenamed(eventual[$providing].inner, getName(eventual), () =\u003e this.withSlots(eventual[$providing].pairs, () =\u003e this.unwrap(eventual[$providing].inner)));\n\t\tlet maybeEventual = eventual;\n\t\twhile (true) if (isSlot(maybeEventual)) maybeEventual = this.readSlot(maybeEventual);\n\t\telse if (isLazy(maybeEventual)) maybeEventual = this._getOrCompute(maybeEventual);\n\t\telse break;\n\t\treturn maybeEventual;\n\t}\n\t_getOrCompute(lazy$1) {\n\t\tconst instances = this.#namespaceInternal.memoizedLazy.get(lazy$1) ?? [];\n\t\tthis._itemStateStack.pushItem();\n\t\ttry {\n\t\t\tfor (const instance of instances) if ([...instance.slotToValueMap.entries()].every(([slot$1, expectedValue]) =\u003e slot$1.areEqual(this._itemStateStack.readSlot(slot$1), expectedValue))) return instance.result;\n\t\t\tthis.pushMode(new NormalState());\n\t\t\tlet result;\n\t\t\ttry {\n\t\t\t\tresult = lazy$1[$internal].compute();\n\t\t\t} finally {\n\t\t\t\tthis.popMode(\"normal\");\n\t\t\t}\n\t\t\tconst slotToValueMap = /* @__PURE__ */ new Map();\n\t\t\tfor (const usedSlot of this._itemStateStack.topItem.usedSlots) slotToValueMap.set(usedSlot, this._itemStateStack.readSlot(usedSlot));\n\t\t\tinstances.push({\n\t\t\t\tslotToValueMap,\n\t\t\t\tresult\n\t\t\t});\n\t\t\tthis.#namespaceInternal.memoizedLazy.set(lazy$1, instances);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tif (err instanceof ResolutionError) throw err.appendToTrace(lazy$1);\n\t\t\tthrow new ResolutionError(err, [lazy$1]);\n\t\t} finally {\n\t\t\tthis._itemStateStack.pop(\"item\");\n\t\t}\n\t}\n\t_getOrInstantiate(item) {\n\t\tconst instances = this.#namespaceInternal.memoizedResolves.get(item) ?? [];\n\t\tthis._itemStateStack.pushItem();\n\t\ttry {\n\t\t\tfor (const instance of instances) if ([...instance.slotToValueMap.entries()].every(([slot$1, expectedValue]) =\u003e slot$1.areEqual(this._itemStateStack.readSlot(slot$1), expectedValue))) return instance.result;\n\t\t\tlet result;\n\t\t\tif (isData(item)) result = snip(this.gen.emitTypeAnnotation(item), Void, \"runtime\");\n\t\t\telse if (isLazy(item) || isSlot(item)) result = this.resolve(this.unwrap(item));\n\t\t\telse if (isSelfResolvable(item)) result = item[$resolve](this);\n\t\t\telse if (hasTinyestMetadata(item)) {\n\t\t\t\tconst shellless = this.#namespaceInternal.shelllessRepo.get(item, void 0);\n\t\t\t\tif (!shellless) throw new Error(`Couldn't resolve ${item.name}. Make sure it's a function that accepts no arguments, or call it from another TypeGPU function.`);\n\t\t\t\treturn this.withResetIndentLevel(() =\u003e this.resolve(shellless));\n\t\t\t} else throw new TypeError(`Unresolvable internal value: ${safeStringify(item)}`);\n\t\t\tconst slotToValueMap = /* @__PURE__ */ new Map();\n\t\t\tfor (const usedSlot of this._itemStateStack.topItem.usedSlots) slotToValueMap.set(usedSlot, this._itemStateStack.readSlot(usedSlot));\n\t\t\tinstances.push({\n\t\t\t\tslotToValueMap,\n\t\t\t\tresult\n\t\t\t});\n\t\t\tthis.#namespaceInternal.memoizedResolves.set(item, instances);\n\t\t\treturn result;\n\t\t} catch (err) {\n\t\t\tif (err instanceof ResolutionError) throw err.appendToTrace(item);\n\t\t\tthrow new ResolutionError(err, [item]);\n\t\t} finally {\n\t\t\tthis._itemStateStack.pop(\"item\");\n\t\t}\n\t}\n\tresolve(item, schema) {\n\t\tif (typeof item === \"string\") {\n\t\t\tif (!schema || schema === UnknownData) throw new Error(`Strings cannot be injected into WGSL directly (tried to inject '${item}'). Look for TypeGPU APIs that cover your use-case, or resort to using tgpu['~unstable'].rawCodeSnippet for raw code injection.`);\n\t\t\treturn snip(item, schema, \"runtime\");\n\t\t}\n\t\tif ((isTgpuFn(item) || isShelllessImpl(item)) \u0026\u0026 !isProviding(item)) {\n\t\t\tif (this.#startedFunctionResolves.has(item) \u0026\u0026 !this.#namespaceInternal.memoizedResolves.has(item)) throw new Error(`Recursive function ${item} detected. Recursion is not allowed on the GPU.`);\n\t\t\tthis.#startedFunctionResolves.add(item);\n\t\t}\n\t\tif (isProviding(item)) return this.withRenamed(item[$providing].inner, getName(item), () =\u003e this.withSlots(item[$providing].pairs, () =\u003e this.resolve(item[$providing].inner, schema)));\n\t\tif (isMarkedInternal(item) || hasTinyestMetadata(item)) {\n\t\t\tif (this._itemStateStack.itemDepth === 0) try {\n\t\t\t\tthis.pushMode(new CodegenState());\n\t\t\t\tconst result = provideCtx(this, () =\u003e this._getOrInstantiate(item));\n\t\t\t\treturn snip(`${this._declarations.map((decl) =\u003e decl.code).join(\"\\n\\n\")}${result.value}`, Void, \"runtime\");\n\t\t\t} finally {\n\t\t\t\tthis.popMode(\"codegen\");\n\t\t\t}\n\t\t\treturn this._getOrInstantiate(item);\n\t\t}\n\t\tif (typeof item === \"number\") {\n\t\t\tconst realSchema = schema ?? numericLiteralToSnippet(item).dataType;\n\t\t\tinvariant(realSchema !== UnknownData, \"Schema has to be known for resolving numbers\");\n\t\t\treturn this.gen.numericLiteral(item, realSchema);\n\t\t}\n\t\tif (typeof item === \"boolean\") return snip(item ? \"true\" : \"false\", bool, \"constant\", false);\n\t\tif (schema \u0026\u0026 isWgslArray(schema)) {\n\t\t\tif (!Array.isArray(item)) throw new WgslTypeError(`Cannot coerce ${item} into value of type '${schema}'`);\n\t\t\tif (schema.elementCount !== item.length) throw new WgslTypeError(`Cannot create value of type '${schema}' from an array of length: ${item.length}`);\n\t\t\treturn this.gen.typeInstantiation(schema, item.map((element) =\u003e snip(element, schema.elementType, \"runtime\")));\n\t\t}\n\t\tif (schema \u0026\u0026 isWgslStruct(schema)) return this.gen.typeInstantiation(schema, Object.entries(schema.propTypes).map(([key, propType]) =\u003e snip(item[key], propType, \"runtime\")));\n\t\tthrow new WgslTypeError(`Value ${safeStringify(item)} is not resolvable${schema \u0026\u0026 schema !== UnknownData ? ` to type ${safeStringify(schema)}` : \"\"}`);\n\t}\n\tresolveSnippet(snippet) {\n\t\treturn withValue(this.resolve(snippet.value, snippet.dataType).value, snippet);\n\t}\n\tpushMode(mode) {\n\t\tthis.#modeStack.push(mode);\n\t}\n\tpopMode(expected) {\n\t\tconst mode = this.#modeStack.pop();\n\t\tif (expected !== void 0) invariant(mode?.type === expected, \"Unexpected mode\");\n\t}\n\tget mode() {\n\t\treturn this.#modeStack[this.#modeStack.length - 1] ?? topLevelState;\n\t}\n};\nfunction resolve$1(item, options) {\n\tconst ctx = new ResolutionCtxImpl(options);\n\tlet code = (options.config ? ctx.withSlots(options.config(new ConfigurableImpl([])).bindings, () =\u003e ctx.resolve(item)) : ctx.resolve(item)).value;\n\tconst memoMap = ctx.bindGroupLayoutsToPlaceholderMap;\n\tconst usedBindGroupLayouts = [];\n\tconst automaticIds = naturalsExcept(new Set([...memoMap.keys()].map((layout) =\u003e layout.index).filter((v) =\u003e v !== void 0)));\n\tconst layoutEntries = ctx.fixedBindings.map((binding, idx) =\u003e [String(idx), binding.layoutEntry]);\n\tconst bindingReplacements = [];\n\tconst createCatchallGroup = () =\u003e {\n\t\tconst catchallIdx = automaticIds.next().value;\n\t\tconst catchallLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(bindGroupLayout(Object.fromEntries(layoutEntries)), \"catchallLayout\");\n\t\tusedBindGroupLayouts[catchallIdx] = catchallLayout;\n\t\tcode = code.replaceAll(CATCHALL_BIND_GROUP_IDX_MARKER, String(catchallIdx));\n\t\tbindingReplacements.push([CATCHALL_BIND_GROUP_IDX_MARKER, String(catchallIdx)]);\n\t\treturn [catchallIdx, new TgpuBindGroupImpl(options.root, catchallLayout, Object.fromEntries(ctx.fixedBindings.map((binding, idx) =\u003e [String(idx), binding.resource])))];\n\t};\n\tconst catchall = layoutEntries.length \u003e 0 ? createCatchallGroup() : void 0;\n\tfor (const [layout, placeholder] of memoMap.entries()) {\n\t\tconst idx = layout.index ?? automaticIds.next().value;\n\t\tusedBindGroupLayouts[idx] = layout;\n\t\tcode = code.replaceAll(placeholder, String(idx));\n\t\tbindingReplacements.push([placeholder, String(idx)]);\n\t}\n\tif (options.enableExtensions \u0026\u0026 options.enableExtensions.length \u003e 0) code = `${options.enableExtensions.map((ext) =\u003e `enable ${ext};`).join(\"\\n\")}\\n\\n${code}`;\n\tlet declarations = ctx.declarations.map(({ name, code: declarationCode }) =\u003e ({\n\t\tname,\n\t\tcode: bindingReplacements.reduce((acc, [placeholder, idx]) =\u003e acc.replaceAll(placeholder, idx), declarationCode)\n\t}));\n\tif (options.minify) {\n\t\tcode = minify(code);\n\t\tdeclarations = declarations.map((entry) =\u003e ({\n\t\t\t...entry,\n\t\t\tcode: minify(entry.code)\n\t\t}));\n\t}\n\treturn {\n\t\tcode,\n\t\tdeclarations,\n\t\tusedBindGroupLayouts,\n\t\tcatchall,\n\t\tlogResources: ctx.logResources\n\t};\n}\nfunction collectBindGroupPairs(layouts, catchall, map) {\n\treturn layouts.flatMap((layout, idx) =\u003e {\n\t\tconst resource = catchall \u0026\u0026 idx === catchall[0] ? catchall[1] : map?.get(layout);\n\t\treturn resource ? [[layout, resource]] : [];\n\t});\n}\nfunction collectVertexBufferPairs(layouts, map) {\n\treturn layouts.flatMap((layout) =\u003e {\n\t\tconst resource = map?.get(layout);\n\t\treturn resource ? [[layout, resource]] : [];\n\t});\n}\nvar IndirectOperationToRequiredData = {\n\tdispatchWorkgroupsIndirect: \"3 x u32\",\n\tdrawIndirect: \"4 x u32\",\n\tdrawIndexedIndirect: \"3 x u32, i32, u32\"\n};\nfunction validateIndirectBufferSize(bufferSize, offset, requiredBytes, operation) {\n\tif (offset + requiredBytes \u003e bufferSize) throw new Error(`Buffer too small for ${operation}. Required: ${requiredBytes} bytes at offset ${offset}, but buffer is only ${bufferSize} bytes.`);\n\tif (offset % 4 !== 0) throw new Error(`Indirect buffer offset must be a multiple of 4. Got: ${offset}`);\n}\nfunction resolveIndirectOffset(indirectBuffer, start, requiredSize, operation) {\n\tif (isGPUBuffer(indirectBuffer)) {\n\t\tconst offset$1 = typeof start === \"number\" ? start : start?.offset ?? 0;\n\t\tvalidateIndirectBufferSize(indirectBuffer.size, offset$1, requiredSize, operation);\n\t\treturn offset$1;\n\t}\n\tconst { offset, contiguous } = start ? typeof start === \"number\" ? {\n\t\toffset: start,\n\t\tcontiguous: requiredSize\n\t} : start : memoryLayoutOf(indirectBuffer.dataType);\n\tvalidateIndirectBufferSize(sizeOf(indirectBuffer.dataType), offset, requiredSize, operation);\n\tif (contiguous \u003c requiredSize) logger.warn(\"suspicious\", `${operation}: Starting at offset ${offset}, only ${contiguous} contiguous bytes are available before padding. '${operation}' requires ${requiredSize} bytes (${IndirectOperationToRequiredData[operation]}). Reading across padding may result in undefined behavior.`);\n\treturn offset;\n}\nvar u32AllowedSchemas = [\n\tu32,\n\tvec2u,\n\tvec3u,\n\tvec4u\n];\ndualImpl({\n\tname: \"bitcastU32toF32\",\n\tnormalImpl: ((value) =\u003e {\n\t\tif (typeof value === \"number\") return bitcastU32toF32Impl(value);\n\t\treturn VectorOps.bitcastU32toF32[value.kind](value);\n\t}),\n\tcodegenImpl: (ctx, [n], returnType) =\u003e {\n\t\treturn ctx.gen.emitCall(\"bitcast\", [coerceToSnippet(returnType)], [n]);\n\t},\n\tsignature: (...arg) =\u003e {\n\t\tconst uargs = unifyStrict(arg, u32AllowedSchemas);\n\t\tif (!uargs) throw new SignatureNotSupportedError(arg, u32AllowedSchemas);\n\t\treturn {\n\t\t\targTypes: uargs,\n\t\t\treturnType: isVec(uargs[0]) ? uargs[0].type === \"vec2u\" ? vec2f : uargs[0].type === \"vec3u\" ? vec3f : vec4f : f32\n\t\t};\n\t},\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"bitcastU32toI32\",\n\tnormalImpl: ((value) =\u003e {\n\t\tif (typeof value === \"number\") return bitcastU32toI32Impl(value);\n\t\treturn VectorOps.bitcastU32toI32[value.kind](value);\n\t}),\n\tcodegenImpl: (ctx, [n], returnType) =\u003e {\n\t\treturn ctx.gen.emitCall(\"bitcast\", [coerceToSnippet(returnType)], [n]);\n\t},\n\tsignature: (...arg) =\u003e {\n\t\tconst uargs = unifyStrict(arg, u32AllowedSchemas);\n\t\tif (!uargs) throw new SignatureNotSupportedError(arg, u32AllowedSchemas);\n\t\treturn {\n\t\t\targTypes: uargs,\n\t\t\treturnType: isVec(uargs[0]) ? uargs[0].type === \"vec2u\" ? vec2i : uargs[0].type === \"vec3u\" ? vec3i : vec4i : i32\n\t\t};\n\t},\n\tsideEffects: false\n});\nvar f32AllowedSchemas = [\n\tf32,\n\tvec2f,\n\tvec3f,\n\tvec4f\n];\ndualImpl({\n\tname: \"bitcastF32toU32\",\n\tnormalImpl: ((value) =\u003e {\n\t\tif (typeof value === \"number\") return bitcastF32toU32Impl(value);\n\t\treturn VectorOps.bitcastF32toU32[value.kind](value);\n\t}),\n\tcodegenImpl: (ctx, [n], returnType) =\u003e {\n\t\treturn ctx.gen.emitCall(\"bitcast\", [coerceToSnippet(returnType)], [n]);\n\t},\n\tsignature: (...arg) =\u003e {\n\t\tconst uargs = unifyStrict(arg, f32AllowedSchemas);\n\t\tif (!uargs) throw new SignatureNotSupportedError(arg, f32AllowedSchemas);\n\t\treturn {\n\t\t\targTypes: uargs,\n\t\t\treturnType: isVec(uargs[0]) ? uargs[0].type === \"vec2f\" ? vec2u : uargs[0].type === \"vec3f\" ? vec3u : vec4u : u32\n\t\t};\n\t},\n\tsideEffects: false\n});\nvar buffer = /* @__PURE__ */ new ArrayBuffer(16);\nvar bufViews = {\n\tf32: new Float32Array(buffer),\n\tu32: new Uint32Array(buffer),\n\ti32: new Int32Array(buffer),\n\tu16: new Uint16Array(buffer)\n};\nfunction writeToBuffer(item, target) {\n\tif (typeof item === \"number\") target[0] = item;\n\telse for (let i = 0; i \u003c item.length; i++) target[i] = item[i];\n}\nfunction writeFloat16ToBuffer(item, target) {\n\tif (typeof item === \"number\") target[0] = toHalfBits(item);\n\telse for (let i = 0; i \u003c item.length; i++) target[i] = toHalfBits(item[i]);\n}\nfunction readFromBuffer(buf, schema) {\n\tconst length$1 = \"componentCount\" in schema ? schema.componentCount : 1;\n\tconst items = [];\n\tfor (let i = 0; i \u003c length$1; i++) items.push(buf[i]);\n\treturn schema(...items);\n}\nfunction readFloat16FromBuffer(buf, schema) {\n\tconst length$1 = \"componentCount\" in schema ? schema.componentCount : 1;\n\tconst items = [];\n\tfor (let i = 0; i \u003c length$1; i++) items.push(fromHalfBits(buf[i]));\n\treturn schema(...items);\n}\nvar getCpuBitcast = (inType, outType) =\u003e {\n\tconst writeToPrimitive = \"primitive\" in inType ? inType.primitive : inType;\n\tconst readFromPrimitive = \"primitive\" in outType ? outType.primitive : outType;\n\treturn (value) =\u003e {\n\t\tif (writeToPrimitive.type === \"f16\") writeFloat16ToBuffer(value, bufViews[\"u16\"]);\n\t\telse writeToBuffer(value, bufViews[writeToPrimitive.type]);\n\t\tif (readFromPrimitive.type === \"f16\") return readFloat16FromBuffer(bufViews[\"u16\"], outType);\n\t\treturn readFromBuffer(bufViews[readFromPrimitive.type], outType);\n\t};\n};\nfunction bitcastFor(inType, outType) {\n\treturn dualImpl({\n\t\tname: \"bitcast\",\n\t\tnormalImpl: getCpuBitcast(inType, outType),\n\t\tcodegenImpl: (ctx, [n]) =\u003e ctx.gen.emitCall(\"bitcast\", [coerceToSnippet(outType)], [n]),\n\t\tsignature: (arg) =\u003e {\n\t\t\tconst uarg = unifyStrict([arg], [inType]);\n\t\t\tif (!uarg) throw new SignatureNotSupportedError([arg], [inType]);\n\t\t\treturn {\n\t\t\t\targTypes: uarg,\n\t\t\t\treturnType: outType\n\t\t\t};\n\t\t},\n\t\tsideEffects: false\n\t});\n}\nvar casts = {\n\tf16: { f16: bitcastFor(f16, f16) },\n\tf32: {\n\t\tf32: bitcastFor(f32, f32),\n\t\ti32: bitcastFor(f32, i32),\n\t\tu32: bitcastFor(f32, u32),\n\t\tvec2h: bitcastFor(f32, vec2h)\n\t},\n\ti32: {\n\t\tf32: bitcastFor(i32, f32),\n\t\ti32: bitcastFor(i32, i32),\n\t\tu32: bitcastFor(i32, u32),\n\t\tvec2h: bitcastFor(i32, vec2h)\n\t},\n\tu32: {\n\t\tf32: bitcastFor(u32, f32),\n\t\ti32: bitcastFor(u32, i32),\n\t\tu32: bitcastFor(u32, u32),\n\t\tvec2h: bitcastFor(u32, vec2h)\n\t},\n\tvec2h: {\n\t\tf32: bitcastFor(vec2h, f32),\n\t\ti32: bitcastFor(vec2h, i32),\n\t\tu32: bitcastFor(vec2h, u32),\n\t\tvec2h: bitcastFor(vec2h, vec2h)\n\t},\n\tvec3h: { vec3h: bitcastFor(vec3h, vec3h) },\n\tvec2f: {\n\t\tvec2f: bitcastFor(vec2f, vec2f),\n\t\tvec2i: bitcastFor(vec2f, vec2i),\n\t\tvec2u: bitcastFor(vec2f, vec2u),\n\t\tvec4h: bitcastFor(vec2f, vec4h)\n\t},\n\tvec2i: {\n\t\tvec2f: bitcastFor(vec2i, vec2f),\n\t\tvec2i: bitcastFor(vec2i, vec2i),\n\t\tvec2u: bitcastFor(vec2i, vec2u),\n\t\tvec4h: bitcastFor(vec2i, vec4h)\n\t},\n\tvec2u: {\n\t\tvec2f: bitcastFor(vec2u, vec2f),\n\t\tvec2i: bitcastFor(vec2u, vec2i),\n\t\tvec2u: bitcastFor(vec2u, vec2u),\n\t\tvec4h: bitcastFor(vec2u, vec4h)\n\t},\n\tvec4h: {\n\t\tvec2f: bitcastFor(vec4h, vec2f),\n\t\tvec2i: bitcastFor(vec4h, vec2i),\n\t\tvec2u: bitcastFor(vec4h, vec2u),\n\t\tvec4h: bitcastFor(vec4h, vec4h)\n\t},\n\tvec3f: {\n\t\tvec3f: bitcastFor(vec3f, vec3f),\n\t\tvec3i: bitcastFor(vec3f, vec3i),\n\t\tvec3u: bitcastFor(vec3f, vec3u)\n\t},\n\tvec3i: {\n\t\tvec3f: bitcastFor(vec3i, vec3f),\n\t\tvec3i: bitcastFor(vec3i, vec3i),\n\t\tvec3u: bitcastFor(vec3i, vec3u)\n\t},\n\tvec3u: {\n\t\tvec3f: bitcastFor(vec3u, vec3f),\n\t\tvec3i: bitcastFor(vec3u, vec3i),\n\t\tvec3u: bitcastFor(vec3u, vec3u)\n\t},\n\tvec4f: {\n\t\tvec4f: bitcastFor(vec4f, vec4f),\n\t\tvec4i: bitcastFor(vec4f, vec4i),\n\t\tvec4u: bitcastFor(vec4f, vec4u)\n\t},\n\tvec4i: {\n\t\tvec4f: bitcastFor(vec4i, vec4f),\n\t\tvec4i: bitcastFor(vec4i, vec4i),\n\t\tvec4u: bitcastFor(vec4i, vec4u)\n\t},\n\tvec4u: {\n\t\tvec4f: bitcastFor(vec4u, vec4f),\n\t\tvec4i: bitcastFor(vec4u, vec4i),\n\t\tvec4u: bitcastFor(vec4u, vec4u)\n\t}\n};\nfunction getBitcast(from, to) {\n\tif (\"type\" in from \u0026\u0026 from.type in casts) {\n\t\tconst intermediate = casts[from.type];\n\t\tif (\"type\" in to \u0026\u0026 to.type in intermediate) return intermediate[to.type];\n\t}\n\tthrow new Error(`Incorrect bitcast from ${getName(from)} to ${getName(to)}.`);\n}\nconst bitcast = comptime(getBitcast);\nconst unpack2x16float = dualImpl({\n\tname: \"unpack2x16float\",\n\tnormalImpl: (e) =\u003e {\n\t\tconst buffer$1 = /* @__PURE__ */ new ArrayBuffer(4);\n\t\tnew BufferWriter(buffer$1).writeUint32(e);\n\t\tconst reader = new BufferReader(buffer$1);\n\t\treturn vec2f(readFloat16(reader), readFloat16(reader));\n\t},\n\tsignature: {\n\t\targTypes: [u32],\n\t\treturnType: vec2f\n\t},\n\tcodegenImpl: (_ctx, [e]) =\u003e stitch`unpack2x16float(${e})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"pack2x16float\",\n\tnormalImpl: (e) =\u003e {\n\t\tconst buffer$1 = /* @__PURE__ */ new ArrayBuffer(4);\n\t\tconst writer = new BufferWriter(buffer$1);\n\t\twriteFloat16(writer, e.x);\n\t\twriteFloat16(writer, e.y);\n\t\treturn u32(new BufferReader(buffer$1).readUint32());\n\t},\n\tsignature: {\n\t\targTypes: [vec2f],\n\t\treturnType: u32\n\t},\n\tcodegenImpl: (_ctx, [e]) =\u003e stitch`pack2x16float(${e})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"unpack4x8unorm\",\n\tnormalImpl: (e) =\u003e {\n\t\tconst buffer$1 = /* @__PURE__ */ new ArrayBuffer(4);\n\t\tnew BufferWriter(buffer$1).writeUint32(e);\n\t\tconst reader = new BufferReader(buffer$1);\n\t\treturn vec4f(reader.readUint8() / 255, reader.readUint8() / 255, reader.readUint8() / 255, reader.readUint8() / 255);\n\t},\n\tsignature: {\n\t\targTypes: [u32],\n\t\treturnType: vec4f\n\t},\n\tcodegenImpl: (_ctx, [e]) =\u003e stitch`unpack4x8unorm(${e})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"pack4x8unorm\",\n\tnormalImpl: (e) =\u003e {\n\t\tconst buffer$1 = /* @__PURE__ */ new ArrayBuffer(4);\n\t\tconst writer = new BufferWriter(buffer$1);\n\t\twriter.writeUint8(e.x * 255);\n\t\twriter.writeUint8(e.y * 255);\n\t\twriter.writeUint8(e.z * 255);\n\t\twriter.writeUint8(e.w * 255);\n\t\treturn u32(new BufferReader(buffer$1).readUint32());\n\t},\n\tsignature: {\n\t\targTypes: [vec4f],\n\t\treturnType: u32\n\t},\n\tcodegenImpl: (_ctx, [e]) =\u003e stitch`pack4x8unorm(${e})`,\n\tsideEffects: false\n});\nvar toF = (n) =\u003e bitcast(u32, f32)(n ?? 0);\nvar toI = (n) =\u003e bitcast(u32, i32)(n ?? 0);\nvar unpack = (n) =\u003e unpack2x16float(n ?? 0);\nvar deserializerMap = {\n\tf32: (d) =\u003e toF(d[0]),\n\tf16: (d) =\u003e unpack(d[0]).x,\n\ti32: (d) =\u003e toI(d[0]),\n\tu32: (d) =\u003e d[0] ?? 0,\n\tbool: (d) =\u003e !!d[0],\n\tvec2f: (d) =\u003e vec2f(toF(d[0]), toF(d[1])),\n\tvec3f: (d) =\u003e vec3f(toF(d[0]), toF(d[1]), toF(d[2])),\n\tvec4f: (d) =\u003e vec4f(toF(d[0]), toF(d[1]), toF(d[2]), toF(d[3])),\n\tvec2h(d) {\n\t\tconst xyVec = unpack(d[0]);\n\t\treturn vec2h(xyVec.x, xyVec.y);\n\t},\n\tvec3h(d) {\n\t\tconst xyVec = unpack(d[0]);\n\t\tconst zVec = unpack(d[1]);\n\t\treturn vec3h(xyVec.x, xyVec.y, zVec.x);\n\t},\n\tvec4h(d) {\n\t\tconst xyVec = unpack(d[0]);\n\t\tconst zwVec = unpack(d[1]);\n\t\treturn vec4h(xyVec.x, xyVec.y, zwVec.x, zwVec.y);\n\t},\n\tvec2i: (d) =\u003e vec2i(toI(d[0]), toI(d[1])),\n\tvec3i: (d) =\u003e vec3i(toI(d[0]), toI(d[1]), toI(d[2])),\n\tvec4i: (d) =\u003e vec4i(toI(d[0]), toI(d[1]), toI(d[2]), toI(d[3])),\n\tvec2u: (d) =\u003e vec2u(d[0] ?? 0, d[1] ?? 0),\n\tvec3u: (d) =\u003e vec3u(d[0] ?? 0, d[1] ?? 0, d[2] ?? 0),\n\tvec4u: (d) =\u003e vec4u(d[0] ?? 0, d[1] ?? 0, d[2] ?? 0, d[3] ?? 0),\n\t\"vec2\u003cbool\u003e\": (d) =\u003e vec2b(!!d[0], !!d[1]),\n\t\"vec3\u003cbool\u003e\": (d) =\u003e vec3b(!!d[0], !!d[1], !!d[2]),\n\t\"vec4\u003cbool\u003e\": (d) =\u003e vec4b(!!d[0], !!d[1], !!d[2], !!d[3]),\n\tmat2x2f: (d) =\u003e mat2x2f(toF(d[0]), toF(d[1]), toF(d[2]), toF(d[3])),\n\tmat3x3f: (d) =\u003e mat3x3f(toF(d[0]), toF(d[1]), toF(d[2]), toF(d[4]), toF(d[5]), toF(d[6]), toF(d[8]), toF(d[9]), toF(d[10])),\n\tmat4x4f: (d) =\u003e mat4x4f(toF(d[0]), toF(d[1]), toF(d[2]), toF(d[3]), toF(d[4]), toF(d[5]), toF(d[6]), toF(d[7]), toF(d[8]), toF(d[9]), toF(d[10]), toF(d[11]), toF(d[12]), toF(d[13]), toF(d[14]), toF(d[15]))\n};\nfunction deserialize(data, dataType) {\n\tconst maybeDeserializer = deserializerMap[dataType.type];\n\tif (maybeDeserializer) return maybeDeserializer(data);\n\tif (isWgslStruct(dataType)) {\n\t\tconst props = Object.keys(dataType.propTypes);\n\t\tconst decodedProps = deserializeCompound(data, Object.values(dataType.propTypes));\n\t\treturn Object.fromEntries(props.map((key, index) =\u003e [key, decodedProps[index]]));\n\t}\n\tif (isWgslArray(dataType)) {\n\t\tconst elementType = dataType.elementType;\n\t\tconst length$1 = dataType.elementCount;\n\t\treturn deserializeCompound(data, Array.from({ length: length$1 }, () =\u003e elementType));\n\t}\n\tthrow new Error(`Cannot deserialize data of type ${dataType.type}`);\n}\nfunction deserializeCompound(data, dataTypes) {\n\tlet index = 0;\n\treturn dataTypes.map((info) =\u003e {\n\t\tif (!isWgslData(info)) return info;\n\t\tconst size$1 = Math.ceil(sizeOf(info) / 4);\n\t\tconst value = deserialize(data.subarray(index, index + size$1), info);\n\t\tindex += size$1;\n\t\treturn value;\n\t});\n}\nfunction deserializeAndStringify(serializedData, argTypes) {\n\treturn deserializeCompound(serializedData, argTypes).map(niceStringify);\n}\nfunction logDataFromGPU(resources) {\n\tconst { indexBuffer, dataBuffer, logIdToMeta, options } = resources;\n\tdataBuffer.read().then((data) =\u003e {\n\t\tdata.filter((e) =\u003e e.id).forEach(({ id, serializedData }) =\u003e {\n\t\t\tconst { argTypes, op } = logIdToMeta.get(id);\n\t\t\tconst results = deserializeAndStringify(new Uint32Array(serializedData), argTypes);\n\t\t\tif (results.length === 0) results.push(\"\");\n\t\t\top.bind(console)(`%c${options.messagePrefix}%c ${results[0]}`, \"background: #936ff5; color: white;\", \"color: inherit; background: none\", ...results.slice(1));\n\t\t});\n\t});\n\tindexBuffer.read().then((totalCalls) =\u003e {\n\t\tif (totalCalls \u003e options.logCountLimit) logger.warn(\"log-limit-exceeded\", `Log count limit per dispatch (${options.logCountLimit}) exceeded by ${totalCalls - options.logCountLimit} calls. Consider increasing the limit by passing appropriate options to tgpu.init().`);\n\t});\n\tdataBuffer.buffer.clear();\n\tindexBuffer.buffer.clear();\n}\nfunction INTERNAL_createQuerySet(group, type, count, rawQuerySet) {\n\treturn new TgpuQuerySetImpl(group, type, count, rawQuerySet);\n}\nfunction isQuerySet(value) {\n\tconst maybe = value;\n\treturn maybe?.resourceType === \"query-set\" \u0026\u0026 !!maybe[$internal];\n}\nvar TgpuQuerySetImpl = class {\n\tresourceType = \"query-set\";\n\t#ownQuerySet;\n\t#destroyed = false;\n\t#available = true;\n\t#readBuffer = void 0;\n\t#resolveBuffer = void 0;\n\t[$soul];\n\t[$internal];\n\tconstructor(root, type, count, rawQuerySet) {\n\t\tthis.#ownQuerySet = !rawQuerySet;\n\t\tthis[$soul] = {\n\t\t\ttype: \"query-set\",\n\t\t\tdevice: root.device,\n\t\t\tqueryType: type,\n\t\t\tcount,\n\t\t\traw: rawQuerySet,\n\t\t\tlabel: void 0\n\t\t};\n\t\tconst self = this;\n\t\tthis[$internal] = {\n\t\t\tget readBuffer() {\n\t\t\t\tif (!self.#readBuffer) self.#readBuffer = self[$soul].device.createBuffer({\n\t\t\t\t\tsize: self.count * BigUint64Array.BYTES_PER_ELEMENT,\n\t\t\t\t\tusage: GPUBufferUsage.COPY_DST | GPUBufferUsage.MAP_READ\n\t\t\t\t});\n\t\t\t\treturn self.#readBuffer;\n\t\t\t},\n\t\t\tget resolveBuffer() {\n\t\t\t\tif (!self.#resolveBuffer) self.#resolveBuffer = self[$soul].device.createBuffer({\n\t\t\t\t\tsize: self.count * BigUint64Array.BYTES_PER_ELEMENT,\n\t\t\t\t\tusage: GPUBufferUsage.QUERY_RESOLVE | GPUBufferUsage.COPY_SRC\n\t\t\t\t});\n\t\t\t\treturn self.#resolveBuffer;\n\t\t\t},\n\t\t\tmaterialize: () =\u003e {\n\t\t\t\tif (this.#destroyed) throw new Error(\"This QuerySet has been destroyed.\");\n\t\t\t\tconst soul = this[$soul];\n\t\t\t\tif (!soul.raw) soul.raw = soul.device.createQuerySet({\n\t\t\t\t\ttype: soul.queryType,\n\t\t\t\t\tcount: soul.count\n\t\t\t\t});\n\t\t\t\treturn soul.raw;\n\t\t\t}\n\t\t};\n\t}\n\tget type() {\n\t\treturn this[$soul].queryType;\n\t}\n\tget count() {\n\t\treturn this[$soul].count;\n\t}\n\tget querySet() {\n\t\treturn this[$internal].materialize();\n\t}\n\tget destroyed() {\n\t\treturn this.#destroyed;\n\t}\n\tget available() {\n\t\treturn this.#available;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\tconst raw = this[$soul].raw;\n\t\tif (raw) raw.label = label;\n\t\treturn this;\n\t}\n\tresolve() {\n\t\tif (this.#destroyed) throw new Error(\"This QuerySet has been destroyed.\");\n\t\tif (!this.#available) throw new Error(\"This QuerySet is busy resolving or reading.\");\n\t\tconst commandEncoder = this[$soul].device.createCommandEncoder();\n\t\tcommandEncoder.resolveQuerySet(this.querySet, 0, this.count, this[$internal].resolveBuffer, 0);\n\t\tthis[$soul].device.queue.submit([commandEncoder.finish()]);\n\t}\n\tasync read() {\n\t\tif (!this.#resolveBuffer) throw new Error(\"QuerySet must be resolved before reading.\");\n\t\tthis.#available = false;\n\t\ttry {\n\t\t\tconst commandEncoder = this[$soul].device.createCommandEncoder();\n\t\t\tcommandEncoder.copyBufferToBuffer(this[$internal].resolveBuffer, 0, this[$internal].readBuffer, 0, this.count * BigUint64Array.BYTES_PER_ELEMENT);\n\t\t\tthis[$soul].device.queue.submit([commandEncoder.finish()]);\n\t\t\tconst readBuffer = this[$internal].readBuffer;\n\t\t\tawait readBuffer.mapAsync(GPUMapMode.READ);\n\t\t\tconst data = new BigUint64Array(readBuffer.getMappedRange().slice());\n\t\t\treadBuffer.unmap();\n\t\t\treturn Array.from(data);\n\t\t} finally {\n\t\t\tthis.#available = true;\n\t\t}\n\t}\n\tdestroy() {\n\t\tif (this.#destroyed) return;\n\t\tthis.#destroyed = true;\n\t\tif (this[$soul].raw \u0026\u0026 this.#ownQuerySet) this[$soul].raw.destroy();\n\t\tthis.#readBuffer?.destroy();\n\t\tthis.#resolveBuffer?.destroy();\n\t\tthis.#readBuffer = this.#resolveBuffer = void 0;\n\t}\n};\nfunction createWithPerformanceCallback(currentPriors, callback, querySet) {\n\tif (!currentPriors.timestampWrites) return {\n\t\t...currentPriors,\n\t\tperformanceCallback: callback,\n\t\ttimestampWrites: {\n\t\t\tquerySet,\n\t\t\tbeginningOfPassWriteIndex: 0,\n\t\t\tendOfPassWriteIndex: 1\n\t\t}\n\t};\n\treturn {\n\t\t...currentPriors,\n\t\tperformanceCallback: callback\n\t};\n}\nfunction createWithTimestampWrites(currentPriors, options, root) {\n\tif (!root.enabledFeatures.has(\"timestamp-query\")) throw new Error(\"Timestamp writes require the \\\"timestamp-query\\\" feature to be enabled on GPU device.\");\n\tconst timestampWrites = { querySet: options.querySet };\n\tif (options.beginningOfPassWriteIndex !== void 0) timestampWrites.beginningOfPassWriteIndex = options.beginningOfPassWriteIndex;\n\tif (options.endOfPassWriteIndex !== void 0) timestampWrites.endOfPassWriteIndex = options.endOfPassWriteIndex;\n\treturn {\n\t\t...currentPriors,\n\t\ttimestampWrites\n\t};\n}\nvar pendingTimestampReads = /* @__PURE__ */ new WeakMap();\nasync function readTimestamps(querySet, registrations) {\n\tif (!querySet.available) return;\n\tconst result = await querySet.read();\n\tfor (const { priors, callback } of registrations) {\n\t\tconst start = result[priors.timestampWrites?.beginningOfPassWriteIndex ?? 0];\n\t\tconst end = result[priors.timestampWrites?.endOfPassWriteIndex ?? 1];\n\t\tif (start === void 0 || end === void 0) throw new Error(\"QuerySet did not return valid timestamps.\");\n\t\tawait callback(start, end);\n\t}\n}\nfunction queueTimestampResolve(encoder, priors) {\n\tconst querySet = priors.timestampWrites?.querySet;\n\tconst callback = priors.performanceCallback;\n\tif (!querySet) throw new Error(\"Cannot dispatch workgroups with performance callback without a query set.\");\n\tif (!isQuerySet(querySet)) throw new Error(\"Performance callback with raw GPUQuerySet is not supported. Use TgpuQuerySet instead.\");\n\tconst internals = encoder[$internal];\n\tif (internals.adopted) return false;\n\tconst { root } = internals;\n\tinternals.beforeFinish.set(querySet, (rawEncoder) =\u003e {\n\t\trawEncoder.resolveQuerySet(root.unwrap(querySet), 0, querySet.count, querySet[$internal].resolveBuffer, 0);\n\t});\n\tlet byQuerySet = pendingTimestampReads.get(encoder);\n\tif (!byQuerySet) {\n\t\tbyQuerySet = /* @__PURE__ */ new Map();\n\t\tpendingTimestampReads.set(encoder, byQuerySet);\n\t}\n\tlet registrations = byQuerySet.get(querySet);\n\tif (!registrations) {\n\t\tconst regs = [];\n\t\tregistrations = regs;\n\t\tbyQuerySet.set(querySet, regs);\n\t\tinternals.afterSubmit.set(querySet, () =\u003e {\n\t\t\tbyQuerySet.delete(querySet);\n\t\t\treadTimestamps(querySet, regs);\n\t\t});\n\t}\n\tif (registrations.some((reg) =\u003e reg.priors === priors)) logger.warnOnce(\"suspicious\", querySet, \"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.\");\n\telse registrations.push({\n\t\tpriors,\n\t\tcallback\n\t});\n\treturn true;\n}\nvar RenderDrawState = class {\n\tbindGroups = /* @__PURE__ */ new Map();\n\tvertexBuffers = /* @__PURE__ */ new Map();\n\tcurrentPipeline;\n\tindexBuffer;\n\tstencilReference;\n\tappliedStencilReference = 0;\n\tversion = 0;\n\trawAccessed = false;\n};\nvar ComputeDrawState = class {\n\tbindGroups = /* @__PURE__ */ new Map();\n\tcurrentPipeline;\n\tversion = 0;\n\trawAccessed = false;\n};\nfunction recordBindGroup(state, first, bindGroup) {\n\tif (isBindGroup(first)) state.bindGroups.set(first.layout, first);\n\telse state.bindGroups.set(first, bindGroup);\n\tstate.version++;\n}\nfunction stampRenderPipeline(state, pipeline) {\n\tconst { priors } = pipeline[$internal];\n\tstate.currentPipeline = pipeline;\n\tif (priors.bindGroupLayoutMap) for (const [layout, group] of priors.bindGroupLayoutMap) state.bindGroups.set(layout, group);\n\tif (priors.vertexLayoutMap) for (const [layout, buffer$1] of priors.vertexLayoutMap) state.vertexBuffers.set(layout, {\n\t\tbuffer: buffer$1,\n\t\toffset: void 0,\n\t\tsize: void 0\n\t});\n\tif (priors.indexBuffer) state.indexBuffer = priors.indexBuffer;\n\tif (priors.stencilReference !== void 0) state.stencilReference = priors.stencilReference;\n\tstate.version++;\n}\nfunction stampComputePipeline(state, pipeline) {\n\tconst { priors } = pipeline[$internal];\n\tstate.currentPipeline = pipeline;\n\tif (priors.bindGroupLayoutMap) for (const [layout, group] of priors.bindGroupLayoutMap) state.bindGroups.set(layout, group);\n\tstate.version++;\n}\nfunction applyIndexBuffer(encoder, root, entry) {\n\tconst { buffer: buffer$1, indexFormat, offsetBytes, sizeBytes } = entry;\n\tif (isBuffer(buffer$1)) encoder.setIndexBuffer(root.unwrap(buffer$1), indexFormat, offsetBytes, sizeBytes);\n\telse encoder.setIndexBuffer(buffer$1, indexFormat, offsetBytes, sizeBytes);\n}\nfunction applyBindGroups(encoder, root, usedBindGroupLayouts, catchall, resolveBindGroup) {\n\tconst missingBindGroups = new Set(usedBindGroupLayouts);\n\tusedBindGroupLayouts.forEach((layout, idx) =\u003e {\n\t\tif (catchall \u0026\u0026 idx === catchall[0]) {\n\t\t\tencoder.setBindGroup(idx, root.unwrap(catchall[1]));\n\t\t\tmissingBindGroups.delete(layout);\n\t\t} else {\n\t\t\tconst bindGroup = resolveBindGroup(layout);\n\t\t\tif (bindGroup !== void 0) {\n\t\t\t\tmissingBindGroups.delete(layout);\n\t\t\t\tif (isBindGroup(bindGroup)) encoder.setBindGroup(idx, root.unwrap(bindGroup));\n\t\t\t\telse encoder.setBindGroup(idx, bindGroup);\n\t\t\t}\n\t\t}\n\t});\n\tif (missingBindGroups.size \u003e 0) throw new MissingBindGroupsError(missingBindGroups);\n}\nfunction applyVertexBuffers(encoder, root, usedVertexLayouts, resolveVertexBuffer) {\n\tconst missingVertexLayouts = /* @__PURE__ */ new Set();\n\tusedVertexLayouts.forEach((vertexLayout$1, idx) =\u003e {\n\t\tconst entry = resolveVertexBuffer(vertexLayout$1);\n\t\tif (!entry || !entry.buffer) missingVertexLayouts.add(vertexLayout$1);\n\t\telse if (isBuffer(entry.buffer)) encoder.setVertexBuffer(idx, root.unwrap(entry.buffer), entry.offset, entry.size);\n\t\telse encoder.setVertexBuffer(idx, entry.buffer, entry.offset, entry.size);\n\t});\n\tif (missingVertexLayouts.size \u003e 0) throw new MissingVertexBuffersError(missingVertexLayouts);\n}\nfunction applyRenderPipelineState(encoder, root, pipeline, passState) {\n\tconst memo = pipeline[$internal].core.unwrap();\n\tencoder.setPipeline(memo.pipeline);\n\tapplyBindGroups(encoder, root, memo.usedBindGroupLayouts, memo.catchall, (layout) =\u003e passState.bindGroups.get(layout));\n\tapplyVertexBuffers(encoder, root, memo.usedVertexLayouts, (vertexLayout$1) =\u003e passState.vertexBuffers.get(vertexLayout$1));\n\tif (passState.indexBuffer !== void 0) applyIndexBuffer(encoder, root, passState.indexBuffer);\n\tif (typeof encoder.setStencilReference === \"function\" \u0026\u0026 passState.stencilReference !== void 0) {\n\t\tif (passState.rawAccessed || passState.stencilReference !== passState.appliedStencilReference) {\n\t\t\tencoder.setStencilReference(passState.stencilReference);\n\t\t\tpassState.appliedStencilReference = passState.stencilReference;\n\t\t}\n\t}\n}\nfunction applyComputePipelineState(encoder, root, pipeline, passState) {\n\tconst memo = pipeline[$internal].core.unwrap();\n\tencoder.setPipeline(memo.pipeline);\n\tapplyBindGroups(encoder, root, memo.usedBindGroupLayouts, memo.catchall, (layout) =\u003e passState.bindGroups.get(layout));\n}\nfunction requireIndexBuffer(indexBuffer) {\n\tif (!indexBuffer) throw new Error(\"No index buffer is set. Call pipeline.withIndexBuffer or pass.setIndexBuffer before drawing indexed geometry.\");\n}\nfunction warnAboutUnreachableSubmission(core, what) {\n\tlogger.warnOnce(\"suspicious\", core, what, `${what} is ignored when recording into a raw GPUCommandEncoder, since there is no submission to report after. Use root['~unstable'].createCommandEncoder() instead.`);\n}\nfunction queueLogDrain(encoder, logResources) {\n\tif (!encoder || encoder[$internal].adopted) return false;\n\tencoder[$internal].afterSubmit.set(logResources, () =\u003e logDataFromGPU(logResources));\n\treturn true;\n}\nfunction finalizeOwnEncoder(encoder, core, logResources, priors) {\n\tif (logResources \u0026\u0026 !queueLogDrain(encoder, logResources)) warnAboutUnreachableSubmission(core, \"Shader console.log output\");\n\tif (priors.performanceCallback \u0026\u0026 !queueTimestampResolve(encoder, priors)) warnAboutUnreachableSubmission(core, \"The performance callback\");\n\tif (priors.encoder === void 0) encoder.submit();\n}\nvar PassKindWording = {\n\trender: {\n\t\tinto: \"drawing into a render pass\",\n\t\tintoRaw: \"drawing into a raw render pass\",\n\t\tbegin: \"beginRenderPass\"\n\t},\n\tcompute: {\n\t\tinto: \"dispatching into a compute pass\",\n\t\tintoRaw: \"dispatching into a raw compute pass\",\n\t\tbegin: \"beginComputePass\"\n\t}\n};\nfunction reportIgnoredPriors(core, owner, hasTimestampWrites, logResources, passKind, hasAttachments = false) {\n\tconst wording = PassKindWording[passKind];\n\tif (hasAttachments) logger.warnOnce(\"suspicious\", core, \"attachments\", `Pipeline-level attachments are ignored when ${wording.into}. Pass \\`colorAttachments\\` and \\`depthStencilAttachment\\` to encoder.${wording.begin} instead.`);\n\tif (hasTimestampWrites) logger.warnOnce(\"suspicious\", core, \"timestampWrites\", `Pipeline-level timestamp writes are ignored when ${wording.into}. Pass \\`timestampWrites\\` to encoder.${wording.begin} instead.`);\n\tif (logResources \u0026\u0026 !queueLogDrain(owner, logResources)) logger.warnOnce(\"suspicious\", core, \"logs\", `Shader console.log output is ignored when ${wording.intoRaw} encoder, since there is no submission to read it back after.`);\n}\nfunction emitRenderDraw(root, passInternals, pipeline, usesIndexBuffer, emit, ownsPass = false) {\n\tconst { state, rawPass } = passInternals;\n\tconst { core, priors } = pipeline[$internal];\n\tif (state.currentPipeline !== pipeline) stampRenderPipeline(state, pipeline);\n\tif (usesIndexBuffer) requireIndexBuffer(state.indexBuffer);\n\tconst memo = core.unwrap();\n\tif (!ownsPass) reportIgnoredPriors(core, passInternals.owner, !!priors.timestampWrites, memo.logResources, \"render\", !!priors.colorAttachment || !!priors.depthStencilAttachment);\n\tif (state.rawAccessed || passInternals.appliedVersion !== state.version) {\n\t\tapplyRenderPipelineState(rawPass, root, pipeline, state);\n\t\tpassInternals.appliedVersion = state.version;\n\t}\n\temit(rawPass);\n}\nfunction emitComputeDispatch(root, passInternals, pipeline, emit, ownsPass = false) {\n\tconst { state, rawPass } = passInternals;\n\tconst { core, priors } = pipeline[$internal];\n\tif (state.currentPipeline !== pipeline) stampComputePipeline(state, pipeline);\n\tconst memo = core.unwrap();\n\tif (!ownsPass) reportIgnoredPriors(core, passInternals.owner, !!priors.timestampWrites, memo.logResources, \"compute\");\n\tif (state.rawAccessed || passInternals.appliedVersion !== state.version) {\n\t\tapplyComputePipelineState(rawPass, root, pipeline, state);\n\t\tpassInternals.appliedVersion = state.version;\n\t}\n\temit(rawPass);\n}\nfunction isComputePipeline(value) {\n\tconst maybe = value;\n\treturn maybe?.resourceType === \"compute-pipeline\" \u0026\u0026 isMarkedInternal(maybe);\n}\nfunction isRenderPipeline(value) {\n\tconst maybe = value;\n\treturn maybe?.resourceType === \"render-pipeline\" \u0026\u0026 isMarkedInternal(maybe);\n}\nfunction isPipeline(value) {\n\treturn isRenderPipeline(value) || isComputePipeline(value);\n}\nfunction isTgpuCommandEncoder(value) {\n\tconst maybe = value;\n\treturn maybe?.resourceType === \"command-encoder\" \u0026\u0026 isMarkedInternal(maybe);\n}\nfunction isTgpuRenderCommands(value) {\n\tconst maybe = value;\n\treturn (maybe?.resourceType === \"render-pass\" || maybe?.resourceType === \"render-bundle-encoder\") \u0026\u0026 isMarkedInternal(maybe);\n}\nfunction isTgpuComputePass(value) {\n\tconst maybe = value;\n\treturn maybe?.resourceType === \"compute-pass\" \u0026\u0026 isMarkedInternal(maybe);\n}\nfunction isGPUCanvasContext(value) {\n\treturn typeof value?.getCurrentTexture === \"function\";\n}\nfunction isGPUCommandEncoder(value) {\n\tconst maybe = value;\n\treturn !isMarkedInternal(maybe) \u0026\u0026 typeof maybe?.beginRenderPass === \"function\" \u0026\u0026 typeof maybe?.beginComputePass === \"function\";\n}\nfunction isGPUComputePassEncoder(value) {\n\tconst maybe = value;\n\treturn !isMarkedInternal(maybe) \u0026\u0026 typeof maybe?.dispatchWorkgroups === \"function\" \u0026\u0026 maybe?.beginRenderPass === void 0;\n}\nfunction isGPURenderPassEncoder(value) {\n\tconst maybe = value;\n\treturn !isMarkedInternal(maybe) \u0026\u0026 typeof maybe?.executeBundles === \"function\" \u0026\u0026 typeof maybe?.draw === \"function\";\n}\nfunction isGPURenderBundleEncoder(value) {\n\tconst maybe = value;\n\treturn !isMarkedInternal(maybe) \u0026\u0026 typeof maybe?.draw === \"function\" \u0026\u0026 typeof maybe?.finish === \"function\" \u0026\u0026 maybe?.executeBundles === void 0 \u0026\u0026 maybe?.beginRenderPass === void 0 \u0026\u0026 maybe?.dispatchWorkgroups === void 0;\n}\nfunction unwrapAttachmentView(root, view) {\n\tif (isTexture(view)) return root.unwrap(view).createView();\n\tif (isTextureView(view)) return root.unwrap(view);\n\tif (isGPUCanvasContext(view)) return view.getCurrentTexture().createView();\n\treturn view;\n}\nfunction unwrapTimestampWrites(root, timestampWrites) {\n\tconst { querySet, beginningOfPassWriteIndex, endOfPassWriteIndex } = timestampWrites;\n\tconst result = { querySet: isQuerySet(querySet) ? root.unwrap(querySet) : querySet };\n\tif (beginningOfPassWriteIndex !== void 0) result.beginningOfPassWriteIndex = beginningOfPassWriteIndex;\n\tif (endOfPassWriteIndex !== void 0) result.endOfPassWriteIndex = endOfPassWriteIndex;\n\treturn result;\n}\nfunction INTERNAL_beginComputePass(encoder, descriptor) {\n\tconst { rawEncoder, root } = encoder[$internal];\n\tconst rawDescriptor = {};\n\tif (descriptor?.label !== void 0) rawDescriptor.label = descriptor.label;\n\tif (descriptor?.timestampWrites !== void 0) rawDescriptor.timestampWrites = unwrapTimestampWrites(root, descriptor.timestampWrites);\n\treturn new TgpuComputePassImpl(root, rawEncoder.beginComputePass(rawDescriptor), encoder);\n}\nfunction INTERNAL_adoptComputePass(root, rawPass) {\n\tconst adopted = new TgpuComputePassImpl(root, rawPass, void 0);\n\tadopted[$internal].state.rawAccessed = true;\n\treturn adopted;\n}\nvar TgpuComputePassImpl = class {\n\t[$internal];\n\tresourceType = \"compute-pass\";\n\t#root;\n\tconstructor(root, rawPass, owner) {\n\t\tthis.#root = root;\n\t\tthis[$internal] = {\n\t\t\trawPass,\n\t\t\tstate: new ComputeDrawState(),\n\t\t\towner,\n\t\t\tappliedVersion: void 0\n\t\t};\n\t}\n\t#emit(emit) {\n\t\tconst internals = this[$internal];\n\t\tconst pipeline = internals.state.currentPipeline;\n\t\tif (!pipeline) throw new Error(\"Cannot dispatch without a call to pass.setPipeline\");\n\t\temitComputeDispatch(this.#root, internals, pipeline, emit);\n\t}\n\tsetPipeline(pipeline) {\n\t\tstampComputePipeline(this[$internal].state, pipeline);\n\t}\n\tsetBindGroup(first, bindGroup) {\n\t\trecordBindGroup(this[$internal].state, first, bindGroup);\n\t}\n\tdispatchWorkgroups(x, y, z) {\n\t\tthis.#emit((rawPass) =\u003e rawPass.dispatchWorkgroups(x, y, z));\n\t}\n\tdispatchWorkgroupsIndirect(indirectBuffer, start) {\n\t\tconst rawBuffer = isGPUBuffer(indirectBuffer) ? indirectBuffer : indirectBuffer.buffer;\n\t\tconst offset = resolveIndirectOffset(indirectBuffer, start, 12, \"dispatchWorkgroupsIndirect\");\n\t\tthis.#emit((rawPass) =\u003e rawPass.dispatchWorkgroupsIndirect(rawBuffer, offset));\n\t}\n\tend() {\n\t\tthis[$internal].rawPass.end();\n\t}\n};\nfunction attachmentAspects(view) {\n\tlet format;\n\tlet aspect = \"all\";\n\tif (isTexture(view)) format = view.props.format;\n\telse if (isTextureView(view)) {\n\t\tformat = view[$internal].format;\n\t\taspect = view[$internal].aspect ?? \"all\";\n\t}\n\tif (format === void 0) return;\n\treturn {\n\t\thasDepth: format.includes(\"depth\") \u0026\u0026 aspect !== \"stencil-only\",\n\t\thasStencil: format.includes(\"stencil\") \u0026\u0026 aspect !== \"depth-only\"\n\t};\n}\nfunction withDepthStencilDefaults(attachment, view) {\n\tconst rawAttachment = {\n\t\t...attachment,\n\t\tview\n\t};\n\tconst aspects = attachmentAspects(attachment.view);\n\tif (aspects === void 0) {\n\t\tif (attachment.depthLoadOp !== void 0 || attachment.depthStoreOp !== void 0 || attachment.stencilLoadOp !== void 0 || attachment.stencilStoreOp !== void 0) return rawAttachment;\n\t}\n\tconst { hasDepth, hasStencil } = aspects ?? {\n\t\thasDepth: true,\n\t\thasStencil: false\n\t};\n\tif (hasDepth \u0026\u0026 !attachment.depthReadOnly) {\n\t\trawAttachment.depthLoadOp ??= \"clear\";\n\t\trawAttachment.depthStoreOp ??= \"store\";\n\t\trawAttachment.depthClearValue ??= 1;\n\t}\n\tif (hasStencil \u0026\u0026 !attachment.stencilReadOnly) {\n\t\trawAttachment.stencilLoadOp ??= \"clear\";\n\t\trawAttachment.stencilStoreOp ??= \"store\";\n\t}\n\treturn rawAttachment;\n}\nfunction INTERNAL_beginRenderPass(encoder, descriptor) {\n\tconst { rawEncoder, root } = encoder[$internal];\n\tconst rawDescriptor = { colorAttachments: (descriptor.colorAttachments === void 0 ? [] : Array.isArray(descriptor.colorAttachments) ? descriptor.colorAttachments : [descriptor.colorAttachments]).map((attachment) =\u003e {\n\t\tif (attachment === null) return null;\n\t\tconst rawAttachment = {\n\t\t\t...attachment,\n\t\t\tloadOp: attachment.loadOp ?? \"clear\",\n\t\t\tstoreOp: attachment.storeOp ?? \"store\",\n\t\t\tview: unwrapAttachmentView(root, attachment.view)\n\t\t};\n\t\tif (attachment.resolveTarget !== void 0) rawAttachment.resolveTarget = unwrapAttachmentView(root, attachment.resolveTarget);\n\t\treturn rawAttachment;\n\t}) };\n\tif (descriptor.label !== void 0) rawDescriptor.label = descriptor.label;\n\tif (descriptor.depthStencilAttachment !== void 0) rawDescriptor.depthStencilAttachment = withDepthStencilDefaults(descriptor.depthStencilAttachment, unwrapAttachmentView(root, descriptor.depthStencilAttachment.view));\n\tif (descriptor.occlusionQuerySet !== void 0) rawDescriptor.occlusionQuerySet = isQuerySet(descriptor.occlusionQuerySet) ? root.unwrap(descriptor.occlusionQuerySet) : descriptor.occlusionQuerySet;\n\tif (descriptor.timestampWrites !== void 0) rawDescriptor.timestampWrites = unwrapTimestampWrites(root, descriptor.timestampWrites);\n\tif (descriptor.maxDrawCount !== void 0) rawDescriptor.maxDrawCount = descriptor.maxDrawCount;\n\treturn new TgpuRenderPassImpl(root, rawEncoder.beginRenderPass(rawDescriptor), encoder);\n}\nfunction INTERNAL_createRenderBundleEncoder(root, descriptor) {\n\treturn new TgpuRenderBundleEncoderImpl(root, root.device.createRenderBundleEncoder(descriptor), void 0);\n}\nfunction INTERNAL_adoptRenderCommands(root, rawPass) {\n\tconst adopted = typeof rawPass.executeBundles === \"function\" ? new TgpuRenderPassImpl(root, rawPass, void 0) : new TgpuRenderCommandsImpl(root, rawPass, void 0);\n\tadopted[$internal].state.rawAccessed = true;\n\treturn adopted;\n}\nvar TgpuRenderCommandsImpl = class {\n\t[$internal];\n\tresourceType = \"render-bundle-encoder\";\n\t#root;\n\tconstructor(root, rawPass, owner) {\n\t\tthis.#root = root;\n\t\tthis[$internal] = {\n\t\t\trawPass,\n\t\t\tstate: new RenderDrawState(),\n\t\t\towner,\n\t\t\tappliedVersion: void 0\n\t\t};\n\t}\n\t#emit(usesIndexBuffer, emit) {\n\t\tconst internals = this[$internal];\n\t\tconst pipeline = internals.state.currentPipeline;\n\t\tif (!pipeline) throw new Error(\"Cannot draw without a call to pass.setPipeline\");\n\t\temitRenderDraw(this.#root, internals, pipeline, usesIndexBuffer, emit);\n\t}\n\tsetPipeline(pipeline) {\n\t\tstampRenderPipeline(this[$internal].state, pipeline);\n\t}\n\tsetBindGroup(first, bindGroup) {\n\t\trecordBindGroup(this[$internal].state, first, bindGroup);\n\t}\n\tsetVertexBuffer(vertexLayout$1, buffer$1, offset, size$1) {\n\t\tconst { state } = this[$internal];\n\t\tstate.vertexBuffers.set(vertexLayout$1, {\n\t\t\tbuffer: buffer$1,\n\t\t\toffset,\n\t\t\tsize: size$1\n\t\t});\n\t\tstate.version++;\n\t}\n\tsetIndexBuffer(buffer$1, indexFormat, offset, size$1) {\n\t\tconst { state } = this[$internal];\n\t\tstate.indexBuffer = {\n\t\t\tbuffer: buffer$1,\n\t\t\tindexFormat,\n\t\t\toffsetBytes: offset,\n\t\t\tsizeBytes: size$1\n\t\t};\n\t\tstate.version++;\n\t}\n\tdraw(vertexCount, instanceCount, firstVertex, firstInstance) {\n\t\tthis.#emit(false, (rawPass) =\u003e rawPass.draw(vertexCount, instanceCount, firstVertex, firstInstance));\n\t}\n\tdrawIndexed(indexCount, instanceCount, firstIndex, baseVertex, firstInstance) {\n\t\tthis.#emit(true, (rawPass) =\u003e rawPass.drawIndexed(indexCount, instanceCount, firstIndex, baseVertex, firstInstance));\n\t}\n\tdrawIndirect(indirectBuffer, indirectOffset) {\n\t\tconst rawBuffer = isGPUBuffer(indirectBuffer) ? indirectBuffer : indirectBuffer.buffer;\n\t\tconst offset = resolveIndirectOffset(indirectBuffer, indirectOffset, 16, \"drawIndirect\");\n\t\tthis.#emit(false, (rawPass) =\u003e rawPass.drawIndirect(rawBuffer, offset));\n\t}\n\tdrawIndexedIndirect(indirectBuffer, indirectOffset) {\n\t\tconst rawBuffer = isGPUBuffer(indirectBuffer) ? indirectBuffer : indirectBuffer.buffer;\n\t\tconst offset = resolveIndirectOffset(indirectBuffer, indirectOffset, 20, \"drawIndexedIndirect\");\n\t\tthis.#emit(true, (rawPass) =\u003e rawPass.drawIndexedIndirect(rawBuffer, offset));\n\t}\n};\nvar TgpuRenderBundleEncoderImpl = class extends TgpuRenderCommandsImpl {\n\tresourceType = \"render-bundle-encoder\";\n\tfinish(descriptor) {\n\t\treturn this[$internal].rawPass.finish(descriptor);\n\t}\n};\nvar TgpuRenderPassImpl = class extends TgpuRenderCommandsImpl {\n\tresourceType = \"render-pass\";\n\tsetViewport(x, y, width, height, minDepth, maxDepth) {\n\t\tthis[$internal].rawPass.setViewport(x, y, width, height, minDepth, maxDepth);\n\t}\n\tsetScissorRect(x, y, width, height) {\n\t\tthis[$internal].rawPass.setScissorRect(x, y, width, height);\n\t}\n\tsetBlendConstant(color$1) {\n\t\tthis[$internal].rawPass.setBlendConstant(color$1);\n\t}\n\tsetStencilReference(reference) {\n\t\tconst { state } = this[$internal];\n\t\tstate.stencilReference = reference;\n\t\tstate.version++;\n\t}\n\tbeginOcclusionQuery(queryIndex) {\n\t\tthis[$internal].rawPass.beginOcclusionQuery(queryIndex);\n\t}\n\tendOcclusionQuery() {\n\t\tthis[$internal].rawPass.endOcclusionQuery();\n\t}\n\texecuteBundles(bundles) {\n\t\tconst internals = this[$internal];\n\t\tinternals.rawPass.executeBundles(bundles);\n\t\tinternals.appliedVersion = void 0;\n\t}\n\tend() {\n\t\tthis[$internal].rawPass.end();\n\t}\n};\nfunction INTERNAL_createCommandEncoder(root, descriptor) {\n\treturn new TgpuCommandEncoderImpl(root, root.device.createCommandEncoder(descriptor), false);\n}\nfunction INTERNAL_adoptCommandEncoder(root, rawEncoder) {\n\treturn new TgpuCommandEncoderImpl(root, rawEncoder, true);\n}\nvar TgpuCommandEncoderImpl = class {\n\t[$internal];\n\tresourceType = \"command-encoder\";\n\tconstructor(root, rawEncoder, adopted) {\n\t\tthis[$internal] = {\n\t\t\trawEncoder,\n\t\t\troot,\n\t\t\tadopted,\n\t\t\tbeforeFinish: /* @__PURE__ */ new Map(),\n\t\t\tafterSubmit: /* @__PURE__ */ new Map()\n\t\t};\n\t}\n\tbeginRenderPass(descriptor) {\n\t\treturn INTERNAL_beginRenderPass(this, descriptor);\n\t}\n\tbeginComputePass(descriptor) {\n\t\treturn INTERNAL_beginComputePass(this, descriptor);\n\t}\n\t#recordPendingCommands() {\n\t\tconst { rawEncoder, beforeFinish } = this[$internal];\n\t\tfor (const record of beforeFinish.values()) record(rawEncoder);\n\t\tbeforeFinish.clear();\n\t}\n\tsubmit() {\n\t\tconst { rawEncoder, root, afterSubmit } = this[$internal];\n\t\tthis.#recordPendingCommands();\n\t\troot.device.queue.submit([rawEncoder.finish()]);\n\t\tfor (const hook of afterSubmit.values()) hook();\n\t\tafterSubmit.clear();\n\t}\n\tfinish(descriptor) {\n\t\tconst { rawEncoder, root, afterSubmit } = this[$internal];\n\t\tthis.#recordPendingCommands();\n\t\tif (afterSubmit.size \u003e 0) logger.warnOnce(\"suspicious\", root, \"finishWithPendingWork\", \"Shader console.log output and performance callbacks do not fire for command buffers produced by encoder.finish(). Use encoder.submit() instead.\");\n\t\treturn rawEncoder.finish(descriptor);\n\t}\n};\nconst wgslEnableExtensions = [\n\t\"f16\",\n\t\"clip_distances\",\n\t\"dual_source_blending\",\n\t\"subgroups\",\n\t\"primitive_index\"\n];\nconst wgslEnableExtensionToFeatureName = {\n\tf16: \"shader-f16\",\n\tclip_distances: \"clip-distances\",\n\tdual_source_blending: \"dual-source-blending\",\n\tsubgroups: \"subgroups\",\n\tprimitive_index: \"primitive-index\"\n};\nfunction shallowEqualSchemas(a, b) {\n\tif (a.type !== b.type) return false;\n\tif (isPtr(a) \u0026\u0026 isPtr(b)) return a.access === b.access \u0026\u0026 a.addressSpace === b.addressSpace \u0026\u0026 a.implicit === b.implicit \u0026\u0026 shallowEqualSchemas(a.inner, b.inner);\n\tif (isWgslArray(a) \u0026\u0026 isWgslArray(b)) return a.elementCount === b.elementCount \u0026\u0026 shallowEqualSchemas(a.elementType, b.elementType);\n\tif (isWgslStruct(a) \u0026\u0026 isWgslStruct(b)) return a === b;\n\treturn true;\n}\nvar ShelllessRepository = class {\n\tcache = /* @__PURE__ */ new Map();\n\tget(fn$1, argSnippets) {\n\t\tconst meta = getFunctionMetadata(fn$1);\n\t\tif (!meta) return;\n\t\tif (!argSnippets \u0026\u0026 meta.ast.params.length \u003e 0) throw new Error(`Cannot resolve '${getName(fn$1)}' directly, because it expects arguments. Either call it from another function, or wrap it in a shell`);\n\t\tconst argTypes = (argSnippets ?? []).map((s, index) =\u003e {\n\t\t\tif (s.value instanceof RefOperator) {\n\t\t\t\tif (s.dataType === UnknownData) throw new WgslTypeError(`d.ref() created with primitive types must be stored in a variable before use`);\n\t\t\t\treturn s.dataType;\n\t\t\t}\n\t\t\tif (s.dataType === UnknownData) throw new Error(`Passed illegal value ${s.value} as the #${index} argument to ${getName(fn$1) ?? \"\u003cunnamed\u003e\"}(...)\\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.`);\n\t\t\tlet type = concretize(s.dataType);\n\t\t\tif (isPtr(type) \u0026\u0026 type.implicit) type = type.inner;\n\t\t\treturn type;\n\t\t});\n\t\tlet cache = this.cache.get(fn$1);\n\t\tif (cache) {\n\t\t\tconst variant = cache.find((v) =\u003e v.argTypes.length === argTypes.length \u0026\u0026 v.argTypes.every((t, i) =\u003e shallowEqualSchemas(t, argTypes[i])));\n\t\t\tif (variant) return variant;\n\t\t} else {\n\t\t\tcache = [];\n\t\t\tthis.cache.set(fn$1, cache);\n\t\t}\n\t\tconst shellless = createShelllessImpl(argTypes, fn$1);\n\t\tcache.push(shellless);\n\t\treturn shellless;\n\t}\n};\nvar NamespaceImpl = class {\n\t[$internal];\n\tconstructor(strategy) {\n\t\tthis[$internal] = {\n\t\t\tstrategy,\n\t\t\ttakenGlobalIdentifiers: new Set([...bannedTokens, ...builtins]),\n\t\t\tshelllessRepo: new ShelllessRepository(),\n\t\t\tmemoizedResolves: /* @__PURE__ */ new WeakMap(),\n\t\t\tmemoizedLazy: /* @__PURE__ */ new WeakMap()\n\t\t};\n\t}\n};\nfunction namespace(options) {\n\tconst { names = \"strict\" } = options ?? {};\n\treturn new NamespaceImpl(names);\n}\nvar TRANSFERABLE_PRIORS = new Set([\n\t\"bindGroupLayoutMap\",\n\t\"vertexLayoutMap\",\n\t\"indexBuffer\",\n\t\"stencilReference\",\n\t\"timestampWrites\",\n\t\"performanceCallback\"\n]);\nfunction nonTransferablePriorsOf(priors) {\n\treturn Object.keys(priors).filter((key) =\u003e !TRANSFERABLE_PRIORS.has(key) \u0026\u0026 priors[key] !== void 0);\n}\nvar PerformanceTrackerImpl = class {\n\t#resolveMeasure;\n\t#wgslSize;\n\tmeasureResolve(callback) {\n\t\tconst resolveStart = performance.mark(\"typegpu:resolution:start\");\n\t\tconst result = callback();\n\t\tthis.#resolveMeasure = performance.measure(\"typegpu:resolution\", { start: resolveStart.name });\n\t\tthis.#wgslSize = result.code.length;\n\t\treturn result;\n\t}\n\tmeasureCompile(device) {\n\t\t(async () =\u003e {\n\t\t\tconst start = performance.mark(\"typegpu:compile-start\");\n\t\t\tawait device.queue.onSubmittedWorkDone();\n\t\t\tconst compileMeasure = performance.measure(\"typegpu:compiled\", { start: start.name });\n\t\t\tPERF?.record(\"resolution\", {\n\t\t\t\tresolveDuration: this.#resolveMeasure?.duration,\n\t\t\t\tcompileDuration: compileMeasure.duration,\n\t\t\t\twgslSize: this.#wgslSize\n\t\t\t});\n\t\t})();\n\t}\n};\nvar NullPerformanceTracker = class {\n\tmeasureResolve(callback) {\n\t\treturn callback();\n\t}\n\tmeasureCompile() {}\n};\nfunction INTERNAL_createComputePipeline(root, slotBindings, descriptor) {\n\treturn new TgpuComputePipelineImpl(new ComputePipelineCore(root, slotBindings, descriptor), {});\n}\nvar TgpuComputePipelineImpl = class TgpuComputePipelineImpl {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"compute-pipeline\";\n\t[$getNameForward];\n\tconstructor(core, priors) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"compute-pipeline\",\n\t\t\tdevice: core.root.device,\n\t\t\traw: void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis[$internal] = {\n\t\t\tcore,\n\t\t\tpriors,\n\t\t\troot: core.root,\n\t\t\tmaterialize: () =\u003e {\n\t\t\t\tconst soul = this[$soul];\n\t\t\t\tif (!soul.raw) {\n\t\t\t\t\tconst memo = core.unwrap();\n\t\t\t\t\tsoul.raw = memo.pipeline;\n\t\t\t\t\tsoul.usedBindGroupLayouts = memo.usedBindGroupLayouts;\n\t\t\t\t\tsoul.bindGroups = collectBindGroupPairs(memo.usedBindGroupLayouts, memo.catchall, priors.bindGroupLayoutMap);\n\t\t\t\t\tsoul.timestampWrites = priors.timestampWrites;\n\t\t\t\t\tsoul.performanceCallback = priors.performanceCallback;\n\t\t\t\t\tsoul.nonTransferablePriors = nonTransferablePriorsOf(priors);\n\t\t\t\t}\n\t\t\t\treturn soul.raw;\n\t\t\t}\n\t\t};\n\t\tthis[$getNameForward] = core;\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.resolve(this[$internal].core);\n\t}\n\ttoString() {\n\t\treturn `computePipeline:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n\t#withPriors(patch) {\n\t\tconst { core, priors } = this[$internal];\n\t\treturn new TgpuComputePipelineImpl(core, {\n\t\t\t...priors,\n\t\t\t...patch\n\t\t});\n\t}\n\twith(first, bindGroup) {\n\t\tconst internals = this[$internal];\n\t\tif (isTgpuComputePass(first)) return this.#withPriors({\n\t\t\tpass: first,\n\t\t\tencoder: void 0\n\t\t});\n\t\tif (isTgpuCommandEncoder(first)) return this.#withPriors({\n\t\t\tpass: void 0,\n\t\t\tencoder: first\n\t\t});\n\t\tif (isGPUComputePassEncoder(first)) return this.#withPriors({\n\t\t\tpass: INTERNAL_adoptComputePass(internals.root, first),\n\t\t\tencoder: void 0\n\t\t});\n\t\tif (isGPUCommandEncoder(first)) return this.#withPriors({\n\t\t\tpass: void 0,\n\t\t\tencoder: INTERNAL_adoptCommandEncoder(internals.root, first)\n\t\t});\n\t\tif (isBindGroup(first) || isBindGroupLayout(first)) {\n\t\t\tconst [layout, group] = isBindGroup(first) ? [first.layout, first] : [first, bindGroup];\n\t\t\treturn this.#withPriors({ bindGroupLayoutMap: new Map([...internals.priors.bindGroupLayoutMap ?? [], [layout, group]]) });\n\t\t}\n\t\tthrow new Error(\"Unsupported value passed into .with()\");\n\t}\n\twithPerformanceCallback(callback) {\n\t\tconst internals = this[$internal];\n\t\tif (internals.priors.timestampWrites) return this.#withPriors({ performanceCallback: callback });\n\t\tconst querySet = internals.core.performanceCallbackQuerySet;\n\t\tif (!querySet) {\n\t\t\tlogger.warn(\"webgpu-feature-missing\", \"Performance callback cannot be used because the timestamp-query feature is not enabled on the root.\");\n\t\t\treturn this;\n\t\t}\n\t\treturn this.#withPriors(createWithPerformanceCallback(internals.priors, callback, querySet));\n\t}\n\twithTimestampWrites(options) {\n\t\tconst internals = this[$internal];\n\t\treturn this.#withPriors(createWithTimestampWrites(internals.priors, options, internals.root));\n\t}\n\tdispatchWorkgroups(x, y, z) {\n\t\tthis.#execute((pass) =\u003e pass.dispatchWorkgroups(x, y, z));\n\t}\n\tdispatchWorkgroupsIndirect(indirectBuffer, start) {\n\t\tconst rawBuffer = isGPUBuffer(indirectBuffer) ? indirectBuffer : indirectBuffer.buffer;\n\t\tconst offset = resolveIndirectOffset(indirectBuffer, start, 12, \"dispatchWorkgroupsIndirect\");\n\t\tthis.#execute((pass) =\u003e pass.dispatchWorkgroupsIndirect(rawBuffer, offset));\n\t}\n\tinitAsync() {\n\t\treturn this[$internal].core.initAsync();\n\t}\n\tinitSync() {\n\t\tthis[$internal].core.initSync();\n\t}\n\t#execute(dispatch) {\n\t\tconst { core, priors, root } = this[$internal];\n\t\tif (priors.pass) {\n\t\t\temitComputeDispatch(root, priors.pass[$internal], this, dispatch);\n\t\t\treturn;\n\t\t}\n\t\tconst encoder = priors.encoder ?? INTERNAL_createCommandEncoder(root);\n\t\tconst pass = encoder.beginComputePass({\n\t\t\tlabel: getName(core) ?? \"\u003cunnamed\u003e\",\n\t\t\ttimestampWrites: priors.timestampWrites\n\t\t});\n\t\temitComputeDispatch(root, pass[$internal], this, dispatch, true);\n\t\tpass.end();\n\t\tfinalizeOwnEncoder(encoder, core, core.unwrap().logResources, priors);\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n};\nvar ComputePipelineCore = class ComputePipelineCore {\n\t[$internal] = true;\n\troot;\n\t#performanceTracker;\n\t#initAsyncPromise;\n\t#memo;\n\t#slotBindings;\n\t#descriptor;\n\t#performanceCallbackQuerySet;\n\tconstructor(root, slotBindings, descriptor) {\n\t\tthis.root = root;\n\t\tthis.#slotBindings = slotBindings;\n\t\tthis.#descriptor = descriptor;\n\t\tthis.#performanceTracker = PERF?.enabled ? new PerformanceTrackerImpl() : new NullPerformanceTracker();\n\t}\n\tstatic precompiled(root, memo) {\n\t\tconst core = new ComputePipelineCore(root, [], void 0);\n\t\tcore.#memo = memo;\n\t\treturn core;\n\t}\n\t[$resolve](ctx) {\n\t\tconst descriptor = this.#descriptor;\n\t\tif (!descriptor) return snip(\"\", Void, \"runtime\");\n\t\treturn ctx.withSlots(this.#slotBindings, () =\u003e {\n\t\t\tctx.resolve(descriptor.compute);\n\t\t\treturn snip(\"\", Void, \"runtime\");\n\t\t});\n\t}\n\ttoString() {\n\t\treturn \"computePipelineCore\";\n\t}\n\tget performanceCallbackQuerySet() {\n\t\tif (!this.root.enabledFeatures.has(\"timestamp-query\")) return;\n\t\treturn this.#performanceCallbackQuerySet ??= /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(this.root.createQuerySet(\"timestamp\", 2), \"performanceCallbackQuerySet\");\n\t}\n\tinitAsync() {\n\t\tif (this.#memo !== void 0) return Promise.resolve();\n\t\tif (this.#initAsyncPromise === void 0) {\n\t\t\tconst device = this.root.device;\n\t\t\tconst { resolutionResult, module } = this.resolveAndCreateShaderModule();\n\t\t\tconst { usedBindGroupLayouts, catchall, logResources } = resolutionResult;\n\t\t\tthis.#initAsyncPromise = device.createComputePipelineAsync({\n\t\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\",\n\t\t\t\tlayout: device.createPipelineLayout({\n\t\t\t\t\tlabel: `${getName(this) ?? \"\u003cunnamed\u003e\"} - Pipeline Layout`,\n\t\t\t\t\tbindGroupLayouts: usedBindGroupLayouts.map((l) =\u003e this.root.unwrap(l))\n\t\t\t\t}),\n\t\t\t\tcompute: { module }\n\t\t\t}).then((pipeline) =\u003e {\n\t\t\t\tthis.#memo = {\n\t\t\t\t\tpipeline,\n\t\t\t\t\tusedBindGroupLayouts,\n\t\t\t\t\tcatchall,\n\t\t\t\t\tlogResources\n\t\t\t\t};\n\t\t\t\tthis.#performanceTracker.measureCompile(device);\n\t\t\t}).finally(() =\u003e {\n\t\t\t\tthis.#initAsyncPromise = void 0;\n\t\t\t});\n\t\t}\n\t\treturn this.#initAsyncPromise;\n\t}\n\tinitSync() {\n\t\tif (this.#memo !== void 0) return;\n\t\tif (this.#initAsyncPromise !== void 0) throw new Error(\"'pipeline.initAsync()' was called and is not yet resolved.\");\n\t\tconst device = this.root.device;\n\t\tconst { resolutionResult, module } = this.resolveAndCreateShaderModule();\n\t\tconst { usedBindGroupLayouts, catchall, logResources } = resolutionResult;\n\t\tthis.#memo = {\n\t\t\tpipeline: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(device.createComputePipeline({\n\t\t\t\tlabel: getName(this) ?? \"\u003cunnamed\u003e\",\n\t\t\t\tlayout: device.createPipelineLayout({\n\t\t\t\t\tlabel: `${getName(this) ?? \"\u003cunnamed\u003e\"} - Pipeline Layout`,\n\t\t\t\t\tbindGroupLayouts: usedBindGroupLayouts.map((l) =\u003e this.root.unwrap(l))\n\t\t\t\t}),\n\t\t\t\tcompute: { module }\n\t\t\t}), \"pipeline\"),\n\t\t\tusedBindGroupLayouts,\n\t\t\tcatchall,\n\t\t\tlogResources\n\t\t};\n\t\tthis.#performanceTracker.measureCompile(device);\n\t}\n\tunwrap() {\n\t\tthis.initSync();\n\t\treturn this.#memo;\n\t}\n\tresolveAndCreateShaderModule() {\n\t\tconst device = this.root.device;\n\t\tconst enableExtensions = wgslEnableExtensions.filter((extension) =\u003e this.root.enabledFeatures.has(wgslEnableExtensionToFeatureName[extension]));\n\t\tconst ns = namespace({ names: this.root.nameRegistrySetting });\n\t\tconst resolutionResult = this.#performanceTracker.measureResolve(() =\u003e resolve$1(this, {\n\t\t\tnamespace: ns,\n\t\t\tminify: this.root.minify,\n\t\t\tenableExtensions,\n\t\t\tshaderGenerator: this.root.shaderGeneratorClass ? new this.root.shaderGeneratorClass() : void 0,\n\t\t\troot: this.root\n\t\t}));\n\t\tconst { code, usedBindGroupLayouts, catchall } = resolutionResult;\n\t\tif (catchall !== void 0) usedBindGroupLayouts[catchall[0]]?.$name(`${getName(this) ?? \"\u003cunnamed\u003e\"} - Automatic Bind Group \u0026 Layout`);\n\t\twarnIfOverflow(usedBindGroupLayouts, device.limits);\n\t\treturn {\n\t\t\tresolutionResult,\n\t\t\tmodule: device.createShaderModule({\n\t\t\t\tlabel: `${getName(this) ?? \"\u003cunnamed\u003e\"} - Shader`,\n\t\t\t\tcode\n\t\t\t})\n\t\t};\n\t}\n};\nvar builtinVertexIn = {\n\t$vertexIndex: builtin.vertexIndex,\n\t$instanceIndex: builtin.instanceIndex\n};\nvar builtinVertexOut = {\n\t$clipDistances: builtin.clipDistances,\n\t$position: builtin.position\n};\nvar builtinFragmentIn = {\n\t$position: builtin.position,\n\t$frontFacing: builtin.frontFacing,\n\t$primitiveIndex: builtin.primitiveIndex,\n\t$sampleIndex: builtin.sampleIndex,\n\t$sampleMask: builtin.sampleMask,\n\t$subgroupInvocationId: builtin.subgroupInvocationId,\n\t$subgroupSize: builtin.subgroupSize\n};\nvar builtinFragmentOut = {\n\t$fragDepth: builtin.fragDepth,\n\t$sampleMask: builtin.sampleMask\n};\nvar AutoFragmentFn = class {\n\t#core;\n\tautoIn;\n\tautoOut;\n\tconstructor(impl, varyings, locations) {\n\t\tif (!getName(impl)) setName(impl, \"fragmentFn\");\n\t\tthis.#core = createFnCore(impl, \"fragment\");\n\t\tthis.autoIn = new AutoStruct({\n\t\t\t...builtinFragmentIn,\n\t\t\t...varyings\n\t\t}, void 0, locations);\n\t\tsetName(this.autoIn, \"FragmentIn\");\n\t\tthis.autoOut = new AutoStruct(builtinFragmentOut, vec4f);\n\t\tsetName(this.autoOut, \"FragmentOut\");\n\t}\n\ttoString() {\n\t\treturn \"autoFragmentFn\";\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.withSlots([[shaderStageSlot, \"fragment\"]], () =\u003e this.#core.resolve(ctx, [this.autoIn], this.autoOut));\n\t}\n};\nAutoFragmentFn.prototype[$internal] = true;\nAutoFragmentFn.prototype.resourceType = \"auto-fragment-fn\";\nvar AutoVertexFn = class {\n\t#core;\n\tautoIn;\n\tautoOut;\n\tconstructor(impl, attribs, locations) {\n\t\tif (!getName(impl)) setName(impl, \"vertexFn\");\n\t\tthis.#core = createFnCore(impl, \"vertex\");\n\t\tthis.autoIn = new AutoStruct({\n\t\t\t...builtinVertexIn,\n\t\t\t...attribs\n\t\t}, void 0, locations);\n\t\tsetName(this.autoIn, \"VertexIn\");\n\t\tthis.autoOut = new AutoStruct(builtinVertexOut, void 0);\n\t\tsetName(this.autoOut, \"VertexOut\");\n\t}\n\ttoString() {\n\t\treturn \"autoVertexFn\";\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.withSlots([[shaderStageSlot, \"vertex\"]], () =\u003e this.#core.resolve(ctx, [this.autoIn], this.autoOut));\n\t}\n};\nAutoVertexFn.prototype[$internal] = true;\nAutoVertexFn.prototype.resourceType = \"auto-vertex-fn\";\nfunction vertexLayout(schemaForCount, stepMode = \"vertex\") {\n\treturn new TgpuVertexLayoutImpl(schemaForCount, stepMode);\n}\nfunction isVertexLayout(value) {\n\treturn value?.resourceType === \"vertex-layout\";\n}\nvar defaultAttribEntry = Symbol(\"defaultAttribEntry\");\nfunction dataToContainedAttribs(layout, data, offset, customLocationMap, key) {\n\tif (isDecorated(data) || isLooseDecorated(data)) {\n\t\tconst customLocation = getCustomLocation(data);\n\t\tif (customLocation !== void 0) customLocationMap[key ?? defaultAttribEntry] = customLocation;\n\t\treturn dataToContainedAttribs(layout, data.inner, roundUp(offset, customAlignmentOf(data)), customLocationMap);\n\t}\n\tif (isWgslStruct(data)) {\n\t\tlet memberOffset = offset;\n\t\tconst propTypes = data.propTypes;\n\t\treturn Object.fromEntries(Object.entries(propTypes).map(([key$1, value]) =\u003e {\n\t\t\tmemberOffset = roundUp(memberOffset, alignmentOf(value));\n\t\t\tconst attrib = [key$1, dataToContainedAttribs(layout, value, memberOffset, customLocationMap, key$1)];\n\t\t\tmemberOffset += sizeOf(value);\n\t\t\treturn attrib;\n\t\t}));\n\t}\n\tif (isUnstruct(data)) {\n\t\tlet memberOffset = offset;\n\t\tconst propTypes = data.propTypes;\n\t\treturn Object.fromEntries(Object.entries(propTypes).map(([key$1, value]) =\u003e {\n\t\t\tmemberOffset = roundUp(memberOffset, customAlignmentOf(value));\n\t\t\tconst attrib = [key$1, dataToContainedAttribs(layout, value, memberOffset, customLocationMap, key$1)];\n\t\t\tmemberOffset += sizeOf(value);\n\t\t\treturn attrib;\n\t\t}));\n\t}\n\tif (\"type\" in data \u0026\u0026 typeof data.type === \"string\") {\n\t\tif (vertexFormats.includes(data.type)) return {\n\t\t\t_layout: layout,\n\t\t\tformat: data.type,\n\t\t\toffset\n\t\t};\n\t\tconst format = kindToDefaultFormatMap[data.type];\n\t\tif (format) return {\n\t\t\t_layout: layout,\n\t\t\tformat,\n\t\t\toffset\n\t\t};\n\t}\n\tthrow new Error(`Unsupported data used in vertex layout: ${String(data)}`);\n}\nvar TgpuVertexLayoutImpl = class {\n\t[$internal] = true;\n\t[$soul];\n\tresourceType = \"vertex-layout\";\n\tstride;\n\tattrib;\n\tschemaForCount;\n\t#customLocationMap = {};\n\tconstructor(schemaForCount, stepMode) {\n\t\tthis.schemaForCount = schemaForCount;\n\t\tconst arraySchema = schemaForCount(0);\n\t\tthis[$soul] = {\n\t\t\ttype: \"vertex-layout\",\n\t\t\tschema: arraySchema,\n\t\t\tstepMode,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis.stride = roundUp(sizeOf(arraySchema.elementType), alignmentOf(arraySchema));\n\t\tthis.attrib = dataToContainedAttribs(this, arraySchema.elementType, 0, this.#customLocationMap);\n\t}\n\tget stepMode() {\n\t\treturn this[$soul].stepMode;\n\t}\n\tget vertexLayout() {\n\t\tif (this.#customLocationMap[defaultAttribEntry] !== void 0) {\n\t\t\tif (typeof this.attrib.format !== \"string\" || typeof this.attrib.offset !== \"number\") throw new Error(\"Single attribute vertex layouts must have a format and offset.\");\n\t\t\treturn {\n\t\t\t\tarrayStride: this.stride,\n\t\t\t\tstepMode: this.stepMode,\n\t\t\t\tattributes: [{\n\t\t\t\t\tformat: this.attrib.format,\n\t\t\t\t\toffset: this.attrib.offset,\n\t\t\t\t\tshaderLocation: this.#customLocationMap[defaultAttribEntry]\n\t\t\t\t}]\n\t\t\t};\n\t\t}\n\t\tif (!Object.keys(this.attrib).every((key) =\u003e this.#customLocationMap[key] !== void 0)) throw new Error(\"All attributes must have custom locations in order to unwrap a vertex layout.\");\n\t\treturn {\n\t\t\tarrayStride: this.stride,\n\t\t\tstepMode: this.stepMode,\n\t\t\tattributes: Object.entries(this.attrib).map(([key, attrib]) =\u003e ({\n\t\t\t\tformat: attrib.format,\n\t\t\t\toffset: attrib.offset,\n\t\t\t\tshaderLocation: this.#customLocationMap[key]\n\t\t\t}))\n\t\t};\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n};\nfunction isColorAttachment(value) {\n\treturn !!value?.view;\n}\nfunction connectAttachmentToShader(fragmentOut, attachment) {\n\tif (isVoid(fragmentOut) || isBuiltin(fragmentOut)) return [];\n\tif (isWgslStruct(fragmentOut)) {\n\t\tconst result = [];\n\t\tfor (const key of Object.keys(fragmentOut.propTypes)) {\n\t\t\tconst outputValue = fragmentOut.propTypes[key];\n\t\t\tif (isBuiltin(outputValue)) continue;\n\t\t\tconst matching = attachment[key];\n\t\t\tif (!matching) throw new Error(`A color attachment by the name of '${key}' was not provided to the shader.`);\n\t\t\tresult.push(matching);\n\t\t}\n\t\treturn result;\n\t}\n\tif (!isColorAttachment(attachment)) throw new Error(\"Expected a single color attachment, not a record.\");\n\treturn [attachment];\n}\nfunction connectTargetsToShader(fragmentOut, targets) {\n\tlet presentationFormat;\n\tif (isVoid(fragmentOut) || isBuiltin(fragmentOut)) return [null];\n\tif (isWgslStruct(fragmentOut)) {\n\t\tconst result = [];\n\t\tfor (const key of Object.keys(fragmentOut.propTypes)) {\n\t\t\tconst outputValue = fragmentOut.propTypes[key];\n\t\t\tif (isBuiltin(outputValue)) continue;\n\t\t\tconst matchingTarget = targets[key];\n\t\t\tresult.push({\n\t\t\t\t...matchingTarget,\n\t\t\t\tformat: matchingTarget?.format ?? (presentationFormat ??= navigator.gpu.getPreferredCanvasFormat())\n\t\t\t});\n\t\t}\n\t\treturn result;\n\t}\n\tconst singleTarget = targets;\n\treturn [{\n\t\t...singleTarget,\n\t\tformat: singleTarget?.format ?? (presentationFormat ??= navigator.gpu.getPreferredCanvasFormat())\n\t}];\n}\nfunction INTERNAL_createRenderPipeline(options) {\n\treturn new TgpuRenderPipelineImpl(new RenderPipelineCore(options), {});\n}\nvar TgpuRenderPipelineImpl = class TgpuRenderPipelineImpl {\n\t[$internal];\n\t[$soul];\n\tresourceType = \"render-pipeline\";\n\t[$getNameForward];\n\tconstructor(core, priors) {\n\t\tthis[$soul] = {\n\t\t\ttype: \"render-pipeline\",\n\t\t\tdevice: core.options.root.device,\n\t\t\traw: void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis[$internal] = {\n\t\t\tcore,\n\t\t\tpriors,\n\t\t\troot: core.options.root,\n\t\t\tmaterialize: () =\u003e {\n\t\t\t\tconst soul = this[$soul];\n\t\t\t\tif (!soul.raw) {\n\t\t\t\t\tconst memo = core.unwrap();\n\t\t\t\t\tsoul.raw = memo.pipeline;\n\t\t\t\t\tsoul.usedBindGroupLayouts = memo.usedBindGroupLayouts;\n\t\t\t\t\tsoul.usedVertexLayouts = memo.usedVertexLayouts;\n\t\t\t\t\tsoul.fragmentOut = memo.fragmentOut;\n\t\t\t\t\tsoul.bindGroups = collectBindGroupPairs(memo.usedBindGroupLayouts, memo.catchall, priors.bindGroupLayoutMap);\n\t\t\t\t\tsoul.vertexBuffers = collectVertexBufferPairs(memo.usedVertexLayouts, priors.vertexLayoutMap);\n\t\t\t\t\tsoul.indexBuffer = priors.indexBuffer;\n\t\t\t\t\tsoul.stencilReference = priors.stencilReference;\n\t\t\t\t\tsoul.timestampWrites = priors.timestampWrites;\n\t\t\t\t\tsoul.performanceCallback = priors.performanceCallback;\n\t\t\t\t\tsoul.nonTransferablePriors = nonTransferablePriorsOf(priors);\n\t\t\t\t}\n\t\t\t\treturn soul.raw;\n\t\t\t}\n\t\t};\n\t\tthis[$getNameForward] = core;\n\t}\n\t[$resolve](ctx) {\n\t\treturn ctx.resolve(this[$internal].core);\n\t}\n\ttoString() {\n\t\treturn `renderPipeline:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n\t#withPriors(patch) {\n\t\tconst { core, priors } = this[$internal];\n\t\treturn new TgpuRenderPipelineImpl(core, {\n\t\t\t...priors,\n\t\t\t...patch\n\t\t});\n\t}\n\twith(first, resource) {\n\t\tconst internals = this[$internal];\n\t\tif (isTgpuRenderCommands(first)) return this.#withPriors({\n\t\t\tpass: first,\n\t\t\tencoder: void 0\n\t\t});\n\t\tif (isTgpuCommandEncoder(first)) return this.#withPriors({\n\t\t\tpass: void 0,\n\t\t\tencoder: first\n\t\t});\n\t\tif (isGPURenderPassEncoder(first) || isGPURenderBundleEncoder(first)) return this.#withPriors({\n\t\t\tpass: INTERNAL_adoptRenderCommands(internals.root, first),\n\t\t\tencoder: void 0\n\t\t});\n\t\tif (isGPUCommandEncoder(first)) return this.#withPriors({\n\t\t\tpass: void 0,\n\t\t\tencoder: INTERNAL_adoptCommandEncoder(internals.root, first)\n\t\t});\n\t\tif (isBindGroup(first) || isBindGroupLayout(first)) {\n\t\t\tconst [layout, group] = isBindGroup(first) ? [first.layout, first] : [first, resource];\n\t\t\treturn this.#withPriors({ bindGroupLayoutMap: new Map([...internals.priors.bindGroupLayoutMap ?? [], [layout, group]]) });\n\t\t}\n\t\tif (isVertexLayout(first)) return this.#withPriors({ vertexLayoutMap: new Map([...internals.priors.vertexLayoutMap ?? [], [first, resource]]) });\n\t\tthrow new Error(\"Unsupported value passed into .with()\");\n\t}\n\twithPerformanceCallback(callback) {\n\t\tconst internals = this[$internal];\n\t\tif (internals.priors.timestampWrites) return this.#withPriors({ performanceCallback: callback });\n\t\tconst querySet = internals.core.performanceCallbackQuerySet;\n\t\tif (!querySet) {\n\t\t\tlogger.warn(\"webgpu-feature-missing\", \"Performance callback cannot be used because the timestamp-query feature is not enabled on the root.\");\n\t\t\treturn this;\n\t\t}\n\t\treturn this.#withPriors(createWithPerformanceCallback(internals.priors, callback, querySet));\n\t}\n\twithTimestampWrites(options) {\n\t\tconst internals = this[$internal];\n\t\treturn this.#withPriors(createWithTimestampWrites(internals.priors, options, internals.root));\n\t}\n\twithColorAttachment(attachment) {\n\t\treturn this.#withPriors({ colorAttachment: attachment });\n\t}\n\twithDepthStencilAttachment(attachment) {\n\t\treturn this.#withPriors({ depthStencilAttachment: attachment });\n\t}\n\twithStencilReference(reference) {\n\t\treturn this.#withPriors({ stencilReference: reference });\n\t}\n\twithIndexBuffer(buffer$1, indexFormatOrOffset, offsetElementsOrSizeBytes, sizeElementsOrUndefined) {\n\t\tif (isGPUBuffer(buffer$1)) {\n\t\t\tif (typeof indexFormatOrOffset !== \"string\") throw new Error(\"If a GPUBuffer is passed, indexFormat must be provided.\");\n\t\t\treturn this.#withPriors({ indexBuffer: {\n\t\t\t\tbuffer: buffer$1,\n\t\t\t\tindexFormat: indexFormatOrOffset,\n\t\t\t\toffsetBytes: offsetElementsOrSizeBytes,\n\t\t\t\tsizeBytes: sizeElementsOrUndefined\n\t\t\t} });\n\t\t}\n\t\tconst dataTypeToIndexFormat = {\n\t\t\tu32: \"uint32\",\n\t\t\tu16: \"uint16\"\n\t\t};\n\t\tconst elementType = buffer$1.dataType.elementType;\n\t\treturn this.#withPriors({ indexBuffer: {\n\t\t\tbuffer: buffer$1,\n\t\t\tindexFormat: dataTypeToIndexFormat[elementType.type],\n\t\t\toffsetBytes: indexFormatOrOffset !== void 0 ? indexFormatOrOffset * sizeOf(elementType) : void 0,\n\t\t\tsizeBytes: sizeElementsOrUndefined !== void 0 ? sizeElementsOrUndefined * sizeOf(elementType) : void 0\n\t\t} });\n\t}\n\tinitAsync() {\n\t\treturn this[$internal].core.initAsync();\n\t}\n\tinitSync() {\n\t\tthis[$internal].core.initSync();\n\t}\n\tget hasIndexBuffer() {\n\t\treturn this[$internal].priors.indexBuffer !== void 0;\n\t}\n\t#ownPassDescriptor() {\n\t\tconst { core, priors } = this[$internal];\n\t\tconst { fragmentOut } = core.unwrap();\n\t\treturn {\n\t\t\tlabel: getName(core) ?? \"\u003cunnamed\u003e\",\n\t\t\tcolorAttachments: fragmentOut ? connectAttachmentToShader(fragmentOut, priors.colorAttachment ?? {}) : [],\n\t\t\tdepthStencilAttachment: priors.depthStencilAttachment,\n\t\t\ttimestampWrites: priors.timestampWrites\n\t\t};\n\t}\n\t#execute(usesIndexBuffer, emit) {\n\t\tconst { core, priors, root } = this[$internal];\n\t\tif (priors.pass) {\n\t\t\temitRenderDraw(root, priors.pass[$internal], this, usesIndexBuffer, emit);\n\t\t\treturn;\n\t\t}\n\t\tif (usesIndexBuffer) requireIndexBuffer(priors.indexBuffer);\n\t\tconst encoder = priors.encoder ?? INTERNAL_createCommandEncoder(root);\n\t\tconst pass = encoder.beginRenderPass(this.#ownPassDescriptor());\n\t\temitRenderDraw(root, pass[$internal], this, usesIndexBuffer, emit, true);\n\t\tpass.end();\n\t\tfinalizeOwnEncoder(encoder, core, core.unwrap().logResources, priors);\n\t}\n\tdraw(vertexCount, instanceCount, firstVertex, firstInstance) {\n\t\tthis.#execute(false, (rawPass) =\u003e rawPass.draw(vertexCount, instanceCount, firstVertex, firstInstance));\n\t}\n\tdrawIndexed(indexCount, instanceCount, firstIndex, baseVertex, firstInstance) {\n\t\tthis.#execute(true, (rawPass) =\u003e rawPass.drawIndexed(indexCount, instanceCount, firstIndex, baseVertex, firstInstance));\n\t}\n\tdrawIndirect(indirectBuffer, indirectOffset) {\n\t\tconst rawBuffer = isGPUBuffer(indirectBuffer) ? indirectBuffer : indirectBuffer.buffer;\n\t\tconst offset = resolveIndirectOffset(indirectBuffer, indirectOffset, 16, \"drawIndirect\");\n\t\tthis.#execute(false, (rawPass) =\u003e rawPass.drawIndirect(rawBuffer, offset));\n\t}\n\tdrawIndexedIndirect(indirectBuffer, indirectOffset) {\n\t\tconst rawBuffer = isGPUBuffer(indirectBuffer) ? indirectBuffer : indirectBuffer.buffer;\n\t\tconst offset = resolveIndirectOffset(indirectBuffer, indirectOffset, 20, \"drawIndexedIndirect\");\n\t\tthis.#execute(true, (rawPass) =\u003e rawPass.drawIndexedIndirect(rawBuffer, offset));\n\t}\n};\nvar RenderPipelineCore = class RenderPipelineCore {\n\t[$internal] = true;\n\toptions;\n\t#performanceTracker;\n\t#initAsyncPromise;\n\t#memo;\n\t#latestAutoVertexIn;\n\t#latestAutoFragmentOut;\n\t#performanceCallbackQuerySet;\n\tconstructor(options) {\n\t\tthis.options = options;\n\t\tthis.#performanceTracker = PERF?.enabled ? new PerformanceTrackerImpl() : new NullPerformanceTracker();\n\t}\n\tstatic precompiled(root, memo) {\n\t\tconst core = new RenderPipelineCore({\n\t\t\troot,\n\t\t\tslotBindings: [],\n\t\t\tdescriptor: void 0\n\t\t});\n\t\tcore.#memo = memo;\n\t\treturn core;\n\t}\n\t[$resolve](ctx) {\n\t\tconst { slotBindings } = this.options;\n\t\tconst { vertex, fragment, attribs = {} } = this.options.descriptor ?? {};\n\t\tif (!vertex) return snip(\"\", Void, \"runtime\");\n\t\tthis.#latestAutoVertexIn = void 0;\n\t\tthis.#latestAutoFragmentOut = void 0;\n\t\tconst locations = matchUpVaryingLocations(vertex?.shell?.out, fragment?.shell?.in, getName(vertex) ?? \"\u003cunnamed\u003e\", getName(fragment) ?? \"\u003cunnamed\u003e\");\n\t\treturn ctx.withVaryingLocations(locations, () =\u003e ctx.withSlots(slotBindings, () =\u003e {\n\t\t\tlet vertexOut;\n\t\t\tif (typeof vertex === \"function\") {\n\t\t\t\tconst autoFn = new AutoVertexFn(vertex, Object.fromEntries(Object.entries(attribs).map(([key, value]) =\u003e [key, formatToWGSLType[value.format]])), locations);\n\t\t\t\tctx.resolve(autoFn);\n\t\t\t\tthis.#latestAutoVertexIn = autoFn.autoIn.completeStruct.propTypes;\n\t\t\t\tvertexOut = autoFn.autoOut.completeStruct;\n\t\t\t} else vertexOut = ctx.resolve(vertex).dataType;\n\t\t\tif (fragment) if (typeof fragment === \"function\") {\n\t\t\t\tconst varyings = Object.fromEntries(Object.entries(vertexOut.propTypes).filter(([, dataType]) =\u003e !isBuiltin(dataType)));\n\t\t\t\tthis.#latestAutoFragmentOut = ctx.resolve(new AutoFragmentFn(fragment, varyings, locations)).dataType;\n\t\t\t} else ctx.resolve(fragment);\n\t\t\treturn snip(\"\", Void, \"runtime\");\n\t\t}));\n\t}\n\ttoString() {\n\t\treturn \"renderPipelineCore\";\n\t}\n\tget performanceCallbackQuerySet() {\n\t\tif (!this.options.root.enabledFeatures.has(\"timestamp-query\")) return;\n\t\treturn this.#performanceCallbackQuerySet ??= /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(this.options.root.createQuerySet(\"timestamp\", 2), \"performanceCallbackQuerySet\");\n\t}\n\tinitAsync() {\n\t\tif (this.#memo !== void 0) return Promise.resolve();\n\t\tif (this.#initAsyncPromise === void 0) {\n\t\t\tconst device = this.options.root.device;\n\t\t\tconst { resolutionResult, descriptor, connectedAttribs, fragmentOut } = this.resolveAndCreateShaderModule();\n\t\t\tconst { usedBindGroupLayouts, catchall, logResources } = resolutionResult;\n\t\t\tthis.#initAsyncPromise = device.createRenderPipelineAsync(descriptor).then((pipeline) =\u003e {\n\t\t\t\tthis.#memo = {\n\t\t\t\t\tpipeline,\n\t\t\t\t\tusedBindGroupLayouts,\n\t\t\t\t\tcatchall,\n\t\t\t\t\tlogResources,\n\t\t\t\t\tusedVertexLayouts: connectedAttribs.usedVertexLayouts,\n\t\t\t\t\tfragmentOut\n\t\t\t\t};\n\t\t\t\tthis.#performanceTracker.measureCompile(device);\n\t\t\t}).finally(() =\u003e {\n\t\t\t\tthis.#initAsyncPromise = void 0;\n\t\t\t});\n\t\t}\n\t\treturn this.#initAsyncPromise;\n\t}\n\tinitSync() {\n\t\tif (this.#memo !== void 0) return;\n\t\tif (this.#initAsyncPromise !== void 0) throw new Error(\"'pipeline.initAsync()' was called and is not yet resolved.\");\n\t\tconst device = this.options.root.device;\n\t\tconst { resolutionResult, descriptor, connectedAttribs, fragmentOut } = this.resolveAndCreateShaderModule();\n\t\tconst { usedBindGroupLayouts, catchall, logResources } = resolutionResult;\n\t\tthis.#memo = {\n\t\t\tpipeline: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(device.createRenderPipeline(descriptor), \"pipeline\"),\n\t\t\tusedBindGroupLayouts,\n\t\t\tcatchall,\n\t\t\tlogResources,\n\t\t\tusedVertexLayouts: connectedAttribs.usedVertexLayouts,\n\t\t\tfragmentOut\n\t\t};\n\t\tthis.#performanceTracker.measureCompile(device);\n\t}\n\tunwrap() {\n\t\tthis.initSync();\n\t\treturn this.#memo;\n\t}\n\tresolveAndCreateShaderModule() {\n\t\tconst { root, descriptor: tgpuDescriptor } = this.options;\n\t\tif (!tgpuDescriptor) throw new Error(\"Precompiled pipelines are never resolved again.\");\n\t\tconst device = root.device;\n\t\tconst enableExtensions = wgslEnableExtensions.filter((extension) =\u003e root.enabledFeatures.has(wgslEnableExtensionToFeatureName[extension]));\n\t\tconst ns = namespace({ names: root.nameRegistrySetting });\n\t\tconst resolutionResult = this.#performanceTracker.measureResolve(() =\u003e resolve$1(this, {\n\t\t\tnamespace: ns,\n\t\t\tminify: root.minify,\n\t\t\tenableExtensions,\n\t\t\tshaderGenerator: root.shaderGeneratorClass ? new root.shaderGeneratorClass() : void 0,\n\t\t\troot\n\t\t}));\n\t\tconst { code, usedBindGroupLayouts, catchall } = resolutionResult;\n\t\tif (catchall !== void 0) usedBindGroupLayouts[catchall[0]]?.$name(`${getName(this) ?? \"\u003cunnamed\u003e\"} - Automatic Bind Group \u0026 Layout`);\n\t\twarnIfOverflow(usedBindGroupLayouts, device.limits);\n\t\tconst module = device.createShaderModule({\n\t\t\tlabel: `${getName(this) ?? \"\u003cunnamed\u003e\"} - Shader`,\n\t\t\tcode\n\t\t});\n\t\tconst { vertex, fragment, attribs = {}, targets } = tgpuDescriptor;\n\t\tconst connectedAttribs = connectAttributesToShader(vertex?.shell?.in ?? this.#latestAutoVertexIn ?? {}, attribs);\n\t\tconst fragmentOut = fragment?.shell?.returnType ?? this.#latestAutoFragmentOut;\n\t\tconst connectedTargets = fragmentOut ? connectTargetsToShader(fragmentOut, targets) : [null];\n\t\tconst descriptor = {\n\t\t\tlayout: device.createPipelineLayout({\n\t\t\t\tlabel: `${getName(this) ?? \"\u003cunnamed\u003e\"} - Pipeline Layout`,\n\t\t\t\tbindGroupLayouts: usedBindGroupLayouts.map((l) =\u003e root.unwrap(l))\n\t\t\t}),\n\t\t\tvertex: {\n\t\t\t\tmodule,\n\t\t\t\tbuffers: connectedAttribs.bufferDefinitions\n\t\t\t}\n\t\t};\n\t\tconst label = getName(this);\n\t\tif (label !== void 0) descriptor.label = label;\n\t\tif (tgpuDescriptor.fragment) descriptor.fragment = {\n\t\t\tmodule,\n\t\t\ttargets: connectedTargets\n\t\t};\n\t\tif (tgpuDescriptor.primitive) if (isWgslData(tgpuDescriptor.primitive.stripIndexFormat)) descriptor.primitive = {\n\t\t\t...tgpuDescriptor.primitive,\n\t\t\tstripIndexFormat: {\n\t\t\t\tu32: \"uint32\",\n\t\t\t\tu16: \"uint16\"\n\t\t\t}[tgpuDescriptor.primitive.stripIndexFormat.type]\n\t\t};\n\t\telse descriptor.primitive = tgpuDescriptor.primitive;\n\t\tif (tgpuDescriptor.depthStencil) descriptor.depthStencil = tgpuDescriptor.depthStencil;\n\t\tif (tgpuDescriptor.multisample) descriptor.multisample = tgpuDescriptor.multisample;\n\t\treturn {\n\t\t\tresolutionResult,\n\t\t\tdescriptor,\n\t\t\tconnectedAttribs,\n\t\t\tfragmentOut\n\t\t};\n\t}\n};\nfunction matchUpVaryingLocations(vertexOut = {}, fragmentIn = {}, vertexFnName, fragmentFnName) {\n\tconst locations = {};\n\tconst usedLocations = /* @__PURE__ */ new Set();\n\tfunction saveLocation(key, location$1) {\n\t\tlocations[key] = location$1;\n\t\tusedLocations.add(location$1);\n\t}\n\tfor (const [key, value] of Object.entries(vertexOut)) {\n\t\tconst customLocation = getCustomLocation(value);\n\t\tif (customLocation !== void 0) saveLocation(key, customLocation);\n\t}\n\tfor (const [key, value] of Object.entries(fragmentIn)) {\n\t\tconst customLocation = getCustomLocation(value);\n\t\tif (customLocation === void 0) continue;\n\t\tif (locations[key] === void 0) saveLocation(key, customLocation);\n\t\telse if (locations[key] !== customLocation) logger.warn(\"locations-mismatched\", `Mismatched location between vertexFn (${vertexFnName}) output (${locations[key]}) and fragmentFn (${fragmentFnName}) input (${customLocation}) for the key \"${key}\", using the location set on vertex output.`);\n\t}\n\tlet nextLocation = 0;\n\tfor (const key of Object.keys(vertexOut ?? {})) {\n\t\tif (isBuiltin(vertexOut[key]) || locations[key] !== void 0) continue;\n\t\twhile (usedLocations.has(nextLocation)) nextLocation++;\n\t\tsaveLocation(key, nextLocation);\n\t}\n\treturn locations;\n}\nvar WeakMemo = class {\n\t#map = /* @__PURE__ */ new WeakMap();\n\t#make;\n\tconstructor(make) {\n\t\tthis.#make = make;\n\t}\n\tgetOrMake(key, ...args) {\n\t\tif (this.#map.has(key)) return this.#map.get(key);\n\t\tconst value = this.#make(key, ...args);\n\t\tthis.#map.set(key, value);\n\t\treturn value;\n\t}\n};\nfunction computeFn(options) {\n\tconst shell = {\n\t\targTypes: Object.values(options.in ?? {}),\n\t\treturnType: Void,\n\t\tworkgroupSize: options.workgroupSize,\n\t\tentryPoint: \"compute\"\n\t};\n\tconst entryInput = separateBuiltins(options.in ?? {});\n\tconst call$1 = (arg, ...values) =\u003e createComputeFn(shell, options.workgroupSize, stripTemplate(arg, ...values), entryInput);\n\treturn Object.assign(call$1, shell);\n}\nfunction createComputeFn(shell, workgroupSize, implementation, entryInput) {\n\tconst core = createFnCore(implementation, \"compute\", workgroupSize);\n\treturn {\n\t\tshell,\n\t\t$uses(newExternals) {\n\t\t\tcore.setExternals(\"userProvided\", newExternals);\n\t\t\treturn this;\n\t\t},\n\t\t[$internal]: true,\n\t\t[$getNameForward]: core,\n\t\t$name(newLabel) {\n\t\t\tsetName(this, newLabel);\n\t\t\treturn this;\n\t\t},\n\t\t[$resolve](ctx) {\n\t\t\treturn ctx.withSlots([[shaderStageSlot, \"compute\"]], () =\u003e core.resolve(ctx, [], shell.returnType, entryInput));\n\t\t},\n\t\ttoString() {\n\t\t\treturn `computeFn:${getName(core) ?? \"\u003cunnamed\u003e\"}`;\n\t\t}\n\t};\n}\nfunction toVec3(arr) {\n\tif (arr.includes(0)) throw new Error(\"Size and workgroupSize cannot contain zeroes.\");\n\treturn vec3u(arr[0] ?? 1, arr[1] ?? 1, arr[2] ?? 1);\n}\nvar workgroupSizeConfigs = [\n\tvec3u(1, 1, 1),\n\tvec3u(256, 1, 1),\n\tvec3u(16, 16, 1),\n\tvec3u(8, 8, 4)\n];\nvar TgpuGuardedComputePipelineImpl = class TgpuGuardedComputePipelineImpl {\n\tresourceType = \"guarded-compute-pipeline\";\n\t[$soul];\n\t#root;\n\t#lastSize;\n\tconstructor(root, pipeline, sizeUniform, workgroupSize) {\n\t\tthis.#root = root;\n\t\tthis.#lastSize = vec3u();\n\t\tthis[$soul] = {\n\t\t\ttype: \"guarded-compute-pipeline\",\n\t\t\tdevice: root.device,\n\t\t\tpipeline,\n\t\t\tsizeUniform,\n\t\t\tworkgroupSize,\n\t\t\tlabel: void 0\n\t\t};\n\t}\n\twith(bindGroup) {\n\t\tif (!isBindGroup(bindGroup)) throw new Error(\"Guarded pipelines only accept bind groups in .with(). To record into passes or encoders, use a regular compute pipeline.\");\n\t\treturn new TgpuGuardedComputePipelineImpl(this.#root, this[$soul].pipeline.with(bindGroup), this[$soul].sizeUniform, this[$soul].workgroupSize);\n\t}\n\twithPerformanceCallback(callback) {\n\t\treturn new TgpuGuardedComputePipelineImpl(this.#root, this[$soul].pipeline.withPerformanceCallback(callback), this[$soul].sizeUniform, this[$soul].workgroupSize);\n\t}\n\twithTimestampWrites(options) {\n\t\treturn new TgpuGuardedComputePipelineImpl(this.#root, this[$soul].pipeline.withTimestampWrites(options), this[$soul].sizeUniform, this[$soul].workgroupSize);\n\t}\n\tdispatchThreads(...threads) {\n\t\tconst sanitizedSize = toVec3(threads);\n\t\tconst workgroupCount = ceil(vec3f(sanitizedSize).div(vec3f(this[$soul].workgroupSize)));\n\t\tif (!allEq(sanitizedSize, this.#lastSize)) {\n\t\t\tthis.#lastSize = sanitizedSize;\n\t\t\tthis[$soul].sizeUniform.write(sanitizedSize);\n\t\t}\n\t\tthis[$soul].pipeline.dispatchWorkgroups(workgroupCount.x, workgroupCount.y, workgroupCount.z);\n\t}\n\tinitAsync() {\n\t\treturn this[$soul].pipeline.initAsync();\n\t}\n\tinitSync() {\n\t\tthis[$soul].pipeline.initSync();\n\t}\n\tget pipeline() {\n\t\treturn this[$soul].pipeline;\n\t}\n\tget sizeUniform() {\n\t\treturn this[$soul].sizeUniform;\n\t}\n\t[$internal] = true;\n\tget [$getNameForward]() {\n\t\treturn this[$soul].pipeline;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\treturn this;\n\t}\n};\nvar WithBindingImpl = class WithBindingImpl {\n\t#getRoot;\n\t#slotBindings;\n\tconstructor(getRoot, slotBindings) {\n\t\tthis.#getRoot = getRoot;\n\t\tthis.#slotBindings = slotBindings;\n\t}\n\twith(slot$1, value) {\n\t\treturn new WithBindingImpl(this.#getRoot, [...this.#slotBindings, [isAccessor(slot$1) || isMutableAccessor(slot$1) ? slot$1.slot : slot$1, value]]);\n\t}\n\tcreateComputePipeline(descriptor) {\n\t\treturn INTERNAL_createComputePipeline(this.#getRoot(), this.#slotBindings, descriptor);\n\t}\n\tcreateRenderPipeline(descriptor) {\n\t\treturn INTERNAL_createRenderPipeline({\n\t\t\troot: this.#getRoot(),\n\t\t\tslotBindings: this.#slotBindings,\n\t\t\tdescriptor\n\t\t});\n\t}\n\tcreateGuardedComputePipeline(callback) {\n\t\tconst root = this.#getRoot();\n\t\tif (callback.length \u003e= 4) throw new Error(\"Guarded compute callback only supports up to three dimensions.\");\n\t\tconst workgroupSize = workgroupSizeConfigs[callback.length];\n\t\tconst wrappedCallback = fn([\n\t\t\tu32,\n\t\t\tu32,\n\t\t\tu32\n\t\t])(callback);\n\t\tif (getName(wrappedCallback) === void 0) wrappedCallback.$name(\"wrappedCallback\");\n\t\tconst sizeUniform = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(vec3u), \"sizeUniform\");\n\t\tconst mainCompute = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(computeFn({\n\t\t\tworkgroupSize,\n\t\t\tin: { id: builtin.globalInvocationId }\n\t\t})`{\n  if (any(in.id \u003e= sizeUniform)) {\n    return;\n  }\n  wrappedCallback(in.id.x, in.id.y, in.id.z);\n}`.$uses({\n\t\t\tsizeUniform,\n\t\t\twrappedCallback\n\t\t}), \"mainCompute\");\n\t\treturn new TgpuGuardedComputePipelineImpl(root, (() =\u003e this.createComputePipeline({ compute: mainCompute }))(), sizeUniform, workgroupSize);\n\t}\n\tpipe(transform) {\n\t\tconst newCfg = transform(new ConfigurableImpl([]));\n\t\treturn new WithBindingImpl(this.#getRoot, [...this.#slotBindings, ...newCfg.bindings]);\n\t}\n};\nvar TgpuRootImpl = class extends WithBindingImpl {\n\t\"~unstable\";\n\tresourceType = \"root\";\n\t[$soul];\n\tdevice;\n\tnameRegistrySetting;\n\tshaderGeneratorClass;\n\t#unwrappedBindGroupLayouts = new WeakMemo((key) =\u003e key.unwrap(this));\n\t#unwrappedBindGroups = new WeakMemo((key) =\u003e key.unwrap(this));\n\t#ownDevice;\n\t[$internal];\n\tconstructor(device, nameRegistrySetting, minify$1, ownDevice, logOptions, shaderGeneratorClass) {\n\t\tsuper(() =\u003e this, []);\n\t\tthis.device = device;\n\t\tthis.nameRegistrySetting = nameRegistrySetting;\n\t\tthis.#ownDevice = ownDevice;\n\t\tthis.shaderGeneratorClass = shaderGeneratorClass;\n\t\tthis[\"~unstable\"] = this;\n\t\tthis[$soul] = {\n\t\t\ttype: \"root\",\n\t\t\tdevice,\n\t\t\tnameRegistrySetting,\n\t\t\tlogOptions,\n\t\t\tminify: minify$1,\n\t\t\tnonTransferablePriors: shaderGeneratorClass ? [\"shaderGeneratorClass\"] : void 0,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis[$internal] = { logOptions };\n\t}\n\tconfigureContext(options) {\n\t\tconst context = options.canvas.getContext(\"webgpu\");\n\t\tif (!context) throw new Error(\"Unable to initialize 'webgpu' context on the provided canvas.\");\n\t\tcontext.configure({\n\t\t\t...options,\n\t\t\tdevice: this.device,\n\t\t\tformat: options.format ?? navigator.gpu.getPreferredCanvasFormat()\n\t\t});\n\t\treturn context;\n\t}\n\tget enabledFeatures() {\n\t\treturn new Set(this.device.features);\n\t}\n\tget minify() {\n\t\treturn this[$soul].minify;\n\t}\n\tcreateBuffer(typeSchema, initialOrBuffer) {\n\t\treturn INTERNAL_createBuffer(this, typeSchema, initialOrBuffer);\n\t}\n\tcreateUniform(typeSchema, initialOrBuffer) {\n\t\treturn new TgpuBufferBindingImpl(\"uniform\", INTERNAL_createBuffer(this, typeSchema, initialOrBuffer).$usage(\"uniform\"));\n\t}\n\tcreateMutable(typeSchema, initialOrBuffer) {\n\t\treturn new TgpuBufferBindingImpl(\"mutable\", INTERNAL_createBuffer(this, typeSchema, initialOrBuffer).$usage(\"storage\"));\n\t}\n\tcreateReadonly(typeSchema, initialOrBuffer) {\n\t\treturn new TgpuBufferBindingImpl(\"readonly\", INTERNAL_createBuffer(this, typeSchema, initialOrBuffer).$usage(\"storage\"));\n\t}\n\tcreateQuerySet(type, count, rawQuerySet) {\n\t\treturn INTERNAL_createQuerySet(this, type, count, rawQuerySet);\n\t}\n\tcreateBindGroup(layout, entries) {\n\t\treturn new TgpuBindGroupImpl(this, layout, entries);\n\t}\n\tdestroy() {\n\t\tclearTextureUtilsCache(this.device);\n\t\tif (this.#ownDevice) this.device.destroy();\n\t}\n\tcreateTexture(props) {\n\t\treturn INTERNAL_createTexture(props, this);\n\t}\n\tcreateSampler(props) {\n\t\treturn INTERNAL_createSampler(props, this);\n\t}\n\tcreateComparisonSampler(props) {\n\t\treturn INTERNAL_createComparisonSampler(props, this);\n\t}\n\tunwrap(resource) {\n\t\tif (isTgpuCommandEncoder(resource)) return resource[$internal].rawEncoder;\n\t\tif (isTgpuRenderCommands(resource) || isTgpuComputePass(resource)) {\n\t\t\tresource[$internal].state.rawAccessed = true;\n\t\t\treturn resource[$internal].rawPass;\n\t\t}\n\t\tif (isBindGroupLayout(resource)) return this.#unwrappedBindGroupLayouts.getOrMake(resource);\n\t\tif (isBindGroup(resource)) return this.#unwrappedBindGroups.getOrMake(resource);\n\t\tif (isBufferBinding(resource)) return resource.buffer.buffer;\n\t\tif (isTextureView(resource)) {\n\t\t\tif (!resource[$internal].unwrap) throw new Error(\"Cannot unwrap laid-out texture view as it has no underlying resource.\");\n\t\t\treturn resource[$internal].unwrap();\n\t\t}\n\t\tif (isVertexLayout(resource)) return resource.vertexLayout;\n\t\tconst internals = resource[$internal];\n\t\tif (internals?.materialize) return internals.materialize();\n\t\tif (isSampler(resource) || isComparisonSampler(resource)) throw new Error(\"Cannot unwrap laid-out sampler.\");\n\t\tthrow new Error(`Unknown resource type: ${safeStringify(resource)}`);\n\t}\n\tcreateCommandEncoder(descriptor) {\n\t\treturn INTERNAL_createCommandEncoder(this, descriptor);\n\t}\n\tcreateRenderBundleEncoder(descriptor) {\n\t\treturn INTERNAL_createRenderBundleEncoder(this, descriptor);\n\t}\n};\nasync function init(options) {\n\tconst { adapter: adapterOpt, device: deviceOpt, unstable_names: names = \"strict\", unstable_minify: minify$1 = false, unstable_logOptions: logOptions, unstable_shaderGeneratorClass: shaderGeneratorClass } = options ?? {};\n\tconst { optionalFeatures,...deviceDescriptor } = deviceOpt ?? {};\n\tif (!navigator.gpu) throw new Error(\"WebGPU is not supported by this browser.\");\n\tconst adapter = await navigator.gpu.requestAdapter(adapterOpt);\n\tif (!adapter) throw new Error(\"Could not find a compatible GPU\");\n\tconst availableFeatures = [];\n\tfor (const feature of deviceDescriptor.requiredFeatures ?? []) {\n\t\tif (!adapter.features.has(feature)) throw new Error(`Requested feature \"${feature}\" is not supported by the adapter.`);\n\t\tavailableFeatures.push(feature);\n\t}\n\tfor (const feature of optionalFeatures ?? []) if (adapter.features.has(feature)) availableFeatures.push(feature);\n\telse logger.warn(\"webgpu-feature-missing\", `Optional feature \"${feature}\" is not supported by the adapter.`);\n\treturn new TgpuRootImpl(await adapter.requestDevice({\n\t\t...deviceDescriptor,\n\t\trequiredFeatures: availableFeatures\n\t}), names, minify$1, true, logOptions ?? {}, shaderGeneratorClass);\n}\nfunction initFromDevice(options) {\n\tconst { device, unstable_names: names = \"strict\", unstable_minify: minify$1 = false, unstable_logOptions: logOptions, unstable_shaderGeneratorClass: shaderGeneratorClass } = options ?? {};\n\treturn new TgpuRootImpl(device, names, minify$1, false, logOptions ?? {}, shaderGeneratorClass);\n}\nfunction accessor(schemaOrConstructor, defaultValue) {\n\treturn new TgpuAccessorImpl(schemaOrConstructor, defaultValue);\n}\nfunction mutableAccessor(schemaOrConstructor, defaultValue) {\n\treturn new TgpuMutableAccessorImpl(schemaOrConstructor, defaultValue);\n}\nfunction createAccessorSnippet(accessor$1) {\n\tconst ctx = getResolutionCtx();\n\tlet value = getGpuValueRecursively(ctx.unwrap(accessor$1.slot));\n\twhile (typeof value === \"function\" \u0026\u0026 !isTgpuFn(value) \u0026\u0026 !isGPUCallable(value) \u0026\u0026 !hasTinyestMetadata(value)) {\n\t\tvalue = value();\n\t\tif (isSnippet(value)) value = value.value;\n\t}\n\tconst ownSnippet = getOwnSnippet(value);\n\tif (ownSnippet) return ownSnippet;\n\tif (isGPUCallable(value)) return value[$gpuCallable].call(ctx, []);\n\tif (isTgpuFn(value) || hasTinyestMetadata(value)) {\n\t\tconst fn$1 = ctx.resolve(value);\n\t\treturn ctx.withResetIndentLevel(() =\u003e snip(`${fn$1.value}()`, accessor$1.schema, \"runtime\", fn$1.possibleSideEffects));\n\t}\n\tctx.pushMode(new NormalState());\n\ttry {\n\t\treturn snip(schemaCallWrapper(accessor$1.schema, value), accessor$1.schema, \"constant\", false);\n\t} finally {\n\t\tctx.popMode(\"normal\");\n\t}\n}\nvar AccessorBase = class AccessorBase {\n\t[$getNameForward];\n\t[$soul];\n\tslot;\n\tstatic #_ = (() =\u003e {\n\t\tAccessorBase.prototype[$internal] = true;\n\t\tmakeResolvable(AccessorBase.prototype, {\n\t\t\tasString() {\n\t\t\t\treturn `${this.resourceType}:${getName(this) ?? \"\u003cunnamed\u003e\"}`;\n\t\t\t},\n\t\t\tresolve(ctx) {\n\t\t\t\treturn ctx.resolveSnippet(createAccessorSnippet(this));\n\t\t\t}\n\t\t});\n\t})();\n\tconstructor(type, schemaOrConstructor, defaultValue = void 0) {\n\t\tthis[$soul] = {\n\t\t\ttype,\n\t\t\tschema: isData(schemaOrConstructor) ? schemaOrConstructor : schemaOrConstructor(0),\n\t\t\tdefaultValue,\n\t\t\tlabel: void 0\n\t\t};\n\t\tthis.slot = (() =\u003e slot(defaultValue))();\n\t\tthis[$getNameForward] = this.slot;\n\t}\n\tget schema() {\n\t\treturn this[$soul].schema;\n\t}\n\tget defaultValue() {\n\t\treturn this[$soul].defaultValue;\n\t}\n\t$name(label) {\n\t\tsetName(this, label);\n\t\tif (this.defaultValue \u0026\u0026 typeof this.defaultValue === \"function\" \u0026\u0026 !getName(this.defaultValue)) setName(this.defaultValue, label);\n\t\treturn this;\n\t}\n};\nvar TgpuAccessorImpl = class TgpuAccessorImpl extends AccessorBase {\n\tstatic #_ = (() =\u003e {\n\t\tTgpuAccessorImpl.prototype.resourceType = \"accessor\";\n\t\tmakeDereferenceable(TgpuAccessorImpl.prototype, {\n\t\t\tcodegenMode: { get() {\n\t\t\t\treturn createAccessorSnippet(this);\n\t\t\t} },\n\t\t\tnormalMode: { get() {\n\t\t\t\tthrow 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.\");\n\t\t\t} }\n\t\t});\n\t})();\n\tconstructor(schemaOrConstructor, defaultValue = void 0) {\n\t\tsuper(\"accessor\", schemaOrConstructor, defaultValue);\n\t}\n};\nvar TgpuMutableAccessorImpl = class TgpuMutableAccessorImpl extends AccessorBase {\n\tstatic #_ = (() =\u003e {\n\t\tTgpuMutableAccessorImpl.prototype.resourceType = \"mutable-accessor\";\n\t\tmakeDereferenceable(TgpuMutableAccessorImpl.prototype, {\n\t\t\tcodegenMode: { get() {\n\t\t\t\treturn createAccessorSnippet(this);\n\t\t\t} },\n\t\t\tnormalMode: { get() {\n\t\t\t\tthrow 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.\");\n\t\t\t} }\n\t\t});\n\t})();\n\tconstructor(schemaOrConstructor, defaultValue = void 0) {\n\t\tsuper(\"mutable-accessor\", schemaOrConstructor, defaultValue);\n\t}\n};\nfunction resolveWithContext(arg0, options) {\n\tif (Array.isArray(arg0)) return resolveFromArray(arg0, options);\n\treturn resolveFromTemplate(arg0);\n}\nfunction resolve(arg, options) {\n\tif (Array.isArray(arg)) return resolveWithContext(arg, options).code;\n\treturn resolveWithContext(arg).code;\n}\nfunction resolveFromTemplate(options) {\n\tconst { template, externals, unstable_shaderGenerator: shaderGenerator, names = \"strict\", unstable_minify, config, enableExtensions } = options;\n\tif (!template) logger.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.\");\n\tconst resolutionObj = {\n\t\t[$internal]: true,\n\t\t[$resolve](ctx) {\n\t\t\treturn snip(replaceExternalsInWgsl(ctx, externals, template ?? \"\"), Void, \"runtime\");\n\t\t},\n\t\ttoString: () =\u003e \"\u003croot\u003e\"\n\t};\n\tconst maybeRoot = tryFindRoot(Object.values(externals));\n\treturn resolve$1(resolutionObj, {\n\t\tnamespace: typeof names === \"string\" ? namespace({ names }) : names,\n\t\tminify: unstable_minify ?? maybeRoot?.minify ?? false,\n\t\tenableExtensions,\n\t\tshaderGenerator,\n\t\tconfig,\n\t\troot: maybeRoot\n\t});\n}\nfunction resolveFromArray(items, options) {\n\tconst { unstable_shaderGenerator: shaderGenerator, names = \"strict\", unstable_minify, config, enableExtensions } = options ?? {};\n\tconst resolutionObj = {\n\t\t[$internal]: true,\n\t\t[$resolve](ctx) {\n\t\t\tfor (const item of items) if (isBindGroupLayout(item)) for (const binding of Object.values(item[$internal])) ctx.resolve(binding);\n\t\t\telse ctx.resolve(item);\n\t\t\treturn snip(\"\", Void, \"runtime\");\n\t\t},\n\t\ttoString: () =\u003e \"\u003croot\u003e\"\n\t};\n\tconst maybeRoot = tryFindRoot(items);\n\treturn resolve$1(resolutionObj, {\n\t\tnamespace: typeof names === \"string\" ? namespace({ names }) : names,\n\t\tminify: unstable_minify ?? maybeRoot?.minify ?? false,\n\t\tenableExtensions,\n\t\tshaderGenerator,\n\t\tconfig,\n\t\troot: maybeRoot\n\t});\n}\nfunction tryFindRoot(items) {\n\tconst buckets = /* @__PURE__ */ new Map();\n\tfor (const item of items) {\n\t\tconst root = extractRoot(item);\n\t\tif (root) {\n\t\t\tconst bucket = buckets.get(root) ?? /* @__PURE__ */ new Set();\n\t\t\tbuckets.set(root, bucket);\n\t\t\tbucket.add(item);\n\t\t}\n\t}\n\tif (buckets.size \u003e 1) {\n\t\tconst bucketsString = [...buckets.values()].map((bucket, i) =\u003e `root ${i + 1}: ${[...bucket].map((item) =\u003e getName(item) ?? \"\u003cunnamed\u003e\").join(\", \")}`).join(\"; \");\n\t\tthrow new Error(`Found resources originating from different roots in a single resolve (${bucketsString}).`);\n\t}\n\treturn [...buckets.keys()][0];\n}\nfunction extractRoot(item) {\n\tif (isPipeline(item) || isBuffer(item) || isTexture(item) || isSampler(item) || isComparisonSampler(item)) return item[$internal].root;\n\tif (isBufferBinding(item)) return extractRoot(item.buffer);\n\tif (isTextureView(item)) return extractRoot(item?.[$soul]?.texture);\n}\nfunction lazy(compute) {\n\tif (getResolutionCtx()) throw new Error(\"Cannot create tgpu.lazy objects during shader resolution.\");\n\treturn new TgpuLazyImpl(compute, void 0);\n}\nvar TgpuLazyImpl = class TgpuLazyImpl {\n\t[$internal];\n\t[$providing];\n\tstatic #_ = (() =\u003e {\n\t\tTgpuLazyImpl.prototype.resourceType = \"lazy\";\n\t\tmakeDereferenceable(makeResolvable(TgpuLazyImpl.prototype, {\n\t\t\tasString: () =\u003e \"lazy\",\n\t\t\tresolve(_ctx) {\n\t\t\t\tthrow new Error(`Unreachable, is never resolved directly`);\n\t\t\t}\n\t\t}), {\n\t\t\tcodegenMode: { get() {\n\t\t\t\treturn this.#getValue();\n\t\t\t} },\n\t\t\tnormalMode: { get() {\n\t\t\t\treturn this.#getValue();\n\t\t\t} }\n\t\t});\n\t})();\n\tconstructor(compute, providing) {\n\t\tthis[$internal] = { compute };\n\t\tthis[$providing] = providing;\n\t}\n\tget [$gpuValueOf]() {\n\t\tconst ctx = getResolutionCtx();\n\t\tif (!ctx) throw new Error(`Cannot access tgpu.lazy's value outside of resolution.`);\n\t\treturn getGpuValueRecursively(ctx.unwrap(this));\n\t}\n\tget $() {\n\t\treturn this[$gpuValueOf];\n\t}\n\t#getValue() {\n\t\tconst ctx = getResolutionCtx();\n\t\tif (!ctx) throw new Error(`Cannot access tgpu.lazy's value outside of resolution.`);\n\t\treturn getGpuValueRecursively(ctx.unwrap(this));\n\t}\n\twith(slot$1, value) {\n\t\treturn new TgpuLazyImpl(this[$internal].compute.bind(this), {\n\t\t\tinner: this[$providing]?.inner ?? this,\n\t\t\tpairs: [...this[$providing]?.pairs ?? [], [isAccessor(slot$1) || isMutableAccessor(slot$1) ? slot$1.slot : slot$1, value]]\n\t\t});\n\t}\n};\nfunction fragmentFn(options) {\n\tconst shell = {\n\t\tin: options.in,\n\t\tout: options.out,\n\t\treturnType: createIoSchema(options.out),\n\t\tentryPoint: \"fragment\"\n\t};\n\tconst call$1 = (arg, ...values) =\u003e createFragmentFn(shell, stripTemplate(arg, ...values));\n\treturn Object.assign(call$1, shell);\n}\nfunction createFragmentFn(shell, implementation) {\n\tconst core = createFnCore(implementation, \"fragment\");\n\tconst outputType = shell.returnType;\n\tif (typeof implementation === \"string\") addReturnTypeToExternals(implementation, outputType, core);\n\treturn {\n\t\tshell,\n\t\toutputType,\n\t\t$uses(newExternals) {\n\t\t\tcore.setExternals(\"userProvided\", newExternals);\n\t\t\treturn this;\n\t\t},\n\t\t[$internal]: true,\n\t\t[$getNameForward]: core,\n\t\t$name(newLabel) {\n\t\t\tsetName(this, newLabel);\n\t\t\tif (isNamable(outputType)) outputType.$name(`${newLabel}_Output`);\n\t\t\treturn this;\n\t\t},\n\t\t[$resolve](ctx) {\n\t\t\tconst entryInput = separateBuiltins(shell.in ?? {}, ctx.varyingLocations ?? {});\n\t\t\tif (entryInput.dataSchema \u0026\u0026 isNamable(entryInput.dataSchema)) entryInput.dataSchema.$name(`${getName(this) ?? \"\"}_Input`);\n\t\t\tif (typeof implementation === \"string\") core.setExternals(\"out\", { Out: outputType });\n\t\t\treturn ctx.withSlots([[shaderStageSlot, \"fragment\"]], () =\u003e core.resolve(ctx, [], shell.returnType, entryInput));\n\t\t},\n\t\ttoString() {\n\t\t\treturn `fragmentFn:${getName(core) ?? \"\u003cunnamed\u003e\"}`;\n\t\t}\n\t};\n}\nfunction vertexFn(options) {\n\tif (Object.keys(options.out).length === 0) throw new Error(`A vertexFn output cannot be empty since it must include the 'position' builtin.`);\n\tconst shell = {\n\t\tin: options.in,\n\t\tout: options.out,\n\t\targTypes: options.in \u0026\u0026 Object.keys(options.in).length !== 0 ? [createIoSchema(options.in)] : [],\n\t\tentryPoint: \"vertex\"\n\t};\n\tconst call$1 = (arg, ...values) =\u003e createVertexFn(shell, stripTemplate(arg, ...values));\n\treturn Object.assign(call$1, shell);\n}\nfunction createVertexFn(shell, implementation) {\n\tconst core = createFnCore(implementation, \"vertex\");\n\tconst entryInput = separateAllAsPositional(shell.in ?? {});\n\treturn {\n\t\tshell,\n\t\t$uses(newExternals) {\n\t\t\tcore.setExternals(\"userProvided\", newExternals);\n\t\t\treturn this;\n\t\t},\n\t\t[$internal]: true,\n\t\t[$getNameForward]: core,\n\t\t$name(newLabel) {\n\t\t\tsetName(this, newLabel);\n\t\t\treturn this;\n\t\t},\n\t\t[$resolve](ctx) {\n\t\t\tconst outputWithLocation = createIoSchema(shell.out, ctx.varyingLocations).$name(`${getName(this) ?? \"\"}_Output`);\n\t\t\tif (typeof implementation === \"string\") core.setExternals(\"out\", { Out: outputWithLocation });\n\t\t\treturn ctx.withSlots([[shaderStageSlot, \"vertex\"]], () =\u003e core.resolve(ctx, [], outputWithLocation, entryInput));\n\t\t},\n\t\ttoString() {\n\t\t\treturn `vertexFn:${getName(core) ?? \"\u003cunnamed\u003e\"}`;\n\t\t}\n\t};\n}\nfunction declare(declaration) {\n\treturn new TgpuDeclareImpl(declaration);\n}\nvar TgpuDeclareImpl = class {\n\t[$internal] = true;\n\t#externals;\n\t#declaration;\n\tconstructor(declaration) {\n\t\tthis.#declaration = declaration;\n\t}\n\t$uses(dependencyMap) {\n\t\tif (this.#externals !== void 0) throw new Error(\"Cannot call '$uses' multiple times. If you wish to override dependencies, use slots or accessors instead.\");\n\t\tthis.#externals = dependencyMap;\n\t\treturn this;\n\t}\n\t[$resolve](ctx) {\n\t\tconst replacedDeclaration = replaceExternalsInWgsl(ctx, this.#externals ?? {}, this.#declaration);\n\t\tctx.addDeclaration(replacedDeclaration);\n\t\treturn snip(\"\", Void, \"constant\");\n\t}\n\ttoString() {\n\t\treturn `declare: ${this.#declaration}`;\n\t}\n};\nfunction rawCodeSnippet(expression, type, origin = \"runtime\", possibleSideEffects = true) {\n\treturn new TgpuRawCodeSnippetImpl(expression, type, origin, possibleSideEffects);\n}\nvar TgpuRawCodeSnippetImpl = class TgpuRawCodeSnippetImpl {\n\tdataType;\n\torigin;\n\tpossibleSideEffects;\n\t#expression;\n\t#externals;\n\tstatic #_ = (() =\u003e {\n\t\tTgpuRawCodeSnippetImpl.prototype[$internal] = true;\n\t\tmakeDereferenceable(makeResolvable(TgpuRawCodeSnippetImpl.prototype, {\n\t\t\tasString() {\n\t\t\t\treturn `raw(${String(this.dataType)}): \"${this.#expression}\"`;\n\t\t\t},\n\t\t\tresolve(ctx) {\n\t\t\t\treturn snip(replaceExternalsInWgsl(ctx, this.#externals ?? {}, this.#expression), this.dataType, this.origin, this.possibleSideEffects);\n\t\t\t}\n\t\t}), {\n\t\t\tcodegenMode: { getBaseSnippet(trackingProxy) {\n\t\t\t\treturn snip(trackingProxy, this.dataType, this.origin, this.possibleSideEffects);\n\t\t\t} },\n\t\t\tnormalMode: { get() {\n\t\t\t\tthrow new Error(\"Raw code snippets can only be used on the GPU.\");\n\t\t\t} }\n\t\t});\n\t})();\n\tconstructor(expression, type, origin, possibleSideEffects) {\n\t\tthis.dataType = type;\n\t\tthis.origin = origin;\n\t\tthis.possibleSideEffects = possibleSideEffects;\n\t\tthis.#expression = expression;\n\t}\n\t$uses(dependencyMap) {\n\t\tif (this.#externals !== void 0) throw new Error(\"Cannot call '$uses' multiple times. If you wish to override dependencies, use slots or accessors instead.\");\n\t\tthis.#externals = dependencyMap;\n\t\treturn this;\n\t}\n};\nfunction simulate(callback) {\n\tconst ctx = getResolutionCtx() ?? new ResolutionCtxImpl({\n\t\tminify: false,\n\t\tnamespace: namespace()\n\t});\n\tconst workgroups = [\n\t\t1,\n\t\t1,\n\t\t1\n\t];\n\tconst workgroupSize = [\n\t\t1,\n\t\t1,\n\t\t1\n\t];\n\tconst threads = [\n\t\tworkgroups[0] * workgroupSize[0],\n\t\tworkgroups[1] * workgroupSize[1],\n\t\tworkgroups[2] * workgroupSize[2]\n\t];\n\tconst buffers = /* @__PURE__ */ new Map();\n\tconst workgroupVars = Array.from({ length: workgroups[0] }, () =\u003e Array.from({ length: workgroups[1] }, () =\u003e Array.from({ length: workgroups[2] }, () =\u003e /* @__PURE__ */ new Map())));\n\tconst privateVars = Array.from({ length: threads[0] }, () =\u003e Array.from({ length: threads[1] }, () =\u003e Array.from({ length: threads[2] }, () =\u003e /* @__PURE__ */ new Map())));\n\tconst simStates = Array.from({ length: threads[0] }, (_, i) =\u003e Array.from({ length: threads[1] }, (_$1, j) =\u003e Array.from({ length: threads[2] }, (_$2, k) =\u003e {\n\t\tconst wi = Math.floor(i / workgroupSize[0]);\n\t\tconst wj = Math.floor(j / workgroupSize[1]);\n\t\tconst wk = Math.floor(k / workgroupSize[2]);\n\t\treturn new SimulationState(buffers, {\n\t\t\tprivate: privateVars[i][j][k],\n\t\t\tworkgroup: workgroupVars[wi][wj][wk]\n\t\t});\n\t})));\n\tctx.pushMode(simStates[0][0][0]);\n\ttry {\n\t\treturn {\n\t\t\tvalue: provideCtx(ctx, callback),\n\t\t\tbuffers,\n\t\t\tprivateVars,\n\t\t\tworkgroupVars\n\t\t};\n\t} finally {\n\t\tctx.popMode(\"simulate\");\n\t}\n}\nvar tgpuUnstable_exports = /* @__PURE__ */ __export$1({\n\taccessor: () =\u003e _accessor,\n\tcomptime: () =\u003e _comptime,\n\tcomputeFn: () =\u003e _computeFn,\n\tconst: () =\u003e _constant,\n\tdeclare: () =\u003e declare,\n\tderived: () =\u003e _lazy,\n\tfn: () =\u003e _fn,\n\tfragmentFn: () =\u003e _fragmentFn,\n\tmutableAccessor: () =\u003e _mutableAccessor,\n\tnamespace: () =\u003e namespace,\n\tprivateVar: () =\u003e _privateVar,\n\trawCodeSnippet: () =\u003e rawCodeSnippet,\n\tsimulate: () =\u003e simulate,\n\tslot: () =\u003e _slot,\n\tvertexFn: () =\u003e _vertexFn,\n\tvertexLayout: () =\u003e _vertexLayout,\n\tworkgroupVar: () =\u003e _workgroupVar\n});\nvar _constant = constant;\nvar _comptime = comptime;\nvar _computeFn = computeFn;\nvar _fn = fn;\nvar _fragmentFn = fragmentFn;\nvar _vertexFn = vertexFn;\nvar _accessor = accessor;\nvar _mutableAccessor = mutableAccessor;\nvar _lazy = lazy;\nvar _slot = slot;\nvar _privateVar = privateVar;\nvar _workgroupVar = workgroupVar;\nvar _vertexLayout = vertexLayout;\nvar tgpu_exports = /* @__PURE__ */ __export$1({\n\taccessor: () =\u003e accessor,\n\tbindGroupLayout: () =\u003e bindGroupLayout,\n\tcomptime: () =\u003e comptime,\n\tcomputeFn: () =\u003e computeFn,\n\tconst: () =\u003e constant,\n\tfn: () =\u003e fn,\n\tfragmentFn: () =\u003e fragmentFn,\n\tinit: () =\u003e init,\n\tinitFromDevice: () =\u003e initFromDevice,\n\tlazy: () =\u003e lazy,\n\tmutableAccessor: () =\u003e mutableAccessor,\n\tprivateVar: () =\u003e privateVar,\n\tresolve: () =\u003e resolve,\n\tresolveWithContext: () =\u003e resolveWithContext,\n\tslot: () =\u003e slot,\n\tunroll: () =\u003e unroll,\n\tvertexFn: () =\u003e vertexFn,\n\tvertexLayout: () =\u003e vertexLayout,\n\tworkgroupVar: () =\u003e workgroupVar,\n\t\"~unstable\": () =\u003e tgpuUnstable_exports\n});\nvar derivativeNormalError = \"Derivative builtins are not allowed on the CPU\";\nconst dpdx = dualImpl({\n\tname: \"dpdx\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`dpdx(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"dpdxCoarse\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`dpdxCoarse(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"dpdxFine\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`dpdxFine(${value})`,\n\tsideEffects: false\n});\nconst dpdy = dualImpl({\n\tname: \"dpdy\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`dpdy(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"dpdyCoarse\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`dpdyCoarse(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"dpdyFine\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`dpdyFine(${value})`,\n\tsideEffects: false\n});\nconst fwidth = dualImpl({\n\tname: \"fwidth\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`fwidth(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"fwidthCoarse\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`fwidthCoarse(${value})`,\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"fwidthFine\",\n\tnormalImpl: derivativeNormalError,\n\tsignature: (value) =\u003e ({\n\t\targTypes: [value],\n\t\treturnType: value\n\t}),\n\tcodegenImpl: (_ctx, [value]) =\u003e stitch`fwidthFine(${value})`,\n\tsideEffects: false\n});\nfunction compactSnippetArgs(args) {\n\treturn args.filter((arg) =\u003e arg !== void 0);\n}\nfunction sampleCpu(_texture, _sampler, _coords, _offsetOrArrayIndex, _maybeOffset) {\n\tthrow new MissingCpuImplError(\"Texture sampling relies on GPU resources and cannot be executed outside of a draw call\");\n}\ndualImpl({\n\tname: \"textureSample\",\n\tnormalImpl: sampleCpu,\n\tcodegenImpl: (ctx, args) =\u003e ctx.gen.emitCall(\"textureSample\", [], compactSnippetArgs(args)),\n\tsignature: (...args) =\u003e {\n\t\treturn {\n\t\t\targTypes: args,\n\t\t\treturnType: args[0].type.startsWith(\"texture_depth\") ? f32 : vec4f\n\t\t};\n\t},\n\tsideEffects: false\n});\nfunction sampleBiasCpu(_texture, _sampler, _coords, _biasOrArrayIndex, _biasOrOffset, _maybeOffset) {\n\tthrow new MissingCpuImplError(\"Texture sampling with bias relies on GPU resources and cannot be executed outside of a draw call\");\n}\ndualImpl({\n\tname: \"textureSampleBias\",\n\tnormalImpl: sampleBiasCpu,\n\tcodegenImpl: (ctx, args) =\u003e ctx.gen.emitCall(\"textureSampleBias\", [], compactSnippetArgs(args)),\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: vec4f\n\t}),\n\tsideEffects: false\n});\nfunction sampleLevelCpu(_texture, _sampler, _coords, _level, _offsetOrArrayIndex, _maybeOffset) {\n\tthrow new MissingCpuImplError(\"Texture sampling relies on GPU resources and cannot be executed outside of a draw call\");\n}\nconst textureSampleLevel = dualImpl({\n\tname: \"textureSampleLevel\",\n\tnormalImpl: sampleLevelCpu,\n\tcodegenImpl: (ctx, args) =\u003e ctx.gen.emitCall(\"textureSampleLevel\", [], compactSnippetArgs(args)),\n\tsignature: (...args) =\u003e {\n\t\treturn {\n\t\t\targTypes: args,\n\t\t\treturnType: args[0].type.startsWith(\"texture_depth\") ? f32 : vec4f\n\t\t};\n\t},\n\tsideEffects: false\n});\nfunction textureLoadCpu(_texture, _coords, _levelOrArrayIndex) {\n\tthrow new MissingCpuImplError(\"`textureLoad` relies on GPU resources and cannot be executed outside of a draw call\");\n}\nconst textureLoad = dualImpl({\n\tname: \"textureLoad\",\n\tnormalImpl: textureLoadCpu,\n\tcodegenImpl: (ctx, args) =\u003e ctx.gen.emitCall(\"textureLoad\", [], compactSnippetArgs(args)),\n\tsignature: (...args) =\u003e {\n\t\tconst texture = args[0];\n\t\tif (isWgslTexture(texture)) {\n\t\t\tconst isDepth = texture.type.startsWith(\"texture_depth\");\n\t\t\tconst sampleType = texture.sampleType;\n\t\t\treturn {\n\t\t\t\targTypes: args,\n\t\t\t\treturnType: isDepth ? f32 : sampleType.type === \"f32\" ? vec4f : sampleType.type === \"u32\" ? vec4u : vec4i\n\t\t\t};\n\t\t}\n\t\tif (isWgslExternalTexture(texture)) return {\n\t\t\targTypes: args,\n\t\t\treturnType: vec4f\n\t\t};\n\t\tconst format = texture.format;\n\t\treturn {\n\t\t\targTypes: args,\n\t\t\treturnType: getTextureFormatInfo(format).vectorType\n\t\t};\n\t},\n\tsideEffects: false\n});\nfunction textureStoreCpu(_texture, _coords, _arrayIndexOrValue, _maybeValue) {\n\tthrow new MissingCpuImplError(\"`textureStore` relies on GPU resources and cannot be executed outside of a draw call\");\n}\nconst textureStore = dualImpl({\n\tname: \"textureStore\",\n\tnormalImpl: textureStoreCpu,\n\tcodegenImpl: (_ctx, args) =\u003e stitch`textureStore(${args})`,\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: Void\n\t}),\n\tsideEffects: true\n});\nfunction textureDimensionsCpu(_texture, _level) {\n\tthrow new MissingCpuImplError(\"`textureDimensions` relies on GPU resources and cannot be executed outside of a draw call\");\n}\nconst textureDimensions = dualImpl({\n\tname: \"textureDimensions\",\n\tnormalImpl: textureDimensionsCpu,\n\tcodegenImpl: (ctx, args) =\u003e ctx.gen.emitCall(\"textureDimensions\", [], compactSnippetArgs(args)),\n\tsignature: (...args) =\u003e {\n\t\tconst dim = args[0].dimension;\n\t\tif (dim === \"1d\") return {\n\t\t\targTypes: args,\n\t\t\treturnType: u32\n\t\t};\n\t\tif (dim === \"3d\") return {\n\t\t\targTypes: args,\n\t\t\treturnType: vec3u\n\t\t};\n\t\treturn {\n\t\t\targTypes: args,\n\t\t\treturnType: vec2u\n\t\t};\n\t},\n\tsideEffects: false\n});\nconst textureGatherCpu = (..._args) =\u003e {\n\tthrow new Error(\"Texture gather relies on GPU resources and cannot be executed outside of a draw call\");\n};\nvar sampleTypeToVecType = {\n\tf32: vec4f,\n\ti32: vec4i,\n\tu32: vec4u\n};\ndualImpl({\n\tname: \"textureGather\",\n\tnormalImpl: textureGatherCpu,\n\tcodegenImpl: (_ctx, args) =\u003e stitch`textureGather(${args})`,\n\tsignature: (...args) =\u003e {\n\t\tif (args[0].type.startsWith(\"texture\")) {\n\t\t\tconst [texture$1, sampler$2, coords$1, _$1, ...rest$1] = args;\n\t\t\treturn {\n\t\t\t\targTypes: texture$1.type === \"texture_depth_2d_array\" || texture$1.type === \"texture_depth_cube_array\" ? [\n\t\t\t\t\ttexture$1,\n\t\t\t\t\tsampler$2,\n\t\t\t\t\tcoords$1,\n\t\t\t\t\t[u32, i32],\n\t\t\t\t\t...rest$1\n\t\t\t\t] : args,\n\t\t\t\treturnType: vec4f\n\t\t\t};\n\t\t}\n\t\tconst [_, texture, sampler$1, coords, ...rest] = args;\n\t\treturn {\n\t\t\targTypes: texture.type === \"texture_2d_array\" || texture.type === \"texture_cube_array\" ? [\n\t\t\t\t[u32, i32],\n\t\t\t\ttexture,\n\t\t\t\tsampler$1,\n\t\t\t\tcoords,\n\t\t\t\t[u32, i32],\n\t\t\t\t...rest\n\t\t\t] : [\n\t\t\t\t[u32, i32],\n\t\t\t\ttexture,\n\t\t\t\tsampler$1,\n\t\t\t\tcoords,\n\t\t\t\t...rest\n\t\t\t],\n\t\t\treturnType: sampleTypeToVecType[texture.sampleType.type]\n\t\t};\n\t},\n\tsideEffects: false\n});\nfunction textureSampleCompareCpu(_texture, _sampler, _coords, _depthRefOrArrayIndex, _depthRefOrOffset, _maybeOffset) {\n\tthrow new MissingCpuImplError(\"Texture comparison sampling relies on GPU resources and cannot be executed outside of a draw call\");\n}\ndualImpl({\n\tname: \"textureSampleCompare\",\n\tnormalImpl: textureSampleCompareCpu,\n\tcodegenImpl: (_ctx, args) =\u003e stitch`textureSampleCompare(${args})`,\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: f32\n\t}),\n\tsideEffects: false\n});\nfunction textureSampleCompareLevelCpu(_texture, _sampler, _coords, _depthRefOrArrayIndex, _depthRefOrOffset, _maybeOffset) {\n\tthrow new MissingCpuImplError(\"Texture comparison sampling with level relies on GPU resources and cannot be executed outside of a draw call\");\n}\ndualImpl({\n\tname: \"textureSampleCompareLevel\",\n\tnormalImpl: textureSampleCompareLevelCpu,\n\tcodegenImpl: (ctx, args) =\u003e stitch`textureSampleCompareLevel(${args})`,\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: f32\n\t}),\n\tsideEffects: false\n});\nfunction textureSampleBaseClampToEdgeCpu(_texture, _sampler, _coords) {\n\tthrow new MissingCpuImplError(\"Texture sampling with base clamp to edge is not supported outside of GPU mode.\");\n}\nfunction sampleGradCpu(_texture, _sampler, _coords, _ddxOrArrayIndex, _ddyOrDdx, _offsetOrDdy, _maybeOffset) {\n\tthrow new MissingCpuImplError(\"Texture sampling with gradients relies on GPU resources and cannot be executed outside of a draw call\");\n}\ndualImpl({\n\tname: \"textureSampleGrad\",\n\tnormalImpl: sampleGradCpu,\n\tcodegenImpl: (_ctx, args) =\u003e stitch`textureSampleGrad(${args})`,\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: vec4f\n\t}),\n\tsideEffects: false\n});\ndualImpl({\n\tname: \"textureSampleBaseClampToEdge\",\n\tnormalImpl: textureSampleBaseClampToEdgeCpu,\n\tcodegenImpl: (_ctx, args) =\u003e stitch`textureSampleBaseClampToEdge(${args})`,\n\tsignature: (...args) =\u003e ({\n\t\targTypes: args,\n\t\treturnType: vec4f\n\t}),\n\tsideEffects: false\n});\nvar typegpu_default = tgpu_exports;\nconst UNIFORM_ENTRY_KEY = \"uniforms\";\nfunction sanitizeId(id) {\n\treturn id.replace(/[^a-zA-Z0-9_]/g, \"_\");\n}\nvar WGSL_RESERVED = new Set([\n\t\"alias\",\n\t\"break\",\n\t\"case\",\n\t\"const\",\n\t\"const_assert\",\n\t\"continue\",\n\t\"continuing\",\n\t\"default\",\n\t\"diagnostic\",\n\t\"discard\",\n\t\"else\",\n\t\"enable\",\n\t\"false\",\n\t\"fn\",\n\t\"for\",\n\t\"if\",\n\t\"let\",\n\t\"loop\",\n\t\"override\",\n\t\"requires\",\n\t\"return\",\n\t\"struct\",\n\t\"switch\",\n\t\"true\",\n\t\"var\",\n\t\"while\",\n\t\"NULL\",\n\t\"Self\",\n\t\"abstract\",\n\t\"active\",\n\t\"alignas\",\n\t\"alignof\",\n\t\"as\",\n\t\"asm\",\n\t\"asm_fragment\",\n\t\"async\",\n\t\"attribute\",\n\t\"auto\",\n\t\"await\",\n\t\"become\",\n\t\"cast\",\n\t\"catch\",\n\t\"class\",\n\t\"co_await\",\n\t\"co_return\",\n\t\"co_yield\",\n\t\"coherent\",\n\t\"column_major\",\n\t\"common\",\n\t\"compile\",\n\t\"compile_fragment\",\n\t\"concept\",\n\t\"const_cast\",\n\t\"consteval\",\n\t\"constexpr\",\n\t\"constinit\",\n\t\"crate\",\n\t\"debugger\",\n\t\"decltype\",\n\t\"delete\",\n\t\"demote\",\n\t\"demote_to_helper\",\n\t\"do\",\n\t\"dynamic_cast\",\n\t\"enum\",\n\t\"explicit\",\n\t\"export\",\n\t\"extends\",\n\t\"extern\",\n\t\"external\",\n\t\"fallthrough\",\n\t\"filter\",\n\t\"final\",\n\t\"finally\",\n\t\"friend\",\n\t\"from\",\n\t\"fxgroup\",\n\t\"get\",\n\t\"goto\",\n\t\"groupshared\",\n\t\"highp\",\n\t\"impl\",\n\t\"implements\",\n\t\"import\",\n\t\"inline\",\n\t\"instanceof\",\n\t\"interface\",\n\t\"layout\",\n\t\"lowp\",\n\t\"macro\",\n\t\"macro_rules\",\n\t\"match\",\n\t\"mediump\",\n\t\"meta\",\n\t\"mod\",\n\t\"module\",\n\t\"move\",\n\t\"mut\",\n\t\"mutable\",\n\t\"namespace\",\n\t\"new\",\n\t\"nil\",\n\t\"noexcept\",\n\t\"noinline\",\n\t\"nointerpolation\",\n\t\"non_coherent\",\n\t\"noncoherent\",\n\t\"noperspective\",\n\t\"null\",\n\t\"nullptr\",\n\t\"of\",\n\t\"operator\",\n\t\"package\",\n\t\"packoffset\",\n\t\"partition\",\n\t\"pass\",\n\t\"patch\",\n\t\"pixelfragment\",\n\t\"precise\",\n\t\"precision\",\n\t\"premerge\",\n\t\"priv\",\n\t\"protected\",\n\t\"pub\",\n\t\"public\",\n\t\"readonly\",\n\t\"ref\",\n\t\"regardless\",\n\t\"register\",\n\t\"reinterpret_cast\",\n\t\"require\",\n\t\"resource\",\n\t\"restrict\",\n\t\"self\",\n\t\"set\",\n\t\"shared\",\n\t\"sizeof\",\n\t\"smooth\",\n\t\"snorm\",\n\t\"static\",\n\t\"static_assert\",\n\t\"static_cast\",\n\t\"std\",\n\t\"subroutine\",\n\t\"super\",\n\t\"target\",\n\t\"template\",\n\t\"this\",\n\t\"thread_local\",\n\t\"throw\",\n\t\"trait\",\n\t\"try\",\n\t\"type\",\n\t\"typedef\",\n\t\"typeid\",\n\t\"typename\",\n\t\"typeof\",\n\t\"union\",\n\t\"unless\",\n\t\"unorm\",\n\t\"unsafe\",\n\t\"unsized\",\n\t\"use\",\n\t\"using\",\n\t\"varying\",\n\t\"virtual\",\n\t\"volatile\",\n\t\"wgsl\",\n\t\"where\",\n\t\"with\",\n\t\"writeonly\",\n\t\"yield\",\n\t\"sampler\",\n\t\"uniform\",\n\t\"storage\"\n]);\nfunction sanitizeFieldId(id) {\n\tconst s = sanitizeId(id);\n\treturn WGSL_RESERVED.has(s) ? `${s}_` : s;\n}\nfunction nodeKey(rawId) {\n\treturn `n_${sanitizeId(rawId)}`;\n}\nfunction componentsOf(kind) {\n\treturn kind === \"vec2\" ? 2 : kind === \"vec3\" ? 3 : 4;\n}\nfunction kindOfSchema(schema) {\n\tconst t = schema.type;\n\tif (t === \"vec2f\" || t === \"vec2i\" || t === \"vec2u\") return \"vec2\";\n\tif (t === \"vec3f\" || t === \"vec3i\" || t === \"vec3u\") return \"vec3\";\n\tif (t === \"vec4f\" || t === \"vec4i\" || t === \"vec4u\") return \"vec4\";\n\treturn \"scalar\";\n}\nfunction isArraySchema(schema) {\n\treturn schema.type === \"array\";\n}\nfunction inferFieldSchema(value) {\n\tif (typeof value === \"number\" || typeof value === \"boolean\") return f32;\n\tif (value \u0026\u0026 typeof value === \"object\") {\n\t\tconst kind = value.kind;\n\t\tif (typeof kind === \"string\") {\n\t\t\tif (kind.startsWith(\"vec2\")) return vec2f$1;\n\t\t\tif (kind.startsWith(\"vec3\")) return vec3f$1;\n\t\t\tif (kind.startsWith(\"vec4\")) return vec4f$1;\n\t\t}\n\t\tif (Array.isArray(value)) return arrayOf(f32, value.length || 1);\n\t\tconst v = value;\n\t\tif (\"w\" in v) return vec4f$1;\n\t\tif (\"z\" in v) return vec3f$1;\n\t\tif (\"x\" in v \u0026\u0026 \"y\" in v) return vec2f$1;\n\t}\n\tif (Array.isArray(value)) return arrayOf(f32, value.length || 1);\n\treturn f32;\n}\nfunction toComponents(input, n) {\n\tlet v = input;\n\tif (v \u0026\u0026 typeof v === \"object\" \u0026\u0026 \"data\" in v \u0026\u0026 !(\"x\" in v)) v = v.data;\n\tif (typeof v === \"number\") return new Array(n).fill(v);\n\tif (v instanceof VectorFieldView) return v.toArray().slice(0, n);\n\tif (Array.isArray(v)) return padTo(v, n);\n\tif (v \u0026\u0026 typeof v === \"object\") {\n\t\tconst o = v;\n\t\tif (\"x\" in o) {\n\t\t\tconst out = [o.x, o.y ?? 0];\n\t\t\tif (n \u003e= 3) out.push(o.z ?? 0);\n\t\t\tif (n \u003e= 4) out.push(o.w ?? 0);\n\t\t\treturn out.slice(0, n);\n\t\t}\n\t\tif (typeof o.length === \"number\") return padTo(Array.from(o), n);\n\t}\n\tthrow new Error(`[uniformStore] cannot coerce value to a ${n}-component vector: ${String(input)}`);\n}\nfunction padTo(arr, n) {\n\tconst out = arr.slice(0, n);\n\twhile (out.length \u003c n) out.push(0);\n\treturn out;\n}\nfunction toScalar(input) {\n\tlet v = input;\n\tif (v \u0026\u0026 typeof v === \"object\" \u0026\u0026 \"data\" in v) v = v.data;\n\tif (typeof v === \"number\") return v;\n\tif (typeof v === \"boolean\") return v ? 1 : -1;\n\tconst n = Number(v);\n\treturn Number.isFinite(n) ? n : 0;\n}\nvar warnedNonPackableTransforms = /* @__PURE__ */ new Set();\nfunction isPackableFieldValue(value) {\n\tif (value === null || value === void 0) return true;\n\tconst t = typeof value;\n\tif (t === \"number\" || t === \"boolean\" || t === \"string\") return true;\n\tif (t !== \"object\") return false;\n\tif (Array.isArray(value)) return true;\n\tconst o = value;\n\tif (typeof o.kind === \"string\" \u0026\u0026 o.kind.startsWith(\"vec\")) return true;\n\tif (\"x\" in o \u0026\u0026 \"y\" in o) return true;\n\tif (typeof o.length === \"number\") return true;\n\tif (\"data\" in o) return true;\n\treturn false;\n}\nvar VectorFieldView = class {\n\tconstructor(handle) {\n\t\tthis.handle = handle;\n\t}\n\tget n() {\n\t\treturn this.handle._componentCount;\n\t}\n\tcomponent(i) {\n\t\treturn this.handle._mirror[i] ?? 0;\n\t}\n\twrite(i, value) {\n\t\tthis.handle._mirror[i] = value;\n\t\tthis.handle._enqueue();\n\t}\n\tget x() {\n\t\treturn this.component(0);\n\t}\n\tset x(v) {\n\t\tthis.write(0, v);\n\t}\n\tget y() {\n\t\treturn this.component(1);\n\t}\n\tset y(v) {\n\t\tthis.write(1, v);\n\t}\n\tget z() {\n\t\treturn this.component(2);\n\t}\n\tset z(v) {\n\t\tthis.write(2, v);\n\t}\n\tget w() {\n\t\treturn this.component(3);\n\t}\n\tset w(v) {\n\t\tthis.write(3, v);\n\t}\n\tget r() {\n\t\treturn this.component(0);\n\t}\n\tset r(v) {\n\t\tthis.write(0, v);\n\t}\n\tget g() {\n\t\treturn this.component(1);\n\t}\n\tset g(v) {\n\t\tthis.write(1, v);\n\t}\n\tget b() {\n\t\treturn this.component(2);\n\t}\n\tset b(v) {\n\t\tthis.write(2, v);\n\t}\n\tget a() {\n\t\treturn this.component(3);\n\t}\n\tset a(v) {\n\t\tthis.write(3, v);\n\t}\n\tcopy(src) {\n\t\tconst c = toComponents(src, this.n);\n\t\tfor (let i = 0; i \u003c this.n; i++) this.handle._mirror[i] = c[i];\n\t\tthis.handle._enqueue();\n\t\treturn this;\n\t}\n\tset(...values) {\n\t\tfor (let i = 0; i \u003c this.n \u0026\u0026 i \u003c values.length; i++) this.handle._mirror[i] = values[i];\n\t\tthis.handle._enqueue();\n\t\treturn this;\n\t}\n\ttoArray() {\n\t\treturn this.handle._mirror.slice(0, this.n);\n\t}\n};\nvar FieldHandle = class {\n\tgpuPath;\n\taccessorPath;\n\ttransform;\n\tcpu;\n\tschema;\n\t_componentCount;\n\t_mirror;\n\t_raw;\n\t_kind;\n\t_view;\n\t_sink;\n\tconstructor(opts) {\n\t\tthis._sink = opts.sink;\n\t\tthis.gpuPath = opts.gpuPath;\n\t\tthis.accessorPath = `${opts.gpuPath[0]}.${opts.gpuPath[1]}`;\n\t\tthis.transform = opts.transform;\n\t\tthis.cpu = opts.cpu ?? false;\n\t\tthis.schema = opts.schema;\n\t\tthis._kind = this.cpu || !opts.schema ? \"scalar\" : kindOfSchema(opts.schema);\n\t\tthis._componentCount = this._kind === \"scalar\" ? 1 : componentsOf(this._kind);\n\t\tif (this.cpu) {\n\t\t\tthis._mirror = [];\n\t\t\tthis._raw = opts.initial;\n\t\t} else if (this._kind === \"scalar\") this._mirror = [toScalar(opts.initial)];\n\t\telse {\n\t\t\tthis._mirror = toComponents(opts.initial, this._componentCount);\n\t\t\tthis._view = new VectorFieldView(this);\n\t\t}\n\t}\n\t_enqueue() {\n\t\tif (!this.cpu) this._sink.markScalar(this);\n\t}\n\t_patchValue() {\n\t\treturn this._kind === \"scalar\" ? this._mirror[0] : this._mirror.slice(0, this._componentCount);\n\t}\n\tget value() {\n\t\tif (this.cpu) return this._raw;\n\t\tif (this._kind === \"scalar\") return this._mirror[0];\n\t\treturn this._view;\n\t}\n\tset value(next) {\n\t\tif (this.cpu) {\n\t\t\tthis._raw = next;\n\t\t\treturn;\n\t\t}\n\t\tif (this._kind === \"scalar\") this._mirror[0] = toScalar(next);\n\t\telse {\n\t\t\tconst c = toComponents(next, this._componentCount);\n\t\t\tfor (let i = 0; i \u003c this._componentCount; i++) this._mirror[i] = c[i];\n\t\t}\n\t\tthis._enqueue();\n\t}\n\tsetFromRaw(raw) {\n\t\tif (this.cpu) {\n\t\t\tthis._raw = raw;\n\t\t\treturn;\n\t\t}\n\t\tthis.value = this.transform ? this.transform(raw) : raw;\n\t}\n\tsetComponents(...values) {\n\t\tif (this.cpu || this._kind === \"scalar\") {\n\t\t\tif (values.length) this.value = values[0];\n\t\t\treturn;\n\t\t}\n\t\tfor (let i = 0; i \u003c this._componentCount \u0026\u0026 i \u003c values.length; i++) this._mirror[i] = values[i];\n\t\tthis._enqueue();\n\t}\n};\nvar ArrayFieldHandle = class {\n\tgpuPath;\n\taccessorPath;\n\ttransform;\n\tschema;\n\tlength;\n\telementKind;\n\t_mirror;\n\t_sink;\n\tconstructor(opts) {\n\t\tthis._sink = opts.sink;\n\t\tthis.gpuPath = opts.gpuPath;\n\t\tthis.accessorPath = `${opts.gpuPath[0]}.${opts.gpuPath[1]}`;\n\t\tthis.transform = opts.transform;\n\t\tthis.schema = opts.schema;\n\t\tthis.length = opts.schema.elementCount;\n\t\tthis.elementKind = kindOfSchema(opts.schema.elementType);\n\t\tthis._mirror = opts.initial ? opts.initial.slice() : new Array(this.flatLength).fill(0);\n\t}\n\tget flatLength() {\n\t\treturn this.length * (this.elementKind === \"scalar\" ? 1 : componentsOf(this.elementKind));\n\t}\n\tget array() {\n\t\treturn this._mirror;\n\t}\n\tset array(next) {\n\t\tif (next !== this._mirror) this._mirror = next.slice();\n\t\tthis._sink.markArray(this, \"all\");\n\t}\n\tsetElement(index, value) {\n\t\tthis._mirror[index] = value;\n\t\tthis._sink.markArray(this, index);\n\t}\n\tget componentsPerElement() {\n\t\treturn this.elementKind === \"scalar\" ? 1 : componentsOf(this.elementKind);\n\t}\n\t_wholeArray() {\n\t\tconst flat = this._mirror.slice(0, this.flatLength);\n\t\tconst comps = this.componentsPerElement;\n\t\tif (comps === 1) return flat;\n\t\tconst out = [];\n\t\tfor (let i = 0; i \u003c this.length; i++) out.push(flat.slice(i * comps, (i + 1) * comps));\n\t\treturn out;\n\t}\n\t_elementAt(index) {\n\t\treturn this._mirror[index];\n\t}\n\t_elementTuple(elemIndex) {\n\t\tconst comps = this.componentsPerElement;\n\t\treturn this._mirror.slice(elemIndex * comps, (elemIndex + 1) * comps);\n\t}\n};\nconst SystemUniforms = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\ttime: f32,\n\tdeltaTime: f32,\n\tframe: f32,\n\tviewportSize: vec2f$1,\n\tlogicalViewportSize: vec2f$1,\n\taspect: f32,\n\tpointer: vec2f$1,\n\tpointerActive: f32\n}), \"SystemUniforms\");\nvar SYSTEM_DEFAULTS = {\n\ttime: 0,\n\tdeltaTime: 0,\n\tframe: 0,\n\tviewportSize: [1, 1],\n\tlogicalViewportSize: [1, 1],\n\taspect: 1,\n\tpointer: [.5, .5],\n\tpointerActive: 0\n};\nfunction createUniformStore(root, options = {}) {\n\tconst systemSchema = options.systemSchema ?? SystemUniforms;\n\tconst systemInitial = {\n\t\t...SYSTEM_DEFAULTS,\n\t\t...options.systemInitial ?? {}\n\t};\n\tconst nodeStructs = /* @__PURE__ */ new Map();\n\tconst nodeHandles = /* @__PURE__ */ new Map();\n\tlet systemHandles = {};\n\tlet systemStruct = systemSchema;\n\tlet systemDefined = false;\n\tconst dirtyScalars = /* @__PURE__ */ new Set();\n\tconst dirtyArrays = /* @__PURE__ */ new Map();\n\tconst padFields = /* @__PURE__ */ new Map();\n\tconst sink = {\n\t\tmarkScalar(handle) {\n\t\t\tdirtyScalars.add(handle);\n\t\t},\n\t\tmarkArray(handle, index) {\n\t\t\tif (index === \"all\") {\n\t\t\t\tdirtyArrays.set(handle, \"all\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst cur = dirtyArrays.get(handle);\n\t\t\tif (cur === \"all\") return;\n\t\t\tif (cur) cur.add(index);\n\t\t\telse dirtyArrays.set(handle, new Set([index]));\n\t\t}\n\t};\n\tlet finalized;\n\tfunction buildHandles(key, fields) {\n\t\tconst handles = {};\n\t\tconst structProps = {};\n\t\tfor (const f of fields) {\n\t\t\tconst name = sanitizeFieldId(f.name);\n\t\t\tconst finalInitial = f.transform ? f.transform(f.initial) : f.initial;\n\t\t\tconst isCpu = f.cpu ?? typeof finalInitial === \"string\";\n\t\t\tif (f.transform \u0026\u0026 !isCpu \u0026\u0026 !isPackableFieldValue(finalInitial) \u0026\u0026 !warnedNonPackableTransforms.has(f.transform)) {\n\t\t\t\twarnedNonPackableTransforms.add(f.transform);\n\t\t\t\tconsole.warn(`[gpu] prop transform for \"${f.name}\" returned a non-packable value — the uniform field will be NaN. A prop transform must return a number, boolean, vector, or array (or a string for cpu-only props).`, finalInitial);\n\t\t\t}\n\t\t\tif (isCpu) {\n\t\t\t\thandles[f.name] = new FieldHandle({\n\t\t\t\t\tsink,\n\t\t\t\t\tgpuPath: [key, name],\n\t\t\t\t\tinitial: finalInitial,\n\t\t\t\t\ttransform: f.transform,\n\t\t\t\t\tcpu: true\n\t\t\t\t});\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst forInfer = finalInitial \u0026\u0026 typeof finalInitial === \"object\" \u0026\u0026 \"data\" in finalInitial ? finalInitial.data : finalInitial;\n\t\t\tconst schema = f.schema ?? inferFieldSchema(forInfer);\n\t\t\tstructProps[name] = schema;\n\t\t\tif (isArraySchema(schema)) {\n\t\t\t\tconst h = new ArrayFieldHandle({\n\t\t\t\t\tsink,\n\t\t\t\t\tgpuPath: [key, name],\n\t\t\t\t\tschema,\n\t\t\t\t\tinitial: f.initial,\n\t\t\t\t\ttransform: f.transform\n\t\t\t\t});\n\t\t\t\thandles[f.name] = h;\n\t\t\t} else {\n\t\t\t\tconst h = new FieldHandle({\n\t\t\t\t\tsink,\n\t\t\t\t\tgpuPath: [key, name],\n\t\t\t\t\tschema,\n\t\t\t\t\tinitial: finalInitial,\n\t\t\t\t\ttransform: f.transform\n\t\t\t\t});\n\t\t\t\thandles[f.name] = h;\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\thandles,\n\t\t\tstruct: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct(structProps), \"struct\")\n\t\t};\n\t}\n\tfunction assertNotFinalized() {\n\t\tif (finalized) throw new Error(\"[uniformStore] cannot register fields after finalize()\");\n\t}\n\tfunction fullTree() {\n\t\tconst tree = {};\n\t\tfor (const [key, handles] of nodeHandles) tree[key] = nodeSubtree(handles, key);\n\t\ttree._sys = nodeSubtree(systemHandles, \"_sys\");\n\t\treturn tree;\n\t}\n\tfunction nodeSubtree(handles, key) {\n\t\tconst sub$2 = {};\n\t\tfor (const h of Object.values(handles)) if (h instanceof ArrayFieldHandle) sub$2[h.gpuPath[1]] = h._wholeArray();\n\t\telse if (!h.cpu) sub$2[h.gpuPath[1]] = h._patchValue();\n\t\tif (key) for (const pad of padFields.get(key) ?? []) sub$2[pad] = 0;\n\t\treturn sub$2;\n\t}\n\treturn {\n\t\tget schema() {\n\t\t\treturn finalized?.schema;\n\t\t},\n\t\tget layout() {\n\t\t\treturn finalized?.layout;\n\t\t},\n\t\tget buffer() {\n\t\t\treturn finalized?.buffer;\n\t\t},\n\t\tget bindGroup() {\n\t\t\treturn finalized?.bindGroup;\n\t\t},\n\t\tget systemHandles() {\n\t\t\treturn systemHandles;\n\t\t},\n\t\tdefineNode(rawId, fields) {\n\t\t\tassertNotFinalized();\n\t\t\tconst key = nodeKey(rawId);\n\t\t\tconst { handles, struct: struct$1 } = buildHandles(key, fields);\n\t\t\tnodeStructs.set(key, struct$1);\n\t\t\tnodeHandles.set(key, handles);\n\t\t\treturn handles;\n\t\t},\n\t\tdefineSystem(fields) {\n\t\t\tassertNotFinalized();\n\t\t\tif (fields \u0026\u0026 fields.length) {\n\t\t\t\tconst built = buildHandles(\"_sys\", fields);\n\t\t\t\tsystemHandles = built.handles;\n\t\t\t\tsystemStruct = built.struct;\n\t\t\t} else {\n\t\t\t\tconst built = buildHandles(\"_sys\", Object.entries(systemSchema.propTypes).map(([name, schema]) =\u003e ({\n\t\t\t\t\tname,\n\t\t\t\t\tschema,\n\t\t\t\t\tinitial: systemInitial[name] ?? 0\n\t\t\t\t})));\n\t\t\t\tsystemHandles = built.handles;\n\t\t\t\tsystemStruct = built.struct;\n\t\t\t}\n\t\t\tsystemDefined = true;\n\t\t\treturn systemHandles;\n\t\t},\n\t\tfinalize() {\n\t\t\tif (finalized) return finalized;\n\t\t\tif (!systemDefined) this.defineSystem();\n\t\t\tconst padTo16 = (key, struct$1) =\u003e {\n\t\t\t\tif (Object.keys(struct$1.propTypes).length === 0) {\n\t\t\t\t\tconst names = [\n\t\t\t\t\t\t\"_pad0\",\n\t\t\t\t\t\t\"_pad1\",\n\t\t\t\t\t\t\"_pad2\",\n\t\t\t\t\t\t\"_pad3\"\n\t\t\t\t\t];\n\t\t\t\t\tpadFields.set(key, names);\n\t\t\t\t\treturn struct(Object.fromEntries(names.map((n) =\u003e [n, f32])));\n\t\t\t\t}\n\t\t\t\tlet padded = struct$1;\n\t\t\t\tconst padNames = [];\n\t\t\t\twhile (PUBLIC_sizeOf(padded) % 16 !== 0) {\n\t\t\t\t\tlet name = `_pad${padNames.length}`;\n\t\t\t\t\twhile (name in struct$1.propTypes) name = `_${name}`;\n\t\t\t\t\tpadNames.push(name);\n\t\t\t\t\tconst props = { ...struct$1.propTypes };\n\t\t\t\t\tfor (const n of padNames) props[n] = f32;\n\t\t\t\t\tpadded = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct(props), \"padded\");\n\t\t\t\t}\n\t\t\t\tif (padNames.length) padFields.set(key, padNames);\n\t\t\t\treturn padded;\n\t\t\t};\n\t\t\tconst combinedProps = {};\n\t\t\tfor (const [key, struct$1] of nodeStructs) combinedProps[key] = padTo16(key, struct$1);\n\t\t\tcombinedProps._sys = padTo16(\"_sys\", systemStruct);\n\t\t\tconst combined = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct(combinedProps), \"combined\");\n\t\t\tconst combinedSize = PUBLIC_sizeOf(combined);\n\t\t\tconst bindingCap = root.device?.limits?.maxUniformBufferBindingSize;\n\t\t\tconst cap = typeof bindingCap === \"number\" \u0026\u0026 bindingCap \u003e 0 ? bindingCap : 65536;\n\t\t\tif (combinedSize \u003e cap) throw new GpuUnavailableError(\"limit-exceeded\", `[gpu] this composition needs ${combinedSize} bytes of uniform data across ${nodeStructs.size} nodes, but the device caps a uniform binding at ${cap} bytes. Reduce the number of layers.`);\n\t\t\tconst buffer$1 = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createBuffer(combined).$usage(\"uniform\"), \"buffer\");\n\t\t\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({ [UNIFORM_ENTRY_KEY]: { uniform: combined } }), \"layout\");\n\t\t\tfinalized = {\n\t\t\t\tschema: combined,\n\t\t\t\tlayout,\n\t\t\t\tbuffer: buffer$1,\n\t\t\t\tbindGroup: root.createBindGroup(layout, { [UNIFORM_ENTRY_KEY]: buffer$1 }),\n\t\t\t\tuniformEntryKey: UNIFORM_ENTRY_KEY\n\t\t\t};\n\t\t\tthis.writeAll();\n\t\t\treturn finalized;\n\t\t},\n\t\tflush() {\n\t\t\tif (!finalized) return;\n\t\t\tif (dirtyScalars.size === 0 \u0026\u0026 dirtyArrays.size === 0) return;\n\t\t\tconst patch = {};\n\t\t\tconst bucket = (key) =\u003e patch[key] ??= {};\n\t\t\tfor (const h of dirtyScalars) bucket(h.gpuPath[0])[h.gpuPath[1]] = h._patchValue();\n\t\t\tfor (const [h, idxs] of dirtyArrays) {\n\t\t\t\tconst node = bucket(h.gpuPath[0]);\n\t\t\t\tif (idxs === \"all\") node[h.gpuPath[1]] = h._wholeArray();\n\t\t\t\telse if (h.componentsPerElement === 1) {\n\t\t\t\t\tconst sparse = {};\n\t\t\t\t\tfor (const i of idxs) sparse[i] = h._elementAt(i);\n\t\t\t\t\tnode[h.gpuPath[1]] = sparse;\n\t\t\t\t} else {\n\t\t\t\t\tconst comps = h.componentsPerElement;\n\t\t\t\t\tconst sparse = {};\n\t\t\t\t\tfor (const i of idxs) {\n\t\t\t\t\t\tconst el = Math.floor(i / comps);\n\t\t\t\t\t\tsparse[el] = h._elementTuple(el);\n\t\t\t\t\t}\n\t\t\t\t\tnode[h.gpuPath[1]] = sparse;\n\t\t\t\t}\n\t\t\t}\n\t\t\tfinalized.buffer.patch(patch);\n\t\t\tdirtyScalars.clear();\n\t\t\tdirtyArrays.clear();\n\t\t},\n\t\twriteAll() {\n\t\t\tif (!finalized) return;\n\t\t\tfinalized.buffer.write(fullTree());\n\t\t\tdirtyScalars.clear();\n\t\t\tdirtyArrays.clear();\n\t\t},\n\t\tgpuAccessor(handle, layoutVar = \"layout\") {\n\t\t\treturn `${layoutVar}.$.${UNIFORM_ENTRY_KEY}.${handle.accessorPath}`;\n\t\t},\n\t\tdestroy() {\n\t\t\tfinalized?.buffer.destroy?.();\n\t\t\tfinalized = void 0;\n\t\t\tnodeStructs.clear();\n\t\t\tnodeHandles.clear();\n\t\t\tdirtyScalars.clear();\n\t\t\tdirtyArrays.clear();\n\t\t\tpadFields.clear();\n\t\t}\n\t};\n}\nfunction updateFieldValue(handle, rawValue) {\n\tif (handle instanceof ArrayFieldHandle) {\n\t\tif (Array.isArray(rawValue)) handle.array = rawValue;\n\t\treturn;\n\t}\n\thandle.setFromRaw(rawValue);\n}\nconst DEG_TO_RAD$1 = Math.PI / 180;\n180 / Math.PI;\nconst PI$1 = Math.PI;\nconst TAU = Math.PI * 2;\nconst TWO_PI$1 = TAU;\nconst HALF_PI = Math.PI / 2;\nconst SQRT3 = Math.sqrt(3);\nconst GOLDEN = 2.3999632297286535;\nconst mxRotl32 = typegpu_default.fn([u32, i32], u32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, k) =\u003e {\n\t\"use gpu\";\n\treturn x \u003c\u003c u32(k) | x \u003e\u003e u32(__tsover_sub(i32(32), k));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"k\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"x\",\n\t\t\t\t\"\u003c\u003c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[\"k\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"|\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"x\",\n\t\t\t\t\"\u003e\u003e\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"32\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"d.i32\": () =\u003e i32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxBjfinal = typegpu_default.fn([\n\tu32,\n\tu32,\n\tu32\n], u32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((a0, b0, c0) =\u003e {\n\t\"use gpu\";\n\tlet a = a0;\n\tlet b = b0;\n\tlet c = c0;\n\tc = c ^ b;\n\tc = __tsover_sub(c, mxRotl32(b, i32(14)));\n\ta = a ^ c;\n\ta = __tsover_sub(a, mxRotl32(c, i32(11)));\n\tb = b ^ a;\n\tb = __tsover_sub(b, mxRotl32(a, i32(25)));\n\tc = c ^ b;\n\tc = __tsover_sub(c, mxRotl32(b, i32(16)));\n\ta = a ^ c;\n\ta = __tsover_sub(a, mxRotl32(c, i32(4)));\n\tb = b ^ a;\n\tb = __tsover_sub(b, mxRotl32(a, i32(14)));\n\tc = c ^ b;\n\tc = __tsover_sub(c, mxRotl32(b, i32(24)));\n\treturn c;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c0\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"a\",\n\t\t\t\t\"a0\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"b\",\n\t\t\t\t\"b0\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"c\",\n\t\t\t\t\"c0\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"b\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"14\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"11\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"a\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"25\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"b\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"16\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"a\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"14\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"b\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"24\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, \"c\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"mxRotl32\": () =\u003e mxRotl32,\n\t\t\"d.i32\": () =\u003e i32\n\t}\n}) \u0026\u0026 $.f)({}));\nvar DEADBEEF = 3735928559;\nconst mxHashInt1 = typegpu_default.fn([i32, i32], u32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y) =\u003e {\n\t\"use gpu\";\n\tconst len = u32(2);\n\tconst seed = __tsover_add(__tsover_add(u32(DEADBEEF), len \u003c\u003c u32(2)), u32(13));\n\treturn mxBjfinal(__tsover_add(seed, u32(x)), __tsover_add(seed, u32(y)), seed);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"y\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[\"DEADBEEF\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\t\"\u003c\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"13\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"y\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"mxBjfinal\",\n\t\t\t\t[\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"seed\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"DEADBEEF\": () =\u003e DEADBEEF,\n\t\t\"mxBjfinal\": () =\u003e mxBjfinal\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxHashInt2 = typegpu_default.fn([\n\ti32,\n\ti32,\n\ti32\n], u32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y, z) =\u003e {\n\t\"use gpu\";\n\tconst len = u32(3);\n\tconst seed = __tsover_add(__tsover_add(u32(DEADBEEF), len \u003c\u003c u32(2)), u32(13));\n\treturn mxBjfinal(__tsover_add(seed, u32(x)), __tsover_add(seed, u32(y)), __tsover_add(seed, u32(z)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"z\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[5, \"3\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[\"DEADBEEF\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\t\"\u003c\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"13\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"y\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"z\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"mxBjfinal\",\n\t\t\t\t[\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"DEADBEEF\": () =\u003e DEADBEEF,\n\t\t\"mxBjfinal\": () =\u003e mxBjfinal\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxHashInt3 = typegpu_default.fn([\n\ti32,\n\ti32,\n\ti32,\n\ti32\n], u32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y, z, xx) =\u003e {\n\t\"use gpu\";\n\tconst len = u32(4);\n\tconst seed = __tsover_add(__tsover_add(u32(DEADBEEF), len \u003c\u003c u32(2)), u32(13));\n\tlet a = __tsover_add(seed, u32(x));\n\tlet b = __tsover_add(seed, u32(y));\n\tlet c = __tsover_add(seed, u32(z));\n\ta = __tsover_sub(a, c);\n\ta = a ^ mxRotl32(c, i32(4));\n\tc = __tsover_add(c, b);\n\tb = __tsover_sub(b, a);\n\tb = b ^ mxRotl32(a, i32(6));\n\ta = __tsover_add(a, c);\n\tc = __tsover_sub(c, b);\n\tc = c ^ mxRotl32(b, i32(8));\n\tb = __tsover_add(b, a);\n\ta = __tsover_sub(a, c);\n\ta = a ^ mxRotl32(c, i32(16));\n\tc = __tsover_add(c, b);\n\tb = __tsover_sub(b, a);\n\tb = b ^ mxRotl32(a, i32(19));\n\ta = __tsover_add(a, c);\n\tc = __tsover_sub(c, b);\n\tc = c ^ mxRotl32(b, i32(4));\n\tb = __tsover_add(b, a);\n\ta = __tsover_add(a, u32(xx));\n\treturn mxBjfinal(a, b, c);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"z\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"xx\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[\"DEADBEEF\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\t\"\u003c\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"13\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"y\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"z\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"a\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"6\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"b\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"16\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"a\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"19\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxRotl32\",\n\t\t\t\t\t\t[\"b\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"b\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"a\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"xx\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"mxBjfinal\",\n\t\t\t\t[\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"DEADBEEF\": () =\u003e DEADBEEF,\n\t\t\"mxRotl32\": () =\u003e mxRotl32,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"mxBjfinal\": () =\u003e mxBjfinal\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxBitsTo01 = typegpu_default.fn([u32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((bits) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_div(f32(bits), f32(4294967295));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"bits\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.f32\",\n\t\t\t\t[\"bits\"]\n\t\t\t],\n\t\t\t\"/\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.f32\",\n\t\t\t\t[[5, \"4294967295\"]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.f32\": () =\u003e f32 }\n}) \u0026\u0026 $.f)({}));\nconst mxFade = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(__tsover_mul(__tsover_mul(t, t), t), __tsover_add(__tsover_mul(t, __tsover_sub(__tsover_mul(t, 6), 15)), 10));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"t\"\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"6\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"15\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"10\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst mxGradientFloat2 = typegpu_default.fn([\n\tu32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((hash, x, y) =\u003e {\n\t\"use gpu\";\n\tconst h = hash \u0026 u32(7);\n\tconst u = select(y, x, h \u003c u32(4));\n\tconst v = __tsover_mul(2, select(x, y, h \u003c u32(4)));\n\tconst uu = select(u, -u, (h \u0026 u32(1)) !== u32(0));\n\tconst vv = select(v, -v, (h \u0026 u32(2)) !== u32(0));\n\treturn __tsover_add(uu, vv);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hash\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hash\",\n\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"7\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uu\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"uu\",\n\t\t\t\t\"+\",\n\t\t\t\t\"vv\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxGradientFloat3 = typegpu_default.fn([\n\tu32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((hash, x, y, z) =\u003e {\n\t\"use gpu\";\n\tconst h = hash \u0026 u32(15);\n\tconst u = select(y, x, h \u003c u32(8));\n\tconst v = select(select(z, x, h === u32(12) || h === u32(14)), y, h \u003c u32(4));\n\tconst uu = select(u, -u, (h \u0026 u32(1)) !== u32(0));\n\tconst vv = select(v, -v, (h \u0026 u32(2)) !== u32(0));\n\treturn __tsover_add(uu, vv);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hash\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"z\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hash\",\n\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"15\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"12\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"14\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"inner\",\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uu\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"uu\",\n\t\t\t\t\"+\",\n\t\t\t\t\"vv\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxGradientScale2d = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(.6616, v);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"v\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"0.6616\"],\n\t\t\t\"*\",\n\t\t\t\"v\"\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst mxGradientScale3d = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(.982, v);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"v\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"0.982\"],\n\t\t\t\"*\",\n\t\t\t\"v\"\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst mxBilerp = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v0, v1, v2, v3, s, t) =\u003e {\n\t\"use gpu\";\n\tconst s1 = __tsover_sub(1, s);\n\treturn __tsover_add(__tsover_mul(__tsover_sub(1, t), __tsover_add(__tsover_mul(v0, s1), __tsover_mul(v1, s))), __tsover_mul(t, __tsover_add(__tsover_mul(v2, s1), __tsover_mul(v3, s))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"s1\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t\"s\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"t\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v0\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"t\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v2\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst mxTrilerp = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v0, v1, v2, v3, v4, v5, v6, v7, s, t, r) =\u003e {\n\t\"use gpu\";\n\tconst s1 = __tsover_sub(1, s);\n\tconst t1 = __tsover_sub(1, t);\n\tconst r1 = __tsover_sub(1, r);\n\treturn __tsover_add(__tsover_mul(r1, __tsover_add(__tsover_mul(t1, __tsover_add(__tsover_mul(v0, s1), __tsover_mul(v1, s))), __tsover_mul(t, __tsover_add(__tsover_mul(v2, s1), __tsover_mul(v3, s))))), __tsover_mul(r, __tsover_add(__tsover_mul(t1, __tsover_add(__tsover_mul(v4, s1), __tsover_mul(v5, s))), __tsover_mul(t, __tsover_add(__tsover_mul(v6, s1), __tsover_mul(v7, s))))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v4\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v5\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v6\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v7\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"s\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r1\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v0\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v1\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v5\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v6\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v7\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst mxPerlinNoiseFloat2 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst X = i32(floor(p$1.x));\n\tconst Y = i32(floor(p$1.y));\n\tconst fx = __tsover_sub(p$1.x, f32(X));\n\tconst fy = __tsover_sub(p$1.y, f32(Y));\n\tconst u = mxFade(fx);\n\tconst v = mxFade(fy);\n\treturn mxGradientScale2d(mxBilerp(mxGradientFloat2(mxHashInt1(X, Y), fx, fy), mxGradientFloat2(mxHashInt1(__tsover_add(X, i32(1)), Y), __tsover_sub(fx, 1), fy), mxGradientFloat2(mxHashInt1(X, __tsover_add(Y, i32(1))), fx, __tsover_sub(fy, 1)), mxGradientFloat2(mxHashInt1(__tsover_add(X, i32(1)), __tsover_add(Y, i32(1))), __tsover_sub(fx, 1), __tsover_sub(fy, 1)), u, v));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"X\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Y\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"X\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"Y\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxFade\",\n\t\t\t\t\t[\"fx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxFade\",\n\t\t\t\t\t[\"fy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxBilerp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt1\",\n\t\t\t\t\t\t\t\t\t[\"X\", \"Y\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt1\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], \"Y\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt1\",\n\t\t\t\t\t\t\t\t\t[\"X\", [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt1\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"v\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"mxGradientScale2d\",\n\t\t\t\t[\"result\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"mxFade\": () =\u003e mxFade,\n\t\t\"mxBilerp\": () =\u003e mxBilerp,\n\t\t\"mxGradientFloat2\": () =\u003e mxGradientFloat2,\n\t\t\"mxHashInt1\": () =\u003e mxHashInt1,\n\t\t\"mxGradientScale2d\": () =\u003e mxGradientScale2d\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxPerlinNoiseFloat3 = typegpu_default.fn([vec3f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst X = i32(floor(p$1.x));\n\tconst Y = i32(floor(p$1.y));\n\tconst Z = i32(floor(p$1.z));\n\tconst fx = __tsover_sub(p$1.x, f32(X));\n\tconst fy = __tsover_sub(p$1.y, f32(Y));\n\tconst fz = __tsover_sub(p$1.z, f32(Z));\n\tconst u = mxFade(fx);\n\tconst v = mxFade(fy);\n\tconst w = mxFade(fz);\n\treturn mxGradientScale3d(mxTrilerp(mxGradientFloat3(mxHashInt2(X, Y, Z), fx, fy, fz), mxGradientFloat3(mxHashInt2(__tsover_add(X, i32(1)), Y, Z), __tsover_sub(fx, 1), fy, fz), mxGradientFloat3(mxHashInt2(X, __tsover_add(Y, i32(1)), Z), fx, __tsover_sub(fy, 1), fz), mxGradientFloat3(mxHashInt2(__tsover_add(X, i32(1)), __tsover_add(Y, i32(1)), Z), __tsover_sub(fx, 1), __tsover_sub(fy, 1), fz), mxGradientFloat3(mxHashInt2(X, Y, __tsover_add(Z, i32(1))), fx, fy, __tsover_sub(fz, 1)), mxGradientFloat3(mxHashInt2(__tsover_add(X, i32(1)), Y, __tsover_add(Z, i32(1))), __tsover_sub(fx, 1), fy, __tsover_sub(fz, 1)), mxGradientFloat3(mxHashInt2(X, __tsover_add(Y, i32(1)), __tsover_add(Z, i32(1))), fx, __tsover_sub(fy, 1), __tsover_sub(fz, 1)), mxGradientFloat3(mxHashInt2(__tsover_add(X, i32(1)), __tsover_add(Y, i32(1)), __tsover_add(Z, i32(1))), __tsover_sub(fx, 1), __tsover_sub(fy, 1), __tsover_sub(fz, 1)), u, v, w));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"X\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Y\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Z\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"X\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"Y\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"Z\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxFade\",\n\t\t\t\t\t[\"fx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxFade\",\n\t\t\t\t\t[\"fy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxFade\",\n\t\t\t\t\t[\"fz\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxTrilerp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\"Z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"fz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\"Z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"fz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"Z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"Z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxGradientFloat3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"Z\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"mxGradientScale3d\",\n\t\t\t\t[\"result\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"mxFade\": () =\u003e mxFade,\n\t\t\"mxTrilerp\": () =\u003e mxTrilerp,\n\t\t\"mxGradientFloat3\": () =\u003e mxGradientFloat3,\n\t\t\"mxHashInt2\": () =\u003e mxHashInt2,\n\t\t\"mxGradientScale3d\": () =\u003e mxGradientScale3d\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxCellNoiseVec3_2d = typegpu_default.fn([vec2f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst ix = i32(floor(p$1.x));\n\tconst iy = i32(floor(p$1.y));\n\treturn vec3f$1(mxBitsTo01(mxHashInt2(ix, iy, i32(0))), mxBitsTo01(mxHashInt2(ix, iy, i32(1))), mxBitsTo01(mxHashInt2(ix, iy, i32(2))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ix\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxBitsTo01\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxBitsTo01\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxBitsTo01\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxHashInt2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"mxBitsTo01\": () =\u003e mxBitsTo01,\n\t\t\"mxHashInt2\": () =\u003e mxHashInt2\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxCellNoiseVec3_3d = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst ix = i32(floor(p$1.x));\n\tconst iy = i32(floor(p$1.y));\n\tconst iz = i32(floor(p$1.z));\n\treturn vec3f$1(mxBitsTo01(mxHashInt3(ix, iy, iz, i32(0))), mxBitsTo01(mxHashInt3(ix, iy, iz, i32(1))), mxBitsTo01(mxHashInt3(ix, iy, iz, i32(2))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ix\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iz\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxBitsTo01\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxHashInt3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\"iz\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxBitsTo01\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxHashInt3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\"iz\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxBitsTo01\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxHashInt3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\"iz\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"mxBitsTo01\": () =\u003e mxBitsTo01,\n\t\t\"mxHashInt3\": () =\u003e mxHashInt3\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxWorleyDistance2d = typegpu_default.fn([\n\tvec2f$1,\n\ti32,\n\ti32,\n\ti32,\n\ti32,\n\tf32,\n\ti32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, x, y, xoff, yoff, jitter, metric) =\u003e {\n\t\"use gpu\";\n\tconst tmp = mxCellNoiseVec3_2d(vec2f$1(f32(__tsover_add(x, xoff)), f32(__tsover_add(y, yoff))));\n\tlet off = vec2f$1(tmp.x, tmp.y);\n\toff = add(mul(sub(off, .5), jitter), .5);\n\tconst diff = sub(add(vec2f$1(f32(x), f32(y)), off), p$1);\n\tif (metric === i32(2)) return __tsover_add(abs(diff.x), abs(diff.y));\n\tif (metric === i32(3)) return max(abs(diff.x), abs(diff.y));\n\treturn dot(diff, diff);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"xoff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"yoff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"jitter\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"metric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tmp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxCellNoiseVec3_2d\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"xoff\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"yoff\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"off\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tmp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tmp\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"off\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.add\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mul\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t[\"off\", [5, \"0.5\"]]\n\t\t\t\t\t\t], \"jitter\"]\n\t\t\t\t\t], [5, \"0.5\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellpos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.add\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"y\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], \"off\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diff\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t[\"cellpos\", \"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"metric\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"metric\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[5, \"3\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]]]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[\"diff\", \"diff\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"mxCellNoiseVec3_2d\": () =\u003e mxCellNoiseVec3_2d,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.add\": () =\u003e add,\n\t\t\"std.mul\": () =\u003e mul,\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dot\": () =\u003e dot\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxWorleyDistance3d = typegpu_default.fn([\n\tvec3f$1,\n\ti32,\n\ti32,\n\ti32,\n\ti32,\n\ti32,\n\ti32,\n\tf32,\n\ti32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, x, y, z, xoff, yoff, zoff, jitter, metric) =\u003e {\n\t\"use gpu\";\n\tlet off = mxCellNoiseVec3_3d(vec3f$1(f32(__tsover_add(x, xoff)), f32(__tsover_add(y, yoff)), f32(__tsover_add(z, zoff))));\n\toff = add(mul(sub(off, .5), jitter), .5);\n\tconst diff = sub(add(vec3f$1(f32(x), f32(y), f32(z)), off), p$1);\n\tif (metric === i32(2)) return __tsover_add(__tsover_add(abs(diff.x), abs(diff.y)), abs(diff.z));\n\tif (metric === i32(3)) return max(max(abs(diff.x), abs(diff.y)), abs(diff.z));\n\treturn dot(diff, diff);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"z\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"xoff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"yoff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"zoff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"jitter\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"metric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"off\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxCellNoiseVec3_3d\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"xoff\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"yoff\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"zoff\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"off\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.add\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mul\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t[\"off\", [5, \"0.5\"]]\n\t\t\t\t\t\t], \"jitter\"]\n\t\t\t\t\t], [5, \"0.5\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellpos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.add\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"y\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"z\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"off\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diff\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t[\"cellpos\", \"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"metric\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"metric\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[5, \"3\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]]]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[\"diff\", \"diff\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"mxCellNoiseVec3_3d\": () =\u003e mxCellNoiseVec3_3d,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.add\": () =\u003e add,\n\t\t\"std.mul\": () =\u003e mul,\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dot\": () =\u003e dot\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxWorleyNoiseFloat2 = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\ti32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, jitter, metric) =\u003e {\n\t\"use gpu\";\n\tconst X = i32(floor(p$1.x));\n\tconst Y = i32(floor(p$1.y));\n\tconst localpos = vec2f$1(__tsover_sub(p$1.x, f32(X)), __tsover_sub(p$1.y, f32(Y)));\n\tlet sqdist = f32(1e6);\n\tfor (let x = -1; x \u003c= 1; x++) for (let y = -1; y \u003c= 1; y++) {\n\t\tconst dist = mxWorleyDistance2d(localpos, x, y, X, Y, jitter, metric);\n\t\tsqdist = min(sqdist, dist);\n\t}\n\tif (metric === i32(0)) sqdist = sqrt(sqdist);\n\treturn sqdist;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"jitter\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"metric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"X\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Y\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localpos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"X\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"Y\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"sqdist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1000000\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mxWorleyDistance2d\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"localpos\",\n\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\"jitter\",\n\t\t\t\t\t\t\t\t\"metric\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"sqdist\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[\"sqdist\", \"dist\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"metric\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t2,\n\t\t\t\t\t\"sqdist\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[\"sqdist\"]\n\t\t\t\t\t]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[10, \"sqdist\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"mxWorleyDistance2d\": () =\u003e mxWorleyDistance2d,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxWorleyNoiseFloat3 = typegpu_default.fn([\n\tvec3f$1,\n\tf32,\n\ti32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, jitter, metric) =\u003e {\n\t\"use gpu\";\n\tconst X = i32(floor(p$1.x));\n\tconst Y = i32(floor(p$1.y));\n\tconst Z = i32(floor(p$1.z));\n\tconst localpos = vec3f$1(__tsover_sub(p$1.x, f32(X)), __tsover_sub(p$1.y, f32(Y)), __tsover_sub(p$1.z, f32(Z)));\n\tlet sqdist = f32(1e6);\n\tfor (let x = -1; x \u003c= 1; x++) for (let y = -1; y \u003c= 1; y++) for (let z = -1; z \u003c= 1; z++) {\n\t\tconst dist = mxWorleyDistance3d(localpos, x, y, z, X, Y, Z, jitter, metric);\n\t\tsqdist = min(sqdist, dist);\n\t}\n\tif (metric === i32(0)) sqdist = sqrt(sqdist);\n\treturn sqdist;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"jitter\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"metric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"X\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Y\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Z\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localpos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"X\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"Y\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"Z\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"sqdist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1000000\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"mxWorleyDistance3d\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"localpos\",\n\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\t\t\"Z\",\n\t\t\t\t\t\t\t\t\t\"jitter\",\n\t\t\t\t\t\t\t\t\t\"metric\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"sqdist\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[\"sqdist\", \"dist\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t]]]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"metric\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t2,\n\t\t\t\t\t\"sqdist\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[\"sqdist\"]\n\t\t\t\t\t]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[10, \"sqdist\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"mxWorleyDistance3d\": () =\u003e mxWorleyDistance3d,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mxNoiseFloat2 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\treturn mxPerlinNoiseFloat2(p$1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"mxPerlinNoiseFloat2\",\n\t\t\t[\"p\"]\n\t\t]]]]\n\t},\n\texternals: { \"mxPerlinNoiseFloat2\": () =\u003e mxPerlinNoiseFloat2 }\n}) \u0026\u0026 $.f)({}));\nconst mxNoiseFloat3 = typegpu_default.fn([vec3f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\treturn mxPerlinNoiseFloat3(p$1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"mxPerlinNoiseFloat3\",\n\t\t\t[\"p\"]\n\t\t]]]]\n\t},\n\texternals: { \"mxPerlinNoiseFloat3\": () =\u003e mxPerlinNoiseFloat3 }\n}) \u0026\u0026 $.f)({}));\nconst mxWorleyNoiseFloat2Pub = typegpu_default.fn([vec2f$1, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, jitter) =\u003e {\n\t\"use gpu\";\n\treturn mxWorleyNoiseFloat2(p$1, jitter, i32(1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"jitter\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"mxWorleyNoiseFloat2\",\n\t\t\t[\n\t\t\t\t\"p\",\n\t\t\t\t\"jitter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"mxWorleyNoiseFloat2\": () =\u003e mxWorleyNoiseFloat2,\n\t\t\"d.i32\": () =\u003e i32\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([vec3f$1, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, jitter) =\u003e {\n\t\"use gpu\";\n\treturn mxWorleyNoiseFloat3(p$1, jitter, i32(1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"jitter\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"mxWorleyNoiseFloat3\",\n\t\t\t[\n\t\t\t\t\"p\",\n\t\t\t\t\"jitter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"mxWorleyNoiseFloat3\": () =\u003e mxWorleyNoiseFloat3,\n\t\t\"d.i32\": () =\u003e i32\n\t}\n}) \u0026\u0026 $.f)({}));\nvar floatBitsToUint1 = typegpu_default.fn([f32], u32)(\"(x: f32) -\u003e u32 { return bitcast\u003cu32\u003e(x); }\");\nvar floatBitsToUint2 = typegpu_default.fn([vec2f$1], vec2u$1)(\"(v: vec2f) -\u003e vec2u { return bitcast\u003cvec2u\u003e(v); }\");\nvar floatBitsToUint3 = typegpu_default.fn([vec3f$1], vec3u$1)(\"(v: vec3f) -\u003e vec3u { return bitcast\u003cvec3u\u003e(v); }\");\nvar U32 = f32(4294967295);\nconst hash11 = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst u = floatBitsToUint1(__tsover_mul(p$1, 3141592653));\n\treturn __tsover_div(f32(__tsover_mul(__tsover_mul(u, u), u32(3141592653))), U32);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"u\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"floatBitsToUint1\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"3141592653\"]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.f32\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"u\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"3141592653\"]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"/\",\n\t\t\t\"U32\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"floatBitsToUint1\": () =\u003e floatBitsToUint1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"U32\": () =\u003e U32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hash12 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst u = floatBitsToUint2(p$1.mul(vec2f$1(141421356, 2718281828)));\n\treturn __tsover_div(f32(__tsover_mul(u.x ^ u.y, u32(3141592653))), U32);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"u\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"floatBitsToUint2\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"141421356\"], [5, \"2718281828\"]]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.f32\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"3141592653\"]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"/\",\n\t\t\t\"U32\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"floatBitsToUint2\": () =\u003e floatBitsToUint2,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"U32\": () =\u003e U32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hash22 = typegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst u = floatBitsToUint2(p$1.mul(vec2f$1(141421356, 2718281828)));\n\tconst h = u.x ^ u.y;\n\tconst prod = mul(vec2u$1(h, h), vec2u$1(3141592653, 1618033988));\n\treturn vec2f$1(f32(prod.x), f32(prod.y)).div(U32);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"floatBitsToUint2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"141421356\"], [5, \"2718281828\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"prod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mul\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t[\"h\", \"h\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t[[5, \"3141592653\"], [5, \"1618033988\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"U32\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"floatBitsToUint2\": () =\u003e floatBitsToUint2,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.mul\": () =\u003e mul,\n\t\t\"d.vec2u\": () =\u003e vec2u$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"U32\": () =\u003e U32\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([vec2f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst u = floatBitsToUint2(p$1.mul(vec2f$1(141421356, 2718281828)));\n\tconst h = u.x ^ u.y;\n\tconst prod = mul(vec3u$1(h, h, h), vec3u$1(1732050807, 2645751311, 3316624790));\n\treturn vec3f$1(f32(prod.x), f32(prod.y), f32(prod.z)).div(U32);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"floatBitsToUint2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"141421356\"], [5, \"2718281828\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"prod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mul\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1732050807\"],\n\t\t\t\t\t\t\t[5, \"2645751311\"],\n\t\t\t\t\t\t\t[5, \"3316624790\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"U32\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"floatBitsToUint2\": () =\u003e floatBitsToUint2,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.mul\": () =\u003e mul,\n\t\t\"d.vec3u\": () =\u003e vec3u$1,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"U32\": () =\u003e U32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hash13 = typegpu_default.fn([vec3f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst u = floatBitsToUint3(p$1.mul(vec3f$1(141421356, 2718281828, 1618033988)));\n\treturn __tsover_div(f32(__tsover_mul(u.x ^ u.y ^ u.z, u32(3141592653))), U32);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"u\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"floatBitsToUint3\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"141421356\"],\n\t\t\t\t\t\t\t[5, \"2718281828\"],\n\t\t\t\t\t\t\t[5, \"1618033988\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.f32\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"3141592653\"]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"/\",\n\t\t\t\"U32\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"floatBitsToUint3\": () =\u003e floatBitsToUint3,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"U32\": () =\u003e U32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hash33 = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst u = floatBitsToUint3(p$1.mul(vec3f$1(141421356, 2718281828, 1618033988)));\n\tconst h = u.x ^ u.y ^ u.z;\n\tconst prod = mul(vec3u$1(h, h, h), vec3u$1(1732050807, 2645751311, 3316624790));\n\treturn vec3f$1(f32(prod.x), f32(prod.y), f32(prod.z)).div(U32);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"floatBitsToUint3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"141421356\"],\n\t\t\t\t\t\t\t\t[5, \"2718281828\"],\n\t\t\t\t\t\t\t\t[5, \"1618033988\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"^\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"prod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mul\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1732050807\"],\n\t\t\t\t\t\t\t[5, \"2645751311\"],\n\t\t\t\t\t\t\t[5, \"3316624790\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prod\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"U32\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"floatBitsToUint3\": () =\u003e floatBitsToUint3,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.mul\": () =\u003e mul,\n\t\t\"d.vec3u\": () =\u003e vec3u$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"U32\": () =\u003e U32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst value12 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(p$1);\n\tconst f0 = p$1.sub(i);\n\tconst f = f0.mul(f0).mul(sub(3, f0.mul(2)));\n\treturn mix(mix(hash12(i), hash12(i.add(vec2f$1(1, 0))), f.x), mix(hash12(i.add(vec2f$1(0, 1))), hash12(i.add(vec2f$1(1, 1))), f.x), f.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"i\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f0\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t[[5, \"3\"], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f0\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash12\",\n\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash12\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash12\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash12\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"hash12\": () =\u003e hash12,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar perlinGrad2 = typegpu_default.fn([\n\tvec2f$1,\n\tvec2f$1,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i, f, ox, oy) =\u003e {\n\t\"use gpu\";\n\tconst o = vec2f$1(ox, oy);\n\treturn dot(normalize(hash22(i.add(o)).sub(.5)), f.sub(o));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"f\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"o\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"ox\", \"oy\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.dot\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.normalize\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"o\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t]]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t\"sub\"\n\t\t\t\t],\n\t\t\t\t[\"o\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\"hash22\": () =\u003e hash22\n\t}\n}) \u0026\u0026 $.f)({}));\nconst perlin12 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(p$1);\n\tconst f = p$1.sub(i);\n\tconst u = f.mul(f).mul(f).mul(f.mul(f.mul(6).sub(15)).add(10));\n\tconst a = perlinGrad2(i, f, 0, 0);\n\tconst b = perlinGrad2(i, f, 1, 0);\n\tconst c = perlinGrad2(i, f, 0, 1);\n\tconst dd = perlinGrad2(i, f, 1, 1);\n\treturn __tsover_add(__tsover_mul(mix(mix(a, b, u.x), mix(c, dd, u.x), u.y), .7), .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"i\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"6\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"15\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"perlinGrad2\": () =\u003e perlinGrad2,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst perlin12d = typegpu_default.fn([vec2f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(p$1);\n\tconst f = fract(p$1);\n\tconst u = f.mul(f).mul(f).mul(f.mul(f.mul(6).sub(15)).add(10));\n\tconst du = f.mul(f).mul(f.mul(f.sub(2)).add(1)).mul(30);\n\tconst ga = hash22(i.add(vec2f$1(0, 0))).mul(2).sub(1);\n\tconst gb = hash22(i.add(vec2f$1(1, 0))).mul(2).sub(1);\n\tconst gc = hash22(i.add(vec2f$1(0, 1))).mul(2).sub(1);\n\tconst gd = hash22(i.add(vec2f$1(1, 1))).mul(2).sub(1);\n\tconst va = dot(ga, f.sub(vec2f$1(0, 0)));\n\tconst vb = dot(gb, f.sub(vec2f$1(1, 0)));\n\tconst vc = dot(gc, f.sub(vec2f$1(0, 1)));\n\tconst vd = dot(gd, f.sub(vec2f$1(1, 1)));\n\tconst k = __tsover_add(__tsover_sub(__tsover_sub(va, vb), vc), vd);\n\tconst value = __tsover_add(__tsover_add(__tsover_add(va, __tsover_mul(u.x, __tsover_sub(vb, va))), __tsover_mul(u.y, __tsover_sub(vc, va))), __tsover_mul(__tsover_mul(u.x, u.y), k));\n\tconst deriv = ga.add(gb.sub(ga).mul(u.x)).add(gc.sub(ga).mul(u.y)).add(ga.sub(gb).sub(gc).add(gd).mul(__tsover_mul(u.x, u.y))).add(du.mul(vec2f$1(u.y, u.x).mul(k).add(vec2f$1(vb, vc)).sub(va)));\n\treturn vec3f$1(value, deriv.x, deriv.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"6\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"15\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"du\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"30\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ga\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gc\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"va\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"ga\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"gb\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vc\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"gc\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0\"], [5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"gd\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"va\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"vb\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"vc\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"vd\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"value\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"va\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"vb\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"va\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"vc\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"va\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"deriv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ga\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"gb\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"ga\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"ga\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ga\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"gb\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"gc\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"gd\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"du\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"k\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[\"vb\", \"vc\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"va\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"value\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"deriv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"deriv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"hash22\": () =\u003e hash22,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst perm4 = typegpu_default.fn([vec4f$1], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x) =\u003e {\n\t\"use gpu\";\n\tconst xx = x.mul(x.mul(34).add(1));\n\treturn xx.sub(floor(xx.div(289)).mul(289));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"xx\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"34\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t\"xx\",\n\t\t\t\t\"sub\"\n\t\t\t],\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"xx\",\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"289\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[5, \"289\"]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.floor\": () =\u003e floor }\n}) \u0026\u0026 $.f)({}));\nconst value13 = typegpu_default.fn([vec3f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst a = floor(p$1);\n\tconst d0 = p$1.sub(a);\n\tconst sd = d0.mul(d0).mul(sub(3, d0.mul(2)));\n\tconst b = vec4f$1(a.x, a.x, a.y, a.y).add(vec4f$1(0, 1, 0, 1));\n\tconst k1 = perm4(vec4f$1(b.x, b.y, b.x, b.y));\n\tconst k2 = perm4(vec4f$1(k1.x, k1.y, k1.x, k1.y).add(vec4f$1(b.z, b.z, b.w, b.w))).add(vec4f$1(a.z, a.z, a.z, a.z));\n\tconst k3 = perm4(k2);\n\tconst k4 = perm4(k2.add(1));\n\tconst o3 = mix(fract(k3.mul(.02439024)), fract(k4.mul(.02439024)), vec4f$1(sd.z));\n\tconst o4 = mix(vec2f$1(o3.x, o3.z), vec2f$1(o3.y, o3.w), vec2f$1(sd.x));\n\treturn mix(o4.x, o4.y, sd.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"a\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"d0\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"d0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t[[5, \"3\"], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"d0\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perm4\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"perm4\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perm4\",\n\t\t\t\t\t[\"k2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k4\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perm4\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"k2\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"o1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"k3\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.02439024\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"o2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"k4\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.02439024\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"o3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"o1\",\n\t\t\t\t\t\t\"o2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sd\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"o4\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"o3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"o3\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"o3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"o3\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sd\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"o4\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"o4\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sd\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"d.vec4f\": () =\u003e vec4f$1,\n\t\t\"perm4\": () =\u003e perm4,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar perlinGrad3 = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i, f, ox, oy, oz) =\u003e {\n\t\"use gpu\";\n\tconst o = vec3f$1(ox, oy, oz);\n\treturn dot(f.sub(o), normalize(hash33(i.add(o)).sub(.5)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"f\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oz\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"o\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"ox\",\n\t\t\t\t\t\"oy\",\n\t\t\t\t\t\"oz\"\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.dot\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t\"sub\"\n\t\t\t\t],\n\t\t\t\t[\"o\"]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"std.normalize\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"hash33\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"o\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\"hash33\": () =\u003e hash33\n\t}\n}) \u0026\u0026 $.f)({}));\nconst perlin13 = typegpu_default.fn([vec3f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(p$1);\n\tconst f = p$1.sub(i);\n\tconst u = f.mul(f).mul(f).mul(f.mul(f.mul(6).sub(15)).add(10));\n\tconst a0 = perlinGrad3(i, f, 0, 0, 0);\n\tconst b0 = perlinGrad3(i, f, 1, 0, 0);\n\tconst c0 = perlinGrad3(i, f, 0, 1, 0);\n\tconst d0 = perlinGrad3(i, f, 1, 1, 0);\n\tconst a1 = perlinGrad3(i, f, 0, 0, 1);\n\tconst b1 = perlinGrad3(i, f, 1, 0, 1);\n\tconst c1 = perlinGrad3(i, f, 0, 1, 1);\n\tconst d1 = perlinGrad3(i, f, 1, 1, 1);\n\tconst z0 = mix(mix(a0, b0, u.x), mix(c0, d0, u.x), u.y);\n\tconst z1 = mix(mix(a1, b1, u.x), mix(c1, d1, u.x), u.y);\n\treturn __tsover_add(__tsover_mul(mix(z0, z1, u.z), .7), .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"i\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"6\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"15\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlinGrad3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"a0\",\n\t\t\t\t\t\t\t\t\"b0\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"c0\",\n\t\t\t\t\t\t\t\t\"d0\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"a1\",\n\t\t\t\t\t\t\t\t\"b1\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"c1\",\n\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"z0\",\n\t\t\t\t\t\t\t\"z1\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"perlinGrad3\": () =\u003e perlinGrad3,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nvar gaborGrain = typegpu_default.fn([\n\tvec2f$1,\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, i, freq, phase, ox, oy) =\u003e {\n\t\"use gpu\";\n\treturn sin(__tsover_add(__tsover_mul(freq, dot(p$1, hash22(i.add(vec2f$1(ox, oy))))), phase));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"freq\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.sin\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"freq\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"p\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"ox\", \"oy\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t\"phase\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"hash22\": () =\u003e hash22,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gabor12 = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, freq, phase) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(p$1);\n\tconst f0 = p$1.sub(i);\n\tconst f = f0.mul(f0).mul(sub(3, f0.mul(2)));\n\treturn mix(mix(gaborGrain(p$1, i, freq, phase, 0, 0), gaborGrain(p$1, i, freq, phase, 1, 0), f.x), mix(gaborGrain(p$1, i, freq, phase, 0, 1), gaborGrain(p$1, i, freq, phase, 1, 1), f.x), f.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"freq\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phase\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"i\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f0\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t[[5, \"3\"], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f0\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"gaborGrain\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"gaborGrain\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"gaborGrain\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"gaborGrain\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"gaborGrain\": () =\u003e gaborGrain\n\t}\n}) \u0026\u0026 $.f)({}));\nconst curl22 = typegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst a = vec2f$1(perlin12(p$1.add(vec2f$1(.1, 0))), perlin12(p$1.add(vec2f$1(0, .1))));\n\tconst b = vec2f$1(perlin12(p$1.sub(vec2f$1(.1, 0))), perlin12(p$1.sub(vec2f$1(0, .1))));\n\treturn a.sub(b).div(.1).mul(.5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin12\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[5, \"0.1\"], [5, \"0\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin12\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0.1\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin12\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[5, \"0.1\"], [5, \"0\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin12\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0.1\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"b\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.1\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[5, \"0.5\"]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"perlin12\": () =\u003e perlin12\n\t}\n}) \u0026\u0026 $.f)({}));\nconst curl22z = typegpu_default.fn([vec2f$1, f32], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, z) =\u003e {\n\t\"use gpu\";\n\tconst pax = p$1.add(vec2f$1(.1, 0));\n\tconst pay = p$1.add(vec2f$1(0, .1));\n\tconst pbx = p$1.sub(vec2f$1(.1, 0));\n\tconst pby = p$1.sub(vec2f$1(0, .1));\n\tconst a = vec2f$1(perlin13(vec3f$1(pax.x, pax.y, z)), perlin13(vec3f$1(pay.x, pay.y, z)));\n\tconst b = vec2f$1(perlin13(vec3f$1(pbx.x, pbx.y, z)), perlin13(vec3f$1(pby.x, pby.y, z)));\n\treturn a.sub(b).div(.1).mul(.5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"z\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pax\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.1\"], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pay\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0.1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pbx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.1\"], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pby\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0.1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin13\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pax\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pax\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin13\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pay\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pay\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin13\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pbx\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pbx\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"perlin13\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pby\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pby\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"b\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.1\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[5, \"0.5\"]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"perlin13\": () =\u003e perlin13,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst wavelet12 = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, phase, scale) =\u003e {\n\t\"use gpu\";\n\tlet dsum = f32(0);\n\tlet s = f32(1);\n\tlet m = f32(0);\n\tlet pp = vec2f$1(p$1.x, p$1.y);\n\tfor (let idx = 0; idx \u003c 4; idx++) {\n\t\tconst q0 = pp.mul(s);\n\t\tlet g = fract(floor(q0).mul(vec2f$1(123.34, 233.53)));\n\t\tg = g.add(dot(g, g.add(23.234)));\n\t\tconst a = __tsover_mul(fract(__tsover_mul(g.x, g.y)), 1e3);\n\t\tconst qc = fract(q0).sub(.5);\n\t\tconst ca = cos(a);\n\t\tconst sa = sin(a);\n\t\tconst q = vec2f$1(__tsover_sub(__tsover_mul(qc.x, ca), __tsover_mul(qc.y, sa)), __tsover_add(__tsover_mul(qc.x, sa), __tsover_mul(qc.y, ca)));\n\t\tdsum = __tsover_add(dsum, __tsover_div(__tsover_mul(sin(__tsover_add(__tsover_mul(q.x, 10), phase)), smoothstep(.25, 0, dot(q, q))), s));\n\t\tpp = vec2f$1(__tsover_sub(__tsover_mul(pp.x, .54), __tsover_mul(pp.y, .84)), __tsover_add(__tsover_mul(pp.x, .84), __tsover_mul(pp.y, .54))).add(f32(idx));\n\t\tm = __tsover_add(m, __tsover_div(1, s));\n\t\ts = __tsover_mul(s, scale);\n\t}\n\treturn __tsover_div(dsum, m);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"dsum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"pp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"idx\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t[\"q0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[5, \"123.34\"], [5, \"233.53\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"g\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"23.234\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1000\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"qc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t[\"q0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ca\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sa\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"qc\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ca\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"qc\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"sa\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"qc\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"sa\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"qc\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ca\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"dsum\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dsum\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"q\", \"q\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.54\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.84\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.84\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.54\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"idx\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dsum\",\n\t\t\t\t\"/\",\n\t\t\t\t\"m\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst blue12 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tlet v = f32(0);\n\tfor (let k = 0; k \u003c 9; k++) {\n\t\tconst fk = f32(k);\n\t\tconst row = floor(__tsover_div(fk, 3));\n\t\tconst col = __tsover_sub(fk, __tsover_mul(row, 3));\n\t\tv = __tsover_add(v, hash12(p$1.add(vec2f$1(__tsover_sub(col, 1), __tsover_sub(row, 1)))));\n\t}\n\treturn __tsover_add(__tsover_mul(.9, __tsover_sub(__tsover_mul(1.125, hash12(p$1)), __tsover_div(v, 8))), .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"k\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"k\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"9\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"k\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fk\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"k\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fk\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fk\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash12\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.9\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1.125\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash12\",\n\t\t\t\t\t\t\t\t[\"p\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"hash12\": () =\u003e hash12,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar hilbertEncode512 = typegpu_default.fn([vec2i$1], i32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tlet i = i32(0);\n\tlet px = p$1.x;\n\tlet py = p$1.y;\n\tfor (let s = 256; s \u003e 0; s = s \u003e\u003e 1) {\n\t\tconst S = i32(s);\n\t\tconst rx = select(i32(0), i32(1), (px \u0026 S) \u003e 0);\n\t\tconst ry = select(i32(0), i32(1), (py \u0026 S) \u003e 0);\n\t\tconst dq = rx \u003c\u003c 1 | rx ^ ry;\n\t\ti = __tsover_add(i, __tsover_mul(__tsover_mul(S, S), dq));\n\t\tconst oneMinusRy = __tsover_sub(i32(1), ry);\n\t\tconst rhs = __tsover_mul(px ^ py, oneMinusRy) ^ __tsover_mul(i32(__tsover_sub(s, 1)), rx \u0026 oneMinusRy);\n\t\tpx = px ^ rhs;\n\t\tpy = py ^ rhs;\n\t}\n\treturn i;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t[5, \"256\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"\u003e\u003e\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"S\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t\t\t\"S\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t\t\t\"S\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dq\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\"\u003c\u003c\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"|\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t\t\t\"ry\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"S\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"S\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dq\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"oneMinusRy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"ry\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rhs\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"oneMinusRy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t\t\"oneMinusRy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t\t\"rhs\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"^\",\n\t\t\t\t\t\t\t\"rhs\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, \"i\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst idx = hilbertEncode512(vec2i$1(i32(p$1.x), i32(p$1.y))) \u0026 i32(262143);\n\treturn fract(__tsover_mul(.6180339887498949, f32(idx)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"idx\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hilbertEncode512\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2i\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"\u0026\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[5, \"262143\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[5, \"0.6180339887498949\"],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[\"idx\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"hilbertEncode512\": () =\u003e hilbertEncode512,\n\t\t\"d.vec2i\": () =\u003e vec2i$1,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nvar scratchOne = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, f, time, thickness) =\u003e {\n\t\"use gpu\";\n\tconst seed0 = floor(uv);\n\tconst lo = uv.sub(seed0);\n\tconst sx = floor(__tsover_mul(sin(__tsover_mul(seed0.x, 51024)), 3104));\n\tconst sy = floor(__tsover_mul(sin(__tsover_mul(seed0.y, 1324)), 554));\n\tconst ss = __tsover_add(sx, sy);\n\tlet u2 = lo.mul(2).sub(1);\n\tu2 = u2.mul(cos(ss)).add(vec2f$1(-u2.y, u2.x).mul(sin(ss)));\n\tu2 = u2.add(sin(__tsover_sub(sx, sy)));\n\tu2 = u2.mul(.5).add(.5);\n\tconst sVal = __tsover_mul(__tsover_add(sin(__tsover_add(sx, __tsover_mul(u2.y, Math.PI))), sin(__tsover_add(sy, __tsover_mul(u2.y, Math.PI)))), .2);\n\tlet x = abs(__tsover_add(__tsover_sub(u2.x, .5), sVal));\n\tx = __tsover_sub(.5, __tsover_mul(x, __tsover_div(f, thickness)));\n\tx = __tsover_mul(smoothstep(-2, __tsover_add(__tsover_mul(fwidth(x), 1.5), 16), x), 12);\n\tconst pulse = __tsover_add(__tsover_mul(sin(__tsover_add(time, __tsover_mul(hash12(seed0), 6.2831853))), .5), .5);\n\treturn __tsover_mul(__tsover_mul(x, u2.y), pulse);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"f\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seed0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"uv\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lo\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"seed0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"seed0\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"51024\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"3104\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"seed0\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1324\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"554\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ss\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sx\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"sy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"u2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"lo\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"u2\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"ss\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"ss\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"u2\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"u2\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"WAVYNESS\",\n\t\t\t\t[5, \"0.2\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sVal\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"Math.PI\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"Math.PI\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"WAVYNESS\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"sVal\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"x\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"thickness\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"x\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"16\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"12\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pulse\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"hash12\",\n\t\t\t\t\t\t\t\t\t\t[\"seed0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"6.2831853\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u2\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"pulse\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"Math.PI\": () =\u003e Math.PI,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"hash12\": () =\u003e hash12\n\t}\n}) \u0026\u0026 $.f)({}));\nconst scratches12 = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, time, thickness) =\u003e {\n\t\"use gpu\";\n\tlet scratches = f32(0);\n\tlet p$1 = vec2f$1(uv.x, uv.y);\n\tconst f = __tsover_div(1, length(fwidth(uv)));\n\tfor (let i = 0; i \u003c 8; i++) {\n\t\tscratches = max(scratches, scratchOne(p$1, f, time, thickness));\n\t\tp$1 = vec2f$1(__tsover_add(p$1.x, __tsover_mul(p$1.y, .7)), __tsover_add(__tsover_mul(p$1.x, -.7), p$1.y)).sub(12.31);\n\t}\n\treturn scratches;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"scratches\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t[\"uv\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"8\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t2,\n\t\t\t\t\t\"scratches\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"scratches\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"scratchOne\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\t\t\"thickness\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t2,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"12.31\"]]\n\t\t\t\t\t]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[10, \"scratches\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"scratchOne\": () =\u003e scratchOne\n\t}\n}) \u0026\u0026 $.f)({}));\nconst fbmPerlin = typegpu_default.fn([vec2f$1, i32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, octaves) =\u003e {\n\t\"use gpu\";\n\tlet s = f32(0);\n\tlet m = f32(0);\n\tlet a = f32(1);\n\tlet pp = vec2f$1(p$1.x, p$1.y);\n\tfor (let i = 0; i \u003c octaves; i++) {\n\t\ts = __tsover_add(s, __tsover_mul(a, perlin12(pp)));\n\t\tm = __tsover_add(m, a);\n\t\ta = __tsover_mul(a, .5);\n\t\tpp = pp.mul(2);\n\t}\n\treturn __tsover_div(s, m);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"octaves\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"pp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"octaves\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"perlin12\",\n\t\t\t\t\t\t\t\t\t[\"pp\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"s\",\n\t\t\t\t\"/\",\n\t\t\t\t\"m\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"perlin12\": () =\u003e perlin12\n\t}\n}) \u0026\u0026 $.f)({}));\nvar fbmStone = typegpu_default.fn([vec2f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tlet s = vec3f$1(0, 0, 0);\n\tlet a = f32(1);\n\tlet pp = vec2f$1(p$1.x, p$1.y);\n\tfor (let i = 0; i \u003c 6; i++) {\n\t\ts = s.add(perlin12d(pp).mul(a));\n\t\ta = __tsover_mul(a, .5);\n\t\tpp = pp.mul(2);\n\t}\n\treturn s;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"pp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"6\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"perlin12d\",\n\t\t\t\t\t\t\t\t\t\t[\"pp\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, \"s\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"perlin12d\": () =\u003e perlin12d\n\t}\n}) \u0026\u0026 $.f)({}));\nconst stone12 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst fs = fbmStone(p$1);\n\treturn fbmPerlin(p$1.add(vec2f$1(fs.y, fs.z).mul(.4)), i32(6));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"fs\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"fbmStone\",\n\t\t\t\t[\"p\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"fbmPerlin\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"fs\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"fs\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.4\"]]\n\t\t\t\t]]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"d.i32\",\n\t\t\t\t[[5, \"6\"]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"fbmStone\": () =\u003e fbmStone,\n\t\t\"fbmPerlin\": () =\u003e fbmPerlin,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"d.i32\": () =\u003e i32\n\t}\n}) \u0026\u0026 $.f)({}));\nvar fbmWool = typegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tlet s = vec2f$1(0, 0);\n\tlet m = f32(0);\n\tlet a = f32(1);\n\tlet pp = vec2f$1(p$1.x, p$1.y);\n\tfor (let i = 0; i \u003c 6; i++) {\n\t\ts = s.add(curl22(pp).mul(a));\n\t\tm = __tsover_add(m, a);\n\t\ta = __tsover_mul(a, .5);\n\t\tpp = pp.mul(2);\n\t}\n\treturn s.div(m);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"pp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"6\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"curl22\",\n\t\t\t\t\t\t\t\t\t\t[\"pp\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"m\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"curl22\": () =\u003e curl22\n\t}\n}) \u0026\u0026 $.f)({}));\nconst wool12 = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tconst n = fbmWool(p$1);\n\treturn max(abs(n.x), abs(n.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"n\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"fbmWool\",\n\t\t\t\t[\"p\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.max\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"n\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"n\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"fbmWool\": () =\u003e fbmWool,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nvar gullies = typegpu_default.fn([vec2f$1, vec2f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, slope) =\u003e {\n\t\"use gpu\";\n\tconst sideDir = vec2f$1(-slope.y, slope.x).mul(Math.PI);\n\tconst id = floor(p$1);\n\tconst pp = p$1.sub(id);\n\tlet heightSlope = vec2f$1(0, 0);\n\tlet wSum = f32(0);\n\tfor (let x = -1; x \u003c= 2; x++) for (let y = -1; y \u003c= 2; y++) {\n\t\tconst off = vec2f$1(f32(x), f32(y));\n\t\tconst c = pp.sub(off).sub(hash22(id.add(off))).add(.5);\n\t\tconst dist2 = dot(c, c);\n\t\tconst w = max(f32(0), __tsover_sub(exp(__tsover_mul(dist2, -2)), .01111));\n\t\twSum = __tsover_add(wSum, w);\n\t\tconst t = dot(c, sideDir);\n\t\theightSlope = heightSlope.add(vec2f$1(cos(t), -sin(t)).mul(w));\n\t}\n\treturn vec3f$1(heightSlope.x, __tsover_mul(heightSlope.y, sideDir.x), __tsover_mul(heightSlope.y, sideDir.y)).div(wSum);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"slope\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sideDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"slope\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"slope\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"Math.PI\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"id\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"id\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"heightSlope\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"wSum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"y\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"off\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"off\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dist2\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"c\", \"c\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"dist2\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.01111\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"c\", \"sideDir\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"heightSlope\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"heightSlope\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"w\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"heightSlope\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"heightSlope\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sideDir\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"heightSlope\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sideDir\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"wSum\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"Math.PI\": () =\u003e Math.PI,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"hash22\": () =\u003e hash22,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst erosion12 = typegpu_default.fn([vec2f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\tlet nd = perlin12d(p$1);\n\tlet strength = f32(.25);\n\tlet freq = f32(8);\n\tlet total = f32(1);\n\tfor (let i = 0; i \u003c 4; i++) {\n\t\tconst grad = vec2f$1(nd.y, nd.z);\n\t\tconst len2 = max(dot(grad, grad), f32(1e-4));\n\t\tconst slope = grad.mul(pow(len2, f32(__tsover_mul(.5, __tsover_sub(.5, 1)))));\n\t\tnd = nd.add(gullies(p$1.mul(freq), slope).mul(strength).mul(vec3f$1(1, freq, freq)));\n\t\ttotal = __tsover_add(total, strength);\n\t\tstrength = __tsover_mul(strength, .5);\n\t\tfreq = __tsover_mul(freq, 2);\n\t}\n\treturn nd.div(total);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"nd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlin12d\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"strength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0.25\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"freq\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"total\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"grad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"nd\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"nd\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"len2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"grad\", \"grad\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.0001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"slope\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"grad\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t\t[\"len2\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"nd\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"nd\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"gullies\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"freq\"]\n\t\t\t\t\t\t\t\t\t\t\t\t], \"slope\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"strength\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"total\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"total\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"nd\",\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"total\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"perlin12d\": () =\u003e perlin12d,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"gullies\": () =\u003e gullies,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar fbmPaper = typegpu_default.fn([vec2f$1, i32], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, octaves) =\u003e {\n\t\"use gpu\";\n\tlet s = vec2f$1(0, 0);\n\tlet m = f32(0);\n\tlet a = f32(1);\n\tlet pp = vec2f$1(p$1.x, p$1.y);\n\tfor (let i = 0; i \u003c octaves; i++) {\n\t\ts = s.add(clamp(curl22(pp).mul(.5).add(.5), vec2f$1(0, 0), vec2f$1(1, 1)).mul(a));\n\t\tm = __tsover_add(m, a);\n\t\ta = __tsover_mul(a, .8);\n\t\tpp = pp.mul(2);\n\t}\n\treturn s.div(m);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"octaves\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"pp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"octaves\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"curl22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"pp\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"m\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"curl22\": () =\u003e curl22\n\t}\n}) \u0026\u0026 $.f)({}));\nconst paper12 = typegpu_default.fn([vec2f$1, i32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, octaves) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_mul(__tsover_div(length(fbmPaper(p$1, octaves)), 1.414), .6), .4);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"octaves\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fbmPaper\",\n\t\t\t\t\t\t\t[\"p\", \"octaves\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"1.414\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.6\"]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[5, \"0.4\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"fbmPaper\": () =\u003e fbmPaper\n\t}\n}) \u0026\u0026 $.f)({}));\nconst aspectOf = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((viewport) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_div(viewport.x, max(viewport.y, 1e-6));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"viewport\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t\"viewport\",\n\t\t\t\t\"x\"\n\t\t\t],\n\t\t\t\"/\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\"y\"\n\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.max\": () =\u003e max }\n}) \u0026\u0026 $.f)({}));\nconst flooredMod1 = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, m) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(x, __tsover_mul(m, floor(__tsover_div(x, m))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"m\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t\"x\",\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"m\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"m\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.floor\": () =\u003e floor }\n}) \u0026\u0026 $.f)({}));\nconst flooredMod2 = typegpu_default.fn([vec2f$1, vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, m) =\u003e {\n\t\"use gpu\";\n\treturn vec2f$1(__tsover_sub(p$1.x, __tsover_mul(m.x, floor(__tsover_div(p$1.x, m.x)))), __tsover_sub(p$1.y, __tsover_mul(m.y, floor(__tsover_div(p$1.y, m.y)))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"m\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.floor\": () =\u003e floor\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((n, den) =\u003e {\n\t\"use gpu\";\n\tconst guarded = select(max(den, 1e-5), min(den, -1e-5), den \u003c 0);\n\treturn __tsover_div(n, guarded);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"n\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"den\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"guarded\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"den\", [5, \"0.00001\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"den\", [\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.00001\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"den\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t\"n\",\n\t\t\t\"/\",\n\t\t\t\"guarded\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rotate2 = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, cosA, sinA) =\u003e {\n\t\"use gpu\";\n\treturn vec2f$1(__tsover_sub(__tsover_mul(p$1.x, cosA), __tsover_mul(p$1.y, sinA)), __tsover_add(__tsover_mul(p$1.x, sinA), __tsover_mul(p$1.y, cosA)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cosA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sinA\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cosA\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"sinA\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"sinA\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cosA\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f$1 }\n}) \u0026\u0026 $.f)({}));\nconst aspectCorrectedUV = typegpu_default.fn([vec2f$1, vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, max(viewport.y, 1e-6));\n\treturn vec2f$1(__tsover_mul(uv.x, aspect), uv.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"viewport\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"aspect\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"aspect\"\n\t\t\t], [\n\t\t\t\t7,\n\t\t\t\t\"uv\",\n\t\t\t\t\"y\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst aspectCorrectedUVFlipY = typegpu_default.fn([vec2f$1, vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, max(viewport.y, 1e-6));\n\treturn vec2f$1(__tsover_mul(uv.x, aspect), __tsover_sub(1, uv.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"viewport\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"aspect\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"aspect\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst unflipPosition = typegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\treturn vec2f$1(p$1.x, __tsover_sub(1, p$1.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t7,\n\t\t\t\t\"p\",\n\t\t\t\t\"x\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f$1 }\n}) \u0026\u0026 $.f)({}));\nconst aspectCentrePosition = typegpu_default.fn([vec2f$1, f32], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, aspect) =\u003e {\n\t\"use gpu\";\n\treturn vec2f$1(__tsover_mul(pos.x, aspect), __tsover_sub(1, pos.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"pos\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"aspect\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"aspect\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f$1 }\n}) \u0026\u0026 $.f)({}));\nconst aspectCenteredDelta = typegpu_default.fn([\n\tvec2f$1,\n\tvec2f$1,\n\tvec2f$1\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, center, viewport) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, max(viewport.y, 1e-6));\n\treturn vec2f$1(__tsover_sub(__tsover_mul(uv.x, aspect), __tsover_mul(center.x, aspect)), __tsover_sub(uv.y, __tsover_sub(1, center.y)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"aspect\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst canvasCentredDelta = typegpu_default.fn([vec2f$1, f32], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect) =\u003e {\n\t\"use gpu\";\n\treturn vec2f$1(__tsover_sub(__tsover_mul(uv.x, aspect), __tsover_mul(aspect, .5)), __tsover_sub(uv.y, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"aspect\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f$1 }\n}) \u0026\u0026 $.f)({}));\nconst rotateAboutCanvasCentre = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, aspect, cosA, sinA) =\u003e {\n\t\"use gpu\";\n\tconst centerX = __tsover_mul(aspect, .5);\n\tconst centerY = .5;\n\tconst cx = __tsover_sub(p$1.x, centerX);\n\tconst cy = __tsover_sub(p$1.y, centerY);\n\treturn vec2f$1(__tsover_add(__tsover_sub(__tsover_mul(cx, cosA), __tsover_mul(cy, sinA)), centerX), __tsover_add(__tsover_add(__tsover_mul(cx, sinA), __tsover_mul(cy, cosA)), centerY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cosA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sinA\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerY\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f$1 }\n}) \u0026\u0026 $.f)({}));\nconst directionalProjection = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1, cosA, sinA) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_mul(p$1.x, cosA), __tsover_mul(p$1.y, sinA));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cosA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sinA\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"cosA\"\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"sinA\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p$1) =\u003e {\n\t\"use gpu\";\n\treturn vec2f$1(length(p$1), atan2(p$1.y, p$1.x));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.length\",\n\t\t\t\t[\"p\"]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"std.atan2\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t], [\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.atan2\": () =\u003e atan2\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([f32, f32], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((r, theta) =\u003e {\n\t\"use gpu\";\n\treturn vec2f$1(__tsover_mul(r, cos(theta)), __tsover_mul(r, sin(theta)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"r\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"theta\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t\"r\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"theta\"]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t\"r\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"theta\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst aspectScaledDomain = typegpu_default.fn([\n\tvec2f$1,\n\tvec2f$1,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, scale, seed) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\treturn vec2f$1(__tsover_mul(uv.x, aspect), uv.y).mul(exp(scale)).add(seed);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[\"scale\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"seed\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.exp\": () =\u003e exp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst pixelGridDomain = typegpu_default.fn([\n\tvec2f$1,\n\tvec2f$1,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, grain, seed) =\u003e {\n\t\"use gpu\";\n\treturn floor(uv.mul(viewport).div(grain)).add(seed);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"grain\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"viewport\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"grain\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"add\"\n\t\t\t],\n\t\t\t[\"seed\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.floor\": () =\u003e floor }\n}) \u0026\u0026 $.f)({}));\nconst timeAxisDomain = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32\n], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, t, rate) =\u003e {\n\t\"use gpu\";\n\treturn vec3f$1(pos.x, pos.y, __tsover_mul(t, rate));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rate\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"rate\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f$1 }\n}) \u0026\u0026 $.f)({}));\nvar fieldFnIds = /* @__PURE__ */ new WeakMap();\nvar nextFieldFnId = 0;\nfunction fieldFnId(fieldFn) {\n\tconst keyable = fieldFn;\n\tconst existing = fieldFnIds.get(keyable);\n\tif (existing !== void 0) return existing;\n\tconst assigned = nextFieldFnId++;\n\tfieldFnIds.set(keyable, assigned);\n\treturn assigned;\n}\nfunction fbmGated(fieldFn, options) {\n\tconst { maxOctaves, drift, stride = [17, 31], name = \"fbmGated\" } = options;\n\tconst key = `${fieldFnId(fieldFn)}|${name}|${maxOctaves}|${drift}|${stride[0]},${stride[1]}`;\n\tconst cached = fbmCache.get(key);\n\tif (cached) return cached;\n\tconst N$1 = maxOctaves;\n\tconst TIME_STRIDE = stride[0];\n\tconst SEED_STRIDE = stride[1];\n\tconst suffix = `${drift === \"goldenAngle\" ? \"Golden\" : \"TimeSeed\"}${N$1}`;\n\tlet built;\n\tif (drift === \"goldenAngle\") {\n\t\tconst octaveField = fieldFn;\n\t\tbuilt = typegpu_default.fn([\n\t\t\tvec2f$1,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tvec2f$1,\n\t\t\tf32\n\t\t], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, baseFreq, lacunarity, persistence, animTime, seedOffset, octaveCount) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst n = i32(octaveCount);\n\t\t\tlet freq = baseFreq;\n\t\t\tlet weight = f32(1);\n\t\t\tlet accumulated = f32(0);\n\t\t\tlet totalWeight = f32(0);\n\t\t\tfor (let i = 0; i \u003c N$1; i++) {\n\t\t\t\tconst fi = f32(i);\n\t\t\t\tconst dirX = cos(__tsover_mul(fi, 2.3999632297286535));\n\t\t\t\tconst dirY = sin(__tsover_mul(fi, 2.3999632297286535));\n\t\t\t\tconst coord = vec2f$1(__tsover_add(__tsover_add(__tsover_mul(base.x, freq), __tsover_mul(animTime, dirX)), seedOffset.x), __tsover_add(__tsover_add(__tsover_mul(base.y, freq), __tsover_mul(animTime, dirY)), seedOffset.y));\n\t\t\t\tconst active = select(f32(0), f32(1), i \u003c n);\n\t\t\t\taccumulated = __tsover_add(accumulated, __tsover_mul(__tsover_mul(octaveField(coord), weight), active));\n\t\t\t\ttotalWeight = __tsover_add(totalWeight, __tsover_mul(weight, active));\n\t\t\t\tfreq = __tsover_mul(freq, lacunarity);\n\t\t\t\tweight = __tsover_mul(weight, persistence);\n\t\t\t}\n\t\t\treturn vec2f$1(accumulated, totalWeight);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"base\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"baseFreq\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"lacunarity\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"persistence\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"animTime\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"seedOffset\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"octaveCount\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"octaveCount\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\"baseFreq\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"accumulated\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"totalWeight\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"N\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dirX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"GOLDEN\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dirY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"GOLDEN\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dirX\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"seedOffset\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dirY\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"seedOffset\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"active\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"accumulated\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"accumulated\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"octaveField\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"coord\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"weight\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"active\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"totalWeight\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"totalWeight\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"active\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"lacunarity\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"persistence\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"accumulated\", \"totalWeight\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"N\": () =\u003e N$1,\n\t\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\t\"GOLDEN\": () =\u003e 2.3999632297286535,\n\t\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"octaveField\": () =\u003e octaveField\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${name}${suffix}`);\n\t} else {\n\t\tconst octaveField = fieldFn;\n\t\tbuilt = typegpu_default.fn([\n\t\t\tvec2f$1,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tvec3f$1,\n\t\t\tf32\n\t\t], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, baseFreq, lacunarity, persistence, animTime, seed, extra, octaveCount) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tlet freq = baseFreq;\n\t\t\tlet amp = f32(1);\n\t\t\tlet accumulated = f32(0);\n\t\t\tlet totalWeight = f32(0);\n\t\t\tfor (let o = 0; o \u003c N$1; o++) {\n\t\t\t\tconst fo = f32(o);\n\t\t\t\tconst active = select(f32(0), f32(1), fo \u003c octaveCount);\n\t\t\t\tconst raw = octaveField(vec2f$1(__tsover_mul(base.x, freq), __tsover_mul(base.y, freq)), __tsover_add(animTime, __tsover_mul(fo, TIME_STRIDE)), __tsover_add(seed, __tsover_mul(fo, SEED_STRIDE)), extra.x, extra.y, extra.z);\n\t\t\t\taccumulated = __tsover_add(accumulated, __tsover_mul(__tsover_mul(raw, amp), active));\n\t\t\t\ttotalWeight = __tsover_add(totalWeight, __tsover_mul(amp, active));\n\t\t\t\tamp = __tsover_mul(amp, persistence);\n\t\t\t\tfreq = __tsover_mul(freq, lacunarity);\n\t\t\t}\n\t\t\treturn vec2f$1(accumulated, totalWeight);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"base\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"baseFreq\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"lacunarity\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"persistence\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"animTime\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"seed\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"extra\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"octaveCount\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\"baseFreq\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"amp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"accumulated\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"totalWeight\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"N\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"fo\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"o\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"active\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fo\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\"octaveCount\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"oUV\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"animT\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fo\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"TIME_STRIDE\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"seedOff\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fo\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"SEED_STRIDE\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"raw\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"octaveField\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"oUV\",\n\t\t\t\t\t\t\t\t\t\t\"animT\",\n\t\t\t\t\t\t\t\t\t\t\"seedOff\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"extra\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"extra\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"extra\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"accumulated\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"accumulated\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"raw\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"amp\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"active\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"totalWeight\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"totalWeight\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"amp\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"active\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"amp\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"amp\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"persistence\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"lacunarity\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"accumulated\", \"totalWeight\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"N\": () =\u003e N$1,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\t\t\"TIME_STRIDE\": () =\u003e TIME_STRIDE,\n\t\t\t\t\"SEED_STRIDE\": () =\u003e SEED_STRIDE,\n\t\t\t\t\"octaveField\": () =\u003e octaveField\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${name}${suffix}`);\n\t}\n\tfbmCache.set(key, built);\n\treturn built;\n}\nvar fbmCache = /* @__PURE__ */ new Map();\nvar IQ_WARP_OFFSETS = {\n\tq: [[\n\t\t.3,\n\t\t-.2,\n\t\t0\n\t], [\n\t\t5.2,\n\t\t1.3,\n\t\t.25\n\t]],\n\tr: [[\n\t\t1.7,\n\t\t9.2,\n\t\t.15\n\t], [\n\t\t8.3,\n\t\t2.8,\n\t\t.13\n\t]]\n};\nfunction domainWarp2(fieldFn, options = {}) {\n\tconst { offsets = IQ_WARP_OFFSETS, name = \"domainWarp2\" } = options;\n\tconst key = `${fieldFnId(fieldFn)}|${name}|${JSON.stringify(offsets)}`;\n\tconst cached = warpCache.get(key);\n\tif (cached) return cached;\n\tconst warpField = fieldFn;\n\tconst [QX, QY, QZ] = offsets.q[0];\n\tconst [Q2X, Q2Y, Q2Z] = offsets.q[1];\n\tconst [RX, RY, RZ] = offsets.r[0];\n\tconst [R2X, R2Y, R2Z] = offsets.r[1];\n\tconst built = typegpu_default.fn([\n\t\tvec3f$1,\n\t\tf32,\n\t\tf32\n\t], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, t, warpAmount) =\u003e {\n\t\t\"use gpu\";\n\t\tconst qx = warpField(pos.add(vec3f$1(__tsover_mul(t, QX), __tsover_mul(t, QY), QZ)));\n\t\tconst qy = warpField(pos.add(vec3f$1(Q2X, Q2Y, __tsover_mul(t, Q2Z))));\n\t\tconst warped1 = pos.add(vec3f$1(qx, qy, 0).mul(warpAmount));\n\t\tconst rx = warpField(warped1.add(vec3f$1(RX, RY, __tsover_mul(t, RZ))));\n\t\tconst ry = warpField(warped1.add(vec3f$1(R2X, R2Y, __tsover_mul(t, R2Z))));\n\t\treturn pos.add(vec3f$1(rx, ry, 0).mul(warpAmount));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"warpAmount\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"warpField\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"QX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"QY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"QZ\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"warpField\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"Q2X\",\n\t\t\t\t\t\t\t\t\t\"Q2Y\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"Q2Z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"warped1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"warpAmount\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"warpField\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"warped1\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"RX\",\n\t\t\t\t\t\t\t\t\t\"RY\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"RZ\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ry\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"warpField\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"warped1\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"R2X\",\n\t\t\t\t\t\t\t\t\t\"R2Y\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"R2Z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"warpAmount\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"warpField\": () =\u003e warpField,\n\t\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\t\"QX\": () =\u003e QX,\n\t\t\t\"QY\": () =\u003e QY,\n\t\t\t\"QZ\": () =\u003e QZ,\n\t\t\t\"Q2X\": () =\u003e Q2X,\n\t\t\t\"Q2Y\": () =\u003e Q2Y,\n\t\t\t\"Q2Z\": () =\u003e Q2Z,\n\t\t\t\"RX\": () =\u003e RX,\n\t\t\t\"RY\": () =\u003e RY,\n\t\t\t\"RZ\": () =\u003e RZ,\n\t\t\t\"R2X\": () =\u003e R2X,\n\t\t\t\"R2Y\": () =\u003e R2Y,\n\t\t\t\"R2Z\": () =\u003e R2Z\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(name);\n\twarpCache.set(key, built);\n\treturn built;\n}\nfunction domainWarp1(fieldFn, options = {}) {\n\tconst { offsets = IQ_WARP_OFFSETS, name = \"domainWarp1\" } = options;\n\tconst key = `1|${fieldFnId(fieldFn)}|${name}|${JSON.stringify(offsets)}`;\n\tconst cached = warpCache.get(key);\n\tif (cached) return cached;\n\tconst warpField = fieldFn;\n\tconst [QX, QY, QZ] = offsets.q[0];\n\tconst [Q2X, Q2Y, Q2Z] = offsets.q[1];\n\tconst built = typegpu_default.fn([\n\t\tvec3f$1,\n\t\tf32,\n\t\tf32\n\t], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, t, warpAmount) =\u003e {\n\t\t\"use gpu\";\n\t\tconst qx = warpField(pos.add(vec3f$1(__tsover_mul(t, QX), __tsover_mul(t, QY), QZ)));\n\t\tconst qy = warpField(pos.add(vec3f$1(Q2X, Q2Y, __tsover_mul(t, Q2Z))));\n\t\treturn pos.add(vec3f$1(qx, qy, 0).mul(warpAmount));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"warpAmount\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"warpField\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"QX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"QY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"QZ\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"warpField\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"Q2X\",\n\t\t\t\t\t\t\t\t\t\"Q2Y\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"Q2Z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"warpAmount\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"warpField\": () =\u003e warpField,\n\t\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\t\"QX\": () =\u003e QX,\n\t\t\t\"QY\": () =\u003e QY,\n\t\t\t\"QZ\": () =\u003e QZ,\n\t\t\t\"Q2X\": () =\u003e Q2X,\n\t\t\t\"Q2Y\": () =\u003e Q2Y,\n\t\t\t\"Q2Z\": () =\u003e Q2Z\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(name);\n\twarpCache.set(key, built);\n\treturn built;\n}\nvar warpCache = /* @__PURE__ */ new Map();\nconst radialFalloffMask = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tvec2f$1,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, center, radius, falloff) =\u003e {\n\t\"use gpu\";\n\tconst aspectUV = vec2f$1(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f$1(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst dist = length(aspectUV.sub(centerPos));\n\treturn smoothstep(radius, __tsover_add(radius, falloff), dist);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"falloff\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t],\n\t\t\t\t\t\"dist\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nvar SCATTER_DRIFT_RATE = .11;\nvar GOLDEN_CONJ = .6180339887;\nvar SCATTER_MAX = 8;\nconst spiralScatter = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi, count, seed, drift, aspect, animTime) =\u003e {\n\t\"use gpu\";\n\tconst theta = __tsover_add(__tsover_mul(fi, 2.3999632297286535), __tsover_mul(hash11(__tsover_add(__tsover_mul(seed, .7311), 1.618)), TAU));\n\tconst r = sqrt(__tsover_div(__tsover_add(fi, .5), count));\n\tconst j = hash22(vec2f$1(__tsover_add(__tsover_mul(fi, 3.77), .917), __tsover_add(__tsover_mul(seed, 1.093), 2.236))).sub(.5).mul(.26);\n\tconst ph = hash22(vec2f$1(__tsover_add(__tsover_mul(fi, 7.13), 1.618), __tsover_add(__tsover_mul(seed, .531), 3.71))).mul(TAU);\n\tconst w1 = __tsover_add(.5, __tsover_mul(hash11(__tsover_add(__tsover_add(__tsover_mul(fi, 5.417), __tsover_mul(seed, .291)), .917)), .7));\n\tconst dx = sin(__tsover_add(__tsover_mul(__tsover_mul(animTime, SCATTER_DRIFT_RATE), w1), ph.x));\n\tconst dy = cos(__tsover_add(__tsover_mul(__tsover_mul(__tsover_mul(animTime, SCATTER_DRIFT_RATE), w1), 1.37), ph.y));\n\tconst nx = __tsover_add(__tsover_add(__tsover_mul(__tsover_mul(cos(theta), r), .62), j.x), __tsover_mul(__tsover_mul(dx, drift), .16));\n\tconst ny = __tsover_add(__tsover_add(__tsover_mul(__tsover_mul(sin(theta), r), .62), j.y), __tsover_mul(__tsover_mul(dy, drift), .16));\n\treturn vec2f$1(__tsover_mul(__tsover_add(.5, nx), aspect), __tsover_add(.5, ny));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fi\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"count\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"drift\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"theta\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"GOLDEN\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.7311\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1.618\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"count\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"j\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3.77\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.917\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.093\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2.236\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.26\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ph\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"hash22\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"7.13\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1.618\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.531\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"3.71\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"TAU\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"5.417\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.291\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.917\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"SCATTER_DRIFT_RATE\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"w1\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ph\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"SCATTER_DRIFT_RATE\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"w1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.37\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ph\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.62\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"j\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.16\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.62\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"j\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.16\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"nx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"ny\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"GOLDEN\": () =\u003e 2.3999632297286535,\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"hash22\": () =\u003e hash22,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"SCATTER_DRIFT_RATE\": () =\u003e SCATTER_DRIFT_RATE,\n\t\t\"std.cos\": () =\u003e cos\n\t}\n}) \u0026\u0026 $.f)({}));\nconst scatterFieldAnchored = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tarrayOf(vec4f$1, SCATTER_MAX / 2),\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, count, seed, anchors, power) =\u003e {\n\t\"use gpu\";\n\tlet num = f32(0);\n\tlet den = f32(0);\n\tconst seedShuffle = hash11(__tsover_add(__tsover_mul(seed, .531), .77));\n\tfor (let i = 0; i \u003c SCATTER_MAX; i++) {\n\t\tconst fi = f32(i);\n\t\tconst active = select(f32(0), f32(1), fi \u003c __tsover_sub(count, .5));\n\t\tconst pair = anchors[__tsover_div(i, 2)];\n\t\tconst anchor = select(pair.xy, pair.zw, (i \u0026 1) === 1);\n\t\tconst dist = max(length(q.sub(anchor)), .01);\n\t\tconst w = __tsover_div(active, pow(dist, power));\n\t\tconst ti = fract(__tsover_add(__tsover_mul(fi, GOLDEN_CONJ), seedShuffle));\n\t\tnum = __tsover_add(num, __tsover_mul(w, ti));\n\t\tden = __tsover_add(den, w);\n\t}\n\treturn __tsover_div(num, max(den, 1e-6));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"q\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"count\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"anchors\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"power\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"num\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"den\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seedShuffle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.531\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.77\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"SCATTER_MAX\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"active\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"pair\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\"anchors\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"anchor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pair\",\n\t\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pair\",\n\t\t\t\t\t\t\t\t\t\"zw\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"anchor\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [5, \"0.01\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"active\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t\t[\"dist\", \"power\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ti\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"GOLDEN_CONJ\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"seedShuffle\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"num\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"num\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ti\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"den\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"den\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"num\",\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"den\", [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"SCATTER_MAX\": () =\u003e SCATTER_MAX,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"GOLDEN_CONJ\": () =\u003e GOLDEN_CONJ\n\t}\n}) \u0026\u0026 $.f)({}));\nconst scatterField = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, count, seed, drift, aspect, animTime, power) =\u003e {\n\t\"use gpu\";\n\tlet num = f32(0);\n\tlet den = f32(0);\n\tfor (let i = 0; i \u003c SCATTER_MAX; i++) {\n\t\tconst fi = f32(i);\n\t\tconst active = select(f32(0), f32(1), fi \u003c __tsover_sub(count, .5));\n\t\tconst anchor = spiralScatter(fi, count, seed, drift, aspect, animTime);\n\t\tconst dist = max(length(q.sub(anchor)), .01);\n\t\tconst w = __tsover_div(active, pow(dist, power));\n\t\tconst ti = fract(__tsover_add(__tsover_mul(fi, GOLDEN_CONJ), hash11(__tsover_add(__tsover_mul(seed, .531), .77))));\n\t\tnum = __tsover_add(num, __tsover_mul(w, ti));\n\t\tden = __tsover_add(den, w);\n\t}\n\treturn __tsover_div(num, max(den, 1e-6));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"q\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"count\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"drift\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"power\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"num\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"den\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"SCATTER_MAX\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"active\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"anchor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"spiralScatter\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\"drift\",\n\t\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\t\"animTime\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"anchor\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [5, \"0.01\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"active\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t\t[\"dist\", \"power\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ti\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"GOLDEN_CONJ\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hash11\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.531\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.77\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"num\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"num\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ti\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"den\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"den\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"num\",\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"den\", [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"SCATTER_MAX\": () =\u003e SCATTER_MAX,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"spiralScatter\": () =\u003e spiralScatter,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"GOLDEN_CONJ\": () =\u003e GOLDEN_CONJ,\n\t\t\"hash11\": () =\u003e hash11\n\t}\n}) \u0026\u0026 $.f)({}));\nconst chainedWarpStep = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tvec2f$1,\n\tvec2f$1,\n\tf32,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, scale, z, offA, offB, k, strength) =\u003e {\n\t\"use gpu\";\n\tconst wp = vec3f$1(__tsover_mul(pos.x, scale), __tsover_mul(pos.y, scale), z);\n\tconst nx = mxNoiseFloat3(wp.add(vec3f$1(offA.x, offA.y, 0)));\n\tconst ny = mxNoiseFloat3(wp.add(vec3f$1(offB.x, offB.y, 0)));\n\treturn vec4f$1(__tsover_add(pos.x, __tsover_mul(__tsover_mul(nx, k), strength)), __tsover_add(pos.y, __tsover_mul(__tsover_mul(ny, k), strength)), nx, ny);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"z\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"k\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxNoiseFloat3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"wp\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"offA\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"offA\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxNoiseFloat3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"wp\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"nx\",\n\t\t\t\t\t\"ny\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"mxNoiseFloat3\": () =\u003e mxNoiseFloat3,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar colorMixing_exports = /* @__PURE__ */ __export$1({\n\tMixStep: () =\u003e MixStep,\n\tconvertMixSpaceToP3: () =\u003e convertMixSpaceToP3,\n\tconvertP3ToMixSpace: () =\u003e convertP3ToMixSpace,\n\tconvertP3ToMixSpaceCPU: () =\u003e convertP3ToMixSpaceCPU,\n\thslToRgb: () =\u003e hslToRgb,\n\thsvToRgb: () =\u003e hsvToRgb,\n\tlabToLch: () =\u003e labToLch,\n\tlabToRgb: () =\u003e labToRgb,\n\tlchToLab: () =\u003e lchToLab,\n\tmixColors: () =\u003e mixColors,\n\tmixColorsHsl: () =\u003e mixColorsHsl,\n\tmixColorsHsv: () =\u003e mixColorsHsv,\n\tmixColorsLch: () =\u003e mixColorsLch,\n\tmixColorsLinear: () =\u003e mixColorsLinear,\n\tmixColorsOklab: () =\u003e mixColorsOklab,\n\tmixColorsOklch: () =\u003e mixColorsOklch,\n\tmixColorsVariants: () =\u003e mixColorsVariants,\n\tmixPreconvertedColors: () =\u003e mixPreconvertedColors,\n\tmixPreconvertedHsl: () =\u003e mixPreconvertedHsl,\n\tmixPreconvertedHsv: () =\u003e mixPreconvertedHsv,\n\tmixPreconvertedInSpace: () =\u003e mixPreconvertedInSpace,\n\tmixPreconvertedLch: () =\u003e mixPreconvertedLch,\n\tmixPreconvertedLinear: () =\u003e mixPreconvertedLinear,\n\tmixPreconvertedOklab: () =\u003e mixPreconvertedOklab,\n\tmixPreconvertedOklch: () =\u003e mixPreconvertedOklch,\n\tmixPreconvertedVariants: () =\u003e mixPreconvertedVariants,\n\tmixToward: () =\u003e mixToward,\n\toklabToOklch: () =\u003e oklabToOklch,\n\toklabToRgb: () =\u003e oklabToRgb,\n\toklchToOklab: () =\u003e oklchToOklab,\n\tp3ToSRGB: () =\u003e p3ToSRGB,\n\trgbToHsl: () =\u003e rgbToHsl,\n\trgbToHsv: () =\u003e rgbToHsv,\n\trgbToLab: () =\u003e rgbToLab,\n\trgbToOklab: () =\u003e rgbToOklab,\n\tsRGBToP3: () =\u003e sRGBToP3,\n\tselectRGBBySector: () =\u003e selectRGBBySector\n});\nvar EPSILON = 1e-4;\nvar PI_OVER_3 = 1.0471975512;\nvar LAB_DELTA = 6 / 29;\nvar LAB_KAPPA = 500;\nvar LAB_LAMBDA = 200;\nvar LAB_DELTA3 = LAB_DELTA * LAB_DELTA * LAB_DELTA;\nvar LAB_OFFSET = 4 / 29;\nvar LAB_FWD_SLOPE = 1 / (3 * LAB_DELTA * LAB_DELTA);\nvar LAB_INV_SLOPE = 3 * LAB_DELTA * LAB_DELTA;\nconst p3ToSRGB = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p3) =\u003e {\n\t\"use gpu\";\n\treturn vec3f$1(__tsover_sub(__tsover_sub(__tsover_mul(p3.x, 1.2249401), __tsover_mul(p3.y, .2249404)), __tsover_mul(p3.z, 0)), __tsover_add(__tsover_add(__tsover_mul(p3.x, -.0420569), __tsover_mul(p3.y, 1.0420571)), __tsover_mul(p3.z, 0)), __tsover_add(__tsover_sub(__tsover_mul(p3.x, -.0196376), __tsover_mul(p3.y, .0786361)), __tsover_mul(p3.z, 1.0982735)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p3\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.2249401\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.2249404\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.0420569\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.0420571\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.0196376\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0786361\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.0982735\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f$1 }\n}) \u0026\u0026 $.f)({}));\nconst sRGBToP3 = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((srgb) =\u003e {\n\t\"use gpu\";\n\treturn vec3f$1(__tsover_add(__tsover_add(__tsover_mul(srgb.x, .8224621), __tsover_mul(srgb.y, .177538)), __tsover_mul(srgb.z, 0)), __tsover_add(__tsover_add(__tsover_mul(srgb.x, .0331941), __tsover_mul(srgb.y, .9668058)), __tsover_mul(srgb.z, 0)), __tsover_add(__tsover_add(__tsover_mul(srgb.x, .0170826), __tsover_mul(srgb.y, .0723974)), __tsover_mul(srgb.z, .9105199)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"srgb\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.8224621\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.177538\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0331941\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.9668058\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0170826\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0723974\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.9105199\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f$1 }\n}) \u0026\u0026 $.f)({}));\nconst rgbToOklab = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\tconst r = rgb.x;\n\tconst g = rgb.y;\n\tconst b = rgb.z;\n\tconst l = __tsover_add(__tsover_add(__tsover_mul(r, .4122214708), __tsover_mul(g, .5363325363)), __tsover_mul(b, .0514459929));\n\tconst m = __tsover_add(__tsover_mul(r, .2119034982), __tsover_add(__tsover_mul(g, .6806995451), __tsover_mul(b, .1073969566)));\n\tconst s = __tsover_add(__tsover_add(__tsover_mul(r, .0883024619), __tsover_mul(g, .2817188376)), __tsover_mul(b, .6299787005));\n\tconst l_ = __tsover_mul(sign(l), pow(abs(l), __tsover_div(1, 3)));\n\tconst m_ = __tsover_mul(sign(m), pow(abs(m), __tsover_div(1, 3)));\n\tconst s_ = __tsover_mul(sign(s), pow(abs(s), __tsover_div(1, 3)));\n\treturn vec3f$1(__tsover_sub(__tsover_add(__tsover_mul(l_, .2104542553), __tsover_mul(m_, .793617785)), __tsover_mul(s_, .0040720468)), __tsover_add(__tsover_sub(__tsover_mul(l_, 1.9779984951), __tsover_mul(m_, 2.428592205)), __tsover_mul(s_, .4505937099)), __tsover_sub(__tsover_add(__tsover_mul(l_, .0259040371), __tsover_mul(m_, .7827717662)), __tsover_mul(s_, .808675766)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.4122214708\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5363325363\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.0514459929\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.2119034982\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.6806995451\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.1073969566\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0883024619\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.2817188376\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.6299787005\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l_\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t[\"l\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"l\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m_\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t[\"m\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"m\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s_\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"l_\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.2104542553\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"m_\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.793617785\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s_\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0040720468\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"l_\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.9779984951\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"m_\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2.428592205\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s_\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.4505937099\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"l_\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.0259040371\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"m_\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.7827717662\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s_\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.808675766\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sign\": () =\u003e sign,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst oklabToRgb = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lab) =\u003e {\n\t\"use gpu\";\n\tconst L = lab.x;\n\tconst a = lab.y;\n\tconst b = lab.z;\n\tconst l_ = __tsover_add(__tsover_add(L, __tsover_mul(a, .3963377774)), __tsover_mul(b, .2158037573));\n\tconst m_ = __tsover_sub(__tsover_sub(L, __tsover_mul(a, .1055613458)), __tsover_mul(b, .0638541728));\n\tconst s_ = __tsover_sub(__tsover_sub(L, __tsover_mul(a, .0894841775)), __tsover_mul(b, 1.291485548));\n\tconst l = pow(l_, 3);\n\tconst m = pow(m_, 3);\n\tconst s = pow(s_, 3);\n\treturn vec3f$1(__tsover_add(__tsover_sub(__tsover_mul(l, 4.0767416621), __tsover_mul(m, 3.3077115913)), __tsover_mul(s, .2309699292)), __tsover_sub(__tsover_add(__tsover_mul(l, -1.2684380046), __tsover_mul(m, 2.6097574011)), __tsover_mul(s, .3413193965)), __tsover_add(__tsover_sub(__tsover_mul(l, -.0041960863), __tsover_mul(m, .7034186147)), __tsover_mul(s, 1.707614701)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lab\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l_\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.3963377774\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.2158037573\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m_\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.1055613458\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.0638541728\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s_\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0894841775\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.291485548\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"l_\", [5, \"3\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"m_\", [5, \"3\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"s_\", [5, \"3\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"4.0767416621\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3.3077115913\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.2309699292\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1.2684380046\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2.6097574011\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.3413193965\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.0041960863\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.7034186147\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.707614701\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst oklabToOklch = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lab) =\u003e {\n\t\"use gpu\";\n\tconst L = lab.x;\n\tconst a = lab.y;\n\tconst b = lab.z;\n\treturn vec3f$1(L, sqrt(__tsover_add(__tsover_mul(a, a), __tsover_mul(b, b))), atan2(b, a));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lab\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"C\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[\"b\", \"a\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"L\",\n\t\t\t\t\t\"C\",\n\t\t\t\t\t\"h\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst oklchToOklab = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lch) =\u003e {\n\t\"use gpu\";\n\tconst L = lch.x;\n\tconst C = lch.y;\n\tconst h = lch.z;\n\treturn vec3f$1(L, __tsover_mul(C, cos(h)), __tsover_mul(C, sin(h)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lch\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lch\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"C\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lch\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lch\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"L\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"C\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"h\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"C\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"h\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst selectRGBBySector = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((c, x, sector) =\u003e {\n\t\"use gpu\";\n\tlet r = f32(0);\n\tlet g = f32(0);\n\tlet b = f32(0);\n\tif (sector \u003c 1) {\n\t\tr = c;\n\t\tg = x;\n\t} else if (sector \u003c 2) {\n\t\tr = x;\n\t\tg = c;\n\t} else if (sector \u003c 3) {\n\t\tg = c;\n\t\tb = x;\n\t} else if (sector \u003c 4) {\n\t\tg = x;\n\t\tb = c;\n\t} else if (sector \u003c 5) {\n\t\tr = x;\n\t\tb = c;\n\t} else {\n\t\tr = c;\n\t\tb = x;\n\t}\n\treturn vec3f$1(r, g, b);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sector\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sector\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t2,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t\"c\"\n\t\t\t\t], [\n\t\t\t\t\t2,\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]]],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sector\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\"c\"\n\t\t\t\t\t]]],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sector\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"c\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sector\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\"c\"\n\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sector\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\"c\"\n\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\"c\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rgbToHsl = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\tconst r = rgb.x;\n\tconst g = rgb.y;\n\tconst b = rgb.z;\n\tconst maxVal = max(max(r, g), b);\n\tconst minVal = min(min(r, g), b);\n\tconst delta = __tsover_sub(maxVal, minVal);\n\tconst l = __tsover_mul(__tsover_add(maxVal, minVal), .5);\n\tconst satDenom = max(__tsover_sub(1, abs(__tsover_sub(__tsover_mul(l, 2), 1))), EPSILON);\n\tconst s = __tsover_div(delta, satDenom);\n\tconst isRMax = maxVal === r;\n\tconst isGMax = maxVal === g;\n\tconst hueR = __tsover_div(__tsover_sub(g, b), max(delta, EPSILON));\n\tconst hueG = __tsover_add(2, __tsover_div(__tsover_sub(b, r), max(delta, EPSILON)));\n\tconst hue$1 = select(select(__tsover_add(4, __tsover_div(__tsover_sub(r, g), max(delta, EPSILON))), hueG, isGMax), hueR, isRMax);\n\treturn vec3f$1(__tsover_mul(hue$1, PI_OVER_3), s, l);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxVal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"r\", \"g\"]\n\t\t\t\t\t], \"b\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"minVal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"r\", \"g\"]\n\t\t\t\t\t], \"b\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"maxVal\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"minVal\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"maxVal\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"minVal\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"satDenom\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"EPSILON\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"delta\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"satDenom\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isRMax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"maxVal\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isGMax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"maxVal\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t\"g\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hueR\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"delta\", \"EPSILON\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hueG\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"delta\", \"EPSILON\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hueB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"delta\", \"EPSILON\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hue\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"hueB\",\n\t\t\t\t\t\t\t\t\"hueG\",\n\t\t\t\t\t\t\t\t\"isGMax\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hueR\",\n\t\t\t\t\t\t\"isRMax\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hue\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"PI_OVER_3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"l\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"EPSILON\": () =\u003e EPSILON,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"PI_OVER_3\": () =\u003e PI_OVER_3,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hslToRgb = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((hsl) =\u003e {\n\t\"use gpu\";\n\tconst h = hsl.x;\n\tconst s = hsl.y;\n\tconst l = hsl.z;\n\tconst c = __tsover_mul(s, __tsover_sub(1, abs(__tsover_sub(__tsover_mul(l, 2), 1))));\n\tconst hPrime = __tsover_div(h, PI_OVER_3);\n\tconst x = __tsover_mul(c, __tsover_sub(1, abs(__tsover_sub(mod(hPrime, 2), 1))));\n\tconst m = __tsover_sub(l, __tsover_mul(c, .5));\n\treturn selectRGBBySector(c, x, floor(hPrime)).add(m);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"hsl\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"hsl\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"hsl\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"hsl\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hPrime\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"PI_OVER_3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mod\",\n\t\t\t\t\t\t\t\t\t[\"hPrime\", [5, \"2\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"l\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sector\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"hPrime\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"selectRGBBySector\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"sector\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"m\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"PI_OVER_3\": () =\u003e PI_OVER_3,\n\t\t\"std.mod\": () =\u003e mod,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"selectRGBBySector\": () =\u003e selectRGBBySector\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rgbToHsv = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\tconst r = rgb.x;\n\tconst g = rgb.y;\n\tconst b = rgb.z;\n\tconst maxVal = max(max(r, g), b);\n\tconst minVal = min(min(r, g), b);\n\tconst delta = __tsover_sub(maxVal, minVal);\n\tconst v = maxVal;\n\tconst s = __tsover_div(delta, max(maxVal, EPSILON));\n\tconst isRMax = maxVal === r;\n\tconst isGMax = maxVal === g;\n\tconst hueR = __tsover_div(__tsover_sub(g, b), max(delta, EPSILON));\n\tconst hueG = __tsover_add(2, __tsover_div(__tsover_sub(b, r), max(delta, EPSILON)));\n\tconst hue$1 = select(select(__tsover_add(4, __tsover_div(__tsover_sub(r, g), max(delta, EPSILON))), hueG, isGMax), hueR, isRMax);\n\treturn vec3f$1(__tsover_mul(hue$1, PI_OVER_3), s, v);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxVal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"r\", \"g\"]\n\t\t\t\t\t], \"b\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"minVal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"r\", \"g\"]\n\t\t\t\t\t], \"b\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"maxVal\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"minVal\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t\"maxVal\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"delta\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"maxVal\", \"EPSILON\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isRMax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"maxVal\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isGMax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"maxVal\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t\"g\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hueR\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"delta\", \"EPSILON\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hueG\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"delta\", \"EPSILON\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hueB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"delta\", \"EPSILON\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hue\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"hueB\",\n\t\t\t\t\t\t\t\t\"hueG\",\n\t\t\t\t\t\t\t\t\"isGMax\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hueR\",\n\t\t\t\t\t\t\"isRMax\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hue\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"PI_OVER_3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"v\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"EPSILON\": () =\u003e EPSILON,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"PI_OVER_3\": () =\u003e PI_OVER_3,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hsvToRgb = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((hsv) =\u003e {\n\t\"use gpu\";\n\tconst h = hsv.x;\n\tconst s = hsv.y;\n\tconst v = hsv.z;\n\tconst c = __tsover_mul(v, s);\n\tconst hPrime = __tsover_div(h, PI_OVER_3);\n\tconst x = __tsover_mul(c, __tsover_sub(1, abs(__tsover_sub(mod(hPrime, 2), 1))));\n\tconst m = __tsover_sub(v, c);\n\treturn selectRGBBySector(c, x, floor(hPrime)).add(m);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"hsv\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"hsv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"hsv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"hsv\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"s\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hPrime\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"PI_OVER_3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mod\",\n\t\t\t\t\t\t\t\t\t[\"hPrime\", [5, \"2\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sector\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"hPrime\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"selectRGBBySector\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"sector\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"m\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"PI_OVER_3\": () =\u003e PI_OVER_3,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.mod\": () =\u003e mod,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"selectRGBBySector\": () =\u003e selectRGBBySector\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rgbToLab = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\tconst r = rgb.x;\n\tconst g = rgb.y;\n\tconst b = rgb.z;\n\tconst x = __tsover_add(__tsover_add(__tsover_mul(r, .4124564), __tsover_mul(g, .3575761)), __tsover_mul(b, .1804375));\n\tconst y = __tsover_add(__tsover_add(__tsover_mul(r, .2126729), __tsover_mul(g, .7151522)), __tsover_mul(b, .072175));\n\tconst z = __tsover_add(__tsover_add(__tsover_mul(r, .0193339), __tsover_mul(g, .119192)), __tsover_mul(b, .9503041));\n\tconst xn = __tsover_div(x, .95047);\n\tconst yn = __tsover_div(y, 1);\n\tconst zn = __tsover_div(z, 1.08883);\n\tconst fx = select(__tsover_add(__tsover_mul(xn, LAB_FWD_SLOPE), LAB_OFFSET), pow(xn, __tsover_div(1, 3)), xn \u003e LAB_DELTA3);\n\tconst fy = select(__tsover_add(__tsover_mul(yn, LAB_FWD_SLOPE), LAB_OFFSET), pow(yn, __tsover_div(1, 3)), yn \u003e LAB_DELTA3);\n\tconst fz = select(__tsover_add(__tsover_mul(zn, LAB_FWD_SLOPE), LAB_OFFSET), pow(zn, __tsover_div(1, 3)), zn \u003e LAB_DELTA3);\n\treturn vec3f$1(__tsover_sub(__tsover_mul(fy, 116), 16), __tsover_mul(__tsover_sub(fx, fy), LAB_KAPPA), __tsover_mul(__tsover_sub(fy, fz), LAB_LAMBDA));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.4124564\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.3575761\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1804375\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.2126729\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.7151522\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.072175\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0193339\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.119192\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.9503041\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"xn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"0.95047\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"yn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"y\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"zn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"z\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"1.08883\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"xn\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"LAB_FWD_SLOPE\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"LAB_OFFSET\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[\"xn\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"xn\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"LAB_DELTA3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"yn\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"LAB_FWD_SLOPE\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"LAB_OFFSET\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[\"yn\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"yn\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"LAB_DELTA3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fz\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"zn\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"LAB_FWD_SLOPE\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"LAB_OFFSET\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[\"zn\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"zn\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"LAB_DELTA3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"116\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"16\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"LAB_KAPPA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bLab\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"fz\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"LAB_LAMBDA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"L\",\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"bLab\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"LAB_FWD_SLOPE\": () =\u003e LAB_FWD_SLOPE,\n\t\t\"LAB_OFFSET\": () =\u003e LAB_OFFSET,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"LAB_DELTA3\": () =\u003e LAB_DELTA3,\n\t\t\"LAB_KAPPA\": () =\u003e LAB_KAPPA,\n\t\t\"LAB_LAMBDA\": () =\u003e LAB_LAMBDA,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst labToRgb = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lab) =\u003e {\n\t\"use gpu\";\n\tconst L = lab.x;\n\tconst a = lab.y;\n\tconst b = lab.z;\n\tconst fy = __tsover_div(__tsover_add(L, 16), 116);\n\tconst fx = __tsover_add(__tsover_div(a, LAB_KAPPA), fy);\n\tconst fz = __tsover_sub(fy, __tsover_div(b, LAB_LAMBDA));\n\tconst xn = select(__tsover_mul(__tsover_sub(fx, LAB_OFFSET), LAB_INV_SLOPE), pow(fx, 3), fx \u003e LAB_DELTA);\n\tconst yn = select(__tsover_mul(__tsover_sub(fy, LAB_OFFSET), LAB_INV_SLOPE), pow(fy, 3), fy \u003e LAB_DELTA);\n\tconst zn = select(__tsover_mul(__tsover_sub(fz, LAB_OFFSET), LAB_INV_SLOPE), pow(fz, 3), fz \u003e LAB_DELTA);\n\tconst x = __tsover_mul(xn, .95047);\n\tconst y = __tsover_mul(yn, 1);\n\tconst z = __tsover_mul(zn, 1.08883);\n\treturn vec3f$1(__tsover_sub(__tsover_sub(__tsover_mul(x, 3.2404542), __tsover_mul(y, 1.5371385)), __tsover_mul(z, .4985314)), __tsover_add(__tsover_add(__tsover_mul(x, -.969266), __tsover_mul(y, 1.8760108)), __tsover_mul(z, .041556)), __tsover_add(__tsover_sub(__tsover_mul(x, .0556434), __tsover_mul(y, .2040259)), __tsover_mul(z, 1.0572252)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lab\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"16\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"116\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"LAB_KAPPA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"fy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"LAB_LAMBDA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"xn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"LAB_OFFSET\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"LAB_INV_SLOPE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[\"fx\", [5, \"3\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"LAB_DELTA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"yn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"LAB_OFFSET\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"LAB_INV_SLOPE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[\"fy\", [5, \"3\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"LAB_DELTA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"zn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"LAB_OFFSET\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"LAB_INV_SLOPE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[\"fz\", [5, \"3\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"LAB_DELTA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"xn\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.95047\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"yn\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"zn\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1.08883\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"3.2404542\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.5371385\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.4985314\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.969266\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.8760108\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.041556\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bRgb\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.0556434\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.2040259\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.0572252\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"bRgb\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"LAB_KAPPA\": () =\u003e LAB_KAPPA,\n\t\t\"LAB_LAMBDA\": () =\u003e LAB_LAMBDA,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"LAB_OFFSET\": () =\u003e LAB_OFFSET,\n\t\t\"LAB_INV_SLOPE\": () =\u003e LAB_INV_SLOPE,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"LAB_DELTA\": () =\u003e LAB_DELTA,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst labToLch = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lab) =\u003e {\n\t\"use gpu\";\n\tconst L = lab.x;\n\tconst a = lab.y;\n\tconst b = lab.z;\n\treturn vec3f$1(L, sqrt(__tsover_add(__tsover_mul(a, a), __tsover_mul(b, b))), atan2(b, a));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lab\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lab\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"C\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[\"b\", \"a\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"L\",\n\t\t\t\t\t\"C\",\n\t\t\t\t\t\"h\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst lchToLab = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lch) =\u003e {\n\t\"use gpu\";\n\tconst L = lch.x;\n\tconst C = lch.y;\n\tconst h = lch.z;\n\treturn vec3f$1(L, __tsover_mul(C, cos(h)), __tsover_mul(C, sin(h)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lch\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lch\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"C\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lch\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"lch\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"L\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"C\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"h\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"C\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"h\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nvar awMix = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((a, b, wA, wB, sw) =\u003e {\n\t\"use gpu\";\n\treturn a.mul(wA).add(b.mul(wB)).div(sw);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sw\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"wA\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"wB\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"div\"\n\t\t\t],\n\t\t\t[\"sw\"]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst mixColorsLinear = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colorA, colorB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(colorA.w, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(colorB.w, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\tconst safeWeight = max(totalWeight, .001);\n\treturn vec4f$1(awMix(colorA.xyz, colorB.xyz, weightA, weightB, safeWeight), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixColorsOklch = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colorA, colorB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(colorA.w, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(colorB.w, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\tconst safeWeight = max(totalWeight, .001);\n\treturn vec4f$1(sRGBToP3(oklabToRgb(oklchToOklab(awMix(oklabToOklch(rgbToOklab(p3ToSRGB(colorA.xyz))), oklabToOklch(rgbToOklab(p3ToSRGB(colorB.xyz))), weightA, weightB, safeWeight)))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oklchA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"oklabToOklch\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oklchB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"oklabToOklch\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"oklchA\",\n\t\t\t\t\t\t\"oklchB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"oklabToRgb\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"oklchToOklab\",\n\t\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"oklabToOklch\": () =\u003e oklabToOklch,\n\t\t\"rgbToOklab\": () =\u003e rgbToOklab,\n\t\t\"p3ToSRGB\": () =\u003e p3ToSRGB,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"oklabToRgb\": () =\u003e oklabToRgb,\n\t\t\"oklchToOklab\": () =\u003e oklchToOklab,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixColorsOklab = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colorA, colorB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(colorA.w, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(colorB.w, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\tconst safeWeight = max(totalWeight, .001);\n\treturn vec4f$1(sRGBToP3(oklabToRgb(awMix(rgbToOklab(p3ToSRGB(colorA.xyz)), rgbToOklab(p3ToSRGB(colorB.xyz)), weightA, weightB, safeWeight))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oklabA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oklabB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"oklabA\",\n\t\t\t\t\t\t\"oklabB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"oklabToRgb\",\n\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"rgbToOklab\": () =\u003e rgbToOklab,\n\t\t\"p3ToSRGB\": () =\u003e p3ToSRGB,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"oklabToRgb\": () =\u003e oklabToRgb,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixColorsHsl = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colorA, colorB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(colorA.w, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(colorB.w, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\tconst safeWeight = max(totalWeight, .001);\n\treturn vec4f$1(sRGBToP3(hslToRgb(awMix(rgbToHsl(p3ToSRGB(colorA.xyz)), rgbToHsl(p3ToSRGB(colorB.xyz)), weightA, weightB, safeWeight))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hslA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToHsl\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hslB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToHsl\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"hslA\",\n\t\t\t\t\t\t\"hslB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"hslToRgb\",\n\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"rgbToHsl\": () =\u003e rgbToHsl,\n\t\t\"p3ToSRGB\": () =\u003e p3ToSRGB,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"hslToRgb\": () =\u003e hslToRgb,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixColorsHsv = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colorA, colorB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(colorA.w, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(colorB.w, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\tconst safeWeight = max(totalWeight, .001);\n\treturn vec4f$1(sRGBToP3(hsvToRgb(awMix(rgbToHsv(p3ToSRGB(colorA.xyz)), rgbToHsv(p3ToSRGB(colorB.xyz)), weightA, weightB, safeWeight))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hsvA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToHsv\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hsvB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToHsv\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"hsvA\",\n\t\t\t\t\t\t\"hsvB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"hsvToRgb\",\n\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"rgbToHsv\": () =\u003e rgbToHsv,\n\t\t\"p3ToSRGB\": () =\u003e p3ToSRGB,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"hsvToRgb\": () =\u003e hsvToRgb,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixColorsLch = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colorA, colorB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(colorA.w, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(colorB.w, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\tconst safeWeight = max(totalWeight, .001);\n\treturn vec4f$1(sRGBToP3(labToRgb(lchToLab(awMix(labToLch(rgbToLab(p3ToSRGB(colorA.xyz))), labToLch(rgbToLab(p3ToSRGB(colorB.xyz))), weightA, weightB, safeWeight)))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lchA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"labToLch\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rgbToLab\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lchB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"labToLch\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rgbToLab\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"lchA\",\n\t\t\t\t\t\t\"lchB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"labToRgb\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"lchToLab\",\n\t\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"labToLch\": () =\u003e labToLch,\n\t\t\"rgbToLab\": () =\u003e rgbToLab,\n\t\t\"p3ToSRGB\": () =\u003e p3ToSRGB,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"labToRgb\": () =\u003e labToRgb,\n\t\t\"lchToLab\": () =\u003e lchToLab,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixColorsVariants = {\n\t0: mixColorsLinear,\n\t1: mixColorsOklch,\n\t2: mixColorsOklab,\n\t3: mixColorsHsl,\n\t4: mixColorsHsv,\n\t5: mixColorsLch\n};\nconst mixColors = (colorA, colorB, t, colorSpaceMode) =\u003e {\n\treturn (mixColorsVariants[colorSpaceMode] ?? mixColorsLinear)(colorA, colorB, t);\n};\nconst convertP3ToMixSpace = (p3, colorSpaceMode) =\u003e {\n\tswitch (colorSpaceMode) {\n\t\tcase 1: return oklabToOklch(rgbToOklab(p3ToSRGB(p3)));\n\t\tcase 2: return rgbToOklab(p3ToSRGB(p3));\n\t\tcase 3: return rgbToHsl(p3ToSRGB(p3));\n\t\tcase 4: return rgbToHsv(p3ToSRGB(p3));\n\t\tcase 5: return labToLch(rgbToLab(p3ToSRGB(p3)));\n\t\tdefault: return p3;\n\t}\n};\nconst convertMixSpaceToP3 = (mixed, colorSpaceMode) =\u003e {\n\tswitch (colorSpaceMode) {\n\t\tcase 1: return sRGBToP3(oklabToRgb(oklchToOklab(mixed)));\n\t\tcase 2: return sRGBToP3(oklabToRgb(mixed));\n\t\tcase 3: return sRGBToP3(hslToRgb(mixed));\n\t\tcase 4: return sRGBToP3(hsvToRgb(mixed));\n\t\tcase 5: return sRGBToP3(labToRgb(lchToLab(mixed)));\n\t\tdefault: return mixed;\n\t}\n};\nconst MixStep = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tconv: vec3f$1,\n\talpha: f32\n}), \"MixStep\");\nconst mixPreconvertedInSpace = typegpu_default.fn([\n\tvec3f$1,\n\tf32,\n\tvec3f$1,\n\tf32,\n\tf32\n], MixStep)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((convA, alphaA, convB, alphaB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(alphaA, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(alphaB, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\treturn MixStep({\n\t\tconv: awMix(convA, convB, weightA, weightB, max(totalWeight, .001)),\n\t\talpha: totalWeight\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaA\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaB\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"MixStep\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"conv\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"awMix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"convA\",\n\t\t\t\t\t\t\t\"convB\",\n\t\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"alpha\": \"totalWeight\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"MixStep\": () =\u003e MixStep,\n\t\t\"awMix\": () =\u003e awMix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixPreconvertedLinear = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((convA, convB, alphaA, alphaB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(alphaA, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(alphaB, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\treturn vec4f$1(awMix(convA, convB, weightA, weightB, max(totalWeight, .001)), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaA\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaB\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"convA\",\n\t\t\t\t\t\t\"convB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"mixed\", \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixPreconvertedOklch = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((convA, convB, alphaA, alphaB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(alphaA, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(alphaB, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\treturn vec4f$1(sRGBToP3(oklabToRgb(oklchToOklab(awMix(convA, convB, weightA, weightB, max(totalWeight, .001))))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaA\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaB\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"convA\",\n\t\t\t\t\t\t\"convB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"oklabToRgb\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"oklchToOklab\",\n\t\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t], \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"oklabToRgb\": () =\u003e oklabToRgb,\n\t\t\"oklchToOklab\": () =\u003e oklchToOklab\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixPreconvertedOklab = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((convA, convB, alphaA, alphaB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(alphaA, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(alphaB, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\treturn vec4f$1(sRGBToP3(oklabToRgb(awMix(convA, convB, weightA, weightB, max(totalWeight, .001)))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaA\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaB\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"convA\",\n\t\t\t\t\t\t\"convB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"oklabToRgb\",\n\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t]]\n\t\t\t\t], \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"oklabToRgb\": () =\u003e oklabToRgb\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixPreconvertedHsl = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((convA, convB, alphaA, alphaB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(alphaA, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(alphaB, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\treturn vec4f$1(sRGBToP3(hslToRgb(awMix(convA, convB, weightA, weightB, max(totalWeight, .001)))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaA\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaB\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"convA\",\n\t\t\t\t\t\t\"convB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"hslToRgb\",\n\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t]]\n\t\t\t\t], \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"hslToRgb\": () =\u003e hslToRgb\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixPreconvertedHsv = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((convA, convB, alphaA, alphaB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(alphaA, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(alphaB, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\treturn vec4f$1(sRGBToP3(hsvToRgb(awMix(convA, convB, weightA, weightB, max(totalWeight, .001)))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaA\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaB\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"convA\",\n\t\t\t\t\t\t\"convB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"hsvToRgb\",\n\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t]]\n\t\t\t\t], \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"hsvToRgb\": () =\u003e hsvToRgb\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixPreconvertedLch = typegpu_default.fn([\n\tvec3f$1,\n\tvec3f$1,\n\tf32,\n\tf32,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((convA, convB, alphaA, alphaB, t) =\u003e {\n\t\"use gpu\";\n\tconst weightA = __tsover_mul(alphaA, __tsover_sub(1, t));\n\tconst weightB = __tsover_mul(alphaB, t);\n\tconst totalWeight = __tsover_add(weightA, weightB);\n\treturn vec4f$1(sRGBToP3(labToRgb(lchToLab(awMix(convA, convB, weightA, weightB, max(totalWeight, .001))))), totalWeight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaA\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"alphaB\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"weightB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"totalWeight\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"awMix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"convA\",\n\t\t\t\t\t\t\"convB\",\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"weightB\",\n\t\t\t\t\t\t\"safeWeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"labToRgb\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"lchToLab\",\n\t\t\t\t\t\t\t[\"mixed\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t], \"totalWeight\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"awMix\": () =\u003e awMix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"labToRgb\": () =\u003e labToRgb,\n\t\t\"lchToLab\": () =\u003e lchToLab\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mixPreconvertedVariants = {\n\t0: mixPreconvertedLinear,\n\t1: mixPreconvertedOklch,\n\t2: mixPreconvertedOklab,\n\t3: mixPreconvertedHsl,\n\t4: mixPreconvertedHsv,\n\t5: mixPreconvertedLch\n};\nconst mixPreconvertedColors = (convA, convB, alphaA, alphaB, t, colorSpaceMode) =\u003e {\n\treturn (mixPreconvertedVariants[colorSpaceMode] ?? mixPreconvertedLinear)(convA, convB, alphaA, alphaB, t);\n};\nvar EPS_CPU = 1e-4;\nvar LAB_DELTA_CPU = 6 / 29;\nvar p3ToSRGBCPU = (r, g, b) =\u003e [\n\tr * 1.2249401 - g * .2249404,\n\tr * -.0420569 + g * 1.0420571,\n\tr * -.0196376 - g * .0786361 + b * 1.0982735\n];\nvar rgbToOklabCPU = (r, g, b) =\u003e {\n\tconst l = Math.cbrt(r * .4122214708 + g * .5363325363 + b * .0514459929);\n\tconst m = Math.cbrt(r * .2119034982 + g * .6806995451 + b * .1073969566);\n\tconst s = Math.cbrt(r * .0883024619 + g * .2817188376 + b * .6299787005);\n\treturn [\n\t\tl * .2104542553 + m * .793617785 - s * .0040720468,\n\t\tl * 1.9779984951 - m * 2.428592205 + s * .4505937099,\n\t\tl * .0259040371 + m * .7827717662 - s * .808675766\n\t];\n};\nvar rgbHueCPU = (r, g, b, maxVal, delta) =\u003e {\n\tconst den = Math.max(delta, EPS_CPU);\n\treturn (maxVal === r ? (g - b) / den : maxVal === g ? 2 + (b - r) / den : 4 + (r - g) / den) * (Math.PI / 3);\n};\nvar rgbToHslCPU = (r, g, b) =\u003e {\n\tconst maxVal = Math.max(r, g, b);\n\tconst minVal = Math.min(r, g, b);\n\tconst delta = maxVal - minVal;\n\tconst l = (maxVal + minVal) * .5;\n\tconst s = delta / Math.max(1 - Math.abs(2 * l - 1), EPS_CPU);\n\treturn [\n\t\trgbHueCPU(r, g, b, maxVal, delta),\n\t\ts,\n\t\tl\n\t];\n};\nvar rgbToHsvCPU = (r, g, b) =\u003e {\n\tconst maxVal = Math.max(r, g, b);\n\tconst delta = maxVal - Math.min(r, g, b);\n\tconst s = delta / Math.max(maxVal, EPS_CPU);\n\treturn [\n\t\trgbHueCPU(r, g, b, maxVal, delta),\n\t\ts,\n\t\tmaxVal\n\t];\n};\nvar rgbToLabCPU = (r, g, b) =\u003e {\n\tconst x = (r * .4124564 + g * .3575761 + b * .1804375) / .95047;\n\tconst y = r * .2126729 + g * .7151522 + b * .072175;\n\tconst z = (r * .0193339 + g * .119192 + b * .9503041) / 1.08883;\n\tconst delta3 = LAB_DELTA_CPU ** 3;\n\tconst f = (t) =\u003e t \u003e delta3 ? Math.cbrt(t) : t / (3 * LAB_DELTA_CPU * LAB_DELTA_CPU) + 4 / 29;\n\tconst fx = f(x), fy = f(y), fz = f(z);\n\treturn [\n\t\tfy * 116 - 16,\n\t\t(fx - fy) * 500,\n\t\t(fy - fz) * 200\n\t];\n};\nconst convertP3ToMixSpaceCPU = (r, g, b, colorSpaceMode) =\u003e {\n\tconst [sr, sg, sb] = p3ToSRGBCPU(r, g, b);\n\tswitch (colorSpaceMode) {\n\t\tcase 1: {\n\t\t\tconst [L, a, bb] = rgbToOklabCPU(sr, sg, sb);\n\t\t\treturn [\n\t\t\t\tL,\n\t\t\t\tMath.sqrt(a * a + bb * bb),\n\t\t\t\tMath.atan2(bb, a)\n\t\t\t];\n\t\t}\n\t\tcase 2: return rgbToOklabCPU(sr, sg, sb);\n\t\tcase 3: return rgbToHslCPU(sr, sg, sb);\n\t\tcase 4: return rgbToHsvCPU(sr, sg, sb);\n\t\tcase 5: {\n\t\t\tconst [L, a, bb] = rgbToLabCPU(sr, sg, sb);\n\t\t\treturn [\n\t\t\t\tL,\n\t\t\t\tMath.sqrt(a * a + bb * bb),\n\t\t\t\tMath.atan2(bb, a)\n\t\t\t];\n\t\t}\n\t\tdefault: return [\n\t\t\tr,\n\t\t\tg,\n\t\t\tb\n\t\t];\n\t}\n};\nconst mixToward = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1, target, amount) =\u003e {\n\t\"use gpu\";\n\tconst mixed = mix(vec3f$1(color$1.x, color$1.y, color$1.z), vec3f$1(target.x, target.y, target.z), vec3f$1(amount));\n\treturn vec4f$1(mixed.x, mixed.y, mixed.z, color$1.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"target\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"targetRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mixed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"targetRgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"amount\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mixed\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mixed\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mixed\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar blend_exports = /* @__PURE__ */ __export$1({\n\tapplyBlendMode: () =\u003e applyBlendMode,\n\tblendModes: () =\u003e blendModes,\n\tcolor: () =\u003e color,\n\tcolorBurn: () =\u003e colorBurn,\n\tcolorDodge: () =\u003e colorDodge,\n\tdarken: () =\u003e darken,\n\tdifference: () =\u003e difference,\n\texclusion: () =\u003e exclusion,\n\thardLight: () =\u003e hardLight,\n\thue: () =\u003e hue,\n\tlighten: () =\u003e lighten,\n\tlinearBurn: () =\u003e linearBurn,\n\tlinearDodge: () =\u003e linearDodge,\n\tluminance: () =\u003e luminance$1,\n\tluminosity: () =\u003e luminosity,\n\tmultiply: () =\u003e multiply,\n\tnormal: () =\u003e normal,\n\tnormalOklab: () =\u003e normalOklab,\n\tnormalOklch: () =\u003e normalOklch,\n\toverlay: () =\u003e overlay,\n\tsaturation: () =\u003e saturation,\n\tscreen: () =\u003e screen,\n\tsoftLight: () =\u003e softLight,\n\tunpremultiplyAlpha: () =\u003e unpremultiplyAlpha\n});\nconst luminance$1 = typegpu_default.fn([vec3f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_add(__tsover_mul(rgb.x, .2126), __tsover_mul(rgb.y, .7152)), __tsover_mul(rgb.z, .0722));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2126\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.7152\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"z\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.0722\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nvar step3 = typegpu_default.fn([vec3f$1, vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((edge, x) =\u003e {\n\t\"use gpu\";\n\treturn select(vec3f$1(0), vec3f$1(1), ge(x, edge));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"edge\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.select\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.ge\",\n\t\t\t\t\t[\"x\", \"edge\"]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.ge\": () =\u003e ge\n\t}\n}) \u0026\u0026 $.f)({}));\nvar overComposite = typegpu_default.fn([\n\tvec4f$1,\n\tvec3f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, blended, overlayAlpha) =\u003e {\n\t\"use gpu\";\n\tconst baseWeight = __tsover_mul(base.w, __tsover_sub(1, overlayAlpha));\n\tconst finalAlpha = __tsover_add(overlayAlpha, baseWeight);\n\treturn vec4f$1(blended.mul(overlayAlpha).add(base.xyz.mul(baseWeight)), finalAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blended\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlayAlpha\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"overlayAlpha\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"baseWeight\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"blended\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"overlayAlpha\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"baseWeight\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"finalAlpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec4f\": () =\u003e vec4f$1 }\n}) \u0026\u0026 $.f)({}));\nconst unpremultiplyAlpha = typegpu_default.fn([vec4f$1], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\tconst alpha$1 = color$1.w;\n\treturn vec4f$1(select(vec3f$1(0, 0, 0), color$1.xyz.div(alpha$1), alpha$1 \u003e .001), alpha$1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"straightRGB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"alpha\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"alpha\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"straightRGB\", \"alpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst normal = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, overlay$1.xyz, overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"overlayAlpha\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\"w\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"opacity\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"overComposite\",\n\t\t\t[\n\t\t\t\t\"base\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t],\n\t\t\t\t\"overlayAlpha\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"overComposite\": () =\u003e overComposite }\n}) \u0026\u0026 $.f)({}));\nconst normalOklch = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst baseWeight = __tsover_mul(base.w, __tsover_sub(1, overlayAlpha));\n\tconst finalAlpha = __tsover_add(overlayAlpha, baseWeight);\n\tconst baseOklch = oklabToOklch(rgbToOklab(p3ToSRGB(base.xyz)));\n\treturn vec4f$1(sRGBToP3(oklabToRgb(oklchToOklab(oklabToOklch(rgbToOklab(p3ToSRGB(overlay$1.xyz))).mul(overlayAlpha).add(baseOklch.mul(baseWeight))))), finalAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"overlayAlpha\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"baseWeight\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseOklch\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"oklabToOklch\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayOklch\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"oklabToOklch\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blendedOklch\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlayOklch\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"overlayAlpha\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"baseOklch\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"baseWeight\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"oklabToRgb\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"oklchToOklab\",\n\t\t\t\t\t\t\t[\"blendedOklch\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"finalAlpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"oklabToOklch\": () =\u003e oklabToOklch,\n\t\t\"rgbToOklab\": () =\u003e rgbToOklab,\n\t\t\"p3ToSRGB\": () =\u003e p3ToSRGB,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"oklabToRgb\": () =\u003e oklabToRgb,\n\t\t\"oklchToOklab\": () =\u003e oklchToOklab,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst normalOklab = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst baseWeight = __tsover_mul(base.w, __tsover_sub(1, overlayAlpha));\n\tconst finalAlpha = __tsover_add(overlayAlpha, baseWeight);\n\tconst baseOklab = rgbToOklab(p3ToSRGB(base.xyz));\n\treturn vec4f$1(sRGBToP3(oklabToRgb(rgbToOklab(p3ToSRGB(overlay$1.xyz)).mul(overlayAlpha).add(baseOklab.mul(baseWeight)))), finalAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"overlayAlpha\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"baseWeight\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseOklab\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayOklab\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rgbToOklab\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"p3ToSRGB\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blendedOklab\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlayOklab\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"overlayAlpha\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"baseOklab\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"baseWeight\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sRGBToP3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"oklabToRgb\",\n\t\t\t\t\t\t[\"blendedOklab\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", \"finalAlpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"rgbToOklab\": () =\u003e rgbToOklab,\n\t\t\"p3ToSRGB\": () =\u003e p3ToSRGB,\n\t\t\"sRGBToP3\": () =\u003e sRGBToP3,\n\t\t\"oklabToRgb\": () =\u003e oklabToRgb,\n\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst multiply = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, base.xyz.mul(overlay$1.xyz), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"overComposite\": () =\u003e overComposite }\n}) \u0026\u0026 $.f)({}));\nconst screen = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, sub(1, sub(1, base.xyz).mul(sub(1, overlay$1.xyz))), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst linearDodge = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, base.xyz.add(overlay$1.xyz), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"overComposite\": () =\u003e overComposite }\n}) \u0026\u0026 $.f)({}));\nconst overlay = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, mix(base.xyz.mul(overlay$1.xyz).mul(2), sub(1, sub(1, base.xyz).mul(sub(1, overlay$1.xyz)).mul(2)), step3(vec3f$1(.5), base.xyz)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mult\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scr\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"mult\",\n\t\t\t\t\t\t\"scr\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"step3\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"step3\": () =\u003e step3,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst difference = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, abs(base.xyz.sub(overlay$1.xyz)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst colorDodge = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst oneMinusOverlay = sub(1, overlay$1.xyz);\n\treturn overComposite(base, mix(base.xyz, min(base.xyz.div(oneMinusOverlay), vec3f$1(1)), step3(vec3f$1(.001), oneMinusOverlay)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oneMinusOverlay\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dodged\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"oneMinusOverlay\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"step3\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[[5, \"0.001\"]]\n\t\t\t\t\t\t\t], \"oneMinusOverlay\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"dodged\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"step3\": () =\u003e step3,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst exclusion = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, base.xyz.add(overlay$1.xyz).sub(base.xyz.mul(overlay$1.xyz).mul(2)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"overComposite\": () =\u003e overComposite }\n}) \u0026\u0026 $.f)({}));\nconst color = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst baseLum = luminance$1(base.xyz);\n\tconst overlayLum = luminance$1(overlay$1.xyz);\n\tconst lumDiff = __tsover_sub(baseLum, overlayLum);\n\treturn overComposite(base, overlay$1.xyz.add(lumDiff), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lumDiff\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"baseLum\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"overlayLum\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"lumDiff\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"luminance\": () =\u003e luminance$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst luminosity = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst baseLum = luminance$1(base.xyz);\n\tconst overlayLum = luminance$1(overlay$1.xyz);\n\tconst lumRatio = __tsover_div(overlayLum, __tsover_add(baseLum, 1e-4));\n\treturn overComposite(base, base.xyz.mul(lumRatio), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lumRatio\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"overlayLum\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"baseLum\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"lumRatio\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"luminance\": () =\u003e luminance$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst darken = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, min(base.xyz, overlay$1.xyz), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.min\": () =\u003e min,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst lighten = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, max(base.xyz, overlay$1.xyz), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst colorBurn = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst burned = max(sub(1, sub(1, base.xyz).div(overlay$1.xyz.add(1e-4))), vec3f$1(0));\n\treturn overComposite(base, mix(vec3f$1(0), burned, step3(vec3f$1(1e-4), overlay$1.xyz)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"burned\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.0001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"burned\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"step3\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[[5, \"0.0001\"]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"step3\": () =\u003e step3,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst linearBurn = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, max(base.xyz.add(overlay$1.xyz).add(-1), vec3f$1(0)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst softLight = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst mult = base.xyz.mul(overlay$1.xyz).mul(2);\n\tconst baseSquared = base.xyz.mul(base.xyz);\n\tconst softDark = mult.add(baseSquared.mul(sub(1, overlay$1.xyz.mul(2))));\n\tconst baseSqrt = sqrt(base.xyz);\n\treturn overComposite(base, mix(softDark, base.xyz.mul(sub(1, overlay$1.xyz)).mul(2).add(baseSqrt.mul(overlay$1.xyz.mul(2).sub(1))), step3(vec3f$1(.5), overlay$1.xyz)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mult\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseSquared\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softDark\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mult\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"baseSquared\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseSqrt\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softLightVal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"baseSqrt\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"softDark\",\n\t\t\t\t\t\t\"softLightVal\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"step3\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"step3\": () =\u003e step3,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hardLight = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\treturn overComposite(base, mix(base.xyz.mul(overlay$1.xyz).mul(2), sub(1, sub(1, base.xyz).mul(sub(1, overlay$1.xyz)).mul(2)), step3(vec3f$1(.5), overlay$1.xyz)), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mult\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scr\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sub\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"mult\",\n\t\t\t\t\t\t\"scr\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"step3\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"step3\": () =\u003e step3,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hue = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst baseLum = luminance$1(base.xyz);\n\tconst overlayLum = luminance$1(overlay$1.xyz);\n\tconst baseChromaticity = base.xyz.sub(baseLum);\n\tconst overlayChromaticity = overlay$1.xyz.sub(overlayLum);\n\tconst baseChromaLength = length(baseChromaticity);\n\tconst overlayChromaLength = length(overlayChromaticity);\n\treturn overComposite(base, select(vec3f$1(0), overlayChromaticity.div(overlayChromaLength), overlayChromaLength \u003e 1e-4).mul(baseChromaLength).add(baseLum), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseChromaticity\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"baseLum\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayChromaticity\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"overlayLum\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseChromaLength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"baseChromaticity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayChromaLength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"overlayChromaticity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayChromaDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlayChromaticity\",\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"overlayChromaLength\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"overlayChromaLength\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"overlayChromaDir\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"baseChromaLength\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"baseLum\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"luminance\": () =\u003e luminance$1,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst saturation = typegpu_default.fn([\n\tvec4f$1,\n\tvec4f$1,\n\tf32\n], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, overlay$1, opacity) =\u003e {\n\t\"use gpu\";\n\tconst overlayAlpha = __tsover_mul(overlay$1.w, opacity);\n\tconst baseLum = luminance$1(base.xyz);\n\tconst overlayLum = luminance$1(overlay$1.xyz);\n\tconst baseChromaticity = base.xyz.sub(baseLum);\n\tconst overlayChromaticity = overlay$1.xyz.sub(overlayLum);\n\tconst baseChromaLength = length(baseChromaticity);\n\tconst baseChromaDir = select(vec3f$1(0), baseChromaticity.div(baseChromaLength), baseChromaLength \u003e 1e-4);\n\tconst overlayChromaLength = length(overlayChromaticity);\n\treturn overComposite(base, baseChromaDir.mul(overlayChromaLength).add(baseLum), overlayAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"overlay\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"opacity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"opacity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luminance\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseChromaticity\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"baseLum\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayChromaticity\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"overlay\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"overlayLum\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseChromaLength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"baseChromaticity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseChromaDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"baseChromaticity\",\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"baseChromaLength\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"baseChromaLength\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overlayChromaLength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"overlayChromaticity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blended\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"baseChromaDir\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"overlayChromaLength\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"baseLum\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"overComposite\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"blended\",\n\t\t\t\t\t\"overlayAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"luminance\": () =\u003e luminance$1,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"overComposite\": () =\u003e overComposite\n\t}\n}) \u0026\u0026 $.f)({}));\nconst blendModes = {\n\tnormal,\n\t\"normal-oklch\": normalOklch,\n\t\"normal-oklab\": normalOklab,\n\tmultiply,\n\tscreen,\n\tlinearDodge,\n\toverlay,\n\tdifference,\n\tcolorDodge,\n\texclusion,\n\tcolor,\n\tluminosity,\n\tdarken,\n\tlighten,\n\tcolorBurn,\n\tlinearBurn,\n\tsoftLight,\n\thardLight,\n\thue,\n\tsaturation\n};\nconst applyBlendMode = (base, overlay$1, blendMode = \"normal\", opacity = 1) =\u003e {\n\treturn (blendModes[blendMode] ?? blendModes.normal)(base, overlay$1, opacity);\n};\nvar LUMINANCE_WEIGHTS = vec3f$1(.2126, .7152, .0722);\nconst maskFunctions = {\n\talpha: typegpu_default.fn([vec4f$1, vec4f$1], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((target, mask) =\u003e {\n\t\t\"use gpu\";\n\t\treturn vec4f$1(target.xyz, __tsover_mul(target.w, mask.w));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"target\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mask\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"target\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mask\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: { \"d.vec4f\": () =\u003e vec4f$1 }\n\t}) \u0026\u0026 $.f)({})),\n\talphaInverted: typegpu_default.fn([vec4f$1, vec4f$1], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((target, mask) =\u003e {\n\t\t\"use gpu\";\n\t\treturn vec4f$1(target.xyz, __tsover_mul(target.w, __tsover_sub(1, mask.w)));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"target\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mask\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"target\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mask\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: { \"d.vec4f\": () =\u003e vec4f$1 }\n\t}) \u0026\u0026 $.f)({})),\n\tluminance: typegpu_default.fn([vec4f$1, vec4f$1], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((target, mask) =\u003e {\n\t\t\"use gpu\";\n\t\tconst lum = dot(mask.xyz, LUMINANCE_WEIGHTS);\n\t\treturn vec4f$1(target.xyz, __tsover_mul(target.w, lum));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"target\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mask\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"lum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mask\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], \"LUMINANCE_WEIGHTS\"]\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"target\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"lum\"\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"LUMINANCE_WEIGHTS\": () =\u003e LUMINANCE_WEIGHTS,\n\t\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t\t}\n\t}) \u0026\u0026 $.f)({})),\n\tluminanceInverted: typegpu_default.fn([vec4f$1, vec4f$1], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((target, mask) =\u003e {\n\t\t\"use gpu\";\n\t\tconst lum = dot(mask.xyz, LUMINANCE_WEIGHTS);\n\t\treturn vec4f$1(target.xyz, __tsover_mul(target.w, __tsover_sub(1, lum)));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"target\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mask\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"lum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mask\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], \"LUMINANCE_WEIGHTS\"]\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"target\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"lum\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"LUMINANCE_WEIGHTS\": () =\u003e LUMINANCE_WEIGHTS,\n\t\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t\t}\n\t}) \u0026\u0026 $.f)({}))\n};\nconst linear = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\treturn vec3f$1(color$1.x, color$1.y, color$1.z);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f$1 }\n}) \u0026\u0026 $.f)({}));\nconst reinhard = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\treturn clamp(color$1.div(color$1.add(1)), vec3f$1(0), vec3f$1(1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cineon = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\tconst c = max(color$1.sub(.004), vec3f$1(0));\n\tconst a = c.mul(c.mul(6.2).add(.5));\n\tconst b = c.mul(c.mul(6.2).add(1.7)).add(.06);\n\treturn pow(a.div(b), vec3f$1(2.2));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.004\"]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"6.2\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[5, \"6.2\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"1.7\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.06\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.pow\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"b\"]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[[5, \"2.2\"]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.pow\": () =\u003e pow\n\t}\n}) \u0026\u0026 $.f)({}));\nvar ACES_INPUT = mat3x3f$1(.59719, .076, .0284, .35458, .90834, .13383, .04823, .01566, .83777);\nvar ACES_OUTPUT = mat3x3f$1(1.60475, -.10208, -.00327, -.53108, 1.10813, -.07276, -.07367, -.00605, 1.07602);\nvar rrtAndODTFit = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v) =\u003e {\n\t\"use gpu\";\n\tconst a = v.mul(v.add(.0245786)).sub(90537e-9);\n\tconst b = v.mul(v.add(.432951).mul(.983729)).add(.238081);\n\treturn a.div(b);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"v\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.0245786\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.000090537\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[5, \"0.432951\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.983729\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.238081\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"div\"\n\t\t\t\t],\n\t\t\t\t[\"b\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst aces = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\tlet c = color$1.div(.6);\n\tc = ACES_INPUT.mul(c);\n\tc = rrtAndODTFit(c);\n\tc = ACES_OUTPUT.mul(c);\n\treturn clamp(c, vec3f$1(0), vec3f$1(1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.6\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"ACES_INPUT.mul\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rrtAndODTFit\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"ACES_OUTPUT.mul\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t\"c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"ACES_INPUT.mul\": () =\u003e ACES_INPUT.mul,\n\t\t\"rrtAndODTFit\": () =\u003e rrtAndODTFit,\n\t\t\"ACES_OUTPUT.mul\": () =\u003e ACES_OUTPUT.mul,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar LINEAR_SRGB_TO_LINEAR_REC2020 = mat3x3f$1(.6274, .0691, .0164, .3293, .9195, .088, .0433, .0113, .8956);\nvar LINEAR_REC2020_TO_LINEAR_SRGB = mat3x3f$1(1.6605, -.1246, -.0182, -.5876, 1.1329, -.1006, -.0728, -.0083, 1.1187);\nvar AGX_INSET = mat3x3f$1(.856627153315983, .137318972929847, .11189821299995, .0951212405381588, .761241990602591, .0767994186031903, .0482516061458583, .101439036467562, .811302368396859);\nvar AGX_OUTSET = mat3x3f$1(1.1271005818144368, -.1413297634984383, -.14132976349843826, -.11060664309660323, 1.157823702216272, -.11060664309660294, -.016493938717834573, -.016493938717834257, 1.2519364065950405);\nvar AGX_MIN_EV = -12.47393;\nvar AGX_MAX_EV = 4.026069;\nvar agxContrastApprox = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x) =\u003e {\n\t\"use gpu\";\n\tconst x2 = x.mul(x);\n\tconst x4 = x2.mul(x2);\n\treturn x4.mul(x2).mul(15.5).sub(x4.mul(x).mul(40.14)).add(x4.mul(31.96).sub(x2.mul(x).mul(6.868)).add(x2.mul(.4298).add(x.mul(.1191).sub(.00232))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"x\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x4\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"x2\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"x2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"x4\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"x2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"15.5\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"x4\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"40.14\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"x4\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"31.96\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"x2\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"6.868\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"x2\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.4298\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"0.1191\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"0.00232\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst agx = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\tlet c = LINEAR_SRGB_TO_LINEAR_REC2020.mul(color$1);\n\tc = AGX_INSET.mul(c);\n\tc = max(c, vec3f$1(1e-10));\n\tc = log2(c);\n\tc = c.sub(AGX_MIN_EV).div(__tsover_sub(AGX_MAX_EV, AGX_MIN_EV));\n\tc = clamp(c, vec3f$1(0), vec3f$1(1));\n\tc = agxContrastApprox(c);\n\tc = AGX_OUTSET.mul(c);\n\tc = pow(max(c, vec3f$1(0)), vec3f$1(2.2));\n\tc = LINEAR_REC2020_TO_LINEAR_SRGB.mul(c);\n\treturn clamp(c, vec3f$1(0), vec3f$1(1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"LINEAR_SRGB_TO_LINEAR_REC2020.mul\",\n\t\t\t\t\t[\"color\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"AGX_INSET.mul\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"1e-10\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.log2\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"AGX_MIN_EV\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"AGX_MAX_EV\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"AGX_MIN_EV\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"agxContrastApprox\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"AGX_OUTSET.mul\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"2.2\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"LINEAR_REC2020_TO_LINEAR_SRGB.mul\",\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t\"c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"LINEAR_SRGB_TO_LINEAR_REC2020.mul\": () =\u003e LINEAR_SRGB_TO_LINEAR_REC2020.mul,\n\t\t\"AGX_INSET.mul\": () =\u003e AGX_INSET.mul,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.log2\": () =\u003e log2,\n\t\t\"AGX_MIN_EV\": () =\u003e AGX_MIN_EV,\n\t\t\"AGX_MAX_EV\": () =\u003e AGX_MAX_EV,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"agxContrastApprox\": () =\u003e agxContrastApprox,\n\t\t\"AGX_OUTSET.mul\": () =\u003e AGX_OUTSET.mul,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"LINEAR_REC2020_TO_LINEAR_SRGB.mul\": () =\u003e LINEAR_REC2020_TO_LINEAR_SRGB.mul\n\t}\n}) \u0026\u0026 $.f)({}));\nvar NEUTRAL_START_COMPRESSION = .76;\nvar NEUTRAL_DESATURATION = .15;\nconst neutral = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\tconst x = min(color$1.x, min(color$1.y, color$1.z));\n\tconst offset = select(.04, __tsover_sub(x, __tsover_mul(__tsover_mul(6.25, x), x)), x \u003c .08);\n\tlet c = color$1.sub(offset);\n\tconst peak = max(c.x, max(c.y, c.z));\n\tif (peak \u003c NEUTRAL_START_COMPRESSION) return c;\n\tconst dd = __tsover_sub(1, NEUTRAL_START_COMPRESSION);\n\tconst newPeak = __tsover_sub(1, __tsover_div(__tsover_mul(dd, dd), __tsover_sub(__tsover_add(peak, dd), NEUTRAL_START_COMPRESSION)));\n\tc = c.mul(__tsover_div(newPeak, peak));\n\tconst g = __tsover_sub(1, __tsover_div(1, __tsover_add(__tsover_mul(NEUTRAL_DESATURATION, __tsover_sub(peak, newPeak)), 1)));\n\treturn mix(c, vec3f$1(newPeak), g);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.04\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"6.25\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.08\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"offset\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"peak\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"peak\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"NEUTRAL_START_COMPRESSION\"\n\t\t\t\t],\n\t\t\t\t[0, [[10, \"c\"]]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"NEUTRAL_START_COMPRESSION\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"newPeak\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"peak\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"NEUTRAL_START_COMPRESSION\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"c\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"newPeak\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"peak\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"NEUTRAL_DESATURATION\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"peak\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"newPeak\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\"newPeak\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"g\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"NEUTRAL_START_COMPRESSION\": () =\u003e NEUTRAL_START_COMPRESSION,\n\t\t\"NEUTRAL_DESATURATION\": () =\u003e NEUTRAL_DESATURATION,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst tonemapFns = {\n\tlinear,\n\treinhard,\n\tcineon,\n\taces,\n\tagx,\n\tneutral,\n\thable: typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\t\"use gpu\";\n\t\tconst x = color$1.mul(16);\n\t\tconst num = x.mul(x.mul(.15).add(.05)).add(.004);\n\t\tconst den = x.mul(x.mul(.15).add(.5)).add(.06);\n\t\treturn num.div(den).sub(__tsover_div(.02, .3));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"16\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"num\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0.15\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"0.05\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.004\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"den\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0.15\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.06\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"num\",\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"den\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.02\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {}\n\t}) \u0026\u0026 $.f)({})),\n\tunreal: typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\t\"use gpu\";\n\t\treturn color$1.div(color$1.add(.155)).mul(1.019);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"0.155\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[5, \"1.019\"]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {}\n\t}) \u0026\u0026 $.f)({}))\n};\nconst linearToSrgb = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\treturn select(pow(color$1, vec3f$1(.41666)).mul(1.055).sub(.055), color$1.mul(12.92), le(color$1, vec3f$1(.0031308)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t\t\t[\"color\", [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0.41666\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"1.055\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.055\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"12.92\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"factor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.le\",\n\t\t\t\t\t[\"color\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0.0031308\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"factor\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.le\": () =\u003e le,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst srgbToLinear = typegpu_default.fn([vec3f$1], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1) =\u003e {\n\t\"use gpu\";\n\treturn select(pow(color$1.add(vec3f$1(.055)).div(vec3f$1(1.055)), vec3f$1(2.4)), color$1.div(vec3f$1(12.92)), le(color$1, vec3f$1(.04045)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[[5, \"0.055\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"1.055\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"2.4\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lo\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"12.92\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isLow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.le\",\n\t\t\t\t\t[\"color\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0.04045\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"hi\",\n\t\t\t\t\t\"lo\",\n\t\t\t\t\t\"isLow\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"d.vec3f\": () =\u003e vec3f$1,\n\t\t\"std.le\": () =\u003e le,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst needsTransformation = (transform) =\u003e {\n\tif (!transform) return false;\n\treturn transform.offsetX !== 0 || transform.offsetY !== 0 || transform.rotation !== 0 || transform.scale !== 1 || transform.anchorX !== .5 || transform.anchorY !== .5;\n};\nconst applyUVTransform = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, offsetX, offsetY, rotation, scale, anchorX, anchorY, aspectRatio) =\u003e {\n\t\"use gpu\";\n\tconst rotationRad = __tsover_div(__tsover_mul(rotation, Math.PI), 180);\n\tconst cosAngle = cos(rotationRad);\n\tconst sinAngle = sin(rotationRad);\n\tconst centeredX = __tsover_div(__tsover_sub(uv.x, anchorX), scale);\n\tconst centeredY = __tsover_div(__tsover_sub(uv.y, anchorY), scale);\n\tconst squareX = __tsover_mul(centeredX, aspectRatio);\n\tconst squareY = centeredY;\n\tconst rotatedSquareX = __tsover_sub(__tsover_mul(squareX, cosAngle), __tsover_mul(squareY, sinAngle));\n\tconst rotatedSquareY = __tsover_add(__tsover_mul(squareX, sinAngle), __tsover_mul(squareY, cosAngle));\n\treturn vec2f$1(__tsover_add(__tsover_sub(__tsover_div(rotatedSquareX, aspectRatio), offsetX), anchorX), __tsover_add(__tsover_sub(rotatedSquareY, offsetY), anchorY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offsetX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offsetY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"anchorX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"anchorY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspectRatio\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotationRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"Math.PI\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"180\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotationRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotationRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"anchorX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"anchorY\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"squareX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"centeredX\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"squareY\",\n\t\t\t\t\"centeredY\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedSquareX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosAngle\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedSquareY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinAngle\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rotatedSquareX\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"offsetX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"anchorX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotatedSquareY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"offsetY\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"anchorY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"finalX\", \"finalY\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"Math.PI\": () =\u003e Math.PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, offsetX, offsetY, rotation, scale, anchorX, anchorY, aspectRatio) =\u003e {\n\t\"use gpu\";\n\tconst centeredX = __tsover_add(__tsover_sub(uv.x, anchorX), offsetX);\n\tconst centeredY = __tsover_add(__tsover_sub(uv.y, anchorY), offsetY);\n\tconst squareX = __tsover_mul(centeredX, aspectRatio);\n\tconst squareY = centeredY;\n\tconst rotationRad = -__tsover_div(__tsover_mul(rotation, Math.PI), 180);\n\tconst cosAngle = cos(rotationRad);\n\tconst sinAngle = sin(rotationRad);\n\tconst rotatedSquareX = __tsover_sub(__tsover_mul(squareX, cosAngle), __tsover_mul(squareY, sinAngle));\n\tconst rotatedSquareY = __tsover_add(__tsover_mul(squareX, sinAngle), __tsover_mul(squareY, cosAngle));\n\tconst scaledX = __tsover_mul(__tsover_div(rotatedSquareX, aspectRatio), scale);\n\tconst scaledY = __tsover_mul(rotatedSquareY, scale);\n\treturn vec2f$1(__tsover_add(scaledX, anchorX), __tsover_add(scaledY, anchorY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offsetX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offsetY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"anchorX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"anchorY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspectRatio\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"anchorX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"offsetX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"anchorY\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"offsetY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"squareX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"centeredX\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"squareY\",\n\t\t\t\t\"centeredY\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotationRad\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"Math.PI\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"180\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotationRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotationRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedSquareX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosAngle\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedSquareY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinAngle\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"squareY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotatedSquareX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotatedSquareY\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"scaledX\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"anchorX\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"scaledY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"anchorY\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"Math.PI\": () =\u003e Math.PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst boundingBoxToUVParams = (bbox, canvasWidth, canvasHeight) =\u003e {\n\tconst toUVX = (dim) =\u003e dim.unit === \"px\" ? dim.value / canvasWidth : dim.value;\n\tconst toUVY = (dim) =\u003e dim.unit === \"px\" ? dim.value / canvasHeight : dim.value;\n\tconst xUV = toUVX(bbox.x);\n\tconst yUV = toUVY(bbox.y);\n\tconst widthUV = toUVX(bbox.width);\n\tconst heightUV = toUVY(bbox.height);\n\tconst resolveTopLeft = (vUV, sizeUV, edge) =\u003e edge === \"end\" ? 1 - vUV - sizeUV : edge === \"center\" ? .5 + vUV - sizeUV / 2 : vUV;\n\tconst origin = bbox.origin ?? \"top-left\";\n\tconst ox = origin.includes(\"left\") ? \"start\" : origin.includes(\"right\") ? \"end\" : \"center\";\n\tconst oy = origin.includes(\"top\") ? \"start\" : origin.includes(\"bottom\") ? \"end\" : \"center\";\n\tconst leftUV = resolveTopLeft(xUV, widthUV, ox);\n\tconst topUV = resolveTopLeft(yUV, heightUV, oy);\n\tconst centerXUV_down = leftUV + widthUV / 2;\n\tconst centerYUV_down = topUV + heightUV / 2;\n\tconst cornerRadiusUV = bbox.cornerRadius ? bbox.cornerRadius.unit === \"px\" ? bbox.cornerRadius.value / canvasHeight : bbox.cornerRadius.value : 0;\n\treturn {\n\t\tcenterX: centerXUV_down,\n\t\tcenterY: centerYUV_down,\n\t\thalfWidthUV: widthUV / 2,\n\t\thalfHeightUV: heightUV / 2,\n\t\tcornerRadiusUV,\n\t\trotation: bbox.rotation\n\t};\n};\nconst applyRectangularClipMask = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, centerX, centerY, halfWidth, halfHeight, cornerRadius, rotation, aspectRatio, aaFeather) =\u003e {\n\t\"use gpu\";\n\tconst centeredX = __tsover_sub(uv.x, centerX);\n\tconst centeredY = __tsover_sub(uv.y, centerY);\n\tconst rotRad = -__tsover_div(__tsover_mul(rotation, Math.PI), 180);\n\tconst cosA = cos(rotRad);\n\tconst sinA = sin(rotRad);\n\tconst sqX = __tsover_mul(centeredX, aspectRatio);\n\tconst sqY = centeredY;\n\tconst rotatedX = __tsover_sub(__tsover_mul(sqX, cosA), __tsover_mul(sqY, sinA));\n\tconst rotatedY = __tsover_add(__tsover_mul(sqX, sinA), __tsover_mul(sqY, cosA));\n\tconst halfWidthSq = __tsover_mul(halfWidth, aspectRatio);\n\tconst halfHeightSq = halfHeight;\n\tconst innerHalfW = __tsover_sub(halfWidthSq, cornerRadius);\n\tconst innerHalfH = __tsover_sub(halfHeightSq, cornerRadius);\n\tconst qx = __tsover_sub(abs(rotatedX), innerHalfW);\n\tconst qy = __tsover_sub(abs(rotatedY), innerHalfH);\n\tconst qClamped = vec2f$1(max(qx, 0), max(qy, 0));\n\tconst sdf = __tsover_sub(__tsover_add(length(qClamped), min(max(qx, qy), 0)), cornerRadius);\n\tconst feather = max(aaFeather, 1e-7);\n\treturn select(__tsover_sub(1, smoothstep(-feather, feather, sdf)), select(f32(0), f32(1), sdf \u003c= 0), aaFeather \u003c= 0);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfHeight\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cornerRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspectRatio\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aaFeather\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"Math.PI\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"180\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sqX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"centeredX\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sqY\",\n\t\t\t\t\"centeredY\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfWidthSq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"halfWidth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfHeightSq\",\n\t\t\t\t\"halfHeight\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerHalfW\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"halfWidthSq\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cornerRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerHalfH\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"halfHeightSq\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cornerRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"rotatedX\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"innerHalfW\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"rotatedY\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"innerHalfH\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qClamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"qx\", [5, \"0\"]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"qy\", [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdf\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[\"qClamped\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qx\", \"qy\"]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cornerRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"feather\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"aaFeather\", [5, \"1e-7\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ramp\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"feather\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"feather\",\n\t\t\t\t\t\t\t\"sdf\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"binary\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"ramp\",\n\t\t\t\t\t\"binary\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aaFeather\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"Math.PI\": () =\u003e Math.PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst boundingBoxToGeneratorUVContext = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, centerX, centerY, halfWidth, halfHeight, rotation, aspectRatio) =\u003e {\n\t\"use gpu\";\n\tconst centeredX = __tsover_sub(uv.x, centerX);\n\tconst centeredY = __tsover_sub(uv.y, centerY);\n\tconst rotRad = -__tsover_div(__tsover_mul(rotation, Math.PI), 180);\n\tconst cosA = cos(rotRad);\n\tconst sinA = sin(rotRad);\n\tconst sqX = __tsover_mul(centeredX, aspectRatio);\n\tconst sqY = centeredY;\n\tconst rotatedX = __tsover_sub(__tsover_mul(sqX, cosA), __tsover_mul(sqY, sinA));\n\tconst rotatedY = __tsover_add(__tsover_mul(sqX, sinA), __tsover_mul(sqY, cosA));\n\tconst halfWidthSq = max(__tsover_mul(halfWidth, aspectRatio), 1e-6);\n\tconst halfHeightSq = max(halfHeight, 1e-6);\n\treturn vec2f$1(__tsover_add(__tsover_div(rotatedX, __tsover_mul(halfWidthSq, 2)), .5), __tsover_add(__tsover_div(rotatedY, __tsover_mul(halfHeightSq, 2)), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfHeight\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspectRatio\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"Math.PI\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"180\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sqX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"centeredX\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sqY\",\n\t\t\t\t\"centeredY\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sqY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfWidthSq\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"halfWidth\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfHeightSq\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"halfHeight\", [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotatedX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"halfWidthSq\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotatedY\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"halfHeightSq\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"localX\", \"localY\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"Math.PI\": () =\u003e Math.PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst screenUVToBoxLocal = (sx, sy, g) =\u003e {\n\tconst th = g.rotationDeg * Math.PI / 180;\n\tconst c = Math.cos(th);\n\tconst s = Math.sin(th);\n\tconst sqx = (sx - g.centerX) * g.aspectRatio;\n\tconst sqy = sy - g.centerY;\n\tconst rx = sqx * c + sqy * s;\n\tconst ry = sqx * -s + sqy * c;\n\tconst hwSq = Math.max(g.halfWidthUV * g.aspectRatio, 1e-6);\n\tconst hhSq = Math.max(g.halfHeightUV, 1e-6);\n\treturn {\n\t\tx: rx / (2 * hwSq) + .5,\n\t\ty: ry / (2 * hhSq) + .5\n\t};\n};\nconst DEFAULT_BOUNDING_BOX = {\n\tx: {\n\t\tvalue: 0,\n\t\tunit: \"uv\"\n\t},\n\ty: {\n\t\tvalue: 0,\n\t\tunit: \"uv\"\n\t},\n\twidth: {\n\t\tvalue: 1,\n\t\tunit: \"uv\"\n\t},\n\theight: {\n\t\tvalue: 1,\n\t\tunit: \"uv\"\n\t},\n\torigin: \"top-left\",\n\trotation: 0\n};\nfunction resolveBoundingBox(bbox) {\n\tif (!bbox || typeof bbox !== \"object\") return void 0;\n\tconst dim = (d, fallback) =\u003e d \u0026\u0026 typeof d === \"object\" ? {\n\t\tvalue: d.value ?? fallback.value,\n\t\tunit: d.unit ?? fallback.unit\n\t} : { ...fallback };\n\treturn {\n\t\tx: dim(bbox.x, DEFAULT_BOUNDING_BOX.x),\n\t\ty: dim(bbox.y, DEFAULT_BOUNDING_BOX.y),\n\t\twidth: dim(bbox.width, DEFAULT_BOUNDING_BOX.width),\n\t\theight: dim(bbox.height, DEFAULT_BOUNDING_BOX.height),\n\t\torigin: bbox.origin ?? \"top-left\",\n\t\trotation: bbox.rotation ?? 0,\n\t\t...bbox.cornerRadius ? { cornerRadius: bbox.cornerRadius } : {},\n\t\t...bbox.lockAspect !== void 0 ? { lockAspect: bbox.lockAspect } : {}\n\t};\n}\nfunction isIdentityBoundingBox(bbox) {\n\tif (!bbox || typeof bbox !== \"object\") return false;\n\tconst isUV = (d, value) =\u003e !!d \u0026\u0026 d.unit === \"uv\" \u0026\u0026 d.value === value;\n\treturn isUV(bbox.x, 0) \u0026\u0026 isUV(bbox.y, 0) \u0026\u0026 isUV(bbox.width, 1) \u0026\u0026 isUV(bbox.height, 1) \u0026\u0026 (bbox.rotation ?? 0) === 0 \u0026\u0026 (bbox.cornerRadius?.value ?? 0) === 0;\n}\nvar Expr = class Expr {\n\t_emit;\n\tconstructor(emit) {\n\t\tthis._emit = emit;\n\t}\n\tmember(prop) {\n\t\treturn new Expr((ctx) =\u003e `${wrap(this._emit(ctx))}.${prop}`);\n\t}\n\tmul(other) {\n\t\treturn new Expr((ctx) =\u003e `(${this._emit(ctx)} * ${emitOperand(other, ctx)})`);\n\t}\n\tadd(other) {\n\t\treturn new Expr((ctx) =\u003e `(${this._emit(ctx)} + ${emitOperand(other, ctx)})`);\n\t}\n};\nfunction wrap(text) {\n\treturn /^[\\w.$]+$/.test(text) ? text : `(${text})`;\n}\nfunction emitOperand(operand$1, ctx) {\n\tif (typeof operand$1 === \"number\") return formatFloat(operand$1);\n\treturn operand$1._emit(ctx);\n}\nfunction formatFloat(n) {\n\tif (!Number.isFinite(n)) return n \u003e 0 ? \"3.4e38\" : n \u003c 0 ? \"-3.4e38\" : \"0.0\";\n\treturn Number.isInteger(n) ? `${n}.0` : `${n}`;\n}\nconst SHARED_SAMPLER_LAYOUT = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tlinearClamp: { sampler: \"filtering\" },\n\tnearestClamp: { sampler: \"filtering\" },\n\tlinearRepeat: { sampler: \"filtering\" },\n\tnearestRepeat: { sampler: \"filtering\" }\n}).$idx(2), \"SHARED_SAMPLER_LAYOUT\");\nconst BIND_GROUPS = {\n\tuniforms: 0,\n\ttextures: 1,\n\tsamplers: 2,\n\texternal: 3\n};\nfunction expr(wgsl) {\n\treturn new Expr(() =\u003e wgsl);\n}\nfunction floatE(n) {\n\treturn new Expr(() =\u003e formatFloat(n));\n}\nfunction call(fn$1, hint, args) {\n\treturn new Expr((ctx) =\u003e {\n\t\treturn `${ctx.external(fn$1, hint)}(${args.map((a) =\u003e a._emit(ctx)).join(\", \")})`;\n\t});\n}\nfunction vec4(...parts) {\n\treturn new Expr((ctx) =\u003e `vec4f(${parts.map((p$1) =\u003e operand(p$1, ctx)).join(\", \")})`);\n}\nfunction mixExpr(a, b, t) {\n\treturn new Expr((ctx) =\u003e `mix(${a._emit(ctx)}, ${b._emit(ctx)}, ${operand(t, ctx)})`);\n}\nfunction arrayExpr(elemType, elems) {\n\treturn new Expr((ctx) =\u003e `array\u003c${elemType}, ${elems.length}\u003e(${elems.map((e) =\u003e e._emit(ctx)).join(\", \")})`);\n}\nvar hoistCounter = 0;\nfunction asLocal(e, hint) {\n\tconst id = hoistCounter++;\n\treturn new Expr((ctx) =\u003e ctx.memo(`local:${id}`, () =\u003e {\n\t\tconst name = ctx.freshLocal(hint);\n\t\tctx.statement(`let ${name} = ${e._emit(ctx)};`);\n\t\treturn name;\n\t}));\n}\nconst ZERO = expr(\"vec4f(0.0, 0.0, 0.0, 0.0)\");\nconst WHITE0 = expr(\"vec4f(1.0, 1.0, 1.0, 0.0)\");\nfunction operand(o, ctx) {\n\treturn typeof o === \"number\" ? formatFloat(o) : o._emit(ctx);\n}\nfunction applyBlend(base, overlay$1, mode, opacity) {\n\treturn call(blendModes[mode] ?? blendModes.normal, `blend_${sanitizeName(mode)}`, [\n\t\tbase,\n\t\toverlay$1,\n\t\topacity\n\t]);\n}\nfunction applyMaskFn(target, mask, type) {\n\treturn call(maskFunctions[type] ?? maskFunctions.alpha, `mask_${sanitizeName(type)}`, [target, mask]);\n}\nfunction sanitizeName(s) {\n\treturn s.replace(/[^a-zA-Z0-9_]/g, \"_\");\n}\nfunction serialiseFragment(root, tail, flipY, uniformLayout) {\n\tconst externals = {};\n\tconst byIdentity = /* @__PURE__ */ new Map();\n\tconst usedNames = /* @__PURE__ */ new Set();\n\tconst statements = [];\n\tconst memos = /* @__PURE__ */ new Map();\n\tlet localCounter = 0;\n\tconst ctx = {\n\t\texternal(value, hint) {\n\t\t\tconst existing = byIdentity.get(value);\n\t\t\tif (existing) return existing;\n\t\t\tlet name = sanitizeName(hint);\n\t\t\tif (usedNames.has(name)) {\n\t\t\t\tlet i = 1;\n\t\t\t\twhile (usedNames.has(`${name}_${i}`)) i++;\n\t\t\t\tname = `${name}_${i}`;\n\t\t\t}\n\t\t\tusedNames.add(name);\n\t\t\tbyIdentity.set(value, name);\n\t\t\texternals[name] = value;\n\t\t\treturn name;\n\t\t},\n\t\tstatement(wgsl) {\n\t\t\tstatements.push(wgsl);\n\t\t},\n\t\tfreshLocal(hint) {\n\t\t\treturn `${sanitizeName(hint)}_${localCounter++}`;\n\t\t},\n\t\tmemo(key, factory) {\n\t\t\tconst hit = memos.get(key);\n\t\t\tif (hit !== void 0) return hit;\n\t\t\tconst v = factory();\n\t\t\tmemos.set(key, v);\n\t\t\treturn v;\n\t\t}\n\t};\n\tconst uvInit = flipY ? \"vec2f(in.uv.x, 1.0 - in.uv.y)\" : \"in.uv\";\n\tstatements.push(`var uv = ${uvInit};`);\n\tconst composedText = root._emit(ctx);\n\tconst returnExpr = tail(composedText, ctx);\n\tconst scan = `${statements.join(\"\\n\")}\\n${composedText}\\n${returnExpr}`;\n\tif (uniformLayout \u0026\u0026 /\\b(?:tex|samp|ext)\\.\\$\\./.test(scan) \u0026\u0026 !/\\buni\\.\\$\\./.test(scan)) {\n\t\tctx.external(uniformLayout, \"uni\");\n\t\tstatements.unshift(\"_ = uni.$.uniforms._sys.time;\");\n\t}\n\treturn {\n\t\tbody: `{\\n  ${statements.join(\"\\n  \")}\\n  return ${returnExpr};\\n}`,\n\t\texternals\n\t};\n}\nfunction composeNodeTree(registry, options = {}) {\n\tconst layouts = { sampler: SHARED_SAMPLER_LAYOUT };\n\tconst rttBoundaries = [];\n\tconst textures = [];\n\tconst externalTextures = [];\n\tconst computeSteps = [];\n\tconst composedNodeIds = /* @__PURE__ */ new Set();\n\tconst onBeforeRender = [];\n\tconst onAfterRender = [];\n\tconst onResize = [];\n\tconst onCleanup = [];\n\tlet rttCounter = 0;\n\tlet computeTexCounter = 0;\n\tlet externalTexCounter = 0;\n\tlet mediaTexCounter = 0;\n\tconst unfilterableKeys = /* @__PURE__ */ new Set();\n\tconst uniformLayout = registry.store.layout;\n\tif (uniformLayout) uniformLayout.$idx(BIND_GROUPS.uniforms);\n\tlayouts.uniform = uniformLayout;\n\tconst uniAccessorRaw = (fullPath) =\u003e new Expr((ctx) =\u003e {\n\t\tif (uniformLayout) ctx.external(uniformLayout, \"uni\");\n\t\treturn fullPath;\n\t});\n\tconst uniAccessor = (accessorPath) =\u003e uniAccessorRaw(`uni.$.uniforms.${accessorPath}`);\n\tconst propAccessor = (handle) =\u003e uniAccessorRaw(registry.store.gpuAccessor(handle, \"uni\"));\n\tconst sysCtx = {\n\t\tuv: new Expr(() =\u003e \"uv\"),\n\t\ttime: uniAccessor(\"_sys.time\"),\n\t\tviewportSize: uniAccessor(\"_sys.viewportSize\"),\n\t\tlogicalViewportSize: uniAccessor(\"_sys.logicalViewportSize\"),\n\t\taspect: uniAccessor(\"_sys.aspect\"),\n\t\tpointer: uniAccessor(\"_sys.pointer\")\n\t};\n\tconst makeKitTexture = (key) =\u003e ({\n\t\tkey,\n\t\tsample: (uv, sampler$1 = \"linearClamp\") =\u003e new Expr((ctx) =\u003e `textureSample(tex.$.${key}, samp.$.${sampler$1}, ${uv._emit(ctx)})`),\n\t\tsampleLevel: (uv, sampler$1 = \"linearClamp\") =\u003e new Expr((ctx) =\u003e `textureSampleLevel(tex.$.${key}, samp.$.${sampler$1}, ${uv._emit(ctx)}, 0.0)`),\n\t\taccessor: () =\u003e new Expr(() =\u003e `tex.$.${key}`),\n\t\tdimensions: () =\u003e new Expr(() =\u003e `vec2f(textureDimensions(tex.$.${key}))`)\n\t});\n\tconst makeExternalKitTexture = (key) =\u003e ({\n\t\tkey,\n\t\tsample: (uv, sampler$1 = \"linearClamp\") =\u003e new Expr((ctx) =\u003e `textureSampleBaseClampToEdge(ext.$.${key}, samp.$.${sampler$1}, ${uv._emit(ctx)})`),\n\t\tsampleLevel: (uv, sampler$1 = \"linearClamp\") =\u003e new Expr((ctx) =\u003e `textureSampleBaseClampToEdge(ext.$.${key}, samp.$.${sampler$1}, ${uv._emit(ctx)})`),\n\t\taccessor: () =\u003e new Expr(() =\u003e `ext.$.${key}`),\n\t\tdimensions: () =\u003e new Expr(() =\u003e `vec2f(textureDimensions(ext.$.${key}))`)\n\t});\n\tconst convertToTexture = (e) =\u003e {\n\t\tconst key = `rtt_${rttCounter++}`;\n\t\trttBoundaries.push({\n\t\t\tkey,\n\t\t\troot: e\n\t\t});\n\t\ttextures.push({\n\t\t\tkey,\n\t\t\tkind: \"rtt\"\n\t\t});\n\t\treturn makeKitTexture(key);\n\t};\n\tconst mapSourceCache = /* @__PURE__ */ new Map();\n\tconst mapSourceTexture = (node, prop, source) =\u003e {\n\t\tconst cacheKey = `${node.id}:${prop}`;\n\t\tconst cached = mapSourceCache.get(cacheKey);\n\t\tif (cached !== void 0) return cached;\n\t\tconst sourceId = source ? registry.resolveCustomId(source) : null;\n\t\tconst tex = sourceId ? convertToTexture(composeNode(sourceId, new Set([node.id]))) : null;\n\t\tmapSourceCache.set(cacheKey, tex);\n\t\treturn tex;\n\t};\n\tconst overridesByNode = /* @__PURE__ */ new Map();\n\tconst getOverrides = (node) =\u003e {\n\t\tconst cached = overridesByNode.get(node.id);\n\t\tif (cached) return cached;\n\t\tconst out = {};\n\t\tconst maps = node.metadata.maps;\n\t\tif (maps) {\n\t\t\tlet customSampleUVs = {};\n\t\t\tconst sampleUVsFn = node.definition.mapSampleUVs;\n\t\t\tif (sampleUVsFn) {\n\t\t\t\tconst baseUniforms = {};\n\t\t\t\tfor (const [prop, h] of Object.entries(node.handles)) {\n\t\t\t\t\tif (h.cpu) continue;\n\t\t\t\t\tbaseUniforms[prop] = propAccessor(h);\n\t\t\t\t}\n\t\t\t\tcustomSampleUVs = sampleUVsFn({\n\t\t\t\t\tuniforms: baseUniforms,\n\t\t\t\t\tctx: sysCtx\n\t\t\t\t}) ?? {};\n\t\t\t}\n\t\t\tfor (const [prop, driver] of Object.entries(maps)) {\n\t\t\t\tif (!(prop in node.handles)) continue;\n\t\t\t\tconst overExpr = resolveDriver(driver, node, prop, customSampleUVs[prop]);\n\t\t\t\tif (overExpr) out[prop] = overExpr;\n\t\t\t}\n\t\t}\n\t\toverridesByNode.set(node.id, out);\n\t\treturn out;\n\t};\n\tconst propsAccessor = (node) =\u003e {\n\t\tconst key = nodeKey(node.id);\n\t\tconst maps = node.metadata.maps;\n\t\tif (!maps || Object.keys(maps).length === 0) return uniAccessor(key);\n\t\tconst overrides = getOverrides(node);\n\t\tif (Object.keys(overrides).length === 0) return uniAccessor(key);\n\t\treturn new Expr((ctx) =\u003e ctx.memo(`props:${node.id}`, () =\u003e {\n\t\t\tif (uniformLayout) ctx.external(uniformLayout, \"uni\");\n\t\t\tconst local = ctx.freshLocal(`p_${key}`);\n\t\t\tctx.statement(`var ${local} = uni.$.uniforms.${key};`);\n\t\t\tfor (const [prop, overExpr] of Object.entries(overrides)) ctx.statement(`${local}.${prop} = ${overExpr._emit(ctx)};`);\n\t\t\treturn local;\n\t\t}));\n\t};\n\tconst propValuesFor = (node) =\u003e {\n\t\tconst out = {};\n\t\tfor (const [prop, h] of Object.entries(node.handles)) out[prop] = h.value;\n\t\treturn out;\n\t};\n\tconst uniformExprs = (node) =\u003e {\n\t\tconst out = {};\n\t\tnodeKey(node.id);\n\t\tconst propsE = propsAccessor(node);\n\t\tfor (const [prop, h] of Object.entries(node.handles)) {\n\t\t\tif (h.cpu) continue;\n\t\t\tconst maps = node.metadata.maps;\n\t\t\tif (maps \u0026\u0026 prop in maps) out[prop] = propsE.member(prop);\n\t\t\telse out[prop] = propAccessor(h);\n\t\t}\n\t\tconst extraFields = node.definition.extraFields;\n\t\tif (extraFields) for (const name of Object.keys(extraFields)) out[name] = propsE.member(name);\n\t\treturn out;\n\t};\n\tconst resolveDriver = (driver, node, prop, sampleUV) =\u003e {\n\t\tconst cfg = driver;\n\t\tconst key = nodeKey(node.id);\n\t\tif (cfg.type === \"map\") {\n\t\t\tconst srcTex = mapSourceTexture(node, prop, cfg.source);\n\t\t\tif (!srcTex) return null;\n\t\t\treturn remapExpr(extractChannel(srcTex.sample(sampleUV ?? sysCtx.uv), cfg.channel ?? \"luminance\"), uniAccessor(`${key}._map_${prop}_inputMin`), uniAccessor(`${key}._map_${prop}_inputMax`), uniAccessor(`${key}._map_${prop}_outputMin`), uniAccessor(`${key}._map_${prop}_outputMax`), uniAccessor(`${key}._map_${prop}_curve`));\n\t\t}\n\t\tif (cfg.type === \"mouse-position\" || cfg.type === \"mouse\" || cfg.type === \"auto-animate\") return uniAccessor(`${key}._smoothed_${prop}`);\n\t\treturn null;\n\t};\n\tconst applyMaskIfNeeded = (result, node, processedMasks, distortedUV) =\u003e {\n\t\tconst maskCfg = node.metadata.mask;\n\t\tif (!maskCfg?.source) return result;\n\t\tconst maskNodeId = registry.resolveCustomId(maskCfg.source);\n\t\tif (!maskNodeId) return result;\n\t\tif (processedMasks.has(maskNodeId)) {\n\t\t\tconsole.error(\"[gpu] circular dependency in shader masks.\");\n\t\t\treturn result;\n\t\t}\n\t\tconst next = new Set(processedMasks);\n\t\tnext.add(node.id);\n\t\tlet maskExpr = composeNode(maskNodeId, next);\n\t\tif (distortedUV) maskExpr = convertToTexture(maskExpr).sample(distortedUV);\n\t\treturn applyMaskFn(result, maskExpr, maskCfg.type ?? \"alpha\");\n\t};\n\tconst opacityExpr = (node) =\u003e uniAccessor(`${nodeKey(node.id)}._opacity`);\n\tconst hasBox = (node) =\u003e !!node.metadata.boundingBox \u0026\u0026 !!node.definition.boundingBoxDeclaration \u0026\u0026 !isIdentityBoundingBox(node.metadata.boundingBox);\n\tconst cutoutActive = (node) =\u003e node.handles.cutout?.value === 1;\n\tconst requiresChild = (node) =\u003e !!node.definition.requiresChild;\n\tconst blendWithChildren = (node) =\u003e !!node.definition.blendWithChildren;\n\tconst usesBoxClipWindow = (node) =\u003e hasBox(node) \u0026\u0026 !node.definition.boundingBoxDeclaration?.boxResamplesContent \u0026\u0026 requiresChild(node) \u0026\u0026 node.metadata.blendMode === \"normal\" \u0026\u0026 !cutoutActive(node) \u0026\u0026 !blendWithChildren(node);\n\tconst halfPixelSq = () =\u003e new Expr((ctx) =\u003e `(0.5 / max(${sysCtx.viewportSize.member(\"y\")._emit(ctx)}, 1.0))`);\n\tconst clipMaskExpr = (node, uv = sysCtx.uv) =\u003e {\n\t\tconst key = nodeKey(node.id);\n\t\tconst bu = (f) =\u003e uniAccessor(`${key}._bbox_${f}`);\n\t\treturn call(applyRectangularClipMask, \"bboxClipMask\", [\n\t\t\tuv,\n\t\t\tbu(\"centerX\"),\n\t\t\tbu(\"centerY\"),\n\t\t\tbu(\"halfWidth\"),\n\t\t\tbu(\"halfHeight\"),\n\t\t\tbu(\"cornerRadius\"),\n\t\t\tbu(\"rotation\"),\n\t\t\tbu(\"aspectRatio\"),\n\t\t\thalfPixelSq()\n\t\t]);\n\t};\n\tconst applyBoxTransform = (result, node) =\u003e {\n\t\tif (!hasBox(node)) return result;\n\t\tif (node.definition.boundingBoxDeclaration?.boxResamplesContent) {\n\t\t\tconst key = nodeKey(node.id);\n\t\t\tconst bu = (f) =\u003e uniAccessor(`${key}._bbox_${f}`);\n\t\t\tconst tex = convertToTexture(result);\n\t\t\tconst contentUV = call(boundingBoxToGeneratorUVContext, \"bboxGenUVContext\", [\n\t\t\t\tsysCtx.uv,\n\t\t\t\tbu(\"centerX\"),\n\t\t\t\tbu(\"centerY\"),\n\t\t\t\tbu(\"halfWidth\"),\n\t\t\t\tbu(\"halfHeight\"),\n\t\t\t\tbu(\"rotation\"),\n\t\t\t\tbu(\"aspectRatio\")\n\t\t\t]);\n\t\t\tconst sampled = call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [tex.sample(contentUV)]);\n\t\t\treturn vec4(sampled.member(\"rgb\"), sampled.member(\"a\").mul(clipMaskExpr(node)));\n\t\t}\n\t\tconst mask = clipMaskExpr(node);\n\t\treturn vec4(result.member(\"rgb\"), result.member(\"a\").mul(mask));\n\t};\n\tconst applyNodeTransform = (result, node) =\u003e {\n\t\tconst tf = node.metadata.transform;\n\t\tif (!tf || !needsTransformation(tf)) return result;\n\t\tconst key = nodeKey(node.id);\n\t\tconst tex = convertToTexture(result);\n\t\tconst tu = (f) =\u003e uniAccessor(`${key}._xform_${f}`);\n\t\treturn applyEdgeHandlingExpr(call(applyUVTransform, \"applyUVTransform\", [\n\t\t\tsysCtx.uv,\n\t\t\ttu(\"offsetX\"),\n\t\t\ttu(\"offsetY\"),\n\t\t\ttu(\"rotation\"),\n\t\t\ttu(\"scale\"),\n\t\t\ttu(\"anchorX\"),\n\t\t\ttu(\"anchorY\"),\n\t\t\ttu(\"aspectRatio\")\n\t\t]), (uv) =\u003e tex.sample(uv), TRANSFORM_EDGE_MODES[tf.edges] ?? 0);\n\t};\n\tconst applyNodeBboxOrTransform = (result, composedInput, node) =\u003e {\n\t\tif (hasBox(node)) {\n\t\t\tif (composedInput !== void 0 \u0026\u0026 usesBoxClipWindow(node)) return mixExpr(composedInput, result, clipMaskExpr(node));\n\t\t\treturn applyBoxTransform(result, node);\n\t\t}\n\t\treturn applyNodeTransform(result, node);\n\t};\n\tconst applyChildFragmentBox = (fragmentResult, node) =\u003e {\n\t\tif (usesBoxClipWindow(node)) return {\n\t\t\ttransformedFragment: fragmentResult,\n\t\t\tclipMaskNode: clipMaskExpr(node)\n\t\t};\n\t\treturn {\n\t\t\ttransformedFragment: hasBox(node) ? applyBoxTransform(fragmentResult, node) : applyNodeTransform(fragmentResult, node),\n\t\t\tclipMaskNode: void 0\n\t\t};\n\t};\n\tconst composeReplaceFilter = (accumulated, childResult, node, clipMaskNode) =\u003e {\n\t\tconst opacity = opacityExpr(node);\n\t\tconst noBox = blendWithChildren(node) ? accumulated !== void 0 ? applyBlend(accumulated, childResult, \"normal\", opacity) : mixExpr(ZERO, childResult, opacity) : mixExpr(accumulated ?? ZERO, childResult, opacity);\n\t\tif (clipMaskNode === void 0) return noBox;\n\t\treturn mixExpr(accumulated ?? ZERO, noBox, clipMaskNode);\n\t};\n\tconst initNodeCompute = (node, params) =\u003e {\n\t\tif (!node.definition.compute) return void 0;\n\t\ttry {\n\t\t\tconst result = node.definition.compute(params);\n\t\t\tif (result) {\n\t\t\t\tcomputeSteps.push({\n\t\t\t\t\tnodeId: node.id,\n\t\t\t\t\tgetComputeNodes: result.getComputeNodes,\n\t\t\t\t\tbindInputs: result.bindInputs\n\t\t\t\t});\n\t\t\t\treturn result.outputs;\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tdebugError(`[gpu] error initializing compute for node ${node.id}:`, e);\n\t\t}\n\t};\n\tconst boundsFromBboxFields = (n) =\u003e {\n\t\tconst k = nodeKey(n.id);\n\t\tconst bu = (f) =\u003e uniAccessor(`${k}._bbox_${f}`);\n\t\treturn {\n\t\t\tcenterX: bu(\"centerX\"),\n\t\t\tcenterY: bu(\"centerY\"),\n\t\t\thalfWidth: bu(\"halfWidth\"),\n\t\t\thalfHeight: bu(\"halfHeight\"),\n\t\t\trotation: bu(\"rotation\")\n\t\t};\n\t};\n\tconst childHasShapeBounds = (n) =\u003e {\n\t\tconst dcl = n.definition.boundingBoxDeclaration;\n\t\treturn !!dcl \u0026\u0026 (!!dcl.computeBounds || !!dcl.propBindings);\n\t};\n\tconst nodeBoundsParams = (node) =\u003e {\n\t\tif (!node.definition.wantsBoundsParams) return {};\n\t\tconst out = {};\n\t\tif (hasBox(node)) out.ownBoundsParams = boundsFromBboxFields(node);\n\t\tconst children = [...registry.getChildren(node.id)].sort((a, b) =\u003e a.metadata.renderOrder - b.metadata.renderOrder);\n\t\tfor (const child of children) {\n\t\t\tif (child.metadata.visible === false) continue;\n\t\t\tif (hasBox(child)) {\n\t\t\t\tout.childBoundsParams = boundsFromBboxFields(child);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (childHasShapeBounds(child)) {\n\t\t\t\tconst k = nodeKey(node.id);\n\t\t\t\tconst cb = (f) =\u003e uniAccessor(`${k}._childBounds_${f}`);\n\t\t\t\tout.childBoundsParams = {\n\t\t\t\t\tcenterX: cb(\"centerX\"),\n\t\t\t\t\tcenterY: cb(\"centerY\"),\n\t\t\t\t\thalfWidth: cb(\"halfWidth\"),\n\t\t\t\t\thalfHeight: cb(\"halfHeight\"),\n\t\t\t\t\trotation: floatE(0)\n\t\t\t\t};\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\treturn out;\n\t};\n\tconst makeParams = (node, childNode, extra = {}) =\u003e {\n\t\treturn {\n\t\t\tprops: propsAccessor(node),\n\t\t\tuniforms: uniformExprs(node),\n\t\t\tpropValues: propValuesFor(node),\n\t\t\tchildNode,\n\t\t\tctx: sysCtx,\n\t\t\tlogicalViewportSize: sysCtx.logicalViewportSize,\n\t\t\tconvertToTexture,\n\t\t\tdeclareTexture: (tex) =\u003e {\n\t\t\t\tif (!textures.some((t) =\u003e t.key === tex.key)) textures.push({\n\t\t\t\t\tkey: tex.key,\n\t\t\t\t\tkind: \"media\",\n\t\t\t\t\tresource: tex._resource\n\t\t\t\t});\n\t\t\t},\n\t\t\tregisterExternalTexture: (getSource) =\u003e {\n\t\t\t\tconst key = `video_${externalTexCounter++}`;\n\t\t\t\texternalTextures.push({\n\t\t\t\t\tkey,\n\t\t\t\t\tgetSource\n\t\t\t\t});\n\t\t\t\treturn makeExternalKitTexture(key);\n\t\t\t},\n\t\t\tregisterComputeTexture: (texture) =\u003e {\n\t\t\t\tconst key = `compute_${computeTexCounter++}`;\n\t\t\t\ttextures.push({\n\t\t\t\t\tkey,\n\t\t\t\t\tkind: \"compute\",\n\t\t\t\t\tresource: { texture }\n\t\t\t\t});\n\t\t\t\tconst format = texture?.props?.format;\n\t\t\t\tif (format === \"r32float\" || format === \"rg32float\" || format === \"rgba32float\") unfilterableKeys.add(key);\n\t\t\t\treturn makeKitTexture(key);\n\t\t\t},\n\t\t\tcreateMediaTexture: (opts) =\u003e options.createMediaTexture?.(opts) ?? (() =\u003e {\n\t\t\t\tthrow new Error(\"[gpu] createMediaTexture unavailable (no TextureManager injected)\");\n\t\t\t})(),\n\t\t\tcreateDataTexture: (opts) =\u003e options.createDataTexture?.(opts) ?? (() =\u003e {\n\t\t\t\tthrow new Error(\"[gpu] createDataTexture unavailable (no TextureManager injected)\");\n\t\t\t})(),\n\t\t\tregisterMediaTexture: (getTexture) =\u003e {\n\t\t\t\tconst key = `media_${mediaTexCounter++}`;\n\t\t\t\ttextures.push({\n\t\t\t\t\tkey,\n\t\t\t\t\tkind: \"media\",\n\t\t\t\t\tresource: { get texture() {\n\t\t\t\t\t\treturn getTexture();\n\t\t\t\t\t} }\n\t\t\t\t});\n\t\t\t\treturn makeKitTexture(key);\n\t\t\t},\n\t\t\tgetCpuValue: (prop) =\u003e {\n\t\t\t\tif ((node.metadata.maps?.[prop] || prop.startsWith(\"_animTime\")) \u0026\u0026 options.resolveDriverCpuValue) {\n\t\t\t\t\tconst resolved = options.resolveDriverCpuValue(node.id, prop);\n\t\t\t\t\tif (resolved !== void 0) return resolved;\n\t\t\t\t}\n\t\t\t\treturn node.handles[prop]?.value;\n\t\t\t},\n\t\t\tgetMapInfo: (prop) =\u003e {\n\t\t\t\tconst driver = node.metadata.maps?.[prop];\n\t\t\t\tif (!driver || driver.type !== \"map\") return null;\n\t\t\t\tconst sourceTexture = mapSourceTexture(node, prop, driver.source);\n\t\t\t\tif (!sourceTexture) return null;\n\t\t\t\treturn {\n\t\t\t\t\tsourceTexture,\n\t\t\t\t\tchannel: driver.channel ?? \"luminance\",\n\t\t\t\t\twindow: () =\u003e options.resolveMapWindow?.(node.id, prop) ?? {\n\t\t\t\t\t\tinputMin: typeof driver.inputMin === \"number\" ? driver.inputMin : 0,\n\t\t\t\t\t\tinputMax: typeof driver.inputMax === \"number\" ? driver.inputMax : 1,\n\t\t\t\t\t\toutputMin: typeof driver.outputMin === \"number\" ? driver.outputMin : 0,\n\t\t\t\t\t\toutputMax: typeof driver.outputMax === \"number\" ? driver.outputMax : 1,\n\t\t\t\t\t\tcurve: typeof driver.curve === \"number\" ? driver.curve : 0\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t},\n\t\t\tgetLayerTexture: (prop) =\u003e {\n\t\t\t\tconst source = node.handles[prop]?.value;\n\t\t\t\tif (typeof source !== \"string\" || source === \"\") return null;\n\t\t\t\treturn mapSourceTexture(node, prop, source);\n\t\t\t},\n\t\t\tsetExtraField: (name, value) =\u003e options.writeExtraField?.(node.id, name, value),\n\t\t\tonCleanup: (cb) =\u003e onCleanup.push(cb),\n\t\t\tonBeforeRender: (cb) =\u003e onBeforeRender.push(cb),\n\t\t\tonAfterRender: (cb) =\u003e onAfterRender.push(cb),\n\t\t\tonResize: (cb) =\u003e onResize.push(cb),\n\t\t\tcanvas: options.canvas,\n\t\t\tdimensions: options.dimensions ?? {\n\t\t\t\twidth: 1,\n\t\t\t\theight: 1\n\t\t\t},\n\t\t\tgpu: options.gpu,\n\t\t\tdomCanvas: node.domCanvas,\n\t\t\t...nodeBoundsParams(node),\n\t\t\t...extra\n\t\t};\n\t};\n\tfunction composeNode(id, processedMasks = /* @__PURE__ */ new Set()) {\n\t\tconst node = registry.getNode(id);\n\t\tif (!node) return ZERO;\n\t\tconst children = registry.getChildren(id);\n\t\tif (children.length \u003e 0 \u0026\u0026 node.definition.providesUVContextViaCompute) {\n\t\t\tconst uvResult = tryComposeViaUVContext(node, children, processedMasks);\n\t\t\tif (uvResult !== null) return uvResult;\n\t\t}\n\t\tif (children.length \u003e 0 \u0026\u0026 node.definition.uvRemap) {\n\t\t\tconst pushed = tryComposeViaAnalyticPushdown(node, children);\n\t\t\tif (pushed !== null) return pushed;\n\t\t\tconst nested = tryComposeViaAnalyticUVRemapNested(node, children, processedMasks);\n\t\t\tif (nested !== null) return nested;\n\t\t}\n\t\tif (children.length === 0) {\n\t\t\tcomposedNodeIds.add(id);\n\t\t\tconst params$1 = makeParams(node, void 0, {\n\t\t\t\tbboxMask: bboxMaskForNode(node),\n\t\t\t\t...genResizeFitParams(node)\n\t\t\t});\n\t\t\tparams$1.computeOutputs = initNodeCompute(node, params$1);\n\t\t\tconst result = node.definition.fragment(params$1);\n\t\t\treturn applyMaskIfNeeded(hasBox(node) ? applyBoxTransform(result, node) : applyNodeTransform(result, node), node, processedMasks);\n\t\t}\n\t\tconst sorted = [...children].sort((a, b) =\u003e a.metadata.renderOrder - b.metadata.renderOrder);\n\t\tconst analytic = tryComposeViaAnalyticUVRemap(sorted, processedMasks);\n\t\tif (analytic !== null) {\n\t\t\tconst params$1 = makeParams(node, analytic, { bboxMask: bboxMaskForNode(node) });\n\t\t\tparams$1.computeOutputs = initNodeCompute(node, params$1);\n\t\t\tconst result = node.definition.fragment(params$1);\n\t\t\treturn applyMaskIfNeeded(hasBox(node) ? applyBoxTransform(result, node) : applyNodeTransform(result, node), node, processedMasks);\n\t\t}\n\t\tconst composed = composeSiblings(node, sorted, processedMasks);\n\t\tcomposedNodeIds.add(id);\n\t\tconst params = makeParams(node, composed, { bboxMask: bboxMaskForNode(node) });\n\t\tparams.computeOutputs = initNodeCompute(node, params);\n\t\treturn applyMaskIfNeeded(applyNodeBboxOrTransform(node.definition.fragment(params), composed, node), node, processedMasks);\n\t}\n\tfunction composeSiblings(parent, sorted, processedMasks) {\n\t\tlet composed = void 0;\n\t\tfor (let i = 0; i \u003c sorted.length; i++) {\n\t\t\tconst child = sorted[i];\n\t\t\tif (child.metadata.visible === false) continue;\n\t\t\tif (composed !== void 0 \u0026\u0026 analyticRunEligible(child)) {\n\t\t\t\tconst runResult = tryFoldAnalyticRunComposite(sorted, i, composed, processedMasks);\n\t\t\t\tif (runResult) {\n\t\t\t\t\tcomposed = runResult.node;\n\t\t\t\t\ti = runResult.endIndex;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\tcomposedNodeIds.add(child.id);\n\t\t\tconst childHasChildren = registry.getChildren(child.id).length \u003e 0;\n\t\t\tlet childResult;\n\t\t\tlet clipMaskNode;\n\t\t\tif (childHasChildren) childResult = composeNode(child.id, processedMasks);\n\t\t\telse {\n\t\t\t\tlet effectiveChild = composed;\n\t\t\t\tif (child.definition.requiresRTT \u0026\u0026 composed !== void 0) effectiveChild = applyBlend(ZERO, composed, \"normal\", floatE(1));\n\t\t\t\tif (child.definition.acceptsOptionalChild) effectiveChild = void 0;\n\t\t\t\tconst params = makeParams(child, effectiveChild, {\n\t\t\t\t\tbboxMask: bboxMaskForNode(child),\n\t\t\t\t\t...genResizeFitParams(child)\n\t\t\t\t});\n\t\t\t\tparams.computeOutputs = initNodeCompute(child, params);\n\t\t\t\tconst childBox = applyChildFragmentBox(child.definition.fragment(params), child);\n\t\t\t\tclipMaskNode = childBox.clipMaskNode;\n\t\t\t\tchildResult = applyMaskIfNeeded(childBox.transformedFragment, child, processedMasks);\n\t\t\t}\n\t\t\tif (child.definition.requiresChild \u0026\u0026 child.metadata.blendMode === \"normal\" \u0026\u0026 !childHasChildren) composed = composeReplaceFilter(composed, childResult, child, clipMaskNode);\n\t\t\telse {\n\t\t\t\tconst blendMode = child.metadata.blendMode ?? \"normal\";\n\t\t\t\tconst effectiveOpacity = child.metadata.opacity ?? 1;\n\t\t\t\tif (composed === void 0) composed = parent.definition.requiresRTT || effectiveOpacity !== 1 ? applyBlend(WHITE0, childResult, blendMode, opacityExpr(child)) : childResult;\n\t\t\t\telse composed = applyBlend(composed, childResult, blendMode, opacityExpr(child));\n\t\t\t}\n\t\t}\n\t\treturn composed;\n\t}\n\tfunction genResizeFitParams(node, uv = sysCtx.uv) {\n\t\tif (!hasBox(node)) return {};\n\t\tif (!node.definition.boundingBoxDeclaration?.supportsResizeFit) return {};\n\t\tconst key = nodeKey(node.id);\n\t\tconst bu = (f) =\u003e uniAccessor(`${key}._bbox_${f}`);\n\t\treturn {\n\t\t\tuvContext: call(boundingBoxToGeneratorUVContext, \"bboxGenUVContext\", [\n\t\t\t\tuv,\n\t\t\t\tbu(\"centerX\"),\n\t\t\t\tbu(\"centerY\"),\n\t\t\t\tbu(\"halfWidth\"),\n\t\t\t\tbu(\"halfHeight\"),\n\t\t\t\tbu(\"rotation\"),\n\t\t\t\tbu(\"aspectRatio\")\n\t\t\t]),\n\t\t\teffectiveViewportSize: vec4(bu(\"halfWidth\").mul(2).mul(sysCtx.viewportSize.member(\"x\")), bu(\"halfHeight\").mul(2).mul(sysCtx.viewportSize.member(\"y\")), 0, 0).member(\"xy\")\n\t\t};\n\t}\n\tfunction bboxMaskForNode(node) {\n\t\tif (!hasBox(node) || !node.definition.requiresRTT) return void 0;\n\t\tif (node.definition.boundingBoxDeclaration?.supportsResizeFit) return void 0;\n\t\treturn clipMaskExpr(node);\n\t}\n\tconst analyticHasFallbackTriggers = (n) =\u003e !!n.metadata.mask || n.metadata.opacity !== void 0 \u0026\u0026 n.metadata.opacity \u003c 1 || (n.metadata.blendMode ?? \"normal\") !== \"normal\" || needsTransformation(n.metadata.transform) || hasBox(n);\n\tconst analyticRunEligible = (n) =\u003e !!n.definition.uvRemap \u0026\u0026 registry.getChildren(n.id).length === 0 \u0026\u0026 !analyticHasFallbackTriggers(n);\n\tfunction remapAt(dNode, uv, mask) {\n\t\tcomposedNodeIds.add(dNode.id);\n\t\tconst computeOutputs = initNodeCompute(dNode, makeParams(dNode, void 0));\n\t\treturn dNode.definition.uvRemap({\n\t\t\tuv,\n\t\t\tmask,\n\t\t\tuniforms: uniformExprs(dNode),\n\t\t\tpropValues: propValuesFor(dNode),\n\t\t\tprops: propsAccessor(dNode),\n\t\t\taspect: sysCtx.aspect,\n\t\t\tonBeforeRender: (cb) =\u003e onBeforeRender.push(cb),\n\t\t\tcomputeOutputs\n\t\t});\n\t}\n\tfunction foldAnalyticRun(run) {\n\t\tlet uv = sysCtx.uv;\n\t\tlet mask = floatE(1);\n\t\tfor (let i = run.length - 1; i \u003e= 0; i--) {\n\t\t\tconst remapped = remapAt(run[i], uv, mask);\n\t\t\tuv = remapped.uv;\n\t\t\tmask = remapped.mask;\n\t\t}\n\t\treturn {\n\t\t\tuv,\n\t\t\tmask\n\t\t};\n\t}\n\tconst PUSHDOWN_MAX_NODES = 24;\n\tconst fullCoverage = floatE(1);\n\tconst pushdownEligible = (n, budget) =\u003e {\n\t\tif (budget.left-- \u003c= 0) return false;\n\t\tif (n.metadata.mask) return false;\n\t\tif (needsTransformation(n.metadata.transform)) return false;\n\t\tconst children = registry.getChildren(n.id).filter((c) =\u003e c.metadata.visible !== false);\n\t\tif (children.length === 0) {\n\t\t\tif (hasBox(n) \u0026\u0026 n.definition.boundingBoxDeclaration?.boxResamplesContent) return false;\n\t\t\treturn !!n.definition.acceptsUVContext \u0026\u0026 !n.definition.requiresChild;\n\t\t}\n\t\tif (!n.definition.uvRemap) return false;\n\t\tif (hasBox(n)) return false;\n\t\treturn children.every((c) =\u003e pushdownEligible(c, budget));\n\t};\n\tfunction remapCoverage(dNode, uv, mask) {\n\t\tconst incoming = mask ?? fullCoverage;\n\t\tconst out = remapAt(dNode, uv, incoming);\n\t\treturn {\n\t\t\tuv: out.uv,\n\t\t\tmask: out.mask === incoming ? mask : out.mask\n\t\t};\n\t}\n\tconst combineCoverage = (a, b) =\u003e a === void 0 ? b : b === void 0 ? a : a.mul(b);\n\tfunction composeAtUV(node, uv, mask) {\n\t\tconst children = registry.getChildren(node.id).filter((c) =\u003e c.metadata.visible !== false);\n\t\tif (children.length \u003e 0) {\n\t\t\tif (!node.definition.uvRemap) return null;\n\t\t\tconst next = remapCoverage(node, uv, mask);\n\t\t\treturn composeChildrenAtUV(children, asLocal(next.uv, \"foldUV\"), next.mask);\n\t\t}\n\t\tif (!node.definition.acceptsUVContext) return null;\n\t\tcomposedNodeIds.add(node.id);\n\t\tconst resizeFit = genResizeFitParams(node, uv);\n\t\tconst params = makeParams(node, void 0, Object.keys(resizeFit).length \u003e 0 ? resizeFit : { uvContext: uv });\n\t\tparams.computeOutputs = initNodeCompute(node, params);\n\t\tconst fragmentResult = node.definition.fragment(params);\n\t\tconst coverage = combineCoverage(mask, hasBox(node) ? clipMaskExpr(node, uv) : void 0);\n\t\tif (coverage === void 0) return fragmentResult;\n\t\tconst result = asLocal(fragmentResult, \"gen\");\n\t\treturn vec4(result.member(\"rgb\"), result.member(\"a\").mul(coverage));\n\t}\n\tfunction composeChildrenAtUV(children, uv, mask) {\n\t\tconst sorted = [...children].sort((a, b) =\u003e a.metadata.renderOrder - b.metadata.renderOrder);\n\t\tlet composed;\n\t\tfor (const child of sorted) {\n\t\t\tconst childResult = composeAtUV(child, uv, void 0);\n\t\t\tif (childResult === null) return null;\n\t\t\tconst blendMode = child.metadata.blendMode ?? \"normal\";\n\t\t\tconst effectiveOpacity = child.metadata.opacity ?? 1;\n\t\t\tif (composed === void 0) composed = blendMode === \"normal\" \u0026\u0026 effectiveOpacity === 1 ? childResult : applyBlend(WHITE0, childResult, blendMode, opacityExpr(child));\n\t\t\telse composed = applyBlend(composed, childResult, blendMode, opacityExpr(child));\n\t\t}\n\t\tif (composed === void 0) return null;\n\t\tif (mask === void 0) return composed;\n\t\tconst sibs = asLocal(composed, \"sibs\");\n\t\treturn vec4(sibs.member(\"rgb\"), sibs.member(\"a\").mul(mask));\n\t}\n\tfunction tryComposeViaAnalyticPushdown(parent, children) {\n\t\tif (!parent.definition.uvRemap) return null;\n\t\tif (analyticHasFallbackTriggers(parent)) return null;\n\t\tconst visible = children.filter((c) =\u003e c.metadata.visible !== false);\n\t\tif (visible.length === 0) return null;\n\t\tconst budget = { left: PUSHDOWN_MAX_NODES };\n\t\tif (!visible.every((c) =\u003e pushdownEligible(c, budget))) return null;\n\t\tcomposedNodeIds.add(parent.id);\n\t\tconst { uv, mask } = remapCoverage(parent, sysCtx.uv, void 0);\n\t\treturn composeChildrenAtUV(visible, asLocal(uv, \"foldUV\"), mask);\n\t}\n\tfunction tryComposeViaAnalyticUVRemap(sorted, _processedMasks) {\n\t\tconst visible = sorted.filter((c) =\u003e c.metadata.visible !== false);\n\t\tif (!visible.some((c) =\u003e !!c.definition.uvRemap)) return null;\n\t\tif (visible.length \u003c 2) return null;\n\t\tlet runStart = visible.length;\n\t\tfor (let i = visible.length - 1; i \u003e= 0; i--) {\n\t\t\tif (!analyticRunEligible(visible[i])) break;\n\t\t\trunStart = i;\n\t\t}\n\t\tconst run = visible.slice(runStart);\n\t\tconst contentBelow = visible.slice(0, runStart);\n\t\tif (run.length === 0) return null;\n\t\tif (contentBelow.length !== 1) return null;\n\t\tconst generator = contentBelow[0];\n\t\tif (!generator.definition.acceptsUVContext) return null;\n\t\tif (registry.getChildren(generator.id).length \u003e 0) return null;\n\t\tif (analyticHasFallbackTriggers(generator)) return null;\n\t\tcomposedNodeIds.add(generator.id);\n\t\tfor (const dNode of run) composedNodeIds.add(dNode.id);\n\t\tconst { uv, mask } = foldAnalyticRun(run);\n\t\tconst params = makeParams(generator, void 0, { uvContext: uv });\n\t\tparams.computeOutputs = initNodeCompute(generator, params);\n\t\tconst genResult = generator.definition.fragment(params);\n\t\treturn vec4(genResult.member(\"rgb\"), genResult.member(\"a\").mul(mask));\n\t}\n\tfunction tryFoldAnalyticRunComposite(sorted, startIdx, contentBelow, _processedMasks) {\n\t\tif (!analyticRunEligible(sorted[startIdx])) return null;\n\t\tconst run = [];\n\t\tlet endIndex = startIdx;\n\t\tfor (let j = startIdx; j \u003c sorted.length; j++) {\n\t\t\tconst n = sorted[j];\n\t\t\tif (n.metadata.visible === false) continue;\n\t\t\tif (!analyticRunEligible(n)) break;\n\t\t\trun.push(n);\n\t\t\tendIndex = j;\n\t\t}\n\t\tif (run.length === 0) return null;\n\t\tfor (const dNode of run) composedNodeIds.add(dNode.id);\n\t\tconst { uv, mask } = foldAnalyticRun(run);\n\t\tconst sampled = convertToTexture(applyBlend(ZERO, contentBelow, \"normal\", floatE(1))).sample(uv);\n\t\treturn {\n\t\t\tnode: vec4(sampled.member(\"rgb\"), sampled.member(\"a\").mul(mask)),\n\t\t\tendIndex\n\t\t};\n\t}\n\tfunction tryComposeViaAnalyticUVRemapNested(parent, children, processedMasks) {\n\t\tif (!parent.definition.uvRemap) return null;\n\t\tif (analyticHasFallbackTriggers(parent)) return null;\n\t\tconst MAX = 8;\n\t\tconst chain = [];\n\t\tlet cursor = parent;\n\t\tlet hopChildren = children;\n\t\tlet terminusGenerator = null;\n\t\tlet terminusComposite = null;\n\t\tfor (let depth = 0; depth \u003c MAX; depth++) {\n\t\t\tchain.push(cursor);\n\t\t\tconst visible = hopChildren.filter((c) =\u003e c.metadata.visible !== false);\n\t\t\tif (visible.length !== 1) return null;\n\t\t\tconst next = visible[0];\n\t\t\tconst nextChildren = registry.getChildren(next.id);\n\t\t\tif (next.definition.acceptsUVContext \u0026\u0026 nextChildren.length === 0 \u0026\u0026 !analyticHasFallbackTriggers(next)) {\n\t\t\t\tterminusGenerator = next;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (next.definition.uvRemap \u0026\u0026 !analyticHasFallbackTriggers(next) \u0026\u0026 nextChildren.length === 1) {\n\t\t\t\tcursor = next;\n\t\t\t\thopChildren = nextChildren;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tterminusComposite = next;\n\t\t\tbreak;\n\t\t}\n\t\tif (!terminusGenerator \u0026\u0026 !terminusComposite) return null;\n\t\tfor (const c of chain) composedNodeIds.add(c.id);\n\t\tconst { uv, mask } = foldAnalyticRun([...chain].reverse());\n\t\tlet result;\n\t\tif (terminusGenerator) {\n\t\t\tcomposedNodeIds.add(terminusGenerator.id);\n\t\t\tconst params = makeParams(terminusGenerator, void 0, { uvContext: uv });\n\t\t\tparams.computeOutputs = initNodeCompute(terminusGenerator, params);\n\t\t\tconst gen = terminusGenerator.definition.fragment(params);\n\t\t\tresult = vec4(gen.member(\"rgb\"), gen.member(\"a\").mul(mask));\n\t\t} else {\n\t\t\tconst sampled = convertToTexture(applyBlend(WHITE0, composeNode(terminusComposite.id, processedMasks), terminusComposite.metadata.blendMode ?? \"normal\", opacityExpr(terminusComposite))).sample(uv);\n\t\t\tresult = vec4(sampled.member(\"rgb\"), sampled.member(\"a\").mul(mask));\n\t\t}\n\t\treturn applyMaskIfNeeded(hasBox(parent) ? applyBoxTransform(result, parent) : applyNodeTransform(result, parent), parent, processedMasks);\n\t}\n\tfunction tryComposeViaUVContext(parent, children, processedMasks) {\n\t\tconst hasTriggers = (n) =\u003e !!n.metadata.mask || n.metadata.opacity !== void 0 \u0026\u0026 n.metadata.opacity \u003c 1 || (n.metadata.blendMode ?? \"normal\") !== \"normal\" || needsTransformation(n.metadata.transform) || hasBox(n);\n\t\tif (!parent.definition.providesUVContextViaCompute) return null;\n\t\tif (hasTriggers(parent)) return null;\n\t\tconst chain = [];\n\t\tlet cursor = parent;\n\t\tlet terminus = null;\n\t\tlet hopChildren = children;\n\t\tconst MAX = 8;\n\t\tfor (let depth = 0; depth \u003c MAX; depth++) {\n\t\t\tchain.push(cursor);\n\t\t\tconst visible = hopChildren.filter((c) =\u003e c.metadata.visible !== false);\n\t\t\tif (visible.length !== 1) return null;\n\t\t\tconst next = visible[0];\n\t\t\tif (hasTriggers(next)) return null;\n\t\t\tconst nextHasChildren = registry.getChildren(next.id).length \u003e 0;\n\t\t\tif (next.definition.acceptsUVContext \u0026\u0026 !nextHasChildren) {\n\t\t\t\tterminus = next;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (next.definition.providesUVContextViaCompute) {\n\t\t\t\tcursor = next;\n\t\t\t\thopChildren = registry.getChildren(next.id);\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t\tif (!terminus) return null;\n\t\tcomposedNodeIds.add(terminus.id);\n\t\tfor (const link of chain) composedNodeIds.add(link.id);\n\t\tconst linkParams = [];\n\t\tlet upstream;\n\t\tfor (let i = 0; i \u003c chain.length; i++) {\n\t\t\tconst link = chain[i];\n\t\t\tconst params = makeParams(link, void 0, { computeOutputs: upstream ? { _upstreamUVMap: upstream } : void 0 });\n\t\t\tconst outputs = initNodeCompute(link, params);\n\t\t\tif (!outputs || !outputs.uvMaskMap) return null;\n\t\t\tparams.computeOutputs = outputs;\n\t\t\tlinkParams.push(params);\n\t\t\tupstream = outputs.uvMaskMap;\n\t\t}\n\t\tconst finalSample = upstream.sample(sysCtx.uv);\n\t\tconst lookedUpUV = vec4(finalSample.member(\"r\"), finalSample.member(\"g\"), 0, 0).member(\"xy\");\n\t\tconst termParams = makeParams(terminus, void 0, { uvContext: lookedUpUV });\n\t\ttermParams.computeOutputs = initNodeCompute(terminus, termParams);\n\t\tlet composed = terminus.definition.fragment(termParams);\n\t\tfor (let i = chain.length - 1; i \u003e= 0; i--) {\n\t\t\tlinkParams[i].childNode = composed;\n\t\t\tlinkParams[i].uvPropagationActive = true;\n\t\t\tcomposed = chain[i].definition.fragment(linkParams[i]);\n\t\t}\n\t\treturn applyMaskIfNeeded(hasBox(parent) ? applyBoxTransform(composed, parent) : applyNodeTransform(composed, parent), parent, processedMasks);\n\t}\n\tconst rootExpr = registry.rootId ? composeNode(registry.rootId) : ZERO;\n\tconst rttPasses = rttBoundaries.map((b) =\u003e {\n\t\tconst { body, externals } = serialiseFragment(b.root, (composed) =\u003e composed, options.flipY ?? true, layouts.uniform);\n\t\treturn {\n\t\t\ttextureKey: b.key,\n\t\t\tfragment: buildFragmentEntry(body, externals, `rtt_${b.key}`, layouts.sampler, unfilterableKeys)\n\t\t};\n\t});\n\tconst toneMode = options.toneMapping ?? \"linear\";\n\tconst finalSer = serialiseFragment(rootExpr, (composed, ctx) =\u003e finalTail(composed, ctx, toneMode, options.premultiplyAlpha ?? false), options.flipY ?? true, layouts.uniform);\n\treturn {\n\t\tcomputeSteps,\n\t\trttPasses,\n\t\tfinalPass: buildFragmentEntry(finalSer.body, finalSer.externals, \"final\", layouts.sampler, unfilterableKeys),\n\t\ttextures,\n\t\texternalTextures,\n\t\tlayouts: {\n\t\t\tuniforms: layouts.uniform,\n\t\t\tsamplers: layouts.sampler\n\t\t},\n\t\tonBeforeRender,\n\t\tonAfterRender,\n\t\tonResize,\n\t\tonCleanup,\n\t\tcomposedNodeIds\n\t};\n}\nfunction finalTail(composed, ctx, mode, premultiply) {\n\tconst toneFn = ctx.external(tonemapFns[mode] ?? tonemapFns.linear, `tone_${mode}`);\n\tconst oetf = ctx.external(linearToSrgb, \"linearToSrgb\");\n\tconst local = ctx.freshLocal(\"composed\");\n\tctx.statement(`var ${local} = ${composed};`);\n\tconst rgb = `${oetf}(${toneFn}(${local}.rgb))`;\n\treturn premultiply ? `vec4f(${rgb} * ${local}.a, ${local}.a)` : `vec4f(${rgb}, ${local}.a)`;\n}\nfunction buildFragmentEntry(body, externals, name, samplerLayout, unfilterableKeys = /* @__PURE__ */ new Set()) {\n\tconst reads = uniqueMatches(body, /\\btex\\.\\$\\.(\\w+)/g);\n\tconst externalReads = uniqueMatches(body, /\\bext\\.\\$\\.(\\w+)/g);\n\tconst usesSamplers = /\\bsamp\\.\\$\\./.test(body);\n\tlet textureLayout;\n\tif (reads.length \u003e 0) {\n\t\tconst entries = {};\n\t\tfor (const key of reads) entries[key] = unfilterableKeys.has(key) ? {\n\t\t\ttexture: texture2d(f32),\n\t\t\tsampleType: \"unfilterable-float\"\n\t\t} : { texture: texture2d(f32) };\n\t\ttextureLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout(entries).$idx(BIND_GROUPS.textures), \"textureLayout\");\n\t\texternals.tex = textureLayout;\n\t}\n\tlet externalLayout;\n\tif (externalReads.length \u003e 0) {\n\t\tconst entries = {};\n\t\tfor (const key of externalReads) entries[key] = { externalTexture: textureExternal() };\n\t\tconst occupied = new Set([BIND_GROUPS.uniforms]);\n\t\tif (reads.length \u003e 0) occupied.add(BIND_GROUPS.textures);\n\t\tif (usesSamplers) occupied.add(BIND_GROUPS.samplers);\n\t\tlet externalIdx = 0;\n\t\twhile (occupied.has(externalIdx)) externalIdx++;\n\t\texternalLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout(entries).$idx(externalIdx), \"externalLayout\");\n\t\texternals.ext = externalLayout;\n\t}\n\tif (usesSamplers) externals.samp = samplerLayout;\n\treturn {\n\t\tbody,\n\t\texternals,\n\t\tentry: typegpu_default.fragmentFn({\n\t\t\tin: { uv: vec2f$1 },\n\t\t\tout: vec4f$1\n\t\t})(body).$uses(externals).$name(name),\n\t\treads,\n\t\texternalReads,\n\t\tusesSamplers,\n\t\ttextureLayout,\n\t\texternalLayout\n\t};\n}\nfunction uniqueMatches(text, re) {\n\tconst out = /* @__PURE__ */ new Set();\n\tfor (const m of text.matchAll(re)) out.add(m[1]);\n\treturn [...out];\n}\nfunction extractChannel(sampled, channel) {\n\tswitch (channel) {\n\t\tcase \"alpha\": return sampled.member(\"a\");\n\t\tcase \"alphaInverted\": return new Expr((ctx) =\u003e `(1.0 - ${sampled._emit(ctx)}.a)`);\n\t\tcase \"luminanceInverted\": return new Expr((ctx) =\u003e `(1.0 - dot(${sampled._emit(ctx)}.rgb, vec3f(0.2126, 0.7152, 0.0722)))`);\n\t\tcase \"luminance\":\n\t\tdefault: return new Expr((ctx) =\u003e `dot(${sampled._emit(ctx)}.rgb, vec3f(0.2126, 0.7152, 0.0722))`);\n\t}\n}\nfunction remapExpr(raw, iMin, iMax, oMin, oMax, curve) {\n\treturn new Expr((ctx) =\u003e {\n\t\tconst r = raw._emit(ctx);\n\t\tconst im = iMin._emit(ctx);\n\t\tconst ix = iMax._emit(ctx);\n\t\tconst om = oMin._emit(ctx);\n\t\tconst ox = oMax._emit(ctx);\n\t\tconst cv = curve._emit(ctx);\n\t\treturn `mix(${om}, ${ox}, ${`pow(${`clamp((${r} - ${im}) / max(${ix} - ${im}, 0.0001), 0.0, 1.0)`}, pow(2.0, -${cv} * 2.0))`})`;\n\t});\n}\nvar TRANSFORM_EDGE_MODES = {\n\tstretch: 0,\n\ttransparent: 1,\n\tmirror: 2,\n\twrap: 3\n};\nfunction collectStructuralHashInputs(registry, options = {}) {\n\tconst parts = [];\n\tparts.push(`tone:${options.toneMapping ?? \"linear\"}`);\n\tparts.push(`flipY:${options.flipY ?? true}`);\n\tparts.push(`premul:${options.premultiplyAlpha ?? false}`);\n\tconst visit = (id) =\u003e {\n\t\tconst node = registry.getNode(id);\n\t\tif (!node) return;\n\t\tconst m = node.metadata;\n\t\tconst def = node.definition;\n\t\tconst transformActive = needsTransformation(m.transform);\n\t\tconst bboxActive = !!m.boundingBox \u0026\u0026 !!def.boundingBoxDeclaration \u0026\u0026 !isIdentityBoundingBox(m.boundingBox);\n\t\tconst opacityBucket = (m.opacity ?? 1) === 0 ? \"zero\" : \"nonzero\";\n\t\tconst maskCfg = m.mask ? `${m.mask.source}:${m.mask.type}` : \"none\";\n\t\tconst compileTimeProps = [];\n\t\tfor (const [prop, cfg] of Object.entries(def.props ?? {})) if (cfg.compileTime) {\n\t\t\tconst h = node.handles[prop];\n\t\t\tcompileTimeProps.push(`${prop}=${h ? String(h.value) : \"?\"}`);\n\t\t}\n\t\tparts.push([\n\t\t\t`id:${node.id}`,\n\t\t\t`parent:${node.parentId ?? \"\"}`,\n\t\t\t`name:${node.componentName}`,\n\t\t\t`blend:${m.blendMode ?? \"normal\"}`,\n\t\t\t`mask:${maskCfg}`,\n\t\t\t`order:${m.renderOrder ?? 0}`,\n\t\t\t`visible:${m.visible !== false}`,\n\t\t\t`opacity:${opacityBucket}`,\n\t\t\t`xform:${transformActive}${transformActive ? `:${m.transform?.edges ?? \"transparent\"}` : \"\"}`,\n\t\t\t`bbox:${bboxActive}:${bboxActive ? def.boundingBoxDeclaration?.boxResamplesContent ? \"resample\" : def.boundingBoxDeclaration?.supportsResizeFit ? \"resize\" : \"clip\" : \"\"}`,\n\t\t\t`rtt:${!!def.requiresRTT}`,\n\t\t\t`maps:${m.maps ? Object.keys(m.maps).sort().join(\",\") : \"\"}`,\n\t\t\t`ct:${compileTimeProps.sort().join(\"|\")}`\n\t\t].join(\"|\"));\n\t\tfor (const child of registry.getChildren(id).sort((a, b) =\u003e a.metadata.renderOrder - b.metadata.renderOrder)) visit(child.id);\n\t};\n\tif (registry.rootId) visit(registry.rootId);\n\treturn parts;\n}\nconst catmullRomAxisPositions = typegpu_default.fn([f32, f32], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, texSize) =\u003e {\n\t\"use gpu\";\n\tconst samplePos = __tsover_mul(uv, texSize);\n\tconst texPos1 = __tsover_add(floor(__tsover_sub(samplePos, .5)), .5);\n\tconst f = __tsover_sub(samplePos, texPos1);\n\tconst w1 = __tsover_add(1, __tsover_mul(__tsover_mul(f, f), __tsover_add(-2.5, __tsover_mul(1.5, f))));\n\tconst w2 = __tsover_mul(f, __tsover_add(.5, __tsover_mul(f, __tsover_sub(2, __tsover_mul(1.5, f)))));\n\tconst w12 = max(__tsover_add(w1, w2), 1e-6);\n\tconst offset12 = __tsover_div(w2, w12);\n\treturn vec3f$1(__tsover_div(__tsover_sub(texPos1, 1), texSize), __tsover_div(__tsover_add(texPos1, offset12), texSize), __tsover_div(__tsover_add(texPos1, 2), texSize));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"texSize\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"samplePos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"texSize\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"texPos1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"samplePos\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"samplePos\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"texPos1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w12\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"w1\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"w2\"\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offset12\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"w2\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"w12\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"texPos1\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"texSize\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"texPos1\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"offset12\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"texSize\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"texPos1\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"texSize\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst catmullRomAxisWeights = typegpu_default.fn([f32, f32], vec3f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, texSize) =\u003e {\n\t\"use gpu\";\n\tconst samplePos = __tsover_mul(uv, texSize);\n\tconst texPos1 = __tsover_add(floor(__tsover_sub(samplePos, .5)), .5);\n\tconst f = __tsover_sub(samplePos, texPos1);\n\tconst w0 = __tsover_mul(f, __tsover_add(-.5, __tsover_mul(f, __tsover_sub(1, __tsover_mul(.5, f)))));\n\tconst w1 = __tsover_add(1, __tsover_mul(__tsover_mul(f, f), __tsover_add(-2.5, __tsover_mul(1.5, f))));\n\tconst w2 = __tsover_mul(f, __tsover_add(.5, __tsover_mul(f, __tsover_sub(2, __tsover_mul(1.5, f)))));\n\tconst w3 = __tsover_mul(__tsover_mul(f, f), __tsover_add(-.5, __tsover_mul(.5, f)));\n\treturn vec3f$1(w0, __tsover_add(w1, w2), w3);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"texSize\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"samplePos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"texSize\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"texPos1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"samplePos\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"samplePos\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"texPos1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"f\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"w0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"w1\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"w2\"\n\t\t\t\t\t],\n\t\t\t\t\t\"w3\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec3f\": () =\u003e vec3f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar bSplineTapCache = /* @__PURE__ */ new Map();\nfunction buildBSplineTapSetup(gridSize, name, structName) {\n\tconst Taps = struct({\n\t\tuvA: vec2f$1,\n\t\tuvB: vec2f$1,\n\t\tuvC: vec2f$1,\n\t\tuvD: vec2f$1,\n\t\tw: vec4f$1\n\t}).$name(structName);\n\treturn {\n\t\tTaps,\n\t\tsetup: typegpu_default.fn([vec2f$1], Taps)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst gf = f32(gridSize);\n\t\t\tconst tx = __tsover_sub(__tsover_mul(uv.x, gf), .5);\n\t\t\tconst ty = __tsover_sub(__tsover_mul(uv.y, gf), .5);\n\t\t\tconst pxf = floor(tx);\n\t\t\tconst pyf = floor(ty);\n\t\t\tconst fx = __tsover_sub(tx, pxf);\n\t\t\tconst fy = __tsover_sub(ty, pyf);\n\t\t\tconst ofx = __tsover_sub(1, fx);\n\t\t\tconst wx0 = __tsover_mul(__tsover_mul(__tsover_mul(ofx, ofx), ofx), .16666667);\n\t\t\tconst wx1 = __tsover_add(__tsover_sub(__tsover_mul(__tsover_mul(__tsover_mul(fx, fx), fx), .5), __tsover_mul(fx, fx)), .66666667);\n\t\t\tconst wx3 = __tsover_mul(__tsover_mul(__tsover_mul(fx, fx), fx), .16666667);\n\t\t\tconst wx2 = __tsover_sub(__tsover_sub(__tsover_sub(1, wx0), wx1), wx3);\n\t\t\tconst ofy = __tsover_sub(1, fy);\n\t\t\tconst wy0 = __tsover_mul(__tsover_mul(__tsover_mul(ofy, ofy), ofy), .16666667);\n\t\t\tconst wy1 = __tsover_add(__tsover_sub(__tsover_mul(__tsover_mul(__tsover_mul(fy, fy), fy), .5), __tsover_mul(fy, fy)), .66666667);\n\t\t\tconst wy3 = __tsover_mul(__tsover_mul(__tsover_mul(fy, fy), fy), .16666667);\n\t\t\tconst wy2 = __tsover_sub(__tsover_sub(__tsover_sub(1, wy0), wy1), wy3);\n\t\t\tconst g0x = __tsover_add(wx0, wx1);\n\t\t\tconst g1x = __tsover_add(wx2, wx3);\n\t\t\tconst g0y = __tsover_add(wy0, wy1);\n\t\t\tconst g1y = __tsover_add(wy2, wy3);\n\t\t\tconst h0x = __tsover_add(__tsover_sub(pxf, 1), __tsover_div(wx1, g0x));\n\t\t\tconst h1x = __tsover_add(__tsover_add(pxf, 1), __tsover_div(wx3, g1x));\n\t\t\tconst h0y = __tsover_add(__tsover_sub(pyf, 1), __tsover_div(wy1, g0y));\n\t\t\tconst h1y = __tsover_add(__tsover_add(pyf, 1), __tsover_div(wy3, g1y));\n\t\t\treturn Taps({\n\t\t\t\tuvA: vec2f$1(__tsover_div(__tsover_add(h0x, .5), gf), __tsover_div(__tsover_add(h0y, .5), gf)),\n\t\t\t\tuvB: vec2f$1(__tsover_div(__tsover_add(h1x, .5), gf), __tsover_div(__tsover_add(h0y, .5), gf)),\n\t\t\t\tuvC: vec2f$1(__tsover_div(__tsover_add(h0x, .5), gf), __tsover_div(__tsover_add(h1y, .5), gf)),\n\t\t\t\tuvD: vec2f$1(__tsover_div(__tsover_add(h1x, .5), gf), __tsover_div(__tsover_add(h1y, .5), gf)),\n\t\t\t\tw: vec4f$1(__tsover_mul(g0x, g0y), __tsover_mul(g1x, g0y), __tsover_mul(g0x, g1y), __tsover_mul(g1x, g1y))\n\t\t\t});\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"gf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"gridSize\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"pxf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"tx\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"pyf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"ty\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"pxf\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"pyf\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ofx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ofx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ofx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ofx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.66666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ofy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ofy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ofy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ofy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.66666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"g0x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"wx0\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"g1x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"wx2\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"g0y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"wy0\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"g1y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"wy2\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h0x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"pxf\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wx1\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"g0x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h1x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"pxf\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wx3\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"g1x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h0y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"pyf\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wy1\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"g0y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h1y\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"pyf\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wy3\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"g1y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"Taps\",\n\t\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\t\"uvA\": [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h0x\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h0y\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"uvB\": [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h1x\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h0y\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"uvC\": [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h0x\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h1y\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"uvD\": [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h1x\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h1y\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gf\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"w\": [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g0x\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"g0y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g1x\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"g0y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g0x\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"g1y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g1x\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"g1y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}]]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"gridSize\": () =\u003e gridSize,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"Taps\": () =\u003e Taps,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(name)\n\t};\n}\nfunction bSplineTapSetup(gridSize, names = {}) {\n\tconst fnName = names.fnName ?? \"bSplineTapSetup\";\n\tconst structName = names.structName ?? \"BSplineTaps\";\n\tconst key = `${gridSize}|${fnName}|${structName}`;\n\tconst hit = bSplineTapCache.get(key);\n\tif (hit) return hit;\n\tconst built = buildBSplineTapSetup(gridSize, fnName, structName);\n\tbSplineTapCache.set(key, built);\n\treturn built;\n}\nvar bicubicCounter = 0;\nconst sampleCatmullRomExpr = (tex, uv, sampler$1 = \"linearClamp\", range$1 = \"positive\") =\u003e {\n\tconst id = bicubicCounter++;\n\treturn new Expr((ctx) =\u003e ctx.memo(`catmullRom:${id}`, () =\u003e {\n\t\tconst uvL = ctx.freshLocal(\"crUV\");\n\t\tconst sizeL = ctx.freshLocal(\"crSize\");\n\t\tconst pxL = ctx.freshLocal(\"crPosX\");\n\t\tconst pyL = ctx.freshLocal(\"crPosY\");\n\t\tconst wxL = ctx.freshLocal(\"crWx\");\n\t\tconst wyL = ctx.freshLocal(\"crWy\");\n\t\tconst outL = ctx.freshLocal(\"crOut\");\n\t\tctx.statement(`let ${uvL} = ${uv._emit(ctx)};`);\n\t\tctx.statement(`let ${sizeL} = ${tex.dimensions()._emit(ctx)};`);\n\t\tconst posFn = ctx.external(catmullRomAxisPositions, \"catmullRomAxisPositions\");\n\t\tconst wFn = ctx.external(catmullRomAxisWeights, \"catmullRomAxisWeights\");\n\t\tctx.statement(`let ${pxL} = ${posFn}(${uvL}.x, ${sizeL}.x);`);\n\t\tctx.statement(`let ${pyL} = ${posFn}(${uvL}.y, ${sizeL}.y);`);\n\t\tctx.statement(`let ${wxL} = ${wFn}(${uvL}.x, ${sizeL}.x);`);\n\t\tctx.statement(`let ${wyL} = ${wFn}(${uvL}.y, ${sizeL}.y);`);\n\t\tctx.statement(`var ${outL} = vec4f(0.0, 0.0, 0.0, 0.0);`);\n\t\tconst axis = [\n\t\t\t\"x\",\n\t\t\t\"y\",\n\t\t\t\"z\"\n\t\t];\n\t\tfor (const yi of [\n\t\t\t0,\n\t\t\t1,\n\t\t\t2\n\t\t]) for (const xi of [\n\t\t\t0,\n\t\t\t1,\n\t\t\t2\n\t\t]) {\n\t\t\tconst tapUV = new Expr(() =\u003e `vec2f(${pxL}.${axis[xi]}, ${pyL}.${axis[yi]})`);\n\t\t\tconst weight = `(${wxL}.${axis[xi]} * ${wyL}.${axis[yi]})`;\n\t\t\tctx.statement(`${outL} += ${tex.sample(tapUV, sampler$1)._emit(ctx)} * ${weight};`);\n\t\t}\n\t\tctx.statement(range$1 === \"unit\" ? `${outL} = clamp(${outL}, vec4f(0.0, 0.0, 0.0, 0.0), vec4f(1.0, 1.0, 1.0, 1.0));` : `${outL} = max(${outL}, vec4f(0.0, 0.0, 0.0, 0.0));`);\n\t\treturn outL;\n\t}));\n};\nconst edgeClampUV = typegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\"use gpu\";\n\treturn clamp(uv, vec2f$1(0, 0), vec2f$1(1, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t\"uv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec2f\": () =\u003e vec2f$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst edgeMirrorUV = typegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\"use gpu\";\n\tconst mirrorX = mod(abs(uv.x), 2);\n\tconst mirrorY = mod(abs(uv.y), 2);\n\treturn vec2f$1(select(mirrorX, __tsover_sub(2, mirrorX), mirrorX \u003e= 1), select(mirrorY, __tsover_sub(2, mirrorY), mirrorY \u003e= 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mirrorX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mod\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mirrorY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mod\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"mirrorX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"mirrorX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mirrorX\",\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"mirrorY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"mirrorY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mirrorY\",\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.mod\": () =\u003e mod,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst edgeWrapUV = typegpu_default.fn([vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\"use gpu\";\n\treturn fract(uv);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[\"uv\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.fract\": () =\u003e fract }\n}) \u0026\u0026 $.f)({}));\nconst edgeTransparentMask = typegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\"use gpu\";\n\tconst inX = __tsover_mul(step(0, uv.x), step(uv.x, 1));\n\tconst inY = __tsover_mul(step(0, uv.y), step(uv.y, 1));\n\treturn __tsover_mul(inX, inY);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[5, \"0\"], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[5, \"0\"], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"inX\",\n\t\t\t\t\"*\",\n\t\t\t\t\"inY\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"std.step\": () =\u003e step }\n}) \u0026\u0026 $.f)({}));\nvar TRANSPARENT = 1;\nvar MIRROR = 2;\nvar WRAP = 3;\ntypegpu_default.fn([vec4f$1, f32], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color$1, m) =\u003e {\n\t\"use gpu\";\n\treturn vec4f$1(color$1.x, color$1.y, color$1.z, __tsover_mul(color$1.w, m));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"m\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"z\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"m\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec4f\": () =\u003e vec4f$1 }\n}) \u0026\u0026 $.f)({}));\nconst applyEdgeToUVExpr = (uv, edgeMode) =\u003e {\n\tswitch (edgeMode) {\n\t\tcase TRANSPARENT: return uv;\n\t\tcase MIRROR: return call(edgeMirrorUV, \"edgeMirrorUV\", [uv]);\n\t\tcase WRAP: return call(edgeWrapUV, \"edgeWrapUV\", [uv]);\n\t\tdefault: return call(edgeClampUV, \"edgeClampUV\", [uv]);\n\t}\n};\nconst composeEdgeRemapExpr = (distortedUV, mask, edgeMode) =\u003e {\n\tif (edgeMode === TRANSPARENT) {\n\t\tconst coverage = call(edgeTransparentMask, \"edgeTransparentMask\", [distortedUV]);\n\t\treturn {\n\t\t\tuv: distortedUV,\n\t\t\tmask: mask.mul(coverage)\n\t\t};\n\t}\n\treturn {\n\t\tuv: applyEdgeToUVExpr(distortedUV, edgeMode),\n\t\tmask\n\t};\n};\nconst applyEdgeHandlingExpr = (distortedUV, sample, edgeMode) =\u003e {\n\tif (edgeMode === TRANSPARENT) {\n\t\tconst s = sample(distortedUV);\n\t\tconst coverage = call(edgeTransparentMask, \"edgeTransparentMask\", [distortedUV]);\n\t\treturn vec4(s.member(\"rgb\"), s.member(\"a\").mul(coverage));\n\t}\n\tif (edgeMode === MIRROR) return sample(call(edgeMirrorUV, \"edgeMirrorUV\", [distortedUV]));\n\tif (edgeMode === WRAP) return sample(call(edgeWrapUV, \"edgeWrapUV\", [distortedUV]));\n\treturn sample(distortedUV);\n};\nconst sampleRemappedExpr = (tex, distortedUV, edgeMode) =\u003e {\n\treturn applyEdgeHandlingExpr(distortedUV, edgeMode === MIRROR ? (uv) =\u003e tex.sample(uv) : (uv) =\u003e sampleCatmullRomExpr(tex, uv, edgeMode === WRAP ? \"linearRepeat\" : \"linearClamp\"), edgeMode);\n};\nvar ChromaticSplitUVs = struct({\n\trUV: vec2f$1,\n\tgUV: vec2f$1,\n\tbUV: vec2f$1\n}).$name(\"ChromaticSplitUVs\");\nconst chromaticDisplaceUVs = typegpu_default.fn([\n\tvec2f$1,\n\tvec2f$1,\n\tf32,\n\tf32\n], ChromaticSplitUVs)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, disp, strength, chromaticSplit) =\u003e {\n\t\"use gpu\";\n\tconst scaled = disp.mul(__tsover_mul(strength, .1));\n\tconst maxDisp = .15;\n\tconst clamped = clamp(scaled, vec2f$1(-maxDisp, -maxDisp), vec2f$1(maxDisp, maxDisp));\n\tconst chromaticScale = __tsover_mul(chromaticSplit, .1);\n\treturn ChromaticSplitUVs({\n\t\trUV: uv.sub(clamped.mul(__tsover_add(1, chromaticScale))),\n\t\tgUV: uv.sub(clamped),\n\t\tbUV: uv.sub(clamped.mul(__tsover_sub(1, chromaticScale)))\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"disp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"chromaticSplit\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaled\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"disp\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxDisp\",\n\t\t\t\t[5, \"0.15\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"scaled\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"maxDisp\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"maxDisp\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"maxDisp\", \"maxDisp\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chromaticScale\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"chromaticSplit\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"chromaticScale\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"clamped\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"chromaticScale\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"ChromaticSplitUVs\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"rUV\": \"rUV\",\n\t\t\t\t\t\"gUV\": \"gUV\",\n\t\t\t\t\t\"bUV\": \"bUV\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"ChromaticSplitUVs\": () =\u003e ChromaticSplitUVs\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction wrapGuarded(guarded, size$1) {\n\treturn {\n\t\tguarded,\n\t\twith(bindGroup) {\n\t\t\treturn wrapGuarded(guarded.with(bindGroup), size$1);\n\t\t},\n\t\tdispatch() {\n\t\t\tif (!size$1) throw new Error(\"[gpu] KitComputePipeline.dispatch(): no pre-bound size — pass opts.size to createGuardedCompute or call dispatchThreads(...) directly\");\n\t\t\tguarded.dispatchThreads(...size$1);\n\t\t},\n\t\tdispatchThreads(...threads) {\n\t\t\tguarded.dispatchThreads(...threads);\n\t\t}\n\t};\n}\nfunction createGuardedCompute(root, callback, opts = {}) {\n\tlet guarded = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createGuardedComputePipeline(callback), \"guarded\");\n\tif (opts.bindGroup) guarded = guarded.with(opts.bindGroup);\n\treturn wrapGuarded(guarded, opts.size);\n}\nfunction createComputeDispatcher(root) {\n\treturn { dispatch(steps) {\n\t\tfor (const step$1 of steps) if (typeof step$1 === \"function\") step$1();\n\t\telse step$1.dispatch();\n\t} };\n}\nfunction createPingPongPair(a, b) {\n\tlet flipped = false;\n\tconst read = () =\u003e flipped ? b : a;\n\tconst write = () =\u003e flipped ? a : b;\n\treturn {\n\t\ta,\n\t\tb,\n\t\torientation: () =\u003e flipped ? 1 : 0,\n\t\treadSource: read,\n\t\twriteTarget: write,\n\t\tswap() {\n\t\t\tflipped = !flipped;\n\t\t},\n\t\treset() {\n\t\t\tflipped = false;\n\t\t},\n\t\tgroups(make) {\n\t\t\tconst ab = make(a, b);\n\t\t\tconst ba = make(b, a);\n\t\t\treturn () =\u003e flipped ? ba : ab;\n\t\t},\n\t\tperSide(make) {\n\t\t\tconst forA = make(a);\n\t\t\tconst forB = make(b);\n\t\t\treturn {\n\t\t\t\tread: () =\u003e flipped ? forB : forA,\n\t\t\t\twritten: () =\u003e flipped ? forA : forB\n\t\t\t};\n\t\t}\n\t};\n}\nfunction createStateBuffer(root, schema, count) {\n\treturn (/* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createBuffer(arrayOf(schema, count)), \"buffer\")).$usage(\"storage\");\n}\nfunction createPointerVelocityTracker(opts = {}) {\n\tconst smoothing = opts.smoothing ?? .2;\n\tconst teleportGuard = opts.teleportGuard ?? .25;\n\tconst minDrag = opts.minDrag ?? 6e-4;\n\tlet prevX = opts.initialX ?? .5;\n\tlet prevY = opts.initialY ?? .5;\n\tlet smoothVelX = 0;\n\tlet smoothVelY = 0;\n\tlet sawUnseen = false;\n\tlet snappedToFirstReal = false;\n\treturn { update(pointer, dt) {\n\t\tconst parked = pointer?.seen === false;\n\t\tif (parked) sawUnseen = true;\n\t\telse if (pointer?.x !== void 0 \u0026\u0026 sawUnseen \u0026\u0026 !snappedToFirstReal) {\n\t\t\tsnappedToFirstReal = true;\n\t\t\tprevX = pointer.x;\n\t\t\tprevY = pointer.y ?? prevY;\n\t\t}\n\t\tconst oldX = prevX;\n\t\tconst oldY = prevY;\n\t\tconst x = parked ? prevX : pointer?.x ?? prevX;\n\t\tconst y = parked ? prevY : pointer?.y ?? prevY;\n\t\tconst rawDx = x - oldX;\n\t\tconst rawDy = y - oldY;\n\t\tconst dragDist = Math.sqrt(rawDx * rawDx + rawDy * rawDy);\n\t\tconst teleport = dragDist \u003e= teleportGuard;\n\t\tprevX = x;\n\t\tprevY = y;\n\t\tconst dx = teleport ? 0 : rawDx;\n\t\tconst dy = teleport ? 0 : rawDy;\n\t\tconst invDt = 1 / Math.max(dt, .001);\n\t\tconst velX = dx * invDt;\n\t\tconst velY = dy * invDt;\n\t\tsmoothVelX = smoothVelX * (1 - smoothing) + velX * smoothing;\n\t\tsmoothVelY = smoothVelY * (1 - smoothing) + velY * smoothing;\n\t\treturn {\n\t\t\tx,\n\t\t\ty,\n\t\t\tprevX: oldX,\n\t\t\tprevY: oldY,\n\t\t\tdx,\n\t\t\tdy,\n\t\t\tdragDist,\n\t\t\tvelX,\n\t\t\tvelY,\n\t\t\tsmoothVelX,\n\t\t\tsmoothVelY,\n\t\t\tsmoothSpeed: Math.sqrt(smoothVelX * smoothVelX + smoothVelY * smoothVelY),\n\t\t\tteleport,\n\t\t\tmoving: !teleport \u0026\u0026 dragDist \u003e minDrag\n\t\t};\n\t} };\n}\nfunction createIdleGate(opts = {}) {\n\tconst warmupFrames = opts.warmupFrames ?? 0;\n\tlet everActive = false;\n\tlet simSinceActive = 0;\n\tlet frames = 0;\n\tconst warmedUp = () =\u003e frames \u003e= warmupFrames;\n\treturn {\n\t\tmarkActive() {\n\t\t\teverActive = true;\n\t\t\tsimSinceActive = 0;\n\t\t},\n\t\ttickFrame(dt) {\n\t\t\tframes++;\n\t\t\tsimSinceActive += dt;\n\t\t},\n\t\tget neverActive() {\n\t\t\treturn !everActive;\n\t\t},\n\t\tget warmedUp() {\n\t\t\treturn warmedUp();\n\t\t},\n\t\tshouldSkip(fadeSeconds, driving = false) {\n\t\t\tif (driving) return false;\n\t\t\tif (!warmedUp()) return false;\n\t\t\tif (!everActive) return true;\n\t\t\treturn simSinceActive \u003e fadeSeconds;\n\t\t}\n\t};\n}\nfunction decayFadeSeconds(ratio, rate, minRate = .05) {\n\treturn Math.log(ratio) / Math.max(rate, minRate);\n}\nfunction pathStampRibbon(nodes, opts) {\n\tconst scale = opts.scale ?? 1;\n\tconst numSteps = Math.min(opts.maxSteps, Math.max(1, Math.ceil(opts.dragDist / opts.stepSize)));\n\tfor (let s = 0; s \u003c numSteps; s++) {\n\t\tconst t = (s + .5) / numSteps;\n\t\tconst posX = (opts.fromX + opts.dx * t) * scale;\n\t\tconst posY = (opts.fromY + opts.dy * t) * scale;\n\t\tconst prepared = opts.prepare ? opts.prepare(t) : void 0;\n\t\tnodes.push(() =\u003e opts.write(posX, posY, t, prepared));\n\t\tnodes.push(opts.pass);\n\t}\n\treturn numSteps;\n}\nvar BRUSH_CUTOFF_SIGMAS = 3;\nvar BRUSH_EDGE = Math.exp(-(BRUSH_CUTOFF_SIGMAS * BRUSH_CUTOFF_SIGMAS));\nvar BRUSH_EDGE_GAIN = 1 / (1 - BRUSH_EDGE);\nvar DAMPING_SCALE = .004;\nvar STATE_FORMAT = \"rgba16float\";\nfunction buildPropagateLayout(cellCount) {\n\treturn typegpu_default.bindGroupLayout({\n\t\treadBuf: {\n\t\t\tstorage: arrayOf(f32, cellCount),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\twriteBuf: {\n\t\t\tstorage: arrayOf(f32, cellCount),\n\t\t\taccess: \"mutable\"\n\t\t},\n\t\tparams: { uniform: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\t\t\tcursorX: f32,\n\t\t\tcursorY: f32,\n\t\t\tcursorSpeed: f32,\n\t\t\tdt: f32,\n\t\t\tdamping: f32,\n\t\t\tradius: f32,\n\t\t\taspect: f32\n\t\t}), \"uniform\") }\n\t});\n}\nfunction buildGradientLayout(cellCount) {\n\treturn typegpu_default.bindGroupLayout({\n\t\tsrcBuf: {\n\t\t\tstorage: arrayOf(f32, cellCount),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tdispTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n\t});\n}\nvar kernelCache = /* @__PURE__ */ new Map();\nfunction buildWaveFieldKernels(resolution) {\n\tconst cached = kernelCache.get(resolution);\n\tif (cached) return cached;\n\tconst cellCount = resolution * resolution;\n\tconst gridMax = resolution - 1;\n\tconst propagateLayout = buildPropagateLayout(cellCount);\n\tconst gradientLayout = buildGradientLayout(cellCount);\n\tconst built = {\n\t\tresolution,\n\t\tpropagateLayout,\n\t\tgradientLayout,\n\t\tpropagateKernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tif (cx \u003e u32(0) \u0026\u0026 cx \u003c u32(gridMax) \u0026\u0026 cy \u003e u32(0) \u0026\u0026 cy \u003c u32(gridMax)) {\n\t\t\t\tconst p$1 = propagateLayout.$.params;\n\t\t\t\tconst gs = u32(resolution);\n\t\t\t\tconst idx = __tsover_add(__tsover_mul(cy, gs), cx);\n\t\t\t\tconst left = propagateLayout.$.readBuf[__tsover_sub(idx, u32(1))];\n\t\t\t\tconst right = propagateLayout.$.readBuf[__tsover_add(idx, u32(1))];\n\t\t\t\tconst up = propagateLayout.$.readBuf[__tsover_sub(idx, gs)];\n\t\t\t\tconst down = propagateLayout.$.readBuf[__tsover_add(idx, gs)];\n\t\t\t\tconst avg = __tsover_mul(__tsover_add(__tsover_add(__tsover_add(left, right), up), down), .5);\n\t\t\t\tconst prev = propagateLayout.$.writeBuf[idx];\n\t\t\t\tconst dampFactor = __tsover_sub(1, __tsover_mul(p$1.damping, DAMPING_SCALE));\n\t\t\t\tlet next = __tsover_mul(__tsover_sub(avg, prev), dampFactor);\n\t\t\t\tconst cellX = __tsover_div(__tsover_add(f32(cx), .5), f32(resolution));\n\t\t\t\tconst cellY = __tsover_div(__tsover_add(f32(cy), .5), f32(resolution));\n\t\t\t\tconst ddx = select(__tsover_sub(cellX, p$1.cursorX), __tsover_mul(__tsover_sub(cellX, p$1.cursorX), p$1.aspect), p$1.aspect \u003e= 1);\n\t\t\t\tconst ddy = select(__tsover_div(__tsover_sub(cellY, p$1.cursorY), p$1.aspect), __tsover_sub(cellY, p$1.cursorY), p$1.aspect \u003e= 1);\n\t\t\t\tconst distSq = __tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy));\n\t\t\t\tconst influenceRadius = __tsover_mul(p$1.radius, 3);\n\t\t\t\tif (distSq \u003c __tsover_mul(influenceRadius, influenceRadius) \u0026\u0026 p$1.cursorSpeed \u003e .01) {\n\t\t\t\t\tconst influence = __tsover_mul(__tsover_sub(exp(__tsover_mul(__tsover_div(distSq, __tsover_mul(p$1.radius, p$1.radius)), -1)), BRUSH_EDGE), BRUSH_EDGE_GAIN);\n\t\t\t\t\tnext = __tsover_sub(next, __tsover_mul(__tsover_mul(__tsover_mul(influence, p$1.cursorSpeed), p$1.dt), 3));\n\t\t\t\t}\n\t\t\t\tpropagateLayout.$.writeBuf[idx] = next;\n\t\t\t}\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"gridMax\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"gridMax\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"propagateLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"gs\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"resolution\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"propagateLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"propagateLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"up\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"propagateLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"propagateLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"avg\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"right\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"up\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"down\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"propagateLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"writeBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dampFactor\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"damping\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"DAMPING_SCALE\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"avg\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dampFactor\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"resolution\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"resolution\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"influenceRadius\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"influenceRadius\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"influenceRadius\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorSpeed\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"BRUSH_EDGE\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"BRUSH_EDGE_GAIN\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cursorSpeed\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"propagateLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"writeBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"gridMax\": () =\u003e gridMax,\n\t\t\t\t\"propagateLayout\": () =\u003e propagateLayout,\n\t\t\t\t\"resolution\": () =\u003e resolution,\n\t\t\t\t\"DAMPING_SCALE\": () =\u003e DAMPING_SCALE,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\t\"BRUSH_EDGE\": () =\u003e BRUSH_EDGE,\n\t\t\t\t\"BRUSH_EDGE_GAIN\": () =\u003e BRUSH_EDGE_GAIN\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`waveFieldPropagate_${resolution}`),\n\t\tgradientKernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tif (cx \u003e u32(0) \u0026\u0026 cx \u003c u32(gridMax) \u0026\u0026 cy \u003e u32(0) \u0026\u0026 cy \u003c u32(gridMax)) {\n\t\t\t\tconst gs = u32(resolution);\n\t\t\t\tconst idx = __tsover_add(__tsover_mul(cy, gs), cx);\n\t\t\t\tconst right = gradientLayout.$.srcBuf[__tsover_add(idx, u32(1))];\n\t\t\t\tconst left = gradientLayout.$.srcBuf[__tsover_sub(idx, u32(1))];\n\t\t\t\tconst down = gradientLayout.$.srcBuf[__tsover_add(idx, gs)];\n\t\t\t\tconst up = gradientLayout.$.srcBuf[__tsover_sub(idx, gs)];\n\t\t\t\tconst dx = __tsover_mul(__tsover_sub(right, left), .5);\n\t\t\t\tconst dy = __tsover_mul(__tsover_sub(down, up), .5);\n\t\t\t\ttextureStore(gradientLayout.$.dispTex, vec2u$1(cx, cy), vec4f$1(dx, dy, 0, 1));\n\t\t\t}\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"gridMax\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"gridMax\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"gs\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"resolution\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gradientLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"srcBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gradientLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"srcBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gradientLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"srcBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"up\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gradientLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"srcBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"left\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"up\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gradientLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"dispTex\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"gridMax\": () =\u003e gridMax,\n\t\t\t\t\"resolution\": () =\u003e resolution,\n\t\t\t\t\"gradientLayout\": () =\u003e gradientLayout,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u$1,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`waveFieldGradient_${resolution}`)\n\t};\n\tkernelCache.set(resolution, built);\n\treturn built;\n}\nfunction createWaveFieldSim(params, config) {\n\tconst { gpu, registerComputeTexture, getCpuValue, onCleanup, onResize, dimensions } = params;\n\tconst root = gpu?.root;\n\tif (!root) return null;\n\tconst { resolution, dampingProp, radiusProp, radiusScale, speedMax } = config;\n\tconst { propagateLayout, gradientLayout, propagateKernel, gradientKernel } = buildWaveFieldKernels(resolution);\n\tconst cellCount = resolution * resolution;\n\tconst bufferA = createStateBuffer(root, f32, cellCount);\n\tconst bufferB = createStateBuffer(root, f32, cellCount);\n\tconst dispTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [resolution, resolution],\n\t\tformat: STATE_FORMAT\n\t}).$usage(\"storage\", \"sampled\"), \"dispTex\");\n\tonCleanup(() =\u003e dispTex.destroy());\n\tconst displacement = registerComputeTexture(dispTex);\n\tconst propParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(struct({\n\t\tcursorX: f32,\n\t\tcursorY: f32,\n\t\tcursorSpeed: f32,\n\t\tdt: f32,\n\t\tdamping: f32,\n\t\tradius: f32,\n\t\taspect: f32\n\t})), \"propParams\");\n\tlet curW = Math.max(1, Math.round(dimensions.width));\n\tlet curH = Math.max(1, Math.round(dimensions.height));\n\tonResize(({ width, height }) =\u003e {\n\t\tcurW = Math.max(1, Math.round(width));\n\t\tcurH = Math.max(1, Math.round(height));\n\t});\n\tconst size$1 = [resolution, resolution];\n\tconst field = createPingPongPair(bufferA, bufferB);\n\tconst propGroup = field.groups((readBuf, writeBuf) =\u003e root.createBindGroup(propagateLayout, {\n\t\treadBuf,\n\t\twriteBuf,\n\t\tparams: propParams.buffer\n\t}));\n\tconst gradGroup = field.perSide((srcBuf) =\u003e root.createBindGroup(gradientLayout, {\n\t\tsrcBuf,\n\t\tdispTex\n\t}));\n\tconst propagate = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tpropagateKernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"propagateKernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"propagateKernel\": () =\u003e propagateKernel }\n\t}) \u0026\u0026 $.f)({}), { size: size$1 });\n\tconst gradient = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tgradientKernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"gradientKernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"gradientKernel\": () =\u003e gradientKernel }\n\t}) \u0026\u0026 $.f)({}), { size: size$1 });\n\tconst pointer = createPointerVelocityTracker();\n\tlet lastActiveTime = Date.now();\n\treturn {\n\t\tdisplacement,\n\t\tgetComputeNodes: (frameParams) =\u003e {\n\t\t\tconst fp = frameParams;\n\t\t\tconst currentTime = Date.now();\n\t\t\tconst dt = Math.min(fp.deltaTime ?? 0, .016);\n\t\t\tconst aspect = Math.max(1, fp.dimensions?.width ?? curW) / Math.max(1, fp.dimensions?.height ?? curH);\n\t\t\tconst damping = getCpuValue(dampingProp) ?? 10;\n\t\t\tconst radius = (getCpuValue(radiusProp) ?? .5) * radiusScale;\n\t\t\tconst move = pointer.update(fp.pointer, dt);\n\t\t\tconst cursorSpeed = Math.min(Math.sqrt(move.velX * move.velX + move.velY * move.velY), speedMax);\n\t\t\tif (cursorSpeed \u003e .01) lastActiveTime = currentTime;\n\t\t\tconst dampFactor = 1 - damping * DAMPING_SCALE;\n\t\t\tconst settleTime = dampFactor \u003e= 1 ? Infinity : Math.min(3e4, Math.log(1e-6) / Math.log(Math.max(dampFactor, .001)) * 16.67);\n\t\t\tif (currentTime - lastActiveTime \u003e settleTime) return null;\n\t\t\tpropParams.write({\n\t\t\t\tcursorX: move.x,\n\t\t\t\tcursorY: move.y,\n\t\t\t\tcursorSpeed,\n\t\t\t\tdt,\n\t\t\t\tdamping,\n\t\t\t\tradius,\n\t\t\t\taspect\n\t\t\t});\n\t\t\tconst nodes = [propagate.with(propGroup()), gradient.with(gradGroup.written())];\n\t\t\tfield.swap();\n\t\t\treturn nodes;\n\t\t}\n\t};\n}\nvar _f32Scratch = new Float32Array(1);\nvar _i32Scratch = new Int32Array(_f32Scratch.buffer);\nfunction toHalfFloat(val) {\n\t_f32Scratch[0] = Math.max(-65504, Math.min(65504, val));\n\tconst x = _i32Scratch[0];\n\tlet bits = x \u003e\u003e 16 \u0026 32768;\n\tlet m = x \u003e\u003e 12 \u0026 2047;\n\tconst e = x \u003e\u003e 23 \u0026 255;\n\tif (e \u003c 103) return bits;\n\tif (e \u003e 142) {\n\t\tbits |= 31744;\n\t\tbits |= (e === 255 ? 0 : 1) \u0026\u0026 x \u0026 8388607;\n\t\treturn bits;\n\t}\n\tif (e \u003c 113) {\n\t\tm |= 2048;\n\t\tbits |= (m \u003e\u003e 114 - e) + (m \u003e\u003e 113 - e \u0026 1);\n\t\treturn bits;\n\t}\n\tbits |= e - 112 \u003c\u003c 10 | m \u003e\u003e 1;\n\tbits += m \u0026 1;\n\treturn bits;\n}\nvar sdf_exports = /* @__PURE__ */ __export$1({\n\tANALYTIC_SDF_EXTRA_FIELDS: () =\u003e ANALYTIC_SDF_EXTRA_FIELDS,\n\tAPERTURE_TO_HALFANGLE: () =\u003e APERTURE_TO_HALFANGLE,\n\tSVG_SDF_SIZE: () =\u003e 512,\n\tShapeMask: () =\u003e ShapeMask,\n\tanalyticSubPropValues: () =\u003e analyticSubPropValues,\n\tarcSdf: () =\u003e arcSdf,\n\tbuildAnalyticSdfFn: () =\u003e buildAnalyticSdfFn,\n\tcircleSdf: () =\u003e circleSdf,\n\tcreateAnalyticSdfSampler: () =\u003e createAnalyticSdfSampler,\n\tcreateSdfDataTexture: () =\u003e createSdfDataTexture,\n\tcreateSvgSdfSampler: () =\u003e createSvgSdfSampler,\n\tcreateSvgSdfSamplerWithGradients: () =\u003e createSvgSdfSamplerWithGradients,\n\tcrescentSdf: () =\u003e crescentSdf,\n\tcrossSdf: () =\u003e crossSdf,\n\tdriveAnalyticSubProps: () =\u003e driveAnalyticSubProps,\n\tellipseSdf: () =\u003e ellipseSdf,\n\tfillStrokeColor: () =\u003e fillStrokeColor,\n\tflowerSdf: () =\u003e flowerSdf,\n\theartSdf: () =\u003e heartSdf,\n\tloadSdfFromUrl: () =\u003e loadSdfFromUrl,\n\tparallelogramSdf: () =\u003e parallelogramSdf,\n\tparseShapeConfigValue: () =\u003e parseShapeConfigValue,\n\tpolygonSdf: () =\u003e polygonSdf,\n\tringSdf: () =\u003e ringSdf,\n\troundedRectSdf: () =\u003e roundedRectSdf,\n\tshapeLocalCoords: () =\u003e shapeLocalCoords,\n\tstarSdf: () =\u003e starSdf,\n\tstrokeMaskFromSdf: () =\u003e strokeMaskFromSdf,\n\tteardropSdf: () =\u003e teardropSdf,\n\ttrapezoidSdf: () =\u003e trapezoidSdf,\n\tvesicaSdf: () =\u003e vesicaSdf\n});\nconst SVG_SDF_SIZE = 512;\nvar PI = 3.141592653589793;\nvar TWO_PI = 6.283185307179586;\nvar SQRT2_OVER_4 = .35355339059327373;\nvar DEG_TO_RAD = .017453292519943295;\nconst circleSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radius) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy))), radius);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.sqrt\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t\"radius\"\n\t\t]]]]\n\t},\n\texternals: { \"std.sqrt\": () =\u003e sqrt }\n}) \u0026\u0026 $.f)({}));\nconst polygonSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radius, sides) =\u003e {\n\t\"use gpu\";\n\tconst len = sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy)));\n\tconst angle = atan2(dy, dx);\n\tconst sectorAngle = __tsover_div(TWO_PI, sides);\n\tconst sectorIdx = floor(__tsover_add(__tsover_div(angle, sectorAngle), .5));\n\tconst canonicalAngle = __tsover_sub(angle, __tsover_mul(sectorIdx, sectorAngle));\n\treturn __tsover_sub(__tsover_mul(len, cos(canonicalAngle)), radius);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sides\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[\"dy\", \"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sectorAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"TWO_PI\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"sides\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sectorIdx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"sectorAngle\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"canonicalAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sectorIdx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sectorAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"len\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"canonicalAngle\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"radius\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.cos\": () =\u003e cos\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flowerSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, outerRadius, sides, innerRatio) =\u003e {\n\t\"use gpu\";\n\tconst angle = atan2(dy, dx);\n\tconst len = sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy)));\n\tconst innerRadius = __tsover_mul(outerRadius, innerRatio);\n\tconst tAngle = __tsover_div(__tsover_mul(angle, sides), TWO_PI);\n\tconst tFrac = __tsover_sub(tAngle, floor(tAngle));\n\tconst t = abs(__tsover_sub(__tsover_mul(tFrac, 2), 1));\n\tconst boundaryR = __tsover_add(innerRadius, __tsover_mul(__tsover_sub(outerRadius, innerRadius), t));\n\treturn __tsover_sub(len, boundaryR);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"outerRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sides\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"innerRatio\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[\"dy\", \"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outerRadius\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"innerRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sides\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tFrac\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"tAngle\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"tAngle\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tFrac\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"boundaryR\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"innerRadius\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"outerRadius\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"innerRadius\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"len\",\n\t\t\t\t\"-\",\n\t\t\t\t\"boundaryR\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nconst starSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, outerRadius, sides, innerRatio) =\u003e {\n\t\"use gpu\";\n\tconst innerRadius = __tsover_mul(outerRadius, innerRatio);\n\tconst len = sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy)));\n\tconst angle = atan2(dy, dx);\n\tconst sectorAngle = __tsover_div(TWO_PI, sides);\n\tconst sectorIdx = floor(__tsover_add(__tsover_div(angle, sectorAngle), .5));\n\tconst bn = __tsover_sub(angle, __tsover_mul(sectorIdx, sectorAngle));\n\tconst fpx = abs(__tsover_mul(len, sin(bn)));\n\tconst fpy = __tsover_mul(len, cos(bn));\n\tconst an = __tsover_div(PI, sides);\n\tconst sinAn = sin(an);\n\tconst cosAn = cos(an);\n\tconst ex = __tsover_mul(innerRadius, sinAn);\n\tconst ey = __tsover_sub(__tsover_mul(innerRadius, cosAn), outerRadius);\n\tconst qx = fpx;\n\tconst qy = __tsover_sub(fpy, outerRadius);\n\tconst dotQE = __tsover_add(__tsover_mul(qx, ex), __tsover_mul(qy, ey));\n\tconst dotEE = __tsover_add(__tsover_mul(ex, ex), __tsover_mul(ey, ey));\n\tconst t = clamp(__tsover_div(dotQE, dotEE), 0, 1);\n\tconst nx = __tsover_sub(fpx, __tsover_mul(ex, t));\n\tconst ny = __tsover_sub(fpy, __tsover_add(outerRadius, __tsover_mul(ey, t)));\n\tconst dist = sqrt(__tsover_add(__tsover_mul(nx, nx), __tsover_mul(ny, ny)));\n\tconst cross$1 = __tsover_sub(__tsover_mul(ex, qy), __tsover_mul(ey, qx));\n\treturn __tsover_mul(dist, sign(cross$1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"outerRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sides\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"innerRatio\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outerRadius\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"innerRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[\"dy\", \"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sectorAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"TWO_PI\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"sides\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sectorIdx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"sectorAngle\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sectorIdx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sectorAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fpx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"bn\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fpy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"len\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"bn\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"an\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"PI\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"sides\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinAn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"an\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosAn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"an\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ex\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"innerRadius\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"sinAn\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ey\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"innerRadius\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosAn\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"outerRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t\"fpx\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"fpy\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"outerRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotQE\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ex\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotEE\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ex\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ex\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ey\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dotQE\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"dotEE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"fpx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ex\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"fpy\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"outerRadius\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ey\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"nx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ny\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cross\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ex\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ey\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dist\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t[\"cross\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"PI\": () =\u003e PI,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.sign\": () =\u003e sign\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ringSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radius, thickness) =\u003e {\n\t\"use gpu\";\n\tconst len = sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy)));\n\treturn __tsover_sub(abs(__tsover_sub(len, radius)), thickness);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"len\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.sqrt\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"len\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t\"thickness\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nconst crossSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, size$1, thickness, rounding) =\u003e {\n\t\"use gpu\";\n\tconst px = abs(dx);\n\tconst py = abs(dy);\n\tconst dHoriz = max(__tsover_sub(px, size$1), __tsover_sub(py, thickness));\n\tconst dVert = max(__tsover_sub(py, size$1), __tsover_sub(px, thickness));\n\treturn __tsover_sub(min(dHoriz, dVert), rounding);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"size\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rounding\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dHoriz\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"size\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"thickness\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dVert\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"size\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"thickness\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"dHoriz\", \"dVert\"]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"rounding\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst roundedRectSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, width, height, rounding) =\u003e {\n\t\"use gpu\";\n\tconst qx = __tsover_add(__tsover_sub(abs(dx), width), rounding);\n\tconst qy = __tsover_add(__tsover_sub(abs(dy), height), rounding);\n\tconst mqx = max(qx, 0);\n\tconst mqy = max(qy, 0);\n\tconst outerDist = sqrt(__tsover_add(__tsover_mul(mqx, mqx), __tsover_mul(mqy, mqy)));\n\tconst innerDist = min(max(qx, qy), 0);\n\treturn __tsover_sub(__tsover_add(outerDist, innerDist), rounding);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"width\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"height\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rounding\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"dx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"width\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"dy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"height\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mqx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"qx\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mqy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"qy\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outerDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mqx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"mqx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mqy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"mqy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"qx\", \"qy\"]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outerDist\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"innerDist\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"rounding\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ellipseSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radiusX, radiusY) =\u003e {\n\t\"use gpu\";\n\tconst nx = __tsover_div(dx, radiusX);\n\tconst ny = __tsover_div(dy, radiusY);\n\tconst k = sqrt(__tsover_add(__tsover_mul(nx, nx), __tsover_mul(ny, ny)));\n\treturn __tsover_mul(__tsover_sub(k, 1), min(radiusX, radiusY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radiusX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radiusY\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"radiusX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"radiusY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"nx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ny\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"k\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"radiusX\", \"radiusY\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst vesicaSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radius, spread) =\u003e {\n\t\"use gpu\";\n\tconst px = abs(dx);\n\tconst py = abs(dy);\n\tconst dd = __tsover_mul(radius, spread);\n\tconst b = sqrt(max(__tsover_sub(__tsover_mul(radius, radius), __tsover_mul(dd, dd)), 0));\n\tconst cond = __tsover_mul(__tsover_sub(py, b), dd) \u003e __tsover_mul(px, b);\n\tconst dist1 = sqrt(__tsover_add(__tsover_mul(px, px), __tsover_mul(__tsover_sub(py, b), __tsover_sub(py, b))));\n\treturn select(__tsover_sub(sqrt(__tsover_add(__tsover_mul(__tsover_add(px, dd), __tsover_add(px, dd)), __tsover_mul(py, py))), radius), dist1, cond);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spread\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"spread\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cond\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t],\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"dist2\",\n\t\t\t\t\t\"dist1\",\n\t\t\t\t\t\"cond\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst crescentSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, outerRadius, innerRatio, offset) =\u003e {\n\t\"use gpu\";\n\tconst py = abs(dy);\n\tconst ra = outerRadius;\n\tconst rb = __tsover_mul(outerRadius, innerRatio);\n\tconst off = offset;\n\tconst a = __tsover_div(__tsover_add(__tsover_sub(__tsover_mul(ra, ra), __tsover_mul(rb, rb)), __tsover_mul(off, off)), max(__tsover_mul(off, 2), .001));\n\tconst b = sqrt(max(__tsover_sub(__tsover_mul(ra, ra), __tsover_mul(a, a)), 0));\n\tconst lhs = __tsover_mul(off, __tsover_sub(__tsover_mul(dx, b), __tsover_mul(py, a)));\n\tconst rhs = __tsover_mul(__tsover_mul(off, off), max(__tsover_sub(b, py), 0));\n\tconst d1x = __tsover_sub(dx, a);\n\tconst d1y = __tsover_sub(py, b);\n\tconst dist1 = sqrt(__tsover_add(__tsover_mul(d1x, d1x), __tsover_mul(d1y, d1y)));\n\tconst lenP = sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(py, py)));\n\tconst innerX = __tsover_sub(dx, off);\n\tconst lenInner = sqrt(__tsover_add(__tsover_mul(innerX, innerX), __tsover_mul(py, py)));\n\treturn select(max(__tsover_sub(lenP, ra), __tsover_mul(__tsover_sub(lenInner, rb), -1)), dist1, lhs \u003e rhs);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"outerRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"innerRatio\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ra\",\n\t\t\t\t\"outerRadius\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rb\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outerRadius\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"innerRatio\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"off\",\n\t\t\t\t\"offset\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ra\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rb\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rb\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"off\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bSq\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ra\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[\"bSq\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lhs\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"off\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rhs\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"off\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d1x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d1y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"d1x\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"d1x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"d1y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"d1y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lenP\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"off\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lenInner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"innerX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"innerX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lenP\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"ra\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lenInner\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rb\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"dist2\",\n\t\t\t\t\t\"dist1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lhs\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\"rhs\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst trapezoidSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, r1, r2, he) =\u003e {\n\t\"use gpu\";\n\tconst px = abs(dx);\n\tconst k1x = r2;\n\tconst k1y = he;\n\tconst k2x = __tsover_sub(r2, r1);\n\tconst k2y = __tsover_mul(he, 2);\n\tconst clampWidth = select(r2, r1, dy \u003c 0);\n\tconst cax = __tsover_sub(px, min(px, clampWidth));\n\tconst cay = __tsover_sub(abs(dy), he);\n\tconst diffX = __tsover_sub(k1x, px);\n\tconst diffY = __tsover_sub(k1y, dy);\n\tconst dotNum = __tsover_add(__tsover_mul(diffX, k2x), __tsover_mul(diffY, k2y));\n\tconst dotDen = max(__tsover_add(__tsover_mul(k2x, k2x), __tsover_mul(k2y, k2y)), 1e-4);\n\tconst t = clamp(__tsover_div(dotNum, dotDen), 0, 1);\n\tconst cbx = __tsover_add(__tsover_sub(px, k1x), __tsover_mul(k2x, t));\n\tconst cby = __tsover_add(__tsover_sub(dy, k1y), __tsover_mul(k2y, t));\n\tconst sInner = select(f32(1), f32(-1), cay \u003c 0);\n\tconst s = select(f32(1), sInner, cbx \u003c 0);\n\tconst dca = __tsover_add(__tsover_mul(cax, cax), __tsover_mul(cay, cay));\n\tconst dcb = __tsover_add(__tsover_mul(cbx, cbx), __tsover_mul(cby, cby));\n\treturn __tsover_mul(s, sqrt(min(dca, dcb)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"he\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k1x\",\n\t\t\t\t\"r2\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k1y\",\n\t\t\t\t\"he\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k2x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r2\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k2y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"he\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clampWidth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\"r1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"px\", \"clampWidth\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"dy\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"he\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diffX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"k1x\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"px\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diffY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"k1y\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"dy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotNum\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"diffX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k2x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"diffY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k2y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotDen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"k2x\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"k2x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"k2y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"k2y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dotNum\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"dotDen\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cbx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"k1x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k2x\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cby\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"k1y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k2y\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sInner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cay\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sInner\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cbx\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dca\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cax\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cax\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cay\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cay\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dcb\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cbx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cbx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cby\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cby\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"s\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"dca\", \"dcb\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst heartSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radius) =\u003e {\n\t\"use gpu\";\n\tconst S = __tsover_div(radius, .75);\n\tconst px = __tsover_div(abs(dx), S);\n\tconst py = __tsover_add(__tsover_div(__tsover_mul(dy, -1), S), .6);\n\tconst ax = __tsover_sub(px, .25);\n\tconst ay = __tsover_sub(py, .75);\n\tconst distA = __tsover_sub(sqrt(__tsover_add(__tsover_mul(ax, ax), __tsover_mul(ay, ay))), SQRT2_OVER_4);\n\tconst b1y = __tsover_sub(py, 1);\n\tconst dot1 = __tsover_add(__tsover_mul(px, px), __tsover_mul(b1y, b1y));\n\tconst m = __tsover_mul(max(__tsover_add(px, py), 0), .5);\n\tconst b2x = __tsover_sub(px, m);\n\tconst b2y = __tsover_sub(py, m);\n\tconst dot2v = __tsover_add(__tsover_mul(b2x, b2x), __tsover_mul(b2y, b2y));\n\tconst distB = __tsover_mul(sqrt(min(dot1, dot2v)), sign(__tsover_sub(px, py)));\n\treturn __tsover_mul(select(distB, distA, __tsover_add(px, py) \u003e 1), S);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"S\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"dx\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"S\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"S\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ax\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ax\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ay\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ay\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"SQRT2_OVER_4\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b1y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dot1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"px\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b1y\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"b1y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b2x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"m\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b2y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"m\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dot2v\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b2x\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"b2x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b2y\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"b2y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[\"dot1\", \"dot2v\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"distB\",\n\t\t\t\t\t\t\"distA\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"S\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"SQRT2_OVER_4\": () =\u003e SQRT2_OVER_4,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.sign\": () =\u003e sign,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst arcSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radius, halfAngle) =\u003e {\n\t\"use gpu\";\n\tconst px = abs(dx);\n\tconst cx = sin(halfAngle);\n\tconst cy = cos(halfAngle);\n\tconst l = __tsover_sub(sqrt(__tsover_add(__tsover_mul(px, px), __tsover_mul(dy, dy))), radius);\n\tconst clamped = clamp(__tsover_add(__tsover_mul(px, cx), __tsover_mul(dy, cy)), 0, radius);\n\tconst mx = __tsover_sub(px, __tsover_mul(cx, clamped));\n\tconst my = __tsover_sub(dy, __tsover_mul(cy, clamped));\n\tconst m = sqrt(__tsover_add(__tsover_mul(mx, mx), __tsover_mul(my, my)));\n\treturn max(l, __tsover_mul(m, sign(__tsover_sub(__tsover_mul(cy, px), __tsover_mul(cx, dy)))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfAngle\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"halfAngle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"halfAngle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"clamped\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"my\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"clamped\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"mx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"my\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"my\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[\"l\", [\n\t\t\t\t\t1,\n\t\t\t\t\t\"m\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sign\": () =\u003e sign\n\t}\n}) \u0026\u0026 $.f)({}));\nconst teardropSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, radius, h) =\u003e {\n\t\"use gpu\";\n\tconst mid = __tsover_mul(__tsover_sub(h, radius), .5);\n\tconst qx = abs(dx);\n\tconst qy = __tsover_add(__tsover_mul(dy, -1), mid);\n\tconst hSafe = max(h, 1e-4);\n\tconst b = __tsover_div(radius, hSafe);\n\tconst a = sqrt(max(__tsover_sub(1, __tsover_mul(b, b)), 0));\n\tconst k = __tsover_add(__tsover_mul(qx, __tsover_mul(b, -1)), __tsover_mul(qy, a));\n\tconst cap0 = __tsover_sub(sqrt(__tsover_add(__tsover_mul(qx, qx), __tsover_mul(qy, qy))), radius);\n\tconst qyTip = __tsover_sub(qy, h);\n\tconst cap1 = sqrt(__tsover_add(__tsover_mul(qx, qx), __tsover_mul(qyTip, qyTip)));\n\treturn select(select(__tsover_sub(__tsover_add(__tsover_mul(qx, a), __tsover_mul(qy, b)), radius), cap1, k \u003e __tsover_mul(a, h)), cap0, k \u003c 0);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mid\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"mid\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hSafe\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"h\", [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"hSafe\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cap0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qyTip\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"qy\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"h\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cap1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"qyTip\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"qyTip\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"body\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"body\",\n\t\t\t\t\t\t\t\"cap1\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"cap0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst parallelogramSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dx, dy, wi, he, sk) =\u003e {\n\t\"use gpu\";\n\tconst ex = sk;\n\tconst ey = he;\n\tconst flip1 = dy \u003c 0;\n\tconst px0 = select(dx, __tsover_mul(dx, -1), flip1);\n\tconst py0 = select(dy, __tsover_mul(dy, -1), flip1);\n\tconst wx0 = __tsover_sub(px0, ex);\n\tconst wy = __tsover_sub(py0, ey);\n\tconst wx = __tsover_sub(wx0, clamp(wx0, __tsover_mul(wi, -1), wi));\n\tconst dX = __tsover_add(__tsover_mul(wx, wx), __tsover_mul(wy, wy));\n\tconst dY = __tsover_mul(wy, -1);\n\tconst s = __tsover_sub(__tsover_mul(px0, ey), __tsover_mul(py0, ex));\n\tconst flip2 = s \u003c 0;\n\tconst px = select(px0, __tsover_mul(px0, -1), flip2);\n\tconst py = select(py0, __tsover_mul(py0, -1), flip2);\n\tconst vx0 = __tsover_sub(px, wi);\n\tconst dotve = __tsover_add(__tsover_mul(vx0, ex), __tsover_mul(py, ey));\n\tconst dotee = max(__tsover_add(__tsover_mul(ex, ex), __tsover_mul(ey, ey)), 1e-4);\n\tconst tt = clamp(__tsover_div(dotve, dotee), -1, 1);\n\tconst vx = __tsover_sub(vx0, __tsover_mul(ex, tt));\n\tconst vy = __tsover_sub(py, __tsover_mul(ey, tt));\n\tconst finalX = min(dX, __tsover_add(__tsover_mul(vx, vx), __tsover_mul(vy, vy)));\n\tconst finalY = min(dY, __tsover_sub(__tsover_mul(wi, he), abs(s)));\n\treturn __tsover_mul(sqrt(finalX), sign(__tsover_mul(finalY, -1)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wi\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"he\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sk\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ex\",\n\t\t\t\t\"sk\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ey\",\n\t\t\t\t\"he\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flip1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"flip1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"flip1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wx0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px0\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"ex\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py0\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"ey\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"wx0\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"wx0\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wi\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"wi\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"wx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"wy\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"wy\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"px0\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"py0\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ex\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flip2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"px0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px0\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"flip2\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"py0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py0\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"flip2\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vx0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"wi\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotve\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"vx0\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ex\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotee\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ex\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ey\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tt\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dotve\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"dotee\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"vx0\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ex\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"tt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ey\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"tt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"dX\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"vx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"vy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"vy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"dY\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"wi\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"he\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[\"finalX\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"finalY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.sign\": () =\u003e sign\n\t}\n}) \u0026\u0026 $.f)({}));\nconst shapeLocalCoords = typegpu_default.fn([\n\tvec2f$1,\n\tf32,\n\tvec2f$1,\n\tf32\n], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, rotation, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst aspectUV = vec2f$1(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f$1(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst dx = __tsover_sub(aspectUV.x, centerPos.x);\n\tconst dy = __tsover_sub(aspectUV.y, centerPos.y);\n\tconst rotRad = __tsover_mul(rotation, DEG_TO_RAD);\n\tconst cosR = cos(rotRad);\n\tconst sinR = sin(rotRad);\n\treturn vec2f$1(__tsover_add(__tsover_mul(dx, cosR), __tsover_mul(dy, sinR)), __tsover_sub(__tsover_mul(dy, cosR), __tsover_mul(dx, sinR)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"rdx\", \"rdy\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f$1,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ShapeMask = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\toverallMask: f32,\n\tstrokeBlend: f32\n}), \"ShapeMask\");\nconst strokeMaskFromSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], ShapeMask)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, softness, strokeThickness, strokePosition) =\u003e {\n\t\"use gpu\";\n\tconst hasStroke = strokeThickness \u003e 0;\n\tconst isInside = strokePosition \u003e= 1.5;\n\tconst isCenterOrAbove = strokePosition \u003e= .5;\n\tconst halfThickness = __tsover_mul(strokeThickness, .5);\n\tconst negThickness = __tsover_mul(strokeThickness, -1);\n\tconst negHalf = __tsover_mul(halfThickness, -1);\n\tconst strokeInner = select(select(f32(0), negHalf, isCenterOrAbove), negThickness, isInside);\n\tconst strokeOuter = select(select(strokeThickness, halfThickness, isCenterOrAbove), f32(0), isInside);\n\tconst overallMask = __tsover_sub(1, smoothstep(__tsover_sub(strokeOuter, softness), strokeOuter, dist));\n\tconst blend = smoothstep(__tsover_sub(strokeInner, softness), strokeInner, dist);\n\treturn ShapeMask({\n\t\toverallMask,\n\t\tstrokeBlend: select(f32(0), blend, hasStroke)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strokeThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strokePosition\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hasStroke\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strokeThickness\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isInside\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strokePosition\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isCenterOrAbove\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strokePosition\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfThickness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strokeThickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"negThickness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strokeThickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"negHalf\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"halfThickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"strokeInner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"negHalf\",\n\t\t\t\t\t\t\t\t\"isCenterOrAbove\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"negThickness\",\n\t\t\t\t\t\t\"isInside\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"strokeOuter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"strokeThickness\",\n\t\t\t\t\t\t\t\t\"halfThickness\",\n\t\t\t\t\t\t\t\t\"isCenterOrAbove\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"isInside\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overallMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"strokeOuter\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"strokeOuter\",\n\t\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blend\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"strokeInner\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"strokeInner\",\n\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"strokeBlend\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"blend\",\n\t\t\t\t\t\t\"hasStroke\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"ShapeMask\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"overallMask\": \"overallMask\",\n\t\t\t\t\t\"strokeBlend\": \"strokeBlend\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"ShapeMask\": () =\u003e ShapeMask\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction fillStrokeColor(mask, fill, stroke, colorSpaceMode) {\n\tconst blended = call(mixColorsVariants[colorSpaceMode] ?? mixColorsLinear, \"mixColors\", [\n\t\tfill,\n\t\tstroke,\n\t\tmask.member(\"strokeBlend\")\n\t]);\n\treturn vec4(blended.member(\"rgb\"), blended.member(\"a\").mul(mask.member(\"overallMask\")));\n}\nasync function loadSdfFromUrl(url, sdfData) {\n\tconst response = await fetch(url, { mode: \"cors\" });\n\tif (!response.ok) throw new Error(`SDF fetch failed: HTTP ${response.status}`);\n\tconst buffer$1 = await response.arrayBuffer();\n\tconst pixelCount = 512 * 512;\n\tif (buffer$1.byteLength === pixelCount * 2) {\n\t\tconst uint16$1 = new Uint16Array(buffer$1);\n\t\tconst n = Math.min(uint16$1.length, sdfData.length);\n\t\tfor (let i = 0; i \u003c n; i++) sdfData[i] = uint16$1[i] / 32767.5 - 1;\n\t} else if (buffer$1.byteLength === pixelCount * 4) {\n\t\tconst floats = new Float32Array(buffer$1);\n\t\tconst n = Math.min(floats.length, sdfData.length);\n\t\tfor (let i = 0; i \u003c n; i++) sdfData[i] = floats[i];\n\t} else throw new Error(`SDF binary has unexpected size (${buffer$1.byteLength} bytes); expected ${pixelCount * 2} (compact) or ${pixelCount * 4} (legacy). The URL may point to a non-SDF file (e.g. the raw SVG).`);\n}\nfunction createSdfDataTexture(params, shapeSdfUrl) {\n\tconst count = 512 * 512;\n\tconst sdfData = new Float32Array(count).fill(.5);\n\tconst texData = new Uint16Array(count);\n\tconst halfHalf = toHalfFloat(.5);\n\tfor (let i = 0; i \u003c count; i++) texData[i] = halfHalf;\n\tconst texture = params.createDataTexture({\n\t\twidth: 512,\n\t\theight: 512,\n\t\tformat: \"r16float\",\n\t\tdata: texData,\n\t\tlabel: \"svg-sdf\"\n\t});\n\tparams.onCleanup(() =\u003e texture.destroy());\n\tlet needsUpload = false;\n\tlet version$2 = 0;\n\tif (shapeSdfUrl) loadSdfFromUrl(shapeSdfUrl, sdfData).then(() =\u003e {\n\t\tfor (let i = 0; i \u003c count; i++) texData[i] = toHalfFloat(sdfData[i]);\n\t\tneedsUpload = true;\n\t}).catch((err) =\u003e debugWarn(\"[SDF] Failed to load SDF texture:\", err));\n\tparams.onBeforeRender(() =\u003e {\n\t\tif (needsUpload) {\n\t\t\tneedsUpload = false;\n\t\t\ttexture.write(texData);\n\t\t\tversion$2++;\n\t\t}\n\t});\n\treturn {\n\t\tkitTexture: params.registerMediaTexture(() =\u003e texture.texture),\n\t\ttexture,\n\t\tgetVersion: () =\u003e version$2\n\t};\n}\nfunction createSvgSdfSampler(params, shapeSdfUrl) {\n\tconst { kitTexture } = createSdfDataTexture(params, shapeSdfUrl);\n\treturn (uv) =\u003e kitTexture.sampleLevel(uv);\n}\nfunction createSvgSdfSamplerWithGradients(params, shapeSdfUrl) {\n\tconst size$1 = 512;\n\tconst count = size$1 * size$1;\n\tconst sdfData = new Float32Array(count).fill(.5);\n\tconst texData = new Uint16Array(count * 4);\n\tconst halfHalf = toHalfFloat(.5);\n\tconst halfOne = toHalfFloat(1);\n\tfor (let i = 0; i \u003c count; i++) {\n\t\ttexData[i * 4] = halfHalf;\n\t\ttexData[i * 4 + 3] = halfOne;\n\t}\n\tconst texture = params.createMediaTexture({\n\t\twidth: size$1,\n\t\theight: size$1,\n\t\tformat: \"rgba16float\",\n\t\tlabel: \"svg-sdf-grad\"\n\t});\n\tparams.onCleanup(() =\u003e texture.destroy());\n\tconst sampleField = (tx, ty) =\u003e {\n\t\tconst x0 = Math.floor(tx);\n\t\tconst y0 = Math.floor(ty);\n\t\tconst fx = tx - x0;\n\t\tconst fy = ty - y0;\n\t\tconst cl = (v) =\u003e Math.min(Math.max(v, 0), size$1 - 1);\n\t\tconst x0c = cl(x0), x1c = cl(x0 + 1), y0c = cl(y0), y1c = cl(y0 + 1);\n\t\treturn sdfData[y0c * size$1 + x0c] * (1 - fx) * (1 - fy) + sdfData[y0c * size$1 + x1c] * fx * (1 - fy) + sdfData[y1c * size$1 + x0c] * (1 - fx) * fy + sdfData[y1c * size$1 + x1c] * fx * fy;\n\t};\n\tconst EPS_UV = .01;\n\tconst epsTexels = EPS_UV * size$1;\n\tconst bake = () =\u003e {\n\t\tfor (let y = 0; y \u003c size$1; y++) for (let x = 0; x \u003c size$1; x++) {\n\t\t\tconst i = y * size$1 + x;\n\t\t\tconst f0 = sdfData[i];\n\t\t\tconst gx = (sampleField(x + epsTexels, y) - f0) / EPS_UV;\n\t\t\tconst gy = (sampleField(x, y + epsTexels) - f0) / EPS_UV;\n\t\t\ttexData[i * 4] = toHalfFloat(f0);\n\t\t\ttexData[i * 4 + 1] = toHalfFloat(gx);\n\t\t\ttexData[i * 4 + 2] = toHalfFloat(gy);\n\t\t}\n\t};\n\tlet needsUpload = false;\n\tif (shapeSdfUrl) loadSdfFromUrl(shapeSdfUrl, sdfData).then(() =\u003e {\n\t\tbake();\n\t\tneedsUpload = true;\n\t}).catch((err) =\u003e debugWarn(\"[SDF] Failed to load SDF texture:\", err));\n\tparams.onBeforeRender(() =\u003e {\n\t\tif (needsUpload) {\n\t\t\tneedsUpload = false;\n\t\t\ttexture.write(texData);\n\t\t}\n\t});\n\tconst kitTexture = params.registerMediaTexture(() =\u003e texture.texture);\n\treturn (uv) =\u003e kitTexture.sampleLevel(uv);\n}\nconst APERTURE_TO_HALFANGLE = .008726646259971648;\nfunction buildAnalyticSdfFn(shapeType) {\n\treturn typegpu_default.fn([\n\t\tvec2f$1,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], vec4f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, r, n, round$1, inner, rot, h, off, ap) =\u003e {\n\t\t\"use gpu\";\n\t\tconst dx = __tsover_sub(uv.x, .5);\n\t\tconst dy = __tsover_sub(uv.y, .5);\n\t\tconst rotRad = __tsover_mul(rot, DEG_TO_RAD);\n\t\tconst cosR = cos(rotRad);\n\t\tconst sinR = sin(rotRad);\n\t\tconst rdx = __tsover_add(__tsover_mul(dx, cosR), __tsover_mul(dy, sinR));\n\t\tconst rdy = __tsover_sub(__tsover_mul(dy, cosR), __tsover_mul(dx, sinR));\n\t\tlet dist = f32(0);\n\t\tif (shapeType === \"polygonSDF\") dist = mix(polygonSdf(rdx, rdy, r, n), circleSdf(rdx, rdy, r), round$1);\n\t\telse if (shapeType === \"flowerSDF\") dist = flowerSdf(rdx, rdy, r, n, inner);\n\t\telse if (shapeType === \"ringSDF\") dist = ringSdf(rdx, rdy, r, inner);\n\t\telse if (shapeType === \"crossSDF\") dist = crossSdf(rdx, rdy, r, inner, round$1);\n\t\telse if (shapeType === \"starSDF\") dist = starSdf(rdx, rdy, r, n, inner);\n\t\telse if (shapeType === \"roundedRectSDF\") dist = roundedRectSdf(rdx, rdy, r, h, round$1);\n\t\telse if (shapeType === \"ellipseSDF\") dist = ellipseSdf(rdx, rdy, r, h);\n\t\telse if (shapeType === \"vesicaSDF\") dist = vesicaSdf(rdx, rdy, r, inner);\n\t\telse if (shapeType === \"crescentSDF\") dist = crescentSdf(rdx, rdy, r, inner, off);\n\t\telse if (shapeType === \"trapezoidSDF\") dist = trapezoidSdf(rdx, rdy, inner, r, h);\n\t\telse if (shapeType === \"heartSDF\") dist = heartSdf(rdx, rdy, r);\n\t\telse if (shapeType === \"arcSDF\") dist = arcSdf(rdx, rdy, r, __tsover_mul(ap, .008726646259971648));\n\t\telse if (shapeType === \"teardropSDF\") dist = teardropSdf(rdx, rdy, r, h);\n\t\telse if (shapeType === \"parallelogramSDF\") dist = parallelogramSdf(rdx, rdy, r, h, off);\n\t\telse dist = circleSdf(rdx, rdy, r);\n\t\treturn vec4f$1(dist, 0, 0, 1);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"r\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"n\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"round\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"inner\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rot\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"h\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"off\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ap\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rotRad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cosR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sinR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rdx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rdy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"dist\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[103, \"polygonSDF\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"polygonSdf\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"circleSdf\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"round\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[103, \"flowerSDF\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"flowerSdf\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"inner\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[103, \"ringSDF\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"ringSdf\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\"inner\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t[103, \"crossSDF\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"crossSdf\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\"inner\",\n\t\t\t\t\t\t\t\t\t\t\t\"round\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t[103, \"starSDF\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"starSdf\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inner\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t[103, \"roundedRectSDF\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"roundedRectSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"round\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t[103, \"ellipseSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ellipseSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"vesicaSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"vesicaSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inner\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"crescentSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"crescentSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inner\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"trapezoidSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"trapezoidSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inner\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"heartSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"heartSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"arcSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"arcSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"APERTURE_TO_HALFANGLE\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"teardropSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"teardropSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"parallelogramSDF\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"parallelogramSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"circleSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"shapeType\": () =\u003e shapeType,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"polygonSdf\": () =\u003e polygonSdf,\n\t\t\t\"circleSdf\": () =\u003e circleSdf,\n\t\t\t\"flowerSdf\": () =\u003e flowerSdf,\n\t\t\t\"ringSdf\": () =\u003e ringSdf,\n\t\t\t\"crossSdf\": () =\u003e crossSdf,\n\t\t\t\"starSdf\": () =\u003e starSdf,\n\t\t\t\"roundedRectSdf\": () =\u003e roundedRectSdf,\n\t\t\t\"ellipseSdf\": () =\u003e ellipseSdf,\n\t\t\t\"vesicaSdf\": () =\u003e vesicaSdf,\n\t\t\t\"crescentSdf\": () =\u003e crescentSdf,\n\t\t\t\"trapezoidSdf\": () =\u003e trapezoidSdf,\n\t\t\t\"heartSdf\": () =\u003e heartSdf,\n\t\t\t\"arcSdf\": () =\u003e arcSdf,\n\t\t\t\"APERTURE_TO_HALFANGLE\": () =\u003e .008726646259971648,\n\t\t\t\"teardropSdf\": () =\u003e teardropSdf,\n\t\t\t\"parallelogramSdf\": () =\u003e parallelogramSdf,\n\t\t\t\"d.vec4f\": () =\u003e vec4f$1\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`analyticSdf_${shapeType}`);\n}\nfunction createAnalyticSdfSampler(shapeType, sub$2, _patternMode = \"none\") {\n\tconst radius = sub$2.radius ?? floatE(0);\n\tconst sides = sub$2.sides ?? floatE(0);\n\tconst rounding = sub$2.rounding ?? floatE(0);\n\tconst innerRatio = sub$2.innerRatio ?? floatE(0);\n\tconst rotation = sub$2.rotation ?? floatE(0);\n\tconst height = sub$2.height ?? floatE(0);\n\tconst offset = sub$2.offset ?? floatE(0);\n\tconst aperture = sub$2.aperture ?? floatE(0);\n\tconst fn$1 = buildAnalyticSdfFn(shapeType);\n\treturn (uv) =\u003e call(fn$1, `analyticSdf_${shapeType}`, [\n\t\tuv,\n\t\tradius,\n\t\tsides,\n\t\trounding,\n\t\tinnerRatio,\n\t\trotation,\n\t\theight,\n\t\toffset,\n\t\taperture\n\t]);\n}\nconst ANALYTIC_SDF_EXTRA_FIELDS = {\n\t_saRadius: {\n\t\tschema: f32,\n\t\tinitial: .35\n\t},\n\t_saSides: {\n\t\tschema: f32,\n\t\tinitial: 6\n\t},\n\t_saRounding: {\n\t\tschema: f32,\n\t\tinitial: 0\n\t},\n\t_saInnerRatio: {\n\t\tschema: f32,\n\t\tinitial: .4\n\t},\n\t_saRotation: {\n\t\tschema: f32,\n\t\tinitial: 0\n\t},\n\t_saHeight: {\n\t\tschema: f32,\n\t\tinitial: .25\n\t},\n\t_saOffset: {\n\t\tschema: f32,\n\t\tinitial: .2\n\t},\n\t_saAperture: {\n\t\tschema: f32,\n\t\tinitial: 270\n\t}\n};\nfunction analyticSubPropValues(cfg) {\n\tconst num = (v, f) =\u003e typeof v === \"number\" ? v : f;\n\treturn {\n\t\tradius: num(cfg.radius, num(cfg.width, num(cfg.bottomWidth, .35))),\n\t\tsides: num(cfg.sides, 6),\n\t\trounding: num(cfg.rounding, 0),\n\t\tinnerRatio: num(cfg.innerRatio, num(cfg.thickness, num(cfg.spread, num(cfg.topWidth, num(cfg.topRatio, .4))))),\n\t\trotation: num(cfg.rotation, 0),\n\t\theight: num(cfg.height, .25),\n\t\toffset: num(cfg.offset, num(cfg.skew, .2)),\n\t\taperture: num(cfg.aperture, 270)\n\t};\n}\nfunction parseShapeConfigValue(raw) {\n\tif (raw \u0026\u0026 typeof raw === \"object\") return raw;\n\tif (typeof raw === \"string\") try {\n\t\treturn JSON.parse(raw);\n\t} catch {\n\t\treturn {};\n\t}\n\treturn {};\n}\nfunction driveAnalyticSubProps(params, getShapeConfig) {\n\tlet lastShapeJson = \"\";\n\tlet lastCfg = parseShapeConfigValue(getShapeConfig());\n\tconst write = () =\u003e {\n\t\tconst s = analyticSubPropValues(lastCfg);\n\t\tparams.setExtraField(\"_saRadius\", s.radius);\n\t\tparams.setExtraField(\"_saSides\", s.sides);\n\t\tparams.setExtraField(\"_saRounding\", s.rounding);\n\t\tparams.setExtraField(\"_saInnerRatio\", s.innerRatio);\n\t\tparams.setExtraField(\"_saRotation\", s.rotation);\n\t\tparams.setExtraField(\"_saHeight\", s.height);\n\t\tparams.setExtraField(\"_saOffset\", s.offset);\n\t\tparams.setExtraField(\"_saAperture\", s.aperture);\n\t};\n\tparams.onBeforeRender(() =\u003e {\n\t\tconst raw = getShapeConfig();\n\t\tif (raw \u0026\u0026 typeof raw === \"object\") lastCfg = raw;\n\t\telse if (typeof raw === \"string\") {\n\t\t\tif (raw !== lastShapeJson) {\n\t\t\t\tlastShapeJson = raw;\n\t\t\t\ttry {\n\t\t\t\t\tlastCfg = JSON.parse(raw);\n\t\t\t\t} catch {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\twrite();\n\t});\n\tconst u = params.uniforms;\n\treturn {\n\t\tradius: u._saRadius,\n\t\tsides: u._saSides,\n\t\trounding: u._saRounding,\n\t\tinnerRatio: u._saInnerRatio,\n\t\trotation: u._saRotation,\n\t\theight: u._saHeight,\n\t\toffset: u._saOffset,\n\t\taperture: u._saAperture\n\t};\n}\nfunction definePointwiseFilter(config) {\n\tconst { body, build, args, compose, identity, missingChildMessage, setup,...meta } = config;\n\tif (!body \u0026\u0026 !build) throw new Error(`definePointwiseFilter(${config.name}): needs a body or a build`);\n\tconst fragment = (rawParams) =\u003e {\n\t\tif (!rawParams.childNode) {\n\t\t\tif (missingChildMessage) console.error(missingChildMessage);\n\t\t\treturn ZERO;\n\t\t}\n\t\tconst params = rawParams;\n\t\tif (isFilterIdentity(identity, params)) return params.childNode;\n\t\tsetup?.(params);\n\t\tlet result;\n\t\tif (build) result = build(params);\n\t\telse {\n\t\t\tconst { fn: fn$1, hint } = typeof body === \"function\" ? body(params.propValues) : body;\n\t\t\tresult = call(fn$1, hint, [params.childNode, ...args?.(params) ?? []]);\n\t\t}\n\t\treturn compose ? compose(result, params) : result;\n\t};\n\treturn {\n\t\t...meta,\n\t\trequiresChild: true,\n\t\tfragment\n\t};\n}\nfunction isFilterIdentity(identity, params) {\n\tif (!identity) return false;\n\tfor (const prop of identity.props) if (params.getMapInfo?.(prop)) return false;\n\treturn identity.when(params.propValues);\n}\nfunction defineRttFilter(config) {\n\tconst { build, resultAlpha, identity, missingChildMessage, setup,...meta } = config;\n\tconst fragment = (rawParams) =\u003e {\n\t\tif (!rawParams.childNode) {\n\t\t\tif (missingChildMessage) console.error(missingChildMessage);\n\t\t\treturn ZERO;\n\t\t}\n\t\tconst texture = rawParams.convertToTexture(rawParams.childNode);\n\t\tconst sampleStraight = (uv) =\u003e call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [texture.sample(uv)]);\n\t\tconst params = {\n\t\t\t...rawParams,\n\t\t\tchildNode: rawParams.childNode,\n\t\t\ttexture,\n\t\t\tsampleStraight\n\t\t};\n\t\tif (isFilterIdentity(identity, rawParams)) return sampleStraight(rawParams.ctx.uv);\n\t\tsetup?.(params);\n\t\tconst result = build(params);\n\t\treturn resultAlpha === \"straight\" ? result : call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [result]);\n\t};\n\treturn {\n\t\t...meta,\n\t\trequiresRTT: true,\n\t\trequiresChild: true,\n\t\tfragment\n\t};\n}\nfunction lerpToIdentity(inner, amount) {\n\treturn { map: (uv, aspect) =\u003e {\n\t\tconst mapped = normalizeMapped(inner.map(uv, aspect));\n\t\tconst blended = mixExpr(uv, mapped.uv, amount(uv, aspect));\n\t\treturn mapped.coverage ? {\n\t\t\tuv: blended,\n\t\t\tcoverage: mapped.coverage\n\t\t} : blended;\n\t} };\n}\nfunction selectMap(a, b, pick) {\n\treturn { map: (uv, aspect) =\u003e mixExpr(a(uv, aspect), b(uv, aspect), pick(uv, aspect)) };\n}\nfunction normalizeMapped(m) {\n\treturn \"uv\" in m ? m : { uv: m };\n}\nfunction uvRemapShader(source, opts = {}) {\n\tconst resolveMap$1 = typeof source === \"function\" ? source : () =\u003e source;\n\tconst edgeSource = opts.edges ?? \"prop\";\n\tconst edgeModeFor = (propValues) =\u003e {\n\t\tif (edgeSource === \"none\") return null;\n\t\tif (typeof edgeSource === \"number\") return edgeSource;\n\t\treturn propValues.edges ?? 0;\n\t};\n\treturn {\n\t\tfragment: (params) =\u003e {\n\t\t\tconst { childNode, ctx, convertToTexture, propValues } = params;\n\t\t\tif (!childNode) {\n\t\t\t\tif (opts.requireChildMessage) console.error(opts.requireChildMessage);\n\t\t\t\treturn ZERO;\n\t\t\t}\n\t\t\tconst texture = convertToTexture(childNode);\n\t\t\tconst edgeMode = edgeModeFor(propValues);\n\t\t\tconst mapped = normalizeMapped(resolveMap$1(params).map(ctx.uv, ctx.aspect));\n\t\t\tconst sampled = edgeMode === null ? texture.sample(mapped.uv) : opts.resample === \"bilinear\" ? applyEdgeHandlingExpr(mapped.uv, (uv) =\u003e texture.sample(uv), edgeMode) : sampleRemappedExpr(texture, mapped.uv, edgeMode);\n\t\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [mapped.coverage ? vec4(sampled.member(\"rgb\"), sampled.member(\"a\").mul(mapped.coverage)) : sampled]);\n\t\t},\n\t\tuvRemap: (ctx) =\u003e {\n\t\t\tif (opts.uvRemapIdentityWhen?.(ctx)) return {\n\t\t\t\tuv: ctx.uv,\n\t\t\t\tmask: ctx.mask\n\t\t\t};\n\t\t\tconst edgeMode = edgeModeFor(ctx.propValues);\n\t\t\tconst mapped = normalizeMapped(resolveMap$1(ctx).map(ctx.uv, ctx.aspect));\n\t\t\tconst composed = edgeMode === null ? {\n\t\t\t\tuv: mapped.uv,\n\t\t\t\tmask: ctx.mask\n\t\t\t} : composeEdgeRemapExpr(mapped.uv, ctx.mask, edgeMode);\n\t\t\tif (!mapped.coverage) return composed;\n\t\t\treturn {\n\t\t\t\tuv: composed.uv,\n\t\t\t\tmask: composed.mask.mul(mapped.coverage)\n\t\t\t};\n\t\t}\n\t};\n}\nfunction edgesPropConfig(defaultMode, description, overrides) {\n\treturn {\n\t\tdefault: defaultMode,\n\t\tdescription,\n\t\ttransform: transformEdges,\n\t\tcompileTime: true,\n\t\tui: {\n\t\t\ttype: \"select\",\n\t\t\toptions: [\n\t\t\t\t{\n\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t}\n\t\t\t],\n\t\t\tlabel: overrides?.label ?? \"Edges\",\n\t\t\tgroup: overrides?.group ?? \"Effect\"\n\t\t}\n\t};\n}\nfunction centerPropConfig(description, overrides) {\n\tconst ui = {\n\t\ttype: \"position\",\n\t\tlabel: overrides?.label ?? \"Center\",\n\t\tgroup: overrides?.group ?? \"Position\"\n\t};\n\tif (overrides?.units) ui.units = [...overrides.units];\n\treturn {\n\t\tdefault: overrides?.default ?? {\n\t\t\tx: .5,\n\t\t\ty: .5\n\t\t},\n\t\ttransform: transformPosition,\n\t\tdescription,\n\t\tui\n\t};\n}\nfunction originProp() {\n\treturn {\n\t\tdefault: \"center\",\n\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\tui: {\n\t\t\ttype: \"origin\",\n\t\t\tlabel: \"Origin\",\n\t\t\tgroup: \"Position\"\n\t\t}\n\t};\n}\nfunction shapeStrokeProps(overrides) {\n\treturn {\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: overrides?.softnessDescription ?? \"Edge softness for antialiasing\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .1,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstrokeThickness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Stroke thickness. Zero means no stroke.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: overrides?.strokeThicknessMax ?? .2,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Stroke Thickness\",\n\t\t\t\tgroup: \"Stroke\"\n\t\t\t}\n\t\t},\n\t\tstrokeColor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: overrides?.strokeColorDescription ?? \"Color of the stroke outline\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Stroke Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstrokePosition: {\n\t\t\tdefault: \"center\",\n\t\t\ttransform: transformStrokePosition,\n\t\t\tdescription: overrides?.strokePositionDescription ?? \"Position of the stroke relative to the shape edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Outside\",\n\t\t\t\t\t\tvalue: \"outside\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Center\",\n\t\t\t\t\t\tvalue: \"center\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Inside\",\n\t\t\t\t\t\tvalue: \"inside\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Stroke Position\",\n\t\t\t\tgroup: \"Stroke\"\n\t\t\t}\n\t\t}\n\t};\n}\nfunction shapeColorSpaceProp(overrides) {\n\treturn {\n\t\tdefault: \"linear\",\n\t\ttransform: transformColorSpace,\n\t\tcompileTime: true,\n\t\tdescription: overrides?.description ?? \"Color space for blending fill and stroke colors\",\n\t\tui: {\n\t\t\ttype: \"select\",\n\t\t\toptions: colorSpaceOptions,\n\t\t\tlabel: \"Color Blending\",\n\t\t\tgroup: \"Colors\"\n\t\t}\n\t};\n}\nfunction objectFitProp(defaultValue, description, options) {\n\tconst transform = options.allowNone ? (value) =\u003e {\n\t\treturn {\n\t\t\t\"cover\": 0,\n\t\t\t\"contain\": 1,\n\t\t\t\"fill\": 2,\n\t\t\t\"scale-down\": 3,\n\t\t\t\"none\": 4\n\t\t}[value] ?? 0;\n\t} : (value) =\u003e {\n\t\treturn {\n\t\t\t\"cover\": 0,\n\t\t\t\"contain\": 1,\n\t\t\t\"fill\": 2,\n\t\t\t\"scale-down\": 3,\n\t\t\t\"none\": 2\n\t\t}[value] ?? 2;\n\t};\n\tconst uiOptions = [\n\t\t{\n\t\t\tlabel: \"Cover\",\n\t\t\tvalue: \"cover\"\n\t\t},\n\t\t{\n\t\t\tlabel: \"Contain\",\n\t\t\tvalue: \"contain\"\n\t\t},\n\t\t{\n\t\t\tlabel: \"Fill\",\n\t\t\tvalue: \"fill\"\n\t\t},\n\t\t{\n\t\t\tlabel: \"Scale Down\",\n\t\t\tvalue: \"scale-down\"\n\t\t}\n\t];\n\tif (options.allowNone) uiOptions.push({\n\t\tlabel: \"None\",\n\t\tvalue: \"none\"\n\t});\n\treturn {\n\t\tdefault: defaultValue,\n\t\tdescription,\n\t\ttransform,\n\t\tcompileTime: true,\n\t\tui: {\n\t\t\ttype: \"select\",\n\t\t\toptions: uiOptions,\n\t\t\tlabel: \"Object Fit\",\n\t\t\tgroup: \"Sizing\"\n\t\t}\n\t};\n}\nvar GLASS_SHELL_CANON = {\n\trefraction: {\n\t\tdefault: .5,\n\t\tdescription: \"How strongly the shell bends what's seen through or inside it\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 1,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Refraction\",\n\t\t\tgroup: \"Glass\"\n\t\t}\n\t},\n\tdispersion: {\n\t\tdefault: .25,\n\t\tdescription: \"Spectral splitting at the shell — rainbow fringes where light bends hardest\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 1,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Dispersion\",\n\t\t\tgroup: \"Glass\"\n\t\t}\n\t},\n\tthickness: {\n\t\tdefault: .2,\n\t\tdescription: \"Shell depth — how far inward from the edge the shell's optics extend\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 1,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Thickness\",\n\t\t\tgroup: \"Glass\"\n\t\t}\n\t},\n\tenvironment: {\n\t\tdefault: 1,\n\t\tdescription: \"Strength of the studio lighting reflected in the shell\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 2,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Environment\",\n\t\t\tgroup: \"Glass\"\n\t\t}\n\t},\n\tenvRotation: {\n\t\tdefault: 0,\n\t\tdescription: \"Rotates the reflected studio — spins where the bright reflections fall\",\n\t\tui: {\n\t\t\ttype: \"range\",\n\t\t\tmin: 0,\n\t\t\tmax: 360,\n\t\t\tstep: 1,\n\t\t\tlabel: \"Env Rotation\",\n\t\t\tgroup: \"Glass\"\n\t\t}\n\t},\n\tlightAngle: {\n\t\tdefault: 315,\n\t\tdescription: \"Direction of the key light, in degrees\",\n\t\tui: {\n\t\t\ttype: \"range\",\n\t\t\tmin: 0,\n\t\t\tmax: 360,\n\t\t\tstep: 1,\n\t\t\tlabel: \"Light Angle\",\n\t\t\tgroup: \"Glass\"\n\t\t}\n\t},\n\thighlight: {\n\t\tdefault: 1,\n\t\tdescription: \"Sharp key-light glint on the shell\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 2,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Highlight\",\n\t\t\tgroup: \"Highlight\"\n\t\t}\n\t},\n\thighlightColor: {\n\t\tdefault: \"#ffffff\",\n\t\ttransform: transformColor,\n\t\tdescription: \"Color of the key-light highlight\",\n\t\tui: {\n\t\t\ttype: \"color\",\n\t\t\tlabel: \"Highlight Color\",\n\t\t\tgroup: \"Highlight\"\n\t\t}\n\t},\n\thighlightSoftness: {\n\t\tdefault: .5,\n\t\tdescription: \"Specular highlight softness — lower is a tighter, sharper glint\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 1,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Highlight Softness\",\n\t\t\tgroup: \"Highlight\"\n\t\t}\n\t},\n\tfresnel: {\n\t\tdefault: .1,\n\t\tdescription: \"Fresnel rim glow — the luminous edge where the shell turns away from view\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 1,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Fresnel\",\n\t\t\tgroup: \"Fresnel\"\n\t\t}\n\t},\n\tfresnelSoftness: {\n\t\tdefault: .1,\n\t\tdescription: \"Fresnel rim width — higher values spread the glow further inward\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 1,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Fresnel Softness\",\n\t\t\tgroup: \"Fresnel\"\n\t\t}\n\t},\n\tfresnelColor: {\n\t\tdefault: \"#ffffff\",\n\t\ttransform: transformColor,\n\t\tdescription: \"Color of the fresnel rim glow\",\n\t\tui: {\n\t\t\ttype: \"color\",\n\t\t\tlabel: \"Fresnel Color\",\n\t\t\tgroup: \"Fresnel\"\n\t\t}\n\t},\n\tedgeSoftness: {\n\t\tdefault: .05,\n\t\tdescription: \"Softness of the shape boundary edge\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 1,\n\t\t\tstep: .01,\n\t\t\tlabel: \"Edge Softness\",\n\t\t\tgroup: \"Glass\"\n\t\t}\n\t}\n};\nfunction glassShellProps(spec) {\n\tconst out = {};\n\tfor (const key of Object.keys(spec)) {\n\t\tconst override = spec[key];\n\t\tif (!override) continue;\n\t\tconst canon = GLASS_SHELL_CANON[key];\n\t\tout[key] = override === true ? canon : {\n\t\t\t...canon,\n\t\t\t...override,\n\t\t\tui: {\n\t\t\t\t...canon.ui,\n\t\t\t\t...override.ui ?? {}\n\t\t\t}\n\t\t};\n\t}\n\treturn out;\n}\nfunction rotationProp(description) {\n\treturn {\n\t\tdefault: 0,\n\t\tdescription,\n\t\tui: {\n\t\t\ttype: \"range\",\n\t\t\tmin: 0,\n\t\t\tmax: 360,\n\t\t\tstep: 1,\n\t\t\tlabel: \"Rotation\",\n\t\t\tgroup: \"Shape\"\n\t\t}\n\t};\n}\nfunction colorProp(description) {\n\treturn {\n\t\tdefault: \"#ffffff\",\n\t\ttransform: transformColor,\n\t\tdescription,\n\t\tui: {\n\t\t\ttype: \"color\",\n\t\t\tlabel: \"Color\",\n\t\t\tgroup: \"Colors\"\n\t\t}\n\t};\n}\nfunction buildBounds(bounds, rotatable) {\n\tif (bounds.custom) return bounds.custom;\n\tconst as = bounds.size.as ?? \"half-canvas-height\";\n\tconst propBindings = {\n\t\tx: {\n\t\t\tprop: \"center\",\n\t\t\tas: \"position-x\"\n\t\t},\n\t\ty: {\n\t\t\tprop: \"center\",\n\t\t\tas: \"position-y\"\n\t\t},\n\t\twidth: {\n\t\t\tprop: bounds.size.width,\n\t\t\tas\n\t\t},\n\t\theight: {\n\t\t\tprop: bounds.size.height,\n\t\t\tas\n\t\t}\n\t};\n\tif (rotatable) propBindings.rotation = {\n\t\tprop: \"rotation\",\n\t\tas: \"degrees\"\n\t};\n\treturn { propBindings };\n}\nfunction orderProps(props, order, shaderName) {\n\tif (!order) return props;\n\tconst missing = Object.keys(props).filter((k) =\u003e !order.includes(k));\n\tconst unknown = order.filter((k) =\u003e !(k in props));\n\tif (missing.length || unknown.length) throw new Error(`defineSdfShapeShader(${shaderName}): propOrder must list every prop exactly once (missing: ${missing.join(\", \") || \"none\"}; unknown: ${unknown.join(\", \") || \"none\"})`);\n\tconst out = {};\n\tfor (const key of order) out[key] = props[key];\n\treturn out;\n}\nfunction defineSdfShapeShader(spec) {\n\tconst rotatable = spec.rotatable !== false;\n\tconst stroke = shapeStrokeProps(spec.stroke);\n\tconst props = {\n\t\torigin: originProp(),\n\t\tcolor: colorProp(spec.colorDescription),\n\t\tcenter: centerPropConfig(spec.centerDescription, {\n\t\t\tunits: [\"%\", \"px\"],\n\t\t\t...spec.centerLabel ? { label: spec.centerLabel } : {}\n\t\t}),\n\t\t...spec.shapeProps,\n\t\t...rotatable ? { rotation: rotationProp(spec.rotationDescription ?? \"Rotation in degrees\") } : {},\n\t\tsoftness: stroke.softness,\n\t\tstrokeThickness: stroke.strokeThickness,\n\t\tstrokeColor: stroke.strokeColor,\n\t\tstrokePosition: stroke.strokePosition,\n\t\tcolorSpace: shapeColorSpaceProp(spec.colorSpaceDescription ? { description: spec.colorSpaceDescription } : void 0),\n\t\t...spec.propOverrides\n\t};\n\treturn {\n\t\tname: spec.name,\n\t\tcategory: spec.category ?? \"Shapes\",\n\t\tdescription: spec.description,\n\t\tacceptsUVContext: true,\n\t\tboundingBoxDeclaration: buildBounds(spec.bounds, rotatable),\n\t\tprops: orderProps(props, spec.propOrder, spec.name),\n\t\tfragment: (params) =\u003e {\n\t\t\tconst { uniforms, ctx, propValues } = params;\n\t\t\tconst uv = params.uvContext ?? ctx.uv;\n\t\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\t\treturn fillStrokeColor(asLocal(sdfShapeMask(spec, uniforms, uv, ctx.aspect), \"shapeMask\"), uniforms.color, uniforms.strokeColor, colorSpaceMode);\n\t\t}\n\t};\n}\nfunction sdfShapeMask(spec, uniforms, uv, aspect) {\n\tconst rotation = uniforms.rotation ?? expr(\"0f\");\n\tconst frame = asLocal(call(shapeLocalCoords, \"shapeLocalCoords\", [\n\t\tuniforms.center,\n\t\trotation,\n\t\tuv,\n\t\taspect\n\t]), \"shapeLocal\");\n\tconst u = (name) =\u003e {\n\t\tconst value = uniforms[name];\n\t\tif (!value) throw new Error(`defineSdfShapeShader(${spec.name}): distance reads unknown prop '${name}'`);\n\t\treturn value;\n\t};\n\treturn call(strokeMaskFromSdf, \"strokeMaskFromSdf\", [\n\t\tspec.distance({\n\t\t\tx: frame.member(\"x\"),\n\t\t\ty: frame.member(\"y\")\n\t\t}, u),\n\t\tuniforms.softness,\n\t\tuniforms.strokeThickness,\n\t\tuniforms.strokePosition\n\t]);\n}\nfunction p(name) {\n\treturn {\n\t\tkind: \"prop\",\n\t\tname\n\t};\n}\nvar Scalar = class Scalar {\n\tconstructor(node) {\n\t\tthis.node = node;\n\t}\n\ttimes(other) {\n\t\treturn new Scalar({\n\t\t\tkind: \"mul\",\n\t\t\ta: this.node,\n\t\t\tb: other instanceof Scalar ? other.node : other\n\t\t});\n\t}\n};\nfunction paintFrame(params) {\n\treturn {\n\t\tuv: params.uvContext ?? params.ctx.uv,\n\t\tviewport: params.effectiveViewportSize ?? params.ctx.viewportSize\n\t};\n}\nfunction uniformOf(ref, params) {\n\tconst accessor$1 = params.uniforms[ref.name];\n\tif (!accessor$1) throw new Error(`std: effect binds unknown prop '${ref.name}'`);\n\treturn accessor$1;\n}\nfunction resolveScalar(input, params) {\n\tconst node = input instanceof Scalar ? input.node : input;\n\tswitch (node.kind) {\n\t\tcase \"prop\": return uniformOf(node, params);\n\t\tcase \"mul\": return resolveScalar(node.a, params).mul(resolveScalar(node.b, params));\n\t\tcase \"radialMask\":\n\t\t\tif (!params.ctx) throw new Error(\"std: radialMask needs a fragment host (warp slots have no ctx)\");\n\t\t\treturn call(radialFalloffMask, \"radialFalloffMask\", [\n\t\t\t\tparams.ctx.uv,\n\t\t\t\tparams.ctx.aspect,\n\t\t\t\tuniformOf(node.center, params),\n\t\t\t\tuniformOf(node.radius, params),\n\t\t\t\tuniformOf(node.falloff, params)\n\t\t\t]);\n\t\tcase \"signal\": return node.build(params);\n\t}\n}\nfunction resolveArg(spec, params) {\n\treturn resolveArgIn(spec, params);\n}\nfunction resolveArgIn(spec, params) {\n\tif (typeof spec === \"number\") return floatE(spec);\n\tif (spec instanceof Scalar) return resolveScalar(spec, params);\n\tswitch (spec.kind) {\n\t\tcase \"prop\": return uniformOf(spec, params);\n\t\tcase \"ctx\":\n\t\t\tif (!params.ctx) throw new Error(`std: ctx.${spec.name} needs a fragment host (warp slots have no ctx)`);\n\t\t\treturn params.ctx[spec.name];\n\t\tdefault: return resolveScalar(spec, params);\n\t}\n}\nfunction pointwiseOp(fn$1, hint, args, extra) {\n\treturn {\n\t\tkind: \"pointwise\",\n\t\tbody: {\n\t\t\tfn: fn$1,\n\t\t\thint\n\t\t},\n\t\targs: (params) =\u003e args.map((spec) =\u003e resolveArg(spec, params)),\n\t\tcompose: extra?.compose,\n\t\tsetup: extra?.setup\n\t};\n}\nfunction lowerProps(props) {\n\tconst lowered = {};\n\tfor (const key of Object.keys(props)) {\n\t\tconst { recompile,...rest } = props[key];\n\t\tconst config = { ...rest };\n\t\tif (recompile?.kind === \"crosses\") {\n\t\t\tconst boundary = recompile.value;\n\t\t\tconfig.compileTimeWhen = (prev, next) =\u003e prev === boundary !== (next === boundary);\n\t\t} else if (recompile?.kind === \"custom\") config.compileTimeWhen = recompile.predicate;\n\t\tlowered[key] = config;\n\t}\n\treturn lowered;\n}\nfunction lowerIdentityRule(rule, defaults) {\n\tswitch (rule.kind) {\n\t\tcase \"isZero\":\n\t\tcase \"isValue\": {\n\t\t\tconst target = rule.kind === \"isZero\" ? 0 : rule.value;\n\t\t\tconst declared = defaults[rule.prop];\n\t\t\treturn {\n\t\t\t\tprops: [rule.prop],\n\t\t\t\twhen: (values) =\u003e (values[rule.prop] ?? declared) === target\n\t\t\t};\n\t\t}\n\t\tcase \"allOf\": {\n\t\t\tconst lowered = rule.rules.map((r) =\u003e lowerIdentityRule(r, defaults));\n\t\t\treturn {\n\t\t\t\tprops: [...new Set(lowered.flatMap((l) =\u003e l.props))],\n\t\t\t\twhen: (values) =\u003e lowered.every((l) =\u003e l.when(values))\n\t\t\t};\n\t\t}\n\t\tcase \"custom\": return {\n\t\t\tprops: rule.props,\n\t\t\twhen: rule.when\n\t\t};\n\t}\n}\nfunction lowerIdentity(rule, props) {\n\tif (!rule) return void 0;\n\tconst defaults = {};\n\tfor (const [key, config] of Object.entries(props)) defaults[key] = config.default;\n\treturn lowerIdentityRule(rule, defaults);\n}\nfunction lowerPointwiseFilter(definition) {\n\tconst { role: _role, species: _species, effect, identityWhen, missingChildMessage, props,...meta } = definition;\n\tconst shared = {\n\t\t...meta,\n\t\tprops: lowerProps(props),\n\t\tidentity: lowerIdentity(identityWhen, props),\n\t\tmissingChildMessage\n\t};\n\tif (effect.kind === \"tintToward\") {\n\t\tconst { color: color$1, amount } = effect;\n\t\treturn definePointwiseFilter({\n\t\t\t...shared,\n\t\t\tbody: {\n\t\t\t\tfn: mixToward,\n\t\t\t\thint: \"mixToward\"\n\t\t\t},\n\t\t\targs: (params) =\u003e [uniformOf(color$1, params), resolveScalar(amount, params)]\n\t\t});\n\t}\n\tconst { kind: _kind,...effectConfig } = effect;\n\treturn definePointwiseFilter({\n\t\t...shared,\n\t\t...effectConfig\n\t});\n}\nfunction lowerGatherFilter(definition) {\n\tconst { role: _role, species: _species, effect, identityWhen, missingChildMessage, props,...meta } = definition;\n\tif (effect.kind === \"displaceBy\") return lowerDisplaceBy(definition);\n\tconst { kind: _kind,...effectConfig } = effect;\n\treturn defineRttFilter({\n\t\t...meta,\n\t\tprops: lowerProps(props),\n\t\tidentity: lowerIdentity(identityWhen, props),\n\t\tmissingChildMessage,\n\t\t...effectConfig\n\t});\n}\nfunction lowerDisplaceBy(definition) {\n\tconst { role: _role, species: _species, effect: effectUnion, identityWhen, missingChildMessage: _mcm, props,...meta } = definition;\n\tconst effect = effectUnion;\n\tconst identity = lowerIdentity(identityWhen, props);\n\tconst sim = effect.field.sim.config;\n\tconst outputKey = effect.field.output;\n\tconst wave = sim.step.find((s) =\u003e s.kind === \"op.wave\");\n\tconst splat = sim.step.find((s) =\u003e s.kind === \"op.splat\");\n\tif (!wave || !splat || sim.step.length !== 2) throw new Error(`std: simulate.grid currently implements exactly [op.wave, op.splat] (got: ${sim.step.map((s) =\u003e s.kind).join(\", \")})`);\n\tif (sim.history !== 2) throw new Error(`std: op.wave reads t−1 and t−2 — declare history: 2 (got ${sim.history})`);\n\tif (sim.derive[outputKey]?.kind !== \"op.gradient\") throw new Error(`std: displaceBy consumes a vector field — derive '${outputKey}' must be op.gradient()`);\n\tif (splat.at.teleportGuard !== \"on\") throw new Error(`std: op.splat currently implements teleportGuard: 'on' only`);\n\tif (sim.rest \u0026\u0026 sim.rest.settlesWhen !== \"derived-from-damping\") throw new Error(`std: simulate.grid rest supports settlesWhen: 'derived-from-damping' only`);\n\treturn {\n\t\t...meta,\n\t\tprops: lowerProps(props),\n\t\trequiresRTT: true,\n\t\trequiresChild: true,\n\t\tusesPointer: splat.at.kind === \"pointer\",\n\t\tcompute: (params) =\u003e {\n\t\t\tif (!params.childNode) return null;\n\t\t\tconst runtime = createWaveFieldSim(params, {\n\t\t\t\tresolution: sim.resolution,\n\t\t\t\tdampingProp: wave.damping.name,\n\t\t\t\tradiusProp: splat.radius.name,\n\t\t\t\tradiusScale: .05,\n\t\t\t\tspeedMax: splat.amount.max\n\t\t\t});\n\t\t\tif (!runtime) return null;\n\t\t\treturn {\n\t\t\t\toutputs: { [outputKey]: runtime.displacement },\n\t\t\t\tgetComputeNodes: runtime.getComputeNodes\n\t\t\t};\n\t\t},\n\t\tfragment: (params) =\u003e {\n\t\t\tconst { childNode, ctx, computeOutputs, propValues, convertToTexture } = params;\n\t\t\tif (!childNode) return ZERO;\n\t\t\tconst childTex = convertToTexture(childNode);\n\t\t\tif (isFilterIdentity(identity, params)) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTex.sample(ctx.uv)]);\n\t\t\tconst edgeMode = propValues[effect.edges.name] ?? 0;\n\t\t\tconst dispTex = computeOutputs?.[outputKey];\n\t\t\tconst disp = dispTex ? dispTex.sample(ctx.uv, \"linearClamp\").member(\"xy\") : expr(\"vec2f(0.0, 0.0)\");\n\t\t\tconst uvs = call(chromaticDisplaceUVs, \"chromaticDisplaceUVs\", [\n\t\t\t\tctx.uv,\n\t\t\t\tdisp,\n\t\t\t\tuniformOf(effect.strength, params),\n\t\t\t\tuniformOf(effect.chromatic, params)\n\t\t\t]);\n\t\t\tconst sampleChild = (uv) =\u003e childTex.sample(uv);\n\t\t\tconst rSample = applyEdgeHandlingExpr(uvs.member(\"rUV\"), sampleChild, edgeMode);\n\t\t\tconst gSample = applyEdgeHandlingExpr(uvs.member(\"gUV\"), sampleChild, edgeMode);\n\t\t\tconst bSample = applyEdgeHandlingExpr(uvs.member(\"bUV\"), sampleChild, edgeMode);\n\t\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [vec4(rSample.member(\"r\"), gSample.member(\"g\"), bSample.member(\"b\"), gSample.member(\"a\"))]);\n\t\t}\n\t};\n}\nfunction lowerWarp(definition) {\n\tconst { role: _role, map, edges, resample, uvRemapIdentityWhen, missingChildMessage, props,...meta } = definition;\n\treturn {\n\t\t...meta,\n\t\tprops: lowerProps(props),\n\t\trequiresRTT: true,\n\t\trequiresChild: true,\n\t\t...uvRemapShader(map, {\n\t\t\tedges,\n\t\t\tresample,\n\t\t\tuvRemapIdentityWhen,\n\t\t\trequireChildMessage: missingChildMessage\n\t\t})\n\t};\n}\nfunction lowerShape(definition) {\n\tconst { role: _role, name, description, category, shape } = definition;\n\treturn defineSdfShapeShader({\n\t\tname,\n\t\tdescription,\n\t\tcategory,\n\t\t...shape\n\t});\n}\nfunction lowerGenerator(definition) {\n\tconst { role: _role, paint, props,...meta } = definition;\n\treturn {\n\t\t...meta,\n\t\tprops: lowerProps(props),\n\t\tfragment: paint\n\t};\n}\nfunction lowerCustom(definition) {\n\tconst { role: _role, species: _species, gpu, props,...meta } = definition;\n\treturn {\n\t\t...meta,\n\t\tprops: lowerProps(props),\n\t\tfragment: gpu.fragment,\n\t\t...gpu.uvRemap ? { uvRemap: gpu.uvRemap } : {}\n\t};\n}\nfunction defineStd(definition) {\n\tif (definition.role === \"shape\") return lowerShape(definition);\n\tif (definition.role === \"warp\") return lowerWarp(definition);\n\tif (definition.role === \"generator\" \u0026\u0026 !(\"species\" in definition)) return lowerGenerator(definition);\n\tif (\"species\" in definition) {\n\t\tif (definition.species === \"pointwise\") return lowerPointwiseFilter(definition);\n\t\tif (definition.species === \"gather\") return lowerGatherFilter(definition);\n\t\tif (definition.species === \"custom\") return lowerCustom(definition);\n\t}\n\tconst { role } = definition;\n\tthrow new Error(`std: unsupported definition shape for role '${role}'`);\n}\nexport { edgeTransparentMask as $, vertexFn as $n, Void as $r, timeAxisDomain as $t, heartSdf as A, value12 as An, vec2u$1 as Ar, colorMixing_exports as At, vesicaSdf as B, TWO_PI$1 as Bn, struct as Br, mixPreconvertedVariants as Bt, createSvgSdfSampler as C, mxNoiseFloat3 as Cn, sin as Cr, linearToSrgb as Ct, driveAnalyticSubProps as D, perlin13 as Dn, tan as Dr, blend_exports as Dt, crossSdf as E, perlin12d as En, step as Er, blendModes as Et, roundedRectSdf as F, GOLDEN as Fn, size as Fr, lchToLab as Ft, pathStampRibbon as G, typegpu_default as Gn, dualImpl as Gr, aspectScaledDomain as Gt, createIdleGate as H, FieldHandle as Hn, mul as Hr, oklchToOklab as Ht, sdf_exports as I, HALF_PI as In, atomic as Ir, mixColorsLinear as It, createPingPongPair as J, textureSampleLevel as Jn, i32 as Jr, domainWarp2 as Jt, createComputeDispatcher as K, textureDimensions as Kn, bool as Kr, chainedWarpStep as Kt, starSdf as L, PI$1 as Ln, texture2d as Lr, mixColorsVariants as Lt, parseShapeConfigValue as M, wavelet12 as Mn, vec4f$1 as Mr, hslToRgb as Mt, polygonSdf as N, wool12 as Nn, builtin as Nr, hsvToRgb as Nt, ellipseSdf as O, scratches12 as On, vec2f$1 as Or, unpremultiplyAlpha as Ot, ringSdf as P, DEG_TO_RAD$1 as Pn, align as Pr, labToRgb as Pt, edgeMirrorUV as Q, fwidth as Qn, warn as Qr, scatterFieldAnchored as Qt, teardropSdf as R, SQRT3 as Rn, textureStorage2d as Rr, mixPreconvertedInSpace as Rt, createSdfDataTexture as S, mxNoiseFloat2 as Sn, sign as Sr, screenUVToBoxLocal as St, crescentSdf as T, paper12 as Tn, sqrt as Tr, srgbToLinear as Tt, createPointerVelocityTracker as U, createUniformStore as Un, sub as Ur, rgbToHsl as Ut, toHalfFloat as V, ArrayFieldHandle as Vn, mod as Vr, oklabToRgb as Vt, decayFadeSeconds as W, updateFieldValue as Wn, vec2f as Wr, sRGBToP3 as Wt, applyEdgeHandlingExpr as X, dpdx as Xn, stitch as Xr, pixelGridDomain as Xt, createStateBuffer as Y, textureStore as Yn, u32 as Yr, fbmGated as Yt, edgeClampUV as Z, dpdy as Zn, safeStringify as Zr, scatterField as Zt, analyticSubPropValues as _, hash11 as _n, mix as _r, DEFAULT_BOUNDING_BOX as _t, resolveScalar as a, canvasCentredDelta as an, clamp as ar, ZERO as at, circleSdf as b, hash22 as bn, radians as br, boundingBoxToUVParams as bt, p as c, flooredMod2 as cn, dot as cr, call as ct, glassShellProps as d, unflipPosition as dn, extractBits as dr, expr as dt, isAtomic as ei, aspectCenteredDelta as en, select as er, edgeWrapUV as et, objectFitProp as f, blue12 as fn, floor as fr, floatE as ft, SVG_SDF_SIZE as g, gabor12 as gn, min as gr, formatFloat as gt, APERTURE_TO_HALFANGLE as h, erosion12 as hn, max as hr, Expr as ht, resolveArg as i, aspectOf as in, ceil as ir, SHARED_SAMPLER_LAYOUT as it, parallelogramSdf as j, value13 as jn, vec3f$1 as jr, convertP3ToMixSpaceCPU as jt, flowerSdf as k, stone12 as kn, vec2i$1 as kr, MixStep as kt, centerPropConfig as l, rotate2 as ln, exp as lr, collectStructuralHashInputs as lt, selectMap as m, curl22z as mn, length as mr, vec4 as mt, paintFrame as n, aspectCorrectedUV as nn, asin as nr, bSplineTapSetup as nt, uniformOf as o, directionalProjection as on, cos as or, arrayExpr as ot, lerpToIdentity as p, curl22 as pn, fract as pr, mixExpr as pt, createGuardedCompute as q, textureLoad as qn, f32 as qr, domainWarp1 as qt, pointwiseOp as r, aspectCorrectedUVFlipY as rn, atan2 as rr, sampleCatmullRomExpr as rt, Scalar as s, flooredMod1 as sn, cross as sr, asLocal as st, defineStd as t, __export$1 as ti, aspectCentrePosition as tn, abs as tr, sampleRemappedExpr as tt, edgesPropConfig as u, rotateAboutCanvasCentre as un, exp2 as ur, composeNodeTree as ut, arcSdf as v, hash12 as vn, normalize as vr, isIdentityBoundingBox as vt, createSvgSdfSamplerWithGradients as w, mxWorleyNoiseFloat2Pub as wn, smoothstep as wr, neutral as wt, createAnalyticSdfSampler as x, hash33 as xn, round as xr, needsTransformation as xt, buildAnalyticSdfFn as y, hash13 as yn, pow as yr, resolveBoundingBox as yt, trapezoidSdf as z, TAU as zn, arrayOf as zr, mixPreconvertedLinear as zt };\n","function isMobileGpuViewport() {\n\tif (typeof window === \"undefined\") return false;\n\tconst coarse = !!(window.matchMedia \u0026\u0026 window.matchMedia(\"(pointer: coarse)\").matches);\n\tconst cssLong = Math.max(window.innerWidth || 0, window.innerHeight || 0);\n\treturn coarse \u0026\u0026 cssLong \u003e 0 \u0026\u0026 cssLong \u003c= 1366;\n}\nfunction maxPixelRatioForDevice() {\n\treturn isMobileGpuViewport() ? 1.5 : 2;\n}\nexport { maxPixelRatioForDevice as n, isMobileGpuViewport as t };\n","import { Ar as vec2u, Bn as TWO_PI$1, Br as struct, Bt as mixPreconvertedVariants, Cr as sin, Ft as lchToLab, Gn as typegpu_default, Ht as oklchToOklab, J as createPingPongPair, Jn as textureSampleLevel, Jr as i32, Kn as textureDimensions, Lr as texture2d, Mr as vec4f, Mt as hslToRgb, Nt as hsvToRgb, Or as vec2f, Ot as unpremultiplyAlpha, Pt as labToRgb, Q as edgeMirrorUV, Rr as textureStorage2d, Rt as mixPreconvertedInSpace, Sn as mxNoiseFloat2, Tr as sqrt, Ur as sub, Ut as rgbToHsl, Vt as oklabToRgb, Wt as sRGBToP3, Y as createStateBuffer, Yn as textureStore, Yr as u32, _n as hash11, _r as mix, ar as clamp, cr as dot, ct as call, dt as expr, er as select, et as edgeWrapUV, fr as floor, g as SVG_SDF_SIZE$1, gr as min, hr as max, ir as ceil, jr as vec3f, jt as convertP3ToMixSpaceCPU, kr as vec2i, kt as MixStep, lr as exp, mn as curl22z, mr as length, mt as vec4, or as cos, pr as fract, q as createGuardedCompute, qn as textureLoad, qr as f32, st as asLocal, tr as abs, ur as exp2, vn as hash12, vr as normalize, wr as smoothstep, xr as round, y as buildAnalyticSdfFn, yn as hash13, yr as pow, zn as TAU$1, zr as arrayOf, zt as mixPreconvertedLinear } from \"./lower-Bd2jez_2.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nimport { a as transformColor, c as transformPosition, n as setColorSpaceMode, o as transformColorSpace, u as Color } from \"./transformations-CzFmhZww.js\";\nconst legacySinHash11 = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(__tsover_sub(fract(__tsover_mul(sin(__tsover_mul(x, 12.9898)), 43758.5453)), .5), 2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"12.9898\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"43758.5453\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[5, \"2\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst MAX_COLOR_STOPS = 8;\nfunction sortStops$1(stops) {\n\treturn stops.map((stop, index) =\u003e ({\n\t\tstop,\n\t\tindex\n\t})).sort((a, b) =\u003e a.stop.position - b.stop.position || a.index - b.index).map(({ stop }) =\u003e stop);\n}\nfunction packStops(stops, toRGBA) {\n\tconst colors = new Array(32).fill(0);\n\tconst positions = new Array(8).fill(0);\n\tconst sorted = Array.isArray(stops) \u0026\u0026 stops.length \u003e 0 ? sortStops$1(stops) : [];\n\tconst n = Math.min(sorted.length, 8);\n\tfor (let i = 0; i \u003c n; i++) {\n\t\tconst c = toRGBA(sorted[i].color);\n\t\tcolors[i * 4] = c[0];\n\t\tcolors[i * 4 + 1] = c[1];\n\t\tcolors[i * 4 + 2] = c[2];\n\t\tcolors[i * 4 + 3] = c[3];\n\t\tpositions[i] = sorted[i].position;\n\t}\n\treturn {\n\t\tcolors,\n\t\tpositions,\n\t\tstopCount: n\n\t};\n}\nfunction packConvertedStops(colors, stopCount, colorSpaceMode) {\n\tconst out = new Array(24).fill(0);\n\tfor (let i = 0; i \u003c stopCount; i++) {\n\t\tconst c = convertP3ToMixSpaceCPU(colors[i * 4], colors[i * 4 + 1], colors[i * 4 + 2], colorSpaceMode);\n\t\tout[i * 3] = c[0];\n\t\tout[i * 3 + 1] = c[1];\n\t\tout[i * 3 + 2] = c[2];\n\t}\n\treturn out;\n}\ntypegpu_default.fn([vec3f, f32], MixStep)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((conv, alpha) =\u003e {\n\t\"use gpu\";\n\treturn MixStep({\n\t\tconv,\n\t\talpha\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"conv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"alpha\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"MixStep\",\n\t\t\t[[104, {\n\t\t\t\t\"conv\": \"conv\",\n\t\t\t\t\"alpha\": \"alpha\"\n\t\t\t}]]\n\t\t]]]]\n\t},\n\texternals: { \"MixStep\": () =\u003e MixStep }\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([\n\tMixStep,\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], MixStep)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((running, convI, alphaI, tClamped, posA, posB) =\u003e {\n\t\"use gpu\";\n\tconst seg = clamp(__tsover_div(__tsover_sub(tClamped, posA), max(__tsover_sub(posB, posA), 1e-6)), 0, 1);\n\treturn mixPreconvertedInSpace(running.conv, running.alpha, convI, alphaI, seg);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"running\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"convI\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaI\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tClamped\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"posA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"posB\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"seg\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tClamped\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"posA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"posB\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"posA\"\n\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"mixPreconvertedInSpace\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"running\",\n\t\t\t\t\t\"conv\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"running\",\n\t\t\t\t\t\"alpha\"\n\t\t\t\t],\n\t\t\t\t\"convI\",\n\t\t\t\t\"alphaI\",\n\t\t\t\t\"seg\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"mixPreconvertedInSpace\": () =\u003e mixPreconvertedInSpace\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([MixStep], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s) =\u003e {\n\t\"use gpu\";\n\treturn s.conv;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t7,\n\t\t\t\"s\",\n\t\t\t\"conv\"\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([MixStep], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s) =\u003e {\n\t\"use gpu\";\n\treturn s.alpha;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t7,\n\t\t\t\"s\",\n\t\t\t\"alpha\"\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([vec3f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, a) =\u003e {\n\t\"use gpu\";\n\treturn vec4f(rgb, a);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"a\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\"rgb\", \"a\"]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec4f\": () =\u003e vec4f }\n}) \u0026\u0026 $.f)({}));\nconst gradientStopsInSpace = typegpu_default.fn([\n\tf32,\n\tarrayOf(vec4f, 8),\n\tarrayOf(vec4f, 8 / 4),\n\tarrayOf(vec3f, 8),\n\tf32\n], MixStep)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, colors, positions, converted, stopCount) =\u003e {\n\t\"use gpu\";\n\tconst clampedT = clamp(t, 0, 1);\n\tconst n = i32(stopCount);\n\tconst c0 = converted[0];\n\tlet conv = vec3f(c0.x, c0.y, c0.z);\n\tlet alpha = colors[0].w;\n\tfor (let i = 1; i \u003c n; i++) {\n\t\tconst va = positions[__tsover_sub(i, 1) \u003e\u003e 2];\n\t\tconst vb = positions[i \u003e\u003e 2];\n\t\tconst posA = va[__tsover_sub(i, 1) \u0026 3];\n\t\tconst posB = vb[i \u0026 3];\n\t\tconst seg = clamp(__tsover_div(__tsover_sub(clampedT, posA), max(__tsover_sub(posB, posA), 1e-6)), 0, 1);\n\t\tconst step = mixPreconvertedInSpace(conv, alpha, converted[i], colors[i].w, seg);\n\t\tconv = vec3f(step.conv.x, step.conv.y, step.conv.z);\n\t\talpha = step.alpha;\n\t}\n\treturn MixStep({\n\t\tconv,\n\t\talpha\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colors\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"positions\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"converted\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"stopCount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clampedT\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[\"stopCount\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c0\",\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"converted\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"conv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c0\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c0\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c0\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t\"colors\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"n\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"va\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\"positions\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\u003e\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"vb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\"positions\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"\u003e\u003e\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"posA\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\"va\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"posB\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\"vb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"seg\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"clampedT\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"posA\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"posB\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"posA\"\n\t\t\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"step\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mixPreconvertedInSpace\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"conv\",\n\t\t\t\t\t\t\t\t\"alpha\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\"converted\",\n\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\"colors\",\n\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"seg\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"conv\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"step\",\n\t\t\t\t\t\t\t\t\t\t\"conv\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"step\",\n\t\t\t\t\t\t\t\t\t\t\"conv\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"step\",\n\t\t\t\t\t\t\t\t\t\t\"conv\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"alpha\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"step\",\n\t\t\t\t\t\t\t\"alpha\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"MixStep\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"conv\": \"conv\",\n\t\t\t\t\t\"alpha\": \"alpha\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"mixPreconvertedInSpace\": () =\u003e mixPreconvertedInSpace,\n\t\t\"MixStep\": () =\u003e MixStep\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction backConvertToP3(conv, colorSpaceMode) {\n\tswitch (colorSpaceMode) {\n\t\tcase 1: return call(sRGBToP3, \"sRGBToP3\", [call(oklabToRgb, \"oklabToRgb\", [call(oklchToOklab, \"oklchToOklab\", [conv])])]);\n\t\tcase 2: return call(sRGBToP3, \"sRGBToP3\", [call(oklabToRgb, \"oklabToRgb\", [conv])]);\n\t\tcase 3: return call(sRGBToP3, \"sRGBToP3\", [call(hslToRgb, \"hslToRgb\", [conv])]);\n\t\tcase 4: return call(sRGBToP3, \"sRGBToP3\", [call(hsvToRgb, \"hsvToRgb\", [conv])]);\n\t\tcase 5: return call(sRGBToP3, \"sRGBToP3\", [call(labToRgb, \"labToRgb\", [call(lchToLab, \"lchToLab\", [conv])])]);\n\t\tdefault: return conv;\n\t}\n}\nfunction mixColorStopsRuntime(t, uniforms, colorSpaceMode) {\n\tconst acc = asLocal(call(gradientStopsInSpace, \"gradientStopsInSpace\", [\n\t\tt,\n\t\tuniforms.colorsArray,\n\t\tuniforms.positionsArray,\n\t\tuniforms.convertedColorsArray,\n\t\tuniforms.stopCount\n\t]), \"stopMix\");\n\treturn vec4(backConvertToP3(acc.member(\"conv\"), colorSpaceMode), acc.member(\"alpha\"));\n}\nfunction createLateBoundChildInput(params, buildGroups) {\n\tconst { childNode, convertToTexture } = params;\n\tif (!childNode || !convertToTexture) return null;\n\tconst childTexture = convertToTexture(childNode);\n\tlet groups = null;\n\treturn {\n\t\tchildTexture,\n\t\tbindInputs: (resolve) =\u003e {\n\t\t\tconst src = resolve(childTexture.key);\n\t\t\tif (!src) return;\n\t\t\tgroups = buildGroups(src.texture);\n\t\t},\n\t\tbound: () =\u003e groups,\n\t\tready: () =\u003e groups !== null\n\t};\n}\nvar asSize = (s) =\u003e typeof s === \"number\" ? [s, s] : [s[0], s[1]];\nfunction createFeedbackTrailSim(params, opts) {\n\tconst { gpu, registerComputeTexture, onCleanup, getCpuValue } = params;\n\tconst root = gpu?.root;\n\tif (!root) return null;\n\tconst { format } = opts;\n\tconst make = (size) =\u003e {\n\t\tconst tex = root.createTexture({\n\t\t\tsize: asSize(size),\n\t\t\tformat\n\t\t}).$usage(\"storage\", \"sampled\");\n\t\treturn {\n\t\t\ttexture: tex,\n\t\t\tdestroy: () =\u003e tex.destroy()\n\t\t};\n\t};\n\tconst allocated = [];\n\tconst track = (t) =\u003e {\n\t\tallocated.push(t);\n\t\treturn t;\n\t};\n\tconst stateA = track(make(opts.size));\n\tconst stateB = track(make(opts.size));\n\tconst displayTex = track(make(opts.size));\n\tconst extraNames = Object.keys(opts.extraSlots ?? {});\n\tconst extraA = {};\n\tconst extraB = {};\n\tfor (const name of extraNames) {\n\t\textraA[name] = track(make(opts.extraSlots[name])).texture;\n\t\textraB[name] = track(make(opts.extraSlots[name])).texture;\n\t}\n\tconst textures = {};\n\tfor (const [name, size] of Object.entries(opts.textures ?? {})) textures[name] = track(make(size)).texture;\n\tonCleanup(() =\u003e {\n\t\tfor (const t of allocated) t.destroy();\n\t});\n\tconst display = registerComputeTexture(displayTex.texture);\n\tconst pair = createPingPongPair({\n\t\tstate: stateA.texture,\n\t\textra: extraA\n\t}, {\n\t\tstate: stateB.texture,\n\t\textra: extraB\n\t});\n\tlet currentGroups = null;\n\tlet shared = void 0;\n\tconst child = createLateBoundChildInput(params, (childTexture) =\u003e {\n\t\tconst ctx = {\n\t\t\tchildTexture,\n\t\t\tdisplay: displayTex.texture,\n\t\t\ttextures\n\t\t};\n\t\tshared = opts.staticGroups ? opts.staticGroups(ctx) : void 0;\n\t\tcurrentGroups = pair.groups((read, write) =\u003e opts.bindGroups(ctx, read, write));\n\t\treturn true;\n\t});\n\tif (!child) return null;\n\tconst maxDt = opts.maxDeltaTime ?? .05;\n\tlet localTime = 0;\n\treturn {\n\t\tchildTexture: child.childTexture,\n\t\tdisplay,\n\t\tpair,\n\t\tbindInputs: child.bindInputs,\n\t\ttick: (frameParams, frame) =\u003e {\n\t\t\tif (!child.ready() || !currentGroups) return null;\n\t\t\tconst rawDeltaTime = frameParams?.deltaTime ?? .016;\n\t\t\tconst rawSpeed = opts.speedProp ? getCpuValue(opts.speedProp) : void 0;\n\t\t\tconst speed = typeof rawSpeed === \"number\" \u0026\u0026 Number.isFinite(rawSpeed) ? rawSpeed : 1;\n\t\t\tconst dt = Math.min(rawDeltaTime, maxDt) * speed;\n\t\t\tlocalTime += dt;\n\t\t\tconst steps = frame({\n\t\t\t\tgroups: currentGroups(),\n\t\t\t\tshared,\n\t\t\t\tdt,\n\t\t\t\tlocalTime,\n\t\t\t\trawDeltaTime\n\t\t\t});\n\t\t\tif (steps) pair.swap();\n\t\t\treturn steps;\n\t\t}\n\t};\n}\nconst MAX_COLOR_STOPS$1 = 8;\nconst colorStopsTransform = (value) =\u003e value;\nfunction sortStops(stops) {\n\treturn stops.map((stop, index) =\u003e ({\n\t\tstop,\n\t\tindex\n\t})).sort((a, b) =\u003e a.stop.position - b.stop.position || a.index - b.index).map(({ stop }) =\u003e stop);\n}\nfunction resolveStops(props) {\n\tif (Array.isArray(props.stops) \u0026\u0026 props.stops.length \u003e 0) return sortStops(props.stops);\n\treturn [{\n\t\tcolor: props.colorA ?? \"#1aff00\",\n\t\tposition: 0\n\t}, {\n\t\tcolor: props.colorB ?? \"#0000ff\",\n\t\tposition: 1\n\t}];\n}\nfunction colorStopsPropConfig() {\n\treturn {\n\t\tdefault: null,\n\t\ttransform: colorStopsTransform,\n\t\tcompileTimeWhen: (previousValue, newValue) =\u003e {\n\t\t\tconst effective = (v) =\u003e {\n\t\t\t\tconst n = Array.isArray(v) ? v.length : 0;\n\t\t\t\treturn n \u003e 1 ? n : 0;\n\t\t\t};\n\t\t\treturn effective(previousValue) !== effective(newValue);\n\t\t},\n\t\tdescription: \"Multi-stop gradient colors (overrides Color A / Color B when set)\",\n\t\tui: {\n\t\t\ttype: \"gradient-stops\",\n\t\t\tlabel: \"Colors\",\n\t\t\tgroup: \"Colors\"\n\t\t}\n\t};\n}\nconst listPropTransform = (value) =\u003e value;\nfunction listPropConfig(spec, cfg) {\n\tconst ui = {\n\t\ttype: \"list\",\n\t\tlabel: cfg.label,\n\t\tgroup: cfg.group,\n\t\titem: spec.item,\n\t\tmaxItems: spec.maxItems,\n\t\tminItems: spec.minItems ?? 0,\n\t\titemLabel: spec.itemLabel\n\t};\n\treturn {\n\t\tdefault: cfg.default,\n\t\ttransform: listPropTransform,\n\t\tdescription: cfg.description,\n\t\tui\n\t};\n}\nfunction listSpecOf(config) {\n\tconst ui = config?.ui;\n\tif (!ui || ui.type !== \"list\" || !ui.item || typeof ui.maxItems !== \"number\") return null;\n\treturn {\n\t\titem: ui.item,\n\t\tmaxItems: ui.maxItems,\n\t\tminItems: ui.minItems,\n\t\titemLabel: ui.itemLabel\n\t};\n}\nconst listFieldName = (prop, field) =\u003e `${prop}_${field}`;\nconst listCountName = (prop) =\u003e `${prop}Count`;\nfunction isPositionDriver(value) {\n\treturn !!value \u0026\u0026 typeof value === \"object\" \u0026\u0026 value.type === \"mouse-position\";\n}\nconst listDriverPath = (prop, index, field) =\u003e `${prop}.${index}.${field}`;\nfunction parseListDriverPath(key) {\n\tconst m = /^([^.]+)\\.(\\d+)\\.([^.]+)$/.exec(key);\n\treturn m ? {\n\t\tprop: m[1],\n\t\tindex: Number(m[2]),\n\t\tfield: m[3]\n\t} : null;\n}\nfunction resolveListItems(items, spec, opts) {\n\treturn (Array.isArray(items) ? items.slice(0, spec.maxItems) : []).map((raw, index) =\u003e {\n\t\tconst item = raw \u0026\u0026 typeof raw === \"object\" ? raw : {};\n\t\tconst out = {};\n\t\tfor (const [field, cfg] of Object.entries(spec.item)) {\n\t\t\tconst value = item[field] === void 0 || item[field] === null ? cfg.default : item[field];\n\t\t\tout[field] = resolveField(cfg.kind, value, index, field, opts);\n\t\t}\n\t\treturn out;\n\t});\n}\nfunction resolveField(kind, value, index, field, opts) {\n\tswitch (kind) {\n\t\tcase \"position\": {\n\t\t\tif (isPositionDriver(value)) {\n\t\t\t\tconst live = opts.drivenPosition?.(index, field, value);\n\t\t\t\tif (live) return live;\n\t\t\t\treturn {\n\t\t\t\t\tx: typeof value.x === \"number\" ? value.x : value.originX ?? .5,\n\t\t\t\t\ty: 1 - (typeof value.y === \"number\" ? value.y : value.originY ?? .5)\n\t\t\t\t};\n\t\t\t}\n\t\t\tconst p = transformPosition(value);\n\t\t\treturn {\n\t\t\t\tx: p.x,\n\t\t\t\ty: p.y\n\t\t\t};\n\t\t}\n\t\tcase \"color\": return opts.color(typeof value === \"string\" ? value : \"#ffffff\");\n\t\tcase \"boolean\": return value ? 1 : -1;\n\t\tdefault: return typeof value === \"number\" ? value : 0;\n\t}\n}\nfunction listFieldLane(value) {\n\tif (typeof value === \"number\") return [\n\t\tvalue,\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\tif (Array.isArray(value)) return value;\n\treturn [\n\t\tvalue.x,\n\t\tvalue.y,\n\t\t0,\n\t\t0\n\t];\n}\nfunction packList(items, spec) {\n\tconst fields = {};\n\tfor (const field of Object.keys(spec.item)) {\n\t\tconst lanes = new Array(spec.maxItems * 4).fill(0);\n\t\tfor (let i = 0; i \u003c Math.min(items.length, spec.maxItems); i++) {\n\t\t\tconst lane = listFieldLane(items[i][field]);\n\t\t\tlanes[i * 4] = lane[0];\n\t\t\tlanes[i * 4 + 1] = lane[1];\n\t\t\tlanes[i * 4 + 2] = lane[2];\n\t\t\tlanes[i * 4 + 3] = lane[3];\n\t\t}\n\t\tfields[field] = lanes;\n\t}\n\treturn {\n\t\tcount: items.length,\n\t\tfields\n\t};\n}\nfunction listHasDrivers(items, spec) {\n\tif (!Array.isArray(items)) return false;\n\treturn items.some((item) =\u003e item \u0026\u0026 typeof item === \"object\" \u0026\u0026 Object.entries(spec.item).some(([f, c]) =\u003e c.kind === \"position\" \u0026\u0026 isPositionDriver(item[f])));\n}\nvar gpuColorSpaceMode = \"p3-linear\";\nfunction setColorSpaceModeGpu(mode) {\n\tgpuColorSpaceMode = mode;\n\ttry {\n\t\tsetColorSpaceMode(mode);\n\t} catch {}\n}\nfunction parseColorChannelsGpu(value) {\n\ttry {\n\t\tconst parsed = new Color(value);\n\t\tconst targetSpace = gpuColorSpaceMode === \"srgb\" ? \"srgb-linear\" : \"p3-linear\";\n\t\tconst coords = parsed.to(targetSpace).coords;\n\t\tconst alpha = Number(parsed.alpha);\n\t\treturn {\n\t\t\tr: Number.isFinite(coords?.[0]) ? coords[0] : 0,\n\t\t\tg: Number.isFinite(coords?.[1]) ? coords[1] : 0,\n\t\t\tb: Number.isFinite(coords?.[2]) ? coords[2] : 0,\n\t\t\ta: Number.isFinite(alpha) ? alpha : 1\n\t\t};\n\t} catch {\n\t\treturn {\n\t\t\tr: 0,\n\t\t\tg: 0,\n\t\t\tb: 0,\n\t\t\ta: 0\n\t\t};\n\t}\n}\nfunction transformColorGpu(value) {\n\tconst { r, g, b, a } = parseColorChannelsGpu(value);\n\treturn vec4f(r, g, b, a);\n}\nfunction colorToRGBA(value) {\n\tconst c = transformColorGpu(value);\n\treturn [\n\t\tc.x,\n\t\tc.y,\n\t\tc.z,\n\t\tc.w\n\t];\n}\nfunction parsePositionAxis(val, isVertical) {\n\tif (typeof val === \"number\") return val;\n\tif (typeof val === \"object\" \u0026\u0026 val !== null) return val.value;\n\tconst str = val.toLowerCase().trim();\n\tif (isVertical) {\n\t\tif (str === \"top\") return 0;\n\t\tif (str === \"bottom\") return 1;\n\t\tif (str === \"center\") return .5;\n\t} else {\n\t\tif (str === \"left\") return 0;\n\t\tif (str === \"right\") return 1;\n\t\tif (str === \"center\") return .5;\n\t}\n\tconsole.warn(`Invalid position value: ${val}. Defaulting to center.`);\n\treturn .5;\n}\nfunction transformPositionGpu(value) {\n\tlet x = .5;\n\tlet y = .5;\n\tif (typeof value === \"string\") {\n\t\tconst parts = value.toLowerCase().trim().split(/\\s+/);\n\t\tif (parts.includes(\"left\")) x = 0;\n\t\telse if (parts.includes(\"right\")) x = 1;\n\t\telse if (parts.includes(\"center\") || parts.length === 1 \u0026\u0026 (parts[0] === \"top\" || parts[0] === \"bottom\")) x = .5;\n\t\tif (parts.includes(\"top\")) y = 0;\n\t\telse if (parts.includes(\"bottom\")) y = 1;\n\t\telse if (parts.includes(\"center\") || parts.length === 1 \u0026\u0026 (parts[0] === \"left\" || parts[0] === \"right\")) y = .5;\n\t\tif (parts.length === 1 \u0026\u0026 parts[0] === \"center\") {\n\t\t\tx = .5;\n\t\t\ty = .5;\n\t\t}\n\t} else if (typeof value === \"object\" \u0026\u0026 value !== null) {\n\t\tx = parsePositionAxis(value.x, false);\n\t\ty = parsePositionAxis(value.y, true);\n\t} else console.warn(`Invalid position value provided: ${value}. Defaulting to center.`);\n\treturn vec2f(x, 1 - y);\n}\nfunction gpuTransformFor(propTransform) {\n\tif (!propTransform) return void 0;\n\tif (propTransform === transformColor) return transformColorGpu;\n\tif (propTransform === transformPosition) return transformPositionGpu;\n\tif (propTransform === colorStopsTransform) return colorStopsTransform;\n\tif (propTransform === listPropTransform) return listPropTransform;\n\treturn propTransform;\n}\nfunction setShaderCanvasDimensions(width, height) {\n\tif (width \u003e 0);\n\tif (height \u003e 0);\n}\nfunction isDimensionalValue(v) {\n\treturn v != null \u0026\u0026 typeof v === \"object\" \u0026\u0026 typeof v.value === \"number\" \u0026\u0026 (v.unit === \"px\" || v.unit === \"uv\");\n}\nfunction buildExtraSizeProps(props) {\n\tif (!props) return void 0;\n\tlet out;\n\tfor (const [name, cfg] of Object.entries(props)) {\n\t\tconst d = cfg?.ui?.dimensional;\n\t\tif (d === \"canvas-height\" || d === \"half-canvas-height\" || d === \"canvas-width\" || d === \"count-canvas-height\") (out ??= /* @__PURE__ */ new Map()).set(name, d);\n\t}\n\treturn out;\n}\nfunction buildDimensionalPlan(decl, extraSizeProps) {\n\tconst pb = decl?.propBindings;\n\tconst positionProps = /* @__PURE__ */ new Set();\n\tconst sizeProps = /* @__PURE__ */ new Map();\n\tif (pb) for (const axis of [\n\t\t\"x\",\n\t\t\"y\",\n\t\t\"width\",\n\t\t\"height\"\n\t]) {\n\t\tconst b = pb[axis];\n\t\tif (!b) continue;\n\t\tif (b.as === \"position-x\" || b.as === \"position-y\") positionProps.add(b.prop);\n\t\telse if (b.as === \"canvas-height\" || b.as === \"half-canvas-height\") sizeProps.set(b.prop, b.as);\n\t}\n\tif (extraSizeProps) for (const [prop, conv] of extraSizeProps) sizeProps.set(prop, conv);\n\treturn positionProps.size \u003e 0 || sizeProps.size \u003e 0 ? {\n\t\tpositionProps,\n\t\tsizeProps\n\t} : null;\n}\nvar resolveOriginEdges = (origin) =\u003e ({\n\tox: origin.includes(\"left\") ? \"start\" : origin.includes(\"right\") ? \"end\" : \"center\",\n\toy: origin.includes(\"top\") ? \"start\" : origin.includes(\"bottom\") ? \"end\" : \"center\"\n});\nvar resolveOriginCenter = (anchorUV, edge, he) =\u003e edge === \"start\" ? anchorUV + he : edge === \"end\" ? anchorUV - he : anchorUV;\nfunction bindingSizePx(binding, v, width, height) {\n\tconst toPx = (val, dim) =\u003e isDimensionalValue(val) ? val.unit === \"px\" ? val.value : val.value * dim : typeof val === \"number\" ? val * dim : 0;\n\tif (binding.as === \"canvas-height\") return toPx(v, height);\n\tif (binding.as === \"half-canvas-height\") return toPx(v, 2 * height);\n\tif (binding.as === \"canvas-width\") return toPx(v, width);\n\treturn 0;\n}\nfunction boxHalfExtentsUV(decl, props, width, height) {\n\tif (decl?.computeBounds) {\n\t\tconst b = decl.computeBounds(props, width, height);\n\t\treturn {\n\t\t\thwx: width \u003e 0 ? b.widthPx / width / 2 : 0,\n\t\t\thhy: height \u003e 0 ? b.heightPx / height / 2 : 0\n\t\t};\n\t}\n\tconst pb = decl?.propBindings;\n\tlet hwx = 0, hhy = 0;\n\tif (pb?.width \u0026\u0026 width \u003e 0) hwx = bindingSizePx(pb.width, props[pb.width.prop], width, height) / (2 * width);\n\tif (pb?.height \u0026\u0026 height \u003e 0) hhy = bindingSizePx(pb.height, props[pb.height.prop], width, height) / (2 * height);\n\treturn {\n\t\thwx,\n\t\thhy\n\t};\n}\nfunction resolvePositionAxis(v, dim, edge, he) {\n\tlet anchorUV;\n\tif (isDimensionalValue(v)) if (v.unit === \"px\") {\n\t\tconst gap = dim \u003e 0 ? v.value / dim : 0;\n\t\tanchorUV = edge === \"end\" ? 1 - gap : edge === \"center\" ? .5 + gap : gap;\n\t} else anchorUV = v.value;\n\telse if (typeof v === \"number\") anchorUV = v;\n\telse return v;\n\treturn resolveOriginCenter(anchorUV, edge, he);\n}\nfunction resolveSize(v, conversion, width, height) {\n\tif (v.unit !== \"px\") return v.value;\n\tif (conversion === \"canvas-width\") return width \u003e 0 ? v.value / width : v.value;\n\tif (height \u003c= 0) return v.value;\n\tif (conversion === \"count-canvas-height\") return v.value \u003e 0 ? height / v.value : v.value;\n\treturn conversion === \"canvas-height\" ? v.value / height : v.value / (2 * height);\n}\nfunction resolveDimensionalProp(decl, propName, rawValue, origin, width, height, extraSizeProps, he) {\n\tconst plan = buildDimensionalPlan(decl, extraSizeProps);\n\tif (!plan) return rawValue;\n\tconst { ox, oy } = resolveOriginEdges(origin);\n\tif (plan.positionProps.has(propName)) {\n\t\tif (!rawValue || typeof rawValue !== \"object\") return rawValue;\n\t\treturn {\n\t\t\t...rawValue,\n\t\t\tx: resolvePositionAxis(rawValue.x, width, ox, he?.hwx ?? 0),\n\t\t\ty: resolvePositionAxis(rawValue.y, height, oy, he?.hhy ?? 0)\n\t\t};\n\t}\n\tconst conversion = plan.sizeProps.get(propName);\n\tif (conversion \u0026\u0026 isDimensionalValue(rawValue)) return resolveSize(rawValue, conversion, width, height);\n\treturn rawValue;\n}\nfunction isDimensionalProp(decl, propName, extraSizeProps) {\n\tconst plan = buildDimensionalPlan(decl, extraSizeProps);\n\tif (!plan) return false;\n\treturn plan.positionProps.has(propName) || plan.sizeProps.has(propName);\n}\nfunction createGpuUniformsMap(definition, reactiveProps, _instanceId) {\n\tconst uniformsMap = {};\n\tconst decl = definition.boundingBoxDeclaration;\n\tconst extraSizeProps = buildExtraSizeProps(definition.props);\n\tconst activeColorSpaceMode = resolveColorSpaceMode(definition.props, reactiveProps);\n\tfor (const [propName, propConfig] of Object.entries(definition.props)) {\n\t\tconst transform = propConfig.transform;\n\t\tif (transform === colorStopsTransform) {\n\t\t\texpandColorStops(uniformsMap, propName, propConfig, reactiveProps[propName], activeColorSpaceMode);\n\t\t\tcontinue;\n\t\t}\n\t\tif (transform === listPropTransform) {\n\t\t\texpandListProp(uniformsMap, propName, propConfig, reactiveProps[propName]);\n\t\t\tcontinue;\n\t\t}\n\t\tconst rawValue = reactiveProps[propName];\n\t\tlet value = rawValue;\n\t\tif (value === null || value === void 0) value = propConfig.default;\n\t\tif (value === null || value === void 0) {\n\t\t\tconsole.error(`[Shaders] Uniform \"${propName}\" is null/undefined after fallback. PropConfig:`, {\n\t\t\t\tpropName,\n\t\t\t\tinitialValue: rawValue,\n\t\t\t\tdefault: propConfig.default,\n\t\t\t\thasTransform: !!transform\n\t\t\t});\n\t\t\tvalue = 0;\n\t\t}\n\t\tconst gpuTransform = gpuTransformFor(transform);\n\t\tconst isDim = isDimensionalProp(decl, propName, extraSizeProps);\n\t\tconst cpu = !gpuTransform \u0026\u0026 !isDim \u0026\u0026 (typeof value === \"string\" || typeof value === \"object\" \u0026\u0026 value !== null \u0026\u0026 !Array.isArray(value));\n\t\tuniformsMap[propName] = {\n\t\t\tvalue,\n\t\t\ttransform: gpuTransform,\n\t\t\tcompileTime: propConfig.compileTime || false,\n\t\t\t...propConfig.compileTimeWhen ? {\n\t\t\t\tcompileTimeWhen: propConfig.compileTimeWhen,\n\t\t\t\t_lastCompiledValue: rawValue ?? propConfig.default\n\t\t\t} : {},\n\t\t\t...isDim ? { _rawDimensional: rawValue } : {},\n\t\t\t...cpu ? { cpu: true } : {}\n\t\t};\n\t}\n\treturn uniformsMap;\n}\nfunction resolveColorSpaceMode(props, reactiveProps) {\n\tfor (const [name, cfg] of Object.entries(props)) if (cfg.transform === transformColorSpace) {\n\t\tconst raw = reactiveProps[name] ?? cfg.default;\n\t\treturn typeof raw === \"string\" ? transformColorSpace(raw) : 0;\n\t}\n\treturn 0;\n}\nfunction expandColorStops(uniformsMap, propName, propConfig, rawValue, colorSpaceMode) {\n\tconst stops = rawValue ?? null;\n\tconst packed = packStops(stops, colorToRGBA);\n\tconst converted = packConvertedStops(packed.colors, packed.stopCount, colorSpaceMode);\n\tuniformsMap[propName] = {\n\t\tvalue: stops,\n\t\ttransform: colorStopsTransform,\n\t\tcpu: true,\n\t\tcompileTime: propConfig.compileTime || false,\n\t\t...propConfig.compileTimeWhen ? {\n\t\t\tcompileTimeWhen: propConfig.compileTimeWhen,\n\t\t\t_lastCompiledValue: stops ?? propConfig.default\n\t\t} : {}\n\t};\n\tuniformsMap.colorsArray = {\n\t\tvalue: packed.colors,\n\t\tschema: arrayOf(vec4f, 8)\n\t};\n\tuniformsMap.positionsArray = {\n\t\tvalue: packed.positions,\n\t\tschema: arrayOf(vec4f, 8 / 4)\n\t};\n\tuniformsMap.convertedColorsArray = {\n\t\tvalue: converted,\n\t\tschema: arrayOf(vec3f, 8)\n\t};\n\tuniformsMap.stopCount = {\n\t\tvalue: packed.stopCount,\n\t\tschema: f32\n\t};\n}\nfunction expandListProp(uniformsMap, propName, propConfig, rawValue) {\n\tconst spec = listSpecOf(propConfig);\n\tif (!spec) {\n\t\tconsole.error(`[Shaders] List prop \"${propName}\" has no item spec in its ui config`);\n\t\treturn;\n\t}\n\tconst items = resolveListItems(rawValue ?? propConfig.default, spec, { color: colorToRGBA });\n\tconst packed = packList(items, spec);\n\tuniformsMap[propName] = {\n\t\tvalue: items,\n\t\ttransform: listPropTransform,\n\t\tcpu: true,\n\t\tcompileTime: propConfig.compileTime || false,\n\t\t_rawList: rawValue ?? propConfig.default,\n\t\t_listSpec: spec\n\t};\n\tfor (const [field, lanes] of Object.entries(packed.fields)) uniformsMap[listFieldName(propName, field)] = {\n\t\tvalue: lanes,\n\t\tschema: arrayOf(vec4f, spec.maxItems)\n\t};\n\tuniformsMap[listCountName(propName)] = {\n\t\tvalue: packed.count,\n\t\tschema: f32\n\t};\n}\nfunction resolveDeviceTier(tier) {\n\treturn isMobileGpuViewport() ? tier.mobile : tier.desktop;\n}\nfunction resolveRenderRes(tier) {\n\treturn resolveDeviceTier(tier);\n}\nconst SIZE_REF_RES = 1024;\nconst FIXED_POINT_GAINS = {\n\tHARD: 637,\n\tSOFT: 255\n};\nconst R2_ALPHA = [.7548776662466927, .5698402909980532];\nconst R3_ALPHA = [\n\t.8191725133961645,\n\t.6710436067037893,\n\t.5497004779019703\n];\nfunction readAgentFrame(frameParams, fallbackAspect = 16 / 9) {\n\tconst fp = frameParams;\n\tconst h = fp?.dimensions?.height ?? 0;\n\treturn {\n\t\tdt: Math.min(Math.max(fp?.deltaTime ?? .016, .001), .033),\n\t\taspect: h \u003e 0 ? (fp?.dimensions?.width ?? 0) / h : fallbackAspect,\n\t\tpointerX: fp?.pointer?.x ?? .5,\n\t\tpointerY: fp?.pointer?.y ?? .5\n\t};\n}\nfunction makeCpuValueGetter(getCpuValue) {\n\treturn (key, fallback) =\u003e {\n\t\tconst v = getCpuValue(key);\n\t\treturn typeof v === \"number\" ? v : fallback;\n\t};\n}\nfunction clampAgentCount(raw, min$1, cap) {\n\treturn Math.min(Math.max(Math.round(raw), min$1), cap);\n}\nconst SplatWindow = struct({\n\tx0: i32,\n\tx1: i32,\n\ty0: i32,\n\ty1: i32\n}).$name(\"SplatWindow\");\nconst worldSplatWindow = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], SplatWindow)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, reach, aspect, res) =\u003e {\n\t\"use gpu\";\n\tconst asp = max(aspect, 1e-5);\n\tconst cxi = i32(floor(__tsover_mul(__tsover_div(pos.x, asp), res)));\n\tconst cyi = i32(floor(__tsover_mul(pos.y, res)));\n\tconst radX = i32(ceil(__tsover_div(__tsover_mul(reach, res), asp)));\n\tconst radY = i32(ceil(__tsover_mul(reach, res)));\n\tconst last = __tsover_sub(i32(res), 1);\n\treturn SplatWindow({\n\t\tx0: max(__tsover_sub(cxi, radX), 0),\n\t\tx1: min(__tsover_add(cxi, radX), last),\n\t\ty0: max(__tsover_sub(cyi, radY), 0),\n\t\ty1: min(__tsover_add(cyi, radY), last)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"reach\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"res\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"asp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"aspect\", [5, \"0.00001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cxi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"asp\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cyi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"radX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.ceil\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"asp\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"radY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.ceil\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"last\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"res\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"SplatWindow\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"x0\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cxi\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"radX\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"x1\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cxi\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"radX\"\n\t\t\t\t\t\t], \"last\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"y0\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cyi\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"radY\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"y1\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cyi\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"radY\"\n\t\t\t\t\t\t], \"last\"]\n\t\t\t\t\t]\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.ceil\": () =\u003e ceil,\n\t\t\"SplatWindow\": () =\u003e SplatWindow,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"worldSplatWindow\");\nconst texelSplatWindow = typegpu_default.fn([\n\tvec2f,\n\ti32,\n\tvec2i\n], SplatWindow)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, rad, last) =\u003e {\n\t\"use gpu\";\n\tconst cxi = i32(floor(center.x));\n\tconst cyi = i32(floor(center.y));\n\treturn SplatWindow({\n\t\tx0: max(__tsover_sub(cxi, rad), 0),\n\t\tx1: min(__tsover_add(cxi, rad), last.x),\n\t\ty0: max(__tsover_sub(cyi, rad), 0),\n\t\ty1: min(__tsover_add(cyi, rad), last.y)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rad\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"last\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cxi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cyi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"SplatWindow\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"x0\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cxi\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rad\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"x1\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cxi\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"rad\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"last\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"y0\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cyi\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rad\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"y1\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cyi\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"rad\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"last\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"SplatWindow\": () =\u003e SplatWindow,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"texelSplatWindow\");\nconst energyCoverageAlpha = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((energy, k) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(1, exp(__tsover_mul(__tsover_mul(energy, k), -1)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"energy\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"k\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.exp\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"energy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.exp\": () =\u003e exp }\n}) \u0026\u0026 $.f)({})).$name(\"energyCoverageAlpha\");\nconst integrateSemiImplicitEuler = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((vel, force, dt, dragMul, maxSpeed) =\u003e {\n\t\"use gpu\";\n\tconst v = vel.add(force.mul(dt)).mul(dragMul);\n\tconst spd = length(v);\n\treturn v.mul(__tsover_div(min(spd, maxSpeed), max(spd, 1e-5)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vel\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"force\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dt\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dragMul\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"maxSpeed\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"force\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"dt\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"dragMul\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"v\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"spd\", \"maxSpeed\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"spd\", [5, \"0.00001\"]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"integrateSemiImplicitEuler\");\nfunction isArrayStorage(entry) {\n\tconst storage = entry?.storage;\n\treturn !!storage \u0026\u0026 storage.type === \"array\";\n}\nfunction isUniform(entry) {\n\treturn !!entry \u0026\u0026 typeof entry === \"object\" \u0026\u0026 \"uniform\" in entry;\n}\nfunction createAgentSystem(params, config) {\n\tconst { gpu, registerComputeTexture, onCleanup } = params;\n\tconst root = gpu?.root;\n\tif (!root) return null;\n\tconst { layout, output, maxAgents, externalKeys = [], extraBindGroup } = config;\n\tconst outTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: output.size,\n\t\tformat: output.format\n\t}).$usage(\"storage\", \"sampled\"), \"outTex\");\n\tonCleanup(() =\u003e outTex.destroy());\n\tconst paramsU = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(config.params), \"paramsU\");\n\tconst bindings = { [output.key]: outTex };\n\tfor (const [key, entry] of Object.entries(layout.entries)) if (isArrayStorage(entry)) bindings[key] = createStateBuffer(root, entry.storage.elementType, entry.storage.elementCount);\n\telse if (isUniform(entry)) bindings[key] = paramsU.buffer;\n\tlet bindGroup = null;\n\tconst pipelines = {};\n\tconst createPipelines = () =\u003e {\n\t\tfor (const [key, spec] of Object.entries(config.pipelines)) {\n\t\t\tconst kernel = spec.kernel;\n\t\t\tconst opts = {\n\t\t\t\tsize: spec.threads === \"fixed\" ? spec.size : void 0,\n\t\t\t\tbindGroup\n\t\t\t};\n\t\t\tconst is2d = spec.threads === \"grid\" || spec.threads === \"fixed\" \u0026\u0026 (spec.size?.length ?? 1) === 2;\n\t\t\tlet pipe;\n\t\t\tif (is2d) {\n\t\t\t\tconst k2 = kernel;\n\t\t\t\tpipe = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y) =\u003e {\n\t\t\t\t\t\"use gpu\";\n\t\t\t\t\tk2(x, y);\n\t\t\t\t}), {\n\t\t\t\t\tv: 2,\n\t\t\t\t\tname: void 0,\n\t\t\t\t\tast: {\n\t\t\t\t\t\t\"params\": [{\n\t\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\t\"name\": \"x\"\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\t\"name\": \"y\"\n\t\t\t\t\t\t}],\n\t\t\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"k2\",\n\t\t\t\t\t\t\t[\"x\", \"y\"]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t},\n\t\t\t\t\texternals: { \"k2\": () =\u003e k2 }\n\t\t\t\t}) \u0026\u0026 $.f)({}), opts);\n\t\t\t} else {\n\t\t\t\tconst k1 = kernel;\n\t\t\t\tpipe = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\t\t\t\"use gpu\";\n\t\t\t\t\tk1(i);\n\t\t\t\t}), {\n\t\t\t\t\tv: 2,\n\t\t\t\t\tname: void 0,\n\t\t\t\t\tast: {\n\t\t\t\t\t\t\"params\": [{\n\t\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\t\"name\": \"i\"\n\t\t\t\t\t\t}],\n\t\t\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"k1\",\n\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t},\n\t\t\t\t\texternals: { \"k1\": () =\u003e k1 }\n\t\t\t\t}) \u0026\u0026 $.f)({}), opts);\n\t\t\t}\n\t\t\tif (spec.extra \u0026\u0026 extraBindGroup) pipe = pipe.with(extraBindGroup);\n\t\t\tpipelines[key] = pipe;\n\t\t}\n\t};\n\tif (externalKeys.length === 0) {\n\t\tbindGroup = root.createBindGroup(layout, bindings);\n\t\tcreatePipelines();\n\t}\n\tconst countCap = config.countCap ? resolveDeviceTier(config.countCap) : maxAgents;\n\tlet initialized = false;\n\tlet lastSeed = 0;\n\tconst step = (key, count, grid) =\u003e {\n\t\tconst pipe = pipelines[key];\n\t\tconst spec = config.pipelines[key];\n\t\tif (spec.threads === \"fixed\") return pipe;\n\t\tif (spec.threads === \"grid\") {\n\t\t\tconst [gw, gh] = grid ?? [1, 1];\n\t\t\treturn () =\u003e pipe.dispatchThreads(gw, gh);\n\t\t}\n\t\tconst n = spec.threads === \"max\" ? maxAgents : count;\n\t\treturn () =\u003e pipe.dispatchThreads(n);\n\t};\n\treturn {\n\t\toutputs: { [output.name]: registerComputeTexture(outTex) },\n\t\twriteParams: (values) =\u003e paramsU.write(values),\n\t\tcountCap,\n\t\tresolveCount: (raw, min$1 = 16) =\u003e clampAgentCount(raw, min$1, countCap),\n\t\tpipelines,\n\t\tbindExternal: (entries) =\u003e {\n\t\t\tfor (const key of externalKeys) {\n\t\t\t\tif (entries[key] === void 0) return;\n\t\t\t\tbindings[key] = entries[key];\n\t\t\t}\n\t\t\tbindGroup = root.createBindGroup(layout, bindings);\n\t\t\tcreatePipelines();\n\t\t},\n\t\tframe: (opts) =\u003e {\n\t\t\tif (!bindGroup) return null;\n\t\t\tconst count = opts?.count ?? countCap;\n\t\t\tconst nodes = [];\n\t\t\tif (config.initStep) {\n\t\t\t\tconst reseeded = opts?.reseed !== void 0 \u0026\u0026 opts.reseed !== lastSeed;\n\t\t\t\tif (!initialized || reseeded) {\n\t\t\t\t\tinitialized = true;\n\t\t\t\t\tif (opts?.reseed !== void 0) lastSeed = opts.reseed;\n\t\t\t\t\tnodes.push(step(config.initStep, count, opts?.grid));\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (const key of config.program) nodes.push(step(key, count, opts?.grid));\n\t\t\treturn nodes;\n\t\t}\n\t};\n}\nvar EDGE = Math.exp(-1);\nvar INV_EDGE = 1 / (1 - EDGE);\nconst gaussianBrushSq = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((distSq, radiusSq) =\u003e {\n\t\"use gpu\";\n\treturn exp(__tsover_mul(__tsover_div(distSq, radiusSq), -1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"distSq\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"radiusSq\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.exp\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"radiusSq\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.exp\": () =\u003e exp }\n}) \u0026\u0026 $.f)({}));\nconst gaussianBrushShiftedSq = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((distSq, radiusSq) =\u003e {\n\t\"use gpu\";\n\treturn clamp(__tsover_mul(__tsover_sub(exp(__tsover_mul(__tsover_div(distSq, radiusSq), -1)), EDGE), INV_EDGE), f32(0), f32(1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"distSq\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"radiusSq\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"radiusSq\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"EDGE\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"INV_EDGE\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"EDGE\": () =\u003e EDGE,\n\t\t\"INV_EDGE\": () =\u003e INV_EDGE,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cellPos, center, radiusSq) =\u003e {\n\t\"use gpu\";\n\tconst off = sub(cellPos, center);\n\treturn gaussianBrushSq(dot(off, off), radiusSq);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellPos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radiusSq\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"off\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.sub\",\n\t\t\t\t[\"cellPos\", \"center\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"gaussianBrushSq\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[\"off\", \"off\"]\n\t\t\t], \"radiusSq\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"gaussianBrushSq\": () =\u003e gaussianBrushSq,\n\t\t\"std.dot\": () =\u003e dot\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cellPos, center, radiusSq) =\u003e {\n\t\"use gpu\";\n\tconst off = sub(cellPos, center);\n\treturn gaussianBrushShiftedSq(dot(off, off), radiusSq);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellPos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radiusSq\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"off\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.sub\",\n\t\t\t\t[\"cellPos\", \"center\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"gaussianBrushShiftedSq\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[\"off\", \"off\"]\n\t\t\t], \"radiusSq\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.sub\": () =\u003e sub,\n\t\t\"gaussianBrushShiftedSq\": () =\u003e gaussianBrushShiftedSq,\n\t\t\"std.dot\": () =\u003e dot\n\t}\n}) \u0026\u0026 $.f)({}));\nvar shiftedSqCache = /* @__PURE__ */ new Map();\nvar DEFAULT_CUTOFF_SIGMAS = 1;\nfunction shiftedName(base, cutoffSigmas) {\n\treturn `${base}${String(cutoffSigmas).replace(/[^0-9A-Za-z]/g, \"_\")}`;\n}\nfunction gaussianBrushShiftedSqFn(cutoffSigmas = DEFAULT_CUTOFF_SIGMAS) {\n\tif (cutoffSigmas === DEFAULT_CUTOFF_SIGMAS) return gaussianBrushShiftedSq;\n\tconst hit = shiftedSqCache.get(cutoffSigmas);\n\tif (hit) return hit;\n\tconst edge = Math.exp(-(cutoffSigmas * cutoffSigmas));\n\tconst invEdge = 1 / (1 - edge);\n\tconst built = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((distSq, radiusSq) =\u003e {\n\t\t\"use gpu\";\n\t\treturn clamp(__tsover_mul(__tsover_sub(exp(__tsover_mul(__tsover_div(distSq, radiusSq), -1)), edge), invEdge), f32(0), f32(1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distSq\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radiusSq\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"radiusSq\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"edge\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"invEdge\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"edge\": () =\u003e edge,\n\t\t\t\"invEdge\": () =\u003e invEdge,\n\t\t\t\"d.f32\": () =\u003e f32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(shiftedName(\"gaussianBrushShiftedSq\", cutoffSigmas));\n\tshiftedSqCache.set(cutoffSigmas, built);\n\treturn built;\n}\nfunction gaussianBrushFnSq(opts) {\n\treturn opts.edgeShift ? gaussianBrushShiftedSqFn(opts.cutoffSigmas) : gaussianBrushSq;\n}\nfunction buildVelocityImpulseKernel(layout, opts) {\n\tconst { n, namePrefix } = opts;\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.sparams;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst cellX = __tsover_add(f32(cx), .5);\n\t\tconst cellY = __tsover_add(f32(cy), .5);\n\t\tconst dx = __tsover_sub(cellX, p.posX);\n\t\tconst dy = __tsover_sub(cellY, p.posY);\n\t\tconst inf = gaussianBrushSq(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy)), max(__tsover_mul(p.radius, p.radius), f32(1)));\n\t\tconst vel = layout.$.velA[idx];\n\t\tlayout.$.velA[idx] = vec4f(__tsover_add(vel.x, __tsover_mul(p.velX, inf)), __tsover_add(vel.y, __tsover_mul(p.velY, inf)), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sparams\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"posX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"posY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"distSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"inf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"gaussianBrushSq\",\n\t\t\t\t\t\t[\"distSq\", \"radSq\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"velX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"inf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"velY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"inf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"gaussianBrushSq\": () =\u003e gaussianBrushSq,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Force`);\n}\nfunction buildBrushSplatKernel(layout, opts) {\n\tconst { n, namePrefix, colorSpace } = opts;\n\tconst mixFn = mixPreconvertedVariants[colorSpace] ?? mixPreconvertedLinear;\n\tconst brushWeight = gaussianBrushFnSq(opts.brush ?? { edgeShift: false });\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.sparams;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst cellX = __tsover_add(f32(cx), .5);\n\t\tconst cellY = __tsover_add(f32(cy), .5);\n\t\tconst dx = __tsover_sub(cellX, p.posX);\n\t\tconst dy = __tsover_sub(cellY, p.posY);\n\t\tconst inf = brushWeight(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy)), max(__tsover_mul(p.radius, p.radius), f32(1)));\n\t\tconst w = clamp(__tsover_mul(inf, p.strength), f32(0), f32(1));\n\t\tconst brush = mixFn(vec3f(p.colR, p.colG, p.colB), vec3f(p.col2R, p.col2G, p.col2B), 1, 1, p.mixT);\n\t\tconst cell = layout.$.dyeA[idx];\n\t\tlayout.$.dyeA[idx] = vec4f(mix(cell.x, brush.x, w), mix(cell.y, brush.y, w), mix(cell.z, brush.z, w), 0);\n\t\tconst vel = layout.$.velA[idx];\n\t\tlayout.$.velA[idx] = vec4f(__tsover_add(vel.x, __tsover_mul(p.velX, inf)), __tsover_add(vel.y, __tsover_mul(p.velY, inf)), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sparams\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"posX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"posY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"distSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"inf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"brushWeight\",\n\t\t\t\t\t\t[\"distSq\", \"radSq\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"w\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"inf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"brush\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mixFn\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"colR\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"colG\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"colB\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"col2R\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"col2G\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"col2B\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"mixT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"brush\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"brush\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"brush\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"velX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"inf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"velY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"inf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"brushWeight\": () =\u003e brushWeight,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"mixFn\": () =\u003e mixFn,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Splat${colorSpace}`);\n}\nfunction buildEmitterSplatKernel(layoutIn, opts) {\n\tconst layout = layoutIn;\n\tconst { n, namePrefix, densityGain, velocityBlendGain } = opts;\n\tconst masked = opts.masked ?? false;\n\tconst gated = opts.gated ?? false;\n\tconst gravityGain = n * .08;\n\tif (gated \u0026\u0026 (opts.cone || opts.cursorPush || masked)) throw new Error(`buildEmitterSplatKernel: 'gated' is the cursor-puff shape — it does not combine with cone/cursorPush/masked (got cone=${opts.cone}, cursorPush=${opts.cursorPush}, masked=${masked})`);\n\tif (!gated \u0026\u0026 (!opts.cone || !opts.cursorPush)) throw new Error(`buildEmitterSplatKernel: the fixed-source shape ships as cone+cursorPush — pass both (got cone=${opts.cone}, cursorPush=${opts.cursorPush})`);\n\tif (gated) return typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst cellX = __tsover_add(f32(cx), .5);\n\t\tconst cellY = __tsover_add(f32(cy), .5);\n\t\tconst dx = __tsover_sub(cellX, p.emitX);\n\t\tconst dy = __tsover_sub(cellY, p.emitY);\n\t\tconst distSq = __tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy));\n\t\tconst radSq = max(__tsover_mul(p.emitRad, p.emitRad), f32(1));\n\t\tconst influence = __tsover_mul(gaussianBrushSq(distSq, radSq), p.emitGate);\n\t\tconst cell = layout.$.dyeA[idx];\n\t\tconst oldDens = cell.x;\n\t\tconst addDens = __tsover_mul(__tsover_mul(__tsover_mul(p.emitIntensity, influence), p.dt), densityGain);\n\t\tconst newDens = min(__tsover_add(oldDens, addDens), 1);\n\t\tconst rejuvenate = __tsover_div(addDens, max(newDens, f32(.001)));\n\t\tlayout.$.dyeA[idx] = vec4f(newDens, __tsover_mul(cell.y, __tsover_sub(1, min(rejuvenate, 1))), 0, 0);\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst br = min(__tsover_mul(__tsover_mul(influence, p.dt), velocityBlendGain), 1);\n\t\tconst gravForce = __tsover_mul(__tsover_mul(__tsover_mul(p.gravity, oldDens), p.dt), gravityGain);\n\t\tlayout.$.velA[idx] = vec4f(mix(vel.x, p.emitVelX, br), __tsover_add(mix(vel.y, p.emitVelY, br), gravForce), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"distSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"influence\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gaussianBrushSq\",\n\t\t\t\t\t\t\t[\"distSq\", \"radSq\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitGate\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"oldDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"addDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitIntensity\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"influence\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"densityGain\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"newDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"oldDens\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"addDens\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rejuvenate\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"addDens\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"newDens\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"newDens\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t[\"rejuvenate\", [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"br\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"velocityBlendGain\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gravForce\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"gravity\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"oldDens\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"gravityGain\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"emitVelX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"br\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"emitVelY\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"br\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"gravForce\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"gaussianBrushSq\": () =\u003e gaussianBrushSq,\n\t\t\t\"densityGain\": () =\u003e densityGain,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"velocityBlendGain\": () =\u003e velocityBlendGain,\n\t\t\t\"gravityGain\": () =\u003e gravityGain,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Splat`);\n\tif (masked) return typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst mask = layout.$.maskBuf[idx].x;\n\t\tconst cellX = __tsover_add(f32(cx), .5);\n\t\tconst cellY = __tsover_add(f32(cy), .5);\n\t\tconst dx = __tsover_sub(cellX, p.emitX);\n\t\tconst dy = __tsover_sub(cellY, p.emitY);\n\t\tconst distSq = __tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy));\n\t\tconst radSq = max(__tsover_mul(p.emitRad, p.emitRad), f32(1));\n\t\tconst influence = __tsover_mul(gaussianBrushSq(distSq, radSq), mask);\n\t\tconst cell = layout.$.dyeA[idx];\n\t\tconst oldDens = cell.x;\n\t\tconst addDens = __tsover_mul(__tsover_mul(__tsover_mul(p.emitIntensity, influence), p.dt), densityGain);\n\t\tconst newDens = min(__tsover_add(oldDens, addDens), 1);\n\t\tconst rejuvenate = __tsover_div(addDens, max(newDens, f32(.001)));\n\t\tlayout.$.dyeA[idx] = vec4f(newDens, __tsover_mul(cell.y, __tsover_sub(1, min(rejuvenate, 1))), 0, 0);\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst perpOff = __tsover_div(__tsover_add(__tsover_mul(dx, p.perpDirX), __tsover_mul(dy, p.perpDirY)), max(p.emitRad, f32(1)));\n\t\tconst vmSq = max(__tsover_add(__tsover_mul(p.emitVelX, p.emitVelX), __tsover_mul(p.emitVelY, p.emitVelY)), f32(1));\n\t\tconst tvx = __tsover_add(p.emitVelX, __tsover_mul(__tsover_mul(__tsover_mul(p.perpDirX, perpOff), p.spreadFactor), sqrt(vmSq)));\n\t\tconst tvy = __tsover_add(p.emitVelY, __tsover_mul(__tsover_mul(__tsover_mul(p.perpDirY, perpOff), p.spreadFactor), sqrt(vmSq)));\n\t\tconst br = min(__tsover_mul(__tsover_mul(influence, p.dt), velocityBlendGain), 1);\n\t\tconst gravForce = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(p.gravity, oldDens), p.dt), gravityGain), mask);\n\t\tconst cursorDX = __tsover_sub(cellX, p.cursorX);\n\t\tconst cursorDY = __tsover_sub(cellY, p.cursorY);\n\t\tconst cursorDistSq = __tsover_add(__tsover_mul(cursorDX, cursorDX), __tsover_mul(cursorDY, cursorDY));\n\t\tconst cursorInf = __tsover_mul(__tsover_mul(gaussianBrushSq(cursorDistSq, max(p.mouseRadSq, f32(1))), p.mouseActive), mask);\n\t\tlayout.$.velA[idx] = vec4f(__tsover_add(mix(vel.x, tvx, br), __tsover_mul(p.cursorVelX, cursorInf)), __tsover_add(__tsover_add(mix(vel.y, tvy, br), gravForce), __tsover_mul(p.cursorVelY, cursorInf)), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"mask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"distSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"influence\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gaussianBrushSq\",\n\t\t\t\t\t\t\t[\"distSq\", \"radSq\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"mask\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"oldDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"addDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitIntensity\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"influence\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"densityGain\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"newDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"oldDens\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"addDens\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rejuvenate\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"addDens\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"newDens\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"newDens\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t[\"rejuvenate\", [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"perpOff\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"perpDirX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"perpDirY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vmSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tvx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitVelX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"perpDirX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"perpOff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"spreadFactor\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t[\"vmSq\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tvy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitVelY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"perpDirY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"perpOff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"spreadFactor\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t[\"vmSq\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"br\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"velocityBlendGain\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gravForce\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"gravity\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"oldDens\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gravityGain\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"mask\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorDX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorDY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorDistSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cursorDX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cursorDX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cursorDY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cursorDY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorInf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"gaussianBrushSq\",\n\t\t\t\t\t\t\t\t[\"cursorDistSq\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"mouseRadSq\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"mouseActive\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"mask\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"tvx\",\n\t\t\t\t\t\t\t\t\t\t\"br\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorVelX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"cursorInf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"tvy\",\n\t\t\t\t\t\t\t\t\t\t\t\"br\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"gravForce\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorVelY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"cursorInf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"gaussianBrushSq\": () =\u003e gaussianBrushSq,\n\t\t\t\"densityGain\": () =\u003e densityGain,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"velocityBlendGain\": () =\u003e velocityBlendGain,\n\t\t\t\"gravityGain\": () =\u003e gravityGain,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Splat`);\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst cellX = __tsover_add(f32(cx), .5);\n\t\tconst cellY = __tsover_add(f32(cy), .5);\n\t\tconst dx = __tsover_sub(cellX, p.emitX);\n\t\tconst dy = __tsover_sub(cellY, p.emitY);\n\t\tconst influence = gaussianBrushSq(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy)), max(__tsover_mul(p.emitRad, p.emitRad), f32(1)));\n\t\tconst cell = layout.$.dyeA[idx];\n\t\tconst oldDens = cell.x;\n\t\tconst addDens = __tsover_mul(__tsover_mul(__tsover_mul(p.emitIntensity, influence), p.dt), densityGain);\n\t\tconst newDens = min(__tsover_add(oldDens, addDens), 1);\n\t\tconst rejuvenate = __tsover_div(addDens, max(newDens, f32(.001)));\n\t\tlayout.$.dyeA[idx] = vec4f(newDens, __tsover_mul(cell.y, __tsover_sub(1, min(rejuvenate, 1))), 0, 0);\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst perpOff = __tsover_div(__tsover_add(__tsover_mul(dx, p.perpDirX), __tsover_mul(dy, p.perpDirY)), max(p.emitRad, f32(1)));\n\t\tconst vmSq = max(__tsover_add(__tsover_mul(p.emitVelX, p.emitVelX), __tsover_mul(p.emitVelY, p.emitVelY)), f32(1));\n\t\tconst tvx = __tsover_add(p.emitVelX, __tsover_mul(__tsover_mul(__tsover_mul(p.perpDirX, perpOff), p.spreadFactor), sqrt(vmSq)));\n\t\tconst tvy = __tsover_add(p.emitVelY, __tsover_mul(__tsover_mul(__tsover_mul(p.perpDirY, perpOff), p.spreadFactor), sqrt(vmSq)));\n\t\tconst br = min(__tsover_mul(__tsover_mul(influence, p.dt), velocityBlendGain), 1);\n\t\tconst gravForce = __tsover_mul(__tsover_mul(__tsover_mul(p.gravity, oldDens), p.dt), gravityGain);\n\t\tconst cursorDX = __tsover_sub(cellX, p.cursorX);\n\t\tconst cursorDY = __tsover_sub(cellY, p.cursorY);\n\t\tconst cursorDistSq = __tsover_add(__tsover_mul(cursorDX, cursorDX), __tsover_mul(cursorDY, cursorDY));\n\t\tconst cursorInf = __tsover_mul(gaussianBrushSq(cursorDistSq, max(p.mouseRadSq, f32(1))), p.mouseActive);\n\t\tlayout.$.velA[idx] = vec4f(__tsover_add(mix(vel.x, tvx, br), __tsover_mul(p.cursorVelX, cursorInf)), __tsover_add(__tsover_add(mix(vel.y, tvy, br), gravForce), __tsover_mul(p.cursorVelY, cursorInf)), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"distSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"influence\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"gaussianBrushSq\",\n\t\t\t\t\t\t[\"distSq\", \"radSq\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"oldDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"addDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitIntensity\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"influence\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"densityGain\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"newDens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"oldDens\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"addDens\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rejuvenate\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"addDens\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"newDens\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"newDens\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t[\"rejuvenate\", [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"perpOff\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"perpDirX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"perpDirY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"emitRad\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vmSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"emitVelY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tvx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitVelX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"perpDirX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"perpOff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"spreadFactor\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t[\"vmSq\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tvy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"emitVelY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"perpDirY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"perpOff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"spreadFactor\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t[\"vmSq\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"br\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"velocityBlendGain\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gravForce\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"gravity\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"oldDens\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"gravityGain\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorDX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorDY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorDistSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cursorDX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cursorDX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cursorDY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cursorDY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorInf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gaussianBrushSq\",\n\t\t\t\t\t\t\t[\"cursorDistSq\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"mouseRadSq\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"mouseActive\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"tvx\",\n\t\t\t\t\t\t\t\t\t\t\"br\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorVelX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"cursorInf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"tvy\",\n\t\t\t\t\t\t\t\t\t\t\t\"br\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"gravForce\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorVelY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"cursorInf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"gaussianBrushSq\": () =\u003e gaussianBrushSq,\n\t\t\t\"densityGain\": () =\u003e densityGain,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"velocityBlendGain\": () =\u003e velocityBlendGain,\n\t\t\t\"gravityGain\": () =\u003e gravityGain,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Splat`);\n}\nvar neighbourCache = /* @__PURE__ */ new Map();\nfunction buildNeighbourIndex(n, boundary) {\n\tif (boundary === \"toroidal\") return typegpu_default.fn([\n\t\ti32,\n\t\ti32,\n\t\ti32,\n\t\ti32\n\t], u32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ii, ji, di, dj) =\u003e {\n\t\t\"use gpu\";\n\t\tconst row = __tsover_mod(__tsover_add(__tsover_add(ii, di), n), n);\n\t\tconst col = __tsover_mod(__tsover_add(__tsover_add(ji, dj), n), n);\n\t\treturn u32(__tsover_add(__tsover_mul(row, n), col));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ii\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ji\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"di\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"dj\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"row\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"di\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\"n\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"col\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"dj\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\"n\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"col\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.u32\": () =\u003e u32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"nw\");\n\treturn typegpu_default.fn([\n\t\ti32,\n\t\ti32,\n\t\ti32,\n\t\ti32\n\t], u32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ii, ji, di, dj) =\u003e {\n\t\t\"use gpu\";\n\t\tconst row = clamp(__tsover_add(ii, di), 0, __tsover_sub(n, 1));\n\t\tconst col = clamp(__tsover_add(ji, dj), 0, __tsover_sub(n, 1));\n\t\treturn u32(__tsover_add(__tsover_mul(row, n), col));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ii\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ji\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"di\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"dj\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"row\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"di\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"col\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"dj\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"col\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.u32\": () =\u003e u32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"nidx\");\n}\nfunction neighbourIndex(n, boundary) {\n\tconst key = `${n}:${boundary}`;\n\tconst hit = neighbourCache.get(key);\n\tif (hit) return hit;\n\tconst built = buildNeighbourIndex(n, boundary);\n\tneighbourCache.set(key, built);\n\treturn built;\n}\nfunction buildStableFluidsKernels(layoutIn, opts) {\n\tconst layout = layoutIn;\n\tconst { n, namePrefix, boundary, dye } = opts;\n\tconst nb = neighbourIndex(n, boundary);\n\tconst pressureDecay = opts.pressureDecay ?? .8;\n\tconst toroidal = boundary === \"toroidal\";\n\tconst dyeSuffix = dye === \"rgb\" ? \"Dye\" : \"Dens\";\n\tif (dye === \"densityAge\" \u0026\u0026 (opts.dyeDissipation ?? false) !== (opts.ageAdvance ?? false)) throw new Error(`buildStableFluidsKernels: dye 'densityAge' supports dyeDissipation and ageAdvance only together or not at all (got dyeDissipation=${opts.dyeDissipation ?? false}, ageAdvance=${opts.ageAdvance ?? false})`);\n\tif (opts.solidMask \u0026\u0026 toroidal) throw new Error(\"buildStableFluidsKernels: solidMask requires boundary 'clamped' — a toroidal field with interior walls is not supported (the masked divergence pass assumes clamped edges)\");\n\tconst curl = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst vL = layout.$.velA[nb(ii, ji, 0, -1)];\n\t\tconst vR = layout.$.velA[nb(ii, ji, 0, 1)];\n\t\tconst vU = layout.$.velA[nb(ii, ji, -1, 0)];\n\t\tconst vD = layout.$.velA[nb(ii, ji, 1, 0)];\n\t\tconst curlZ = __tsover_mul(__tsover_sub(__tsover_sub(vR.y, vL.y), __tsover_sub(vD.x, vU.x)), .5);\n\t\tconst vel = layout.$.velA[idx];\n\t\tlayout.$.velA[idx] = vec4f(vel.x, vel.y, curlZ, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"curlZ\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vR\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vL\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vD\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vU\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"curlZ\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Curl`);\n\tconst ambientGain = opts.ambientWind?.gain ?? 0;\n\tconst vorticity = opts.ambientWind ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst cL = abs(layout.$.velA[nb(ii, ji, 0, -1)].z);\n\t\tconst cR = abs(layout.$.velA[nb(ii, ji, 0, 1)].z);\n\t\tconst cU = abs(layout.$.velA[nb(ii, ji, -1, 0)].z);\n\t\tconst cD = abs(layout.$.velA[nb(ii, ji, 1, 0)].z);\n\t\tconst cc = layout.$.velA[idx].z;\n\t\tconst gx = __tsover_mul(__tsover_sub(cR, cL), .5);\n\t\tconst gy = __tsover_mul(__tsover_sub(cD, cU), .5);\n\t\tconst gl = max(sqrt(__tsover_add(__tsover_mul(gx, gx), __tsover_mul(gy, gy))), f32(1e-5));\n\t\tconst fx = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_div(gy, gl), cc), p.curlStrength), p.dt);\n\t\tconst fy = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_div(gx, gl), -1), cc), p.curlStrength), p.dt);\n\t\tlet ax = f32(0);\n\t\tlet ay = f32(0);\n\t\tif (p.ambient \u003e 0) {\n\t\t\tconst uvx = __tsover_div(__tsover_add(f32(cx), .5), f32(n));\n\t\t\tconst uvy = __tsover_div(__tsover_add(f32(cy), .5), f32(n));\n\t\t\tconst amb = curl22z(vec2f(__tsover_mul(uvx, p.ambientFreq), __tsover_mul(uvy, p.ambientFreq)), p.ambientTime);\n\t\t\tconst af = __tsover_mul(__tsover_mul(p.ambient, ambientGain), p.dt);\n\t\t\tax = __tsover_mul(amb.x, af);\n\t\t\tay = __tsover_mul(amb.y, af);\n\t\t}\n\t\tconst vel = layout.$.velA[idx];\n\t\tlayout.$.velA[idx] = vec4f(__tsover_add(__tsover_add(vel.x, fx), ax), __tsover_add(__tsover_add(vel.y, fy), ay), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cR\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cL\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cD\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cU\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gl\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0.00001\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gl\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"curlStrength\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"gl\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"curlStrength\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"ax\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"ay\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"ambient\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"uvx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"uvy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"amb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"noise.curl22z\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uvx\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"ambientFreq\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uvy\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"ambientFreq\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"ambientTime\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"af\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"ambient\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ambientGain\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"ax\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"amb\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"af\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"ay\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"amb\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"af\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ax\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ay\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"noise.curl22z\": () =\u003e curl22z,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"ambientGain\": () =\u003e ambientGain,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Vorticity`) : typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst cL = abs(layout.$.velA[nb(ii, ji, 0, -1)].z);\n\t\tconst cR = abs(layout.$.velA[nb(ii, ji, 0, 1)].z);\n\t\tconst cU = abs(layout.$.velA[nb(ii, ji, -1, 0)].z);\n\t\tconst cD = abs(layout.$.velA[nb(ii, ji, 1, 0)].z);\n\t\tconst cc = layout.$.velA[idx].z;\n\t\tconst gx = __tsover_mul(__tsover_sub(cR, cL), .5);\n\t\tconst gy = __tsover_mul(__tsover_sub(cD, cU), .5);\n\t\tconst gl = max(sqrt(__tsover_add(__tsover_mul(gx, gx), __tsover_mul(gy, gy))), f32(1e-5));\n\t\tconst fx = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_div(gy, gl), cc), p.curlStrength), p.dt);\n\t\tconst fy = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_div(gx, gl), -1), cc), p.curlStrength), p.dt);\n\t\tconst vel = layout.$.velA[idx];\n\t\tlayout.$.velA[idx] = vec4f(__tsover_add(vel.x, fx), __tsover_add(vel.y, fy), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cR\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cL\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cD\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cU\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gl\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0.00001\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"gl\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"curlStrength\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"gl\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"curlStrength\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Vorticity`);\n\tconst divergence = opts.solidMask ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst jf = f32(cx);\n\t\tconst iF = f32(cy);\n\t\tconst selfMask = layout.$.maskBuf[idx].x;\n\t\tconst selfVel = layout.$.velA[idx];\n\t\tconst isWallL = jf \u003c .5 || layout.$.maskBuf[nb(ii, ji, 0, -1)].x \u003c .5;\n\t\tconst isWallR = jf \u003e f32(__tsover_sub(n, 1.5)) || layout.$.maskBuf[nb(ii, ji, 0, 1)].x \u003c .5;\n\t\tconst isWallT = iF \u003c .5 || layout.$.maskBuf[nb(ii, ji, -1, 0)].x \u003c .5;\n\t\tconst isWallB = iF \u003e f32(__tsover_sub(n, 1.5)) || layout.$.maskBuf[nb(ii, ji, 1, 0)].x \u003c .5;\n\t\tconst L = select(layout.$.velA[nb(ii, ji, 0, -1)].x, __tsover_mul(selfVel.x, -1), isWallL);\n\t\tconst R = select(layout.$.velA[nb(ii, ji, 0, 1)].x, __tsover_mul(selfVel.x, -1), isWallR);\n\t\tconst T = select(layout.$.velA[nb(ii, ji, -1, 0)].y, __tsover_mul(selfVel.y, -1), isWallT);\n\t\tconst B = select(layout.$.velA[nb(ii, ji, 1, 0)].y, __tsover_mul(selfVel.y, -1), isWallB);\n\t\tconst div = __tsover_mul(__tsover_mul(__tsover_add(__tsover_sub(R, L), __tsover_sub(B, T)), .5), selfMask);\n\t\tlayout.$.pressure[idx] = __tsover_mul(__tsover_mul(layout.$.pressure[idx], pressureDecay), selfMask);\n\t\tlayout.$.divergence[idx] = div;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"jf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"selfMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"isWallL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"jf\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"isWallR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"jf\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"isWallT\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"isWallB\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"L\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isWallL\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"R\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isWallR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"T\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isWallT\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"B\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isWallB\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"div\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"R\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"L\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"B\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"T\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"selfMask\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"pressureDecay\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"selfMask\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"divergence\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t\"div\"\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"pressureDecay\": () =\u003e pressureDecay\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Divergence`) : toroidal ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst vL = layout.$.velA[nb(ii, ji, 0, -1)].x;\n\t\tconst vR = layout.$.velA[nb(ii, ji, 0, 1)].x;\n\t\tconst vU = layout.$.velA[nb(ii, ji, -1, 0)].y;\n\t\tconst vD = layout.$.velA[nb(ii, ji, 1, 0)].y;\n\t\tconst div = __tsover_mul(__tsover_add(__tsover_sub(vR, vL), __tsover_sub(vD, vU)), .5);\n\t\tlayout.$.pressure[idx] = __tsover_mul(layout.$.pressure[idx], pressureDecay);\n\t\tlayout.$.divergence[idx] = div;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"div\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"vR\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"vL\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"vD\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"vU\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"pressureDecay\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"divergence\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t\"div\"\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"pressureDecay\": () =\u003e pressureDecay\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Divergence`) : typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst jf = f32(cx);\n\t\tconst iF = f32(cy);\n\t\tconst selfVel = layout.$.velA[idx];\n\t\tconst normalL = layout.$.velA[nb(ii, ji, 0, -1)].x;\n\t\tconst normalR = layout.$.velA[nb(ii, ji, 0, 1)].x;\n\t\tconst normalU = layout.$.velA[nb(ii, ji, -1, 0)].y;\n\t\tconst normalD = layout.$.velA[nb(ii, ji, 1, 0)].y;\n\t\tconst L = select(normalL, __tsover_mul(selfVel.x, -1), jf \u003c .5);\n\t\tconst R = select(normalR, __tsover_mul(selfVel.x, -1), jf \u003e f32(__tsover_sub(n, 1.5)));\n\t\tconst T = select(normalU, __tsover_mul(selfVel.y, -1), iF \u003c .5);\n\t\tconst B = select(normalD, __tsover_mul(selfVel.y, -1), iF \u003e f32(__tsover_sub(n, 1.5)));\n\t\tconst div = __tsover_mul(__tsover_add(__tsover_sub(R, L), __tsover_sub(B, T)), .5);\n\t\tlayout.$.pressure[idx] = __tsover_mul(layout.$.pressure[idx], pressureDecay);\n\t\tlayout.$.divergence[idx] = div;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"jf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"normalL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"normalR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"normalU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"normalD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"L\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"normalL\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"jf\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"R\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"normalR\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"jf\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"T\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"normalU\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"B\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"normalD\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"selfVel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"div\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"R\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"L\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"B\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"T\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"pressureDecay\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"divergence\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t\"div\"\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"pressureDecay\": () =\u003e pressureDecay\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Divergence`);\n\tconst jacobi = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst pL = layout.$.pressure[nb(ii, ji, 0, -1)];\n\t\tconst pR = layout.$.pressure[nb(ii, ji, 0, 1)];\n\t\tconst pU = layout.$.pressure[nb(ii, ji, -1, 0)];\n\t\tconst pD = layout.$.pressure[nb(ii, ji, 1, 0)];\n\t\tconst div = layout.$.divergence[idx];\n\t\tlayout.$.pressure[idx] = __tsover_mul(__tsover_sub(__tsover_add(__tsover_add(__tsover_add(pL, pR), pU), pD), div), .25);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"div\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"divergence\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"pL\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"pR\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"pU\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"pD\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"nb\": () =\u003e nb\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Jacobi`);\n\tconst velocityCap = opts.velocityCap;\n\tconst gradSubtract = velocityCap === void 0 ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst pL = layout.$.pressure[nb(ii, ji, 0, -1)];\n\t\tconst pR = layout.$.pressure[nb(ii, ji, 0, 1)];\n\t\tconst pU = layout.$.pressure[nb(ii, ji, -1, 0)];\n\t\tconst pD = layout.$.pressure[nb(ii, ji, 1, 0)];\n\t\tconst vel = layout.$.velA[idx];\n\t\tlayout.$.velA[idx] = vec4f(__tsover_sub(vel.x, __tsover_mul(__tsover_sub(pR, pL), .5)), __tsover_sub(vel.y, __tsover_mul(__tsover_sub(pD, pU), .5)), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"pR\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"pL\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"pD\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"pU\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}GradSubtract`) : typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst ii = i32(cy);\n\t\tconst ji = i32(cx);\n\t\tconst pL = layout.$.pressure[nb(ii, ji, 0, -1)];\n\t\tconst pR = layout.$.pressure[nb(ii, ji, 0, 1)];\n\t\tconst pU = layout.$.pressure[nb(ii, ji, -1, 0)];\n\t\tconst pD = layout.$.pressure[nb(ii, ji, 1, 0)];\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst vx = __tsover_sub(vel.x, __tsover_mul(__tsover_sub(pR, pL), .5));\n\t\tconst vy = __tsover_sub(vel.y, __tsover_mul(__tsover_sub(pD, pU), .5));\n\t\tconst maxVel = f32(velocityCap);\n\t\tconst vLen = max(sqrt(__tsover_add(__tsover_mul(vx, vx), __tsover_mul(vy, vy))), f32(1e-6));\n\t\tconst capScale = __tsover_div(maxVel, max(vLen, maxVel));\n\t\tlayout.$.velA[idx] = vec4f(__tsover_mul(vx, capScale), __tsover_mul(vy, capScale), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ii\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ji\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"pR\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"pL\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"pD\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"pU\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"maxVel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"velocityCap\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vLen\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"vx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"vy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"vy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0.000001\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"capScale\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"maxVel\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"vLen\", \"maxVel\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"capScale\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"vy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"capScale\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"nb\": () =\u003e nb,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"velocityCap\": () =\u003e velocityCap,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}GradSubtract`);\n\tconst mask = opts.solidMask ?? false;\n\tconst kernels = {\n\t\tcurl,\n\t\tvorticity,\n\t\tdivergence,\n\t\tjacobi,\n\t\tgradSubtract,\n\t\tadvectVel: toroidal ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst vel = layout.$.velA[idx];\n\t\t\tconst srcX = __tsover_mod(__tsover_add(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), f32(n)), f32(n));\n\t\t\tconst srcY = __tsover_mod(__tsover_add(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), f32(n)), f32(n));\n\t\t\tconst x0 = floor(srcX);\n\t\t\tconst y0 = floor(srcY);\n\t\t\tconst sx = __tsover_sub(srcX, x0);\n\t\t\tconst sy = __tsover_sub(srcY, y0);\n\t\t\tconst ix0 = i32(x0);\n\t\t\tconst iy0 = i32(y0);\n\t\t\tconst ix1 = __tsover_mod(__tsover_add(ix0, 1), n);\n\t\t\tconst iy1 = __tsover_mod(__tsover_add(iy0, 1), n);\n\t\t\tconst v00 = layout.$.velA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\t\tconst v10 = layout.$.velA[u32(__tsover_add(__tsover_mul(iy0, n), ix1))];\n\t\t\tconst v01 = layout.$.velA[u32(__tsover_add(__tsover_mul(iy1, n), ix0))];\n\t\t\tconst v11 = layout.$.velA[u32(__tsover_add(__tsover_mul(iy1, n), ix1))];\n\t\t\tconst decay = __tsover_add(1, __tsover_mul(p.velFade, p.dt));\n\t\t\tlayout.$.velB[idx] = vec4f(__tsover_div(mix(mix(v00.x, v10.x, sx), mix(v01.x, v11.x, sx), sy), decay), __tsover_div(mix(mix(v00.y, v10.y, sx), mix(v01.y, v11.y, sx), sy), decay), 0, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ix0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ix1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ix0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix1\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix1\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"decay\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"velFade\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.mix\": () =\u003e mix\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}AdvectVel`) : mask ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst vel = layout.$.velA[idx];\n\t\t\tconst srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\t\tconst srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\t\tconst x0 = clamp(floor(srcX), 0, f32(__tsover_sub(n, 2)));\n\t\t\tconst y0 = clamp(floor(srcY), 0, f32(__tsover_sub(n, 2)));\n\t\t\tconst sx = __tsover_sub(srcX, x0);\n\t\t\tconst sy = __tsover_sub(srcY, y0);\n\t\t\tconst ix0 = i32(x0);\n\t\t\tconst iy0 = i32(y0);\n\t\t\tconst v00 = layout.$.velA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\t\tconst v10 = layout.$.velA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, n), ix0), 1))];\n\t\t\tconst v01 = layout.$.velA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0))];\n\t\t\tconst v11 = layout.$.velA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0), 1))];\n\t\t\tconst decay = __tsover_add(1, __tsover_mul(p.velFade, p.dt));\n\t\t\tconst m = layout.$.maskBuf[idx].x;\n\t\t\tlayout.$.velB[idx] = vec4f(__tsover_mul(__tsover_div(mix(mix(v00.x, v10.x, sx), mix(v01.x, v11.x, sx), sy), decay), m), __tsover_mul(__tsover_div(mix(mix(v00.y, v10.y, sx), mix(v01.y, v11.y, sx), sy), decay), m), 0, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ix0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"decay\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"velFade\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.mix\": () =\u003e mix\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}AdvectVel`) : typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst vel = layout.$.velA[idx];\n\t\t\tconst srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\t\tconst srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\t\tconst x0 = clamp(floor(srcX), 0, f32(__tsover_sub(n, 2)));\n\t\t\tconst y0 = clamp(floor(srcY), 0, f32(__tsover_sub(n, 2)));\n\t\t\tconst sx = __tsover_sub(srcX, x0);\n\t\t\tconst sy = __tsover_sub(srcY, y0);\n\t\t\tconst ix0 = i32(x0);\n\t\t\tconst iy0 = i32(y0);\n\t\t\tconst v00 = layout.$.velA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\t\tconst v10 = layout.$.velA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, n), ix0), 1))];\n\t\t\tconst v01 = layout.$.velA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0))];\n\t\t\tconst v11 = layout.$.velA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0), 1))];\n\t\t\tconst decay = __tsover_add(1, __tsover_mul(p.velFade, p.dt));\n\t\t\tlayout.$.velB[idx] = vec4f(__tsover_div(mix(mix(v00.x, v10.x, sx), mix(v01.x, v11.x, sx), sy), decay), __tsover_div(mix(mix(v00.y, v10.y, sx), mix(v01.y, v11.y, sx), sy), decay), 0, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ix0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"decay\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"velFade\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.mix\": () =\u003e mix\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}AdvectVel`),\n\t\tcopyVel: opts.publishVelocityTexture ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst v = layout.$.velB[idx];\n\t\t\tlayout.$.velA[idx] = vec4f(v.x, v.y, 0, 0);\n\t\t\ttextureStore(layout.$.velOutTex, vec2u(cx, cy), vec4f(v.x, v.y, 0, 0));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velOutTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}CopyVel`) : typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst v = layout.$.velB[idx];\n\t\t\tlayout.$.velA[idx] = vec4f(v.x, v.y, 0, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}CopyVel`)\n\t};\n\tif (dye === \"none\") return kernels;\n\tconst dyeDissipation = opts.dyeDissipation ?? false;\n\tconst ageAdvance = opts.ageAdvance ?? false;\n\tif (dye === \"rgb\") {\n\t\tkernels.advectDye = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst vel = layout.$.velA[idx];\n\t\t\tconst srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\t\tconst srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\t\tconst x0 = clamp(floor(srcX), 0, f32(__tsover_sub(n, 2)));\n\t\t\tconst y0 = clamp(floor(srcY), 0, f32(__tsover_sub(n, 2)));\n\t\t\tconst sx = __tsover_sub(srcX, x0);\n\t\t\tconst sy = __tsover_sub(srcY, y0);\n\t\t\tconst ix0 = i32(x0);\n\t\t\tconst iy0 = i32(y0);\n\t\t\tconst c00 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\t\tconst c10 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, n), ix0), 1))];\n\t\t\tconst c01 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0))];\n\t\t\tconst c11 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0), 1))];\n\t\t\tconst r = mix(mix(c00.x, c10.x, sx), mix(c01.x, c11.x, sx), sy);\n\t\t\tconst g = mix(mix(c00.y, c10.y, sx), mix(c01.y, c11.y, sx), sy);\n\t\t\tconst b = mix(mix(c00.z, c10.z, sx), mix(c01.z, c11.z, sx), sy);\n\t\t\tconst decay = __tsover_add(1, __tsover_mul(p.dyeFade, p.dt));\n\t\t\tlayout.$.dyeB[idx] = vec4f(max(__tsover_div(r, decay), f32(0)), max(__tsover_div(g, decay), f32(0)), max(__tsover_div(b, decay), f32(0)), 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ix0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"decay\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dyeFade\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.max\": () =\u003e max\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Advect${dyeSuffix}`);\n\t\tkernels.copyDye = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst c = layout.$.dyeB[idx];\n\t\t\tlayout.$.dyeA[idx] = vec4f(c.x, c.y, c.z, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Copy${dyeSuffix}`);\n\t\treturn kernels;\n\t}\n\tif (dyeDissipation \u0026\u0026 ageAdvance \u0026\u0026 mask) kernels.advectDye = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\tconst srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\tconst x0 = clamp(floor(srcX), 0, f32(__tsover_sub(n, 2)));\n\t\tconst y0 = clamp(floor(srcY), 0, f32(__tsover_sub(n, 2)));\n\t\tconst sx = __tsover_sub(srcX, x0);\n\t\tconst sy = __tsover_sub(srcY, y0);\n\t\tconst ix0 = i32(x0);\n\t\tconst iy0 = i32(y0);\n\t\tconst d00 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\tconst d10 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, n), ix0), 1))];\n\t\tconst d01 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0))];\n\t\tconst d11 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0), 1))];\n\t\tconst dens = mix(mix(d00.x, d10.x, sx), mix(d01.x, d11.x, sx), sy);\n\t\tconst age = mix(mix(d00.y, d10.y, sx), mix(d01.y, d11.y, sx), sy);\n\t\tconst decay = __tsover_add(1, __tsover_mul(p.dyeFade, p.dt));\n\t\tconst m = layout.$.maskBuf[idx].x;\n\t\tlayout.$.dyeB[idx] = vec4f(__tsover_mul(max(__tsover_div(dens, decay), f32(0)), m), min(__tsover_add(age, __tsover_mul(__tsover_mul(p.dt, .4), p.colorDecay)), 1), 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"y0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ix0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iy0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d00\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d10\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d01\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d11\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"age\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"decay\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dyeFade\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"m\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dens\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"age\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"colorDecay\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.min\": () =\u003e min\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Advect${dyeSuffix}`);\n\telse if (dyeDissipation \u0026\u0026 ageAdvance) kernels.advectDye = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\tconst srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\tconst x0 = clamp(floor(srcX), 0, f32(__tsover_sub(n, 2)));\n\t\tconst y0 = clamp(floor(srcY), 0, f32(__tsover_sub(n, 2)));\n\t\tconst sx = __tsover_sub(srcX, x0);\n\t\tconst sy = __tsover_sub(srcY, y0);\n\t\tconst ix0 = i32(x0);\n\t\tconst iy0 = i32(y0);\n\t\tconst d00 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\tconst d10 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, n), ix0), 1))];\n\t\tconst d01 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0))];\n\t\tconst d11 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0), 1))];\n\t\tconst dens = mix(mix(d00.x, d10.x, sx), mix(d01.x, d11.x, sx), sy);\n\t\tconst age = mix(mix(d00.y, d10.y, sx), mix(d01.y, d11.y, sx), sy);\n\t\tconst decay = __tsover_add(1, __tsover_mul(p.dyeFade, p.dt));\n\t\tlayout.$.dyeB[idx] = vec4f(max(__tsover_div(dens, decay), f32(0)), min(__tsover_add(age, __tsover_mul(__tsover_mul(p.dt, .4), p.colorDecay)), 1), 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"y0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ix0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iy0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d00\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d10\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d01\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d11\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dens\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"age\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"decay\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dyeFade\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dens\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"age\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"colorDecay\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.min\": () =\u003e min\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Advect${dyeSuffix}`);\n\telse kernels.advectDye = toroidal ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst srcX = __tsover_mod(__tsover_add(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), f32(n)), f32(n));\n\t\tconst srcY = __tsover_mod(__tsover_add(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), f32(n)), f32(n));\n\t\tconst x0 = floor(srcX);\n\t\tconst y0 = floor(srcY);\n\t\tconst sx = __tsover_sub(srcX, x0);\n\t\tconst sy = __tsover_sub(srcY, y0);\n\t\tconst ix0 = i32(x0);\n\t\tconst iy0 = i32(y0);\n\t\tconst ix1 = __tsover_mod(__tsover_add(ix0, 1), n);\n\t\tconst iy1 = __tsover_mod(__tsover_add(iy0, 1), n);\n\t\tconst d00 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\tconst d10 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy0, n), ix1))];\n\t\tconst d01 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy1, n), ix0))];\n\t\tconst d11 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy1, n), ix1))];\n\t\tlayout.$.dyeB[idx] = vec4f(mix(mix(d00.x, d10.x, sx), mix(d01.x, d11.x, sx), sy), mix(mix(d00.y, d10.y, sx), mix(d01.y, d11.y, sx), sy), 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"y0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ix0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iy0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ix1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ix0\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\"n\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iy1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\"n\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d00\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d10\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix1\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d01\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d11\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix1\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Advect${dyeSuffix}`) : typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst srcX = clamp(__tsover_sub(f32(cx), __tsover_mul(vel.x, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\tconst srcY = clamp(__tsover_sub(f32(cy), __tsover_mul(vel.y, p.dt)), 0, f32(__tsover_sub(n, 1)));\n\t\tconst x0 = clamp(floor(srcX), 0, f32(__tsover_sub(n, 2)));\n\t\tconst y0 = clamp(floor(srcY), 0, f32(__tsover_sub(n, 2)));\n\t\tconst sx = __tsover_sub(srcX, x0);\n\t\tconst sy = __tsover_sub(srcY, y0);\n\t\tconst ix0 = i32(x0);\n\t\tconst iy0 = i32(y0);\n\t\tconst d00 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(iy0, n), ix0))];\n\t\tconst d10 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(iy0, n), ix0), 1))];\n\t\tconst d01 = layout.$.dyeA[u32(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0))];\n\t\tconst d11 = layout.$.dyeA[u32(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(iy0, 1), n), ix0), 1))];\n\t\tlayout.$.dyeB[idx] = vec4f(mix(mix(d00.x, d10.x, sx), mix(d01.x, d11.x, sx), sy), mix(mix(d00.y, d10.y, sx), mix(d01.y, d11.y, sx), sy), 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"y0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ix0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"x0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iy0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"y0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d00\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d10\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d01\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d11\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"ix0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Advect${dyeSuffix}`);\n\tkernels.copyDye = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst dd = layout.$.dyeB[idx];\n\t\tlayout.$.dyeA[idx] = vec4f(dd.x, dd.y, 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Copy${dyeSuffix}`);\n\treturn kernels;\n}\nfunction buildFluidOutputKernel(layout, opts) {\n\tconst { n, namePrefix } = opts;\n\tif (opts.dye === \"rgb\") return typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst c = layout.$.dyeA[idx];\n\t\ttextureStore(layout.$.outTex, vec2u(cx, cy), vec4f(c.x, c.y, c.z, 1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Output`);\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst dd = layout.$.dyeA[idx];\n\t\ttextureStore(layout.$.outTex, vec2u(cx, cy), vec4f(dd.x, dd.y, 0, 0));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Output`);\n}\nvar valueHash = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((px, py) =\u003e {\n\t\"use gpu\";\n\treturn hash12(vec2f(px, py));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"px\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"py\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"noise.hash12\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"px\", \"py\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"noise.hash12\": () =\u003e hash12,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar valueNoise2D = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((nx, ny) =\u003e {\n\t\"use gpu\";\n\tconst ix = floor(nx);\n\tconst iy = floor(ny);\n\tconst sx = fract(nx);\n\tconst sy = fract(ny);\n\tconst ux = __tsover_mul(__tsover_mul(sx, sx), __tsover_sub(3, __tsover_mul(sx, 2)));\n\tconst uy = __tsover_mul(__tsover_mul(sy, sy), __tsover_sub(3, __tsover_mul(sy, 2)));\n\treturn mix(mix(valueHash(ix, iy), valueHash(__tsover_add(ix, 1), iy), ux), mix(valueHash(ix, __tsover_add(iy, 1)), valueHash(__tsover_add(ix, 1), __tsover_add(iy, 1)), ux), uy);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"nx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"ny\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ix\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"nx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"ny\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"nx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"ny\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ux\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"valueHash\",\n\t\t\t\t\t\t\t\t[\"ix\", \"iy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"valueHash\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t], \"iy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"ux\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"valueHash\",\n\t\t\t\t\t\t\t\t[\"ix\", [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"valueHash\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"ux\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"uy\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"valueHash\": () =\u003e valueHash\n\t}\n}) \u0026\u0026 $.f)({}));\nvar fbm = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((nx, ny) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_add(__tsover_mul(valueNoise2D(nx, ny), .5), __tsover_mul(valueNoise2D(__tsover_add(__tsover_mul(nx, 2), 5.37), __tsover_add(__tsover_mul(ny, 2), 9.13)), .3)), __tsover_mul(valueNoise2D(__tsover_add(__tsover_mul(nx, 4), 1.79), __tsover_add(__tsover_mul(ny, 4), 3.51)), .2));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"nx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"ny\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"valueNoise2D\",\n\t\t\t\t\t\t[\"nx\", \"ny\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"valueNoise2D\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"5.37\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"9.13\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"valueNoise2D\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"1.79\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"3.51\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.2\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"valueNoise2D\": () =\u003e valueNoise2D }\n}) \u0026\u0026 $.f)({}));\nvar seedLattice = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y, seed, cellsPerTexel) =\u003e {\n\t\"use gpu\";\n\tconst sdx = __tsover_mul(hash11(__tsover_mul(seed, 37.31)), 97);\n\tconst sdy = __tsover_mul(hash11(__tsover_mul(seed, 83.17)), 97);\n\treturn vec2f(__tsover_add(__tsover_mul(x, cellsPerTexel), sdx), __tsover_add(__tsover_mul(y, cellsPerTexel), sdy));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellsPerTexel\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"37.31\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"97\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"83.17\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"97\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cellsPerTexel\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"sdx\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cellsPerTexel\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"sdy\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"noise.hash11\": () =\u003e hash11,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction buildNoiseFieldInitKernel(layoutIn, opts) {\n\tconst layout = layoutIn;\n\tconst { n, namePrefix } = opts;\n\tconst cellsPerTexel = (opts.frequency ?? 3) / n;\n\tconst dens = opts.density ?? {\n\t\tscale: .75,\n\t\tbias: .25,\n\t\tmin: .15,\n\t\tmax: .9\n\t};\n\tconst dScale = dens.scale;\n\tconst dBias = dens.bias;\n\tconst dMin = dens.min;\n\tconst dMax = dens.max;\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst lat = seedLattice(f32(cx), f32(cy), p.seed, cellsPerTexel);\n\t\tconst dens0 = clamp(__tsover_add(__tsover_mul(fbm(__tsover_add(lat.x, 31.7), __tsover_add(lat.y, 53.3)), dScale), dBias), dMin, dMax);\n\t\tconst colorVar = clamp(fbm(lat.x, lat.y), 0, 1);\n\t\tlayout.$.dyeA[idx] = vec4f(dens0, colorVar, 0, 0);\n\t\tlayout.$.dyeB[idx] = vec4f(dens0, colorVar, 0, 0);\n\t\tlayout.$.velA[idx] = vec4f(0, 0, 0, 0);\n\t\tlayout.$.velB[idx] = vec4f(0, 0, 0, 0);\n\t\tlayout.$.pressure[idx] = 0;\n\t\tlayout.$.divergence[idx] = 0;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lat\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"seedLattice\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"cellsPerTexel\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dens0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"fbm\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"lat\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"31.7\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"lat\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"53.3\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"dScale\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"dBias\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dMin\",\n\t\t\t\t\t\t\t\"dMax\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"colorVar\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"fbm\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"lat\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"lat\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dens0\",\n\t\t\t\t\t\t\t\"colorVar\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dens0\",\n\t\t\t\t\t\t\t\"colorVar\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pressure\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"divergence\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"seedLattice\": () =\u003e seedLattice,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"cellsPerTexel\": () =\u003e cellsPerTexel,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"fbm\": () =\u003e fbm,\n\t\t\t\"dScale\": () =\u003e dScale,\n\t\t\t\"dBias\": () =\u003e dBias,\n\t\t\t\"dMin\": () =\u003e dMin,\n\t\t\t\"dMax\": () =\u003e dMax,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Init`);\n}\nvar TAU = TAU$1;\nfunction buildTrigTurbulenceKernel(layoutIn, opts) {\n\tconst layout = layoutIn;\n\tconst { n, namePrefix } = opts;\n\tconst gain = n * (opts.gain ?? .04);\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst jf = __tsover_add(f32(cx), .5);\n\t\tconst iF = __tsover_add(f32(cy), .5);\n\t\tconst x = __tsover_mul(__tsover_div(jf, f32(n)), TAU);\n\t\tconst y = __tsover_mul(__tsover_div(iF, f32(n)), TAU);\n\t\tconst t = p.time;\n\t\tconst vel = layout.$.velA[idx];\n\t\tconst fx = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(x, 2), __tsover_mul(t, .31))), cos(__tsover_add(__tsover_mul(y, 1.5), __tsover_mul(t, .23)))), __tsover_mul(sin(__tsover_add(__tsover_add(__tsover_mul(x, .7), __tsover_mul(y, 1.3)), __tsover_mul(t, .17))), .4)), p.turbulence), gain), p.dt);\n\t\tconst fy = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_add(__tsover_mul(cos(__tsover_add(__tsover_mul(x, 1.5), __tsover_mul(t, .27))), sin(__tsover_add(__tsover_mul(y, 2), __tsover_mul(t, .19)))), __tsover_mul(cos(__tsover_add(__tsover_add(__tsover_mul(x, 1.1), __tsover_mul(y, .9)), __tsover_mul(t, .21))), .4)), p.turbulence), gain), p.dt);\n\t\tconst cdx = __tsover_sub(jf, p.cursorX);\n\t\tconst cdy = __tsover_sub(iF, p.cursorY);\n\t\tconst cursorDistSq = __tsover_add(__tsover_mul(cdx, cdx), __tsover_mul(cdy, cdy));\n\t\tconst cursorInf = __tsover_mul(gaussianBrushSq(cursorDistSq, max(p.mouseRadSq, f32(1))), p.mouseActive);\n\t\tlayout.$.velA[idx] = vec4f(__tsover_add(__tsover_add(vel.x, fx), __tsover_mul(p.cursorVelX, cursorInf)), __tsover_add(__tsover_add(vel.y, fy), __tsover_mul(p.cursorVelY, cursorInf)), vel.z, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"jf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"jf\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"y\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"time\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.31\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.23\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.17\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"turbulence\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gain\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.27\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.19\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.21\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"turbulence\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gain\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cdx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"jf\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cdy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorDistSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cdx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cdx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cdy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cdy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursorInf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gaussianBrushSq\",\n\t\t\t\t\t\t\t[\"cursorDistSq\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"mouseRadSq\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"mouseActive\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"velA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorVelX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"cursorInf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorVelY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"cursorInf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"gain\": () =\u003e gain,\n\t\t\t\"gaussianBrushSq\": () =\u003e gaussianBrushSq,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Force`);\n}\nfunction buildNoiseRestoreKernel(layoutIn, opts) {\n\tconst layout = layoutIn;\n\tconst { n, namePrefix } = opts;\n\tconst cellsPerTexel = (opts.frequency ?? 3) / n;\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst lat = seedLattice(f32(cx), f32(cy), p.seed, cellsPerTexel);\n\t\tconst refRaw = fbm(lat.x, lat.y);\n\t\tconst invBlend = __tsover_sub(1, p.blending);\n\t\tconst contrastBoost = __tsover_add(1, __tsover_mul(invBlend, 5));\n\t\tconst refBoosted = clamp(__tsover_add(__tsover_mul(__tsover_sub(refRaw, .5), contrastBoost), .5), 0, 1);\n\t\tconst cell = layout.$.dyeA[idx];\n\t\tconst rateMult = __tsover_add(1, __tsover_mul(invBlend, 2.5));\n\t\tconst blendRate = min(__tsover_mul(__tsover_mul(p.dt, .5), rateMult), .3);\n\t\tlayout.$.dyeA[idx] = vec4f(cell.x, mix(cell.y, refBoosted, blendRate), 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lat\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"seedLattice\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"cellsPerTexel\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"refRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"fbm\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lat\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lat\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"invBlend\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"blending\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"contrastBoost\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"invBlend\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"refBoosted\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"refRaw\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"contrastBoost\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rateMult\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"invBlend\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"blendRate\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"rateMult\"\n\t\t\t\t\t\t], [5, \"0.3\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dyeA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"refBoosted\",\n\t\t\t\t\t\t\t\t\t\"blendRate\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"seedLattice\": () =\u003e seedLattice,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"cellsPerTexel\": () =\u003e cellsPerTexel,\n\t\t\t\"fbm\": () =\u003e fbm,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}ColorRestore`);\n}\nvar SVG_SDF_SIZE = 512;\nvar gridShapeUV = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((u, v, centerX, centerY, scale, rotation, aspect) =\u003e {\n\t\"use gpu\";\n\tconst dxAc = __tsover_mul(__tsover_sub(u, centerX), aspect);\n\tconst dy = __tsover_sub(v, centerY);\n\tconst cosR = cos(rotation);\n\tconst sinR = sin(rotation);\n\tconst rdx = __tsover_add(__tsover_mul(dxAc, cosR), __tsover_mul(dy, sinR));\n\tconst rdy = __tsover_sub(__tsover_mul(dy, cosR), __tsover_mul(dxAc, sinR));\n\treturn vec2f(__tsover_add(__tsover_div(rdx, scale), .5), __tsover_add(__tsover_div(rdy, scale), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"u\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dxAc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotation\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotation\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dxAc\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dxAc\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nstruct({\n\tcenterX: f32,\n\tcenterY: f32,\n\tscale: f32,\n\trotation: f32,\n\taspect: f32,\n\tsaRadius: f32,\n\tsaSides: f32,\n\tsaRounding: f32,\n\tsaInnerRatio: f32,\n\tsaRotation: f32,\n\tsaHeight: f32,\n\tsaOffset: f32,\n\tsaAperture: f32,\n\tvfOriginX: f32,\n\tvfOriginY: f32,\n\tvfSpanX: f32,\n\tvfSpanY: f32,\n\tvfActiveRes: f32\n});\nfunction makeShapeMaskSet(paramsSchema, opts) {\n\tconst { n, namePrefix } = opts;\n\tconst schema = paramsSchema;\n\tconst maskEntry = {\n\t\tstorage: arrayOf(vec4f, n * n),\n\t\taccess: \"mutable\"\n\t};\n\tconst analyticLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tmaskBuf: maskEntry,\n\t\tparams: { uniform: schema }\n\t}), \"analyticLayout\");\n\tconst svgLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tmaskBuf: maskEntry,\n\t\tparams: { uniform: schema },\n\t\tsdfSource: { texture: texture2d(f32) }\n\t}), \"svgLayout\");\n\tconst fieldLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tmaskBuf: maskEntry,\n\t\tparams: { uniform: schema },\n\t\tfieldTex: {\n\t\t\ttexture: texture2d(f32),\n\t\t\tsampleType: \"unfilterable-float\"\n\t\t}\n\t}), \"fieldLayout\");\n\tconst analytic = (shapeType) =\u003e {\n\t\tconst sdfFn = buildAnalyticSdfFn(shapeType);\n\t\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = analyticLayout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst res = sdfFn(gridShapeUV(__tsover_div(__tsover_add(f32(cx), .5), f32(n)), __tsover_div(__tsover_add(f32(cy), .5), f32(n)), p.centerX, p.centerY, p.scale, p.rotation, p.aspect), p.saRadius, p.saSides, p.saRounding, p.saInnerRatio, p.saRotation, p.saHeight, p.saOffset, p.saAperture);\n\t\t\tconst inside = select(f32(0), f32(1), res.x \u003c 0);\n\t\t\tanalyticLayout.$.maskBuf[idx] = vec4f(inside, res.x, 0, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"analyticLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gridShapeUV\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rotation\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"res\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saRadius\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saSides\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saRounding\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saInnerRatio\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saRotation\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saHeight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saOffset\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"saAperture\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inside\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"res\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"analyticLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"inside\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"res\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"analyticLayout\": () =\u003e analyticLayout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"gridShapeUV\": () =\u003e gridShapeUV,\n\t\t\t\t\"sdfFn\": () =\u003e sdfFn,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Mask`);\n\t};\n\treturn {\n\t\tanalyticLayout,\n\t\tsvgLayout,\n\t\tfieldLayout,\n\t\tanalytic,\n\t\tsvgKernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = svgLayout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst sdfUV = gridShapeUV(__tsover_div(__tsover_add(f32(cx), .5), f32(n)), __tsover_div(__tsover_add(f32(cy), .5), f32(n)), p.centerX, p.centerY, p.scale, p.rotation, p.aspect);\n\t\t\tconst sizeM1 = __tsover_sub(SVG_SDF_SIZE, 1);\n\t\t\tconst tx = clamp(i32(__tsover_mul(sdfUV.x, SVG_SDF_SIZE)), 0, sizeM1);\n\t\t\tconst ty = clamp(i32(__tsover_mul(sdfUV.y, SVG_SDF_SIZE)), 0, sizeM1);\n\t\t\tconst dist = textureLoad(svgLayout.$.sdfSource, vec2u(u32(tx), u32(ty)), 0).x;\n\t\t\tconst inside = select(f32(0), f32(1), dist \u003c 0);\n\t\t\tsvgLayout.$.maskBuf[idx] = vec4f(inside, dist, 0, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"svgLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gridShapeUV\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rotation\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sizeM1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"SVG_SDF_SIZE\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"SVG_SDF_SIZE\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"sizeM1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"SVG_SDF_SIZE\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"sizeM1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"svgLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sdfSource\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"tx\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"ty\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inside\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"svgLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"inside\",\n\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"svgLayout\": () =\u003e svgLayout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"gridShapeUV\": () =\u003e gridShapeUV,\n\t\t\t\t\"SVG_SDF_SIZE\": () =\u003e SVG_SDF_SIZE,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}SvgMask`),\n\t\tfieldKernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = fieldLayout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst sdfUV = gridShapeUV(__tsover_div(__tsover_add(f32(cx), .5), f32(n)), __tsover_div(__tsover_add(f32(cy), .5), f32(n)), p.centerX, p.centerY, p.scale, p.rotation, p.aspect);\n\t\t\tconst uxc = clamp(sdfUV.x, p.vfOriginX, __tsover_add(p.vfOriginX, p.vfSpanX));\n\t\t\tconst uyc = clamp(sdfUV.y, p.vfOriginY, __tsover_add(p.vfOriginY, p.vfSpanY));\n\t\t\tconst outsideDist = length(vec2f(__tsover_sub(sdfUV.x, uxc), __tsover_sub(sdfUV.y, uyc)));\n\t\t\tconst maxT = __tsover_sub(p.vfActiveRes, 1);\n\t\t\tconst tx = clamp(__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uxc, p.vfOriginX), p.vfSpanX), p.vfActiveRes), .5), f32(0), maxT);\n\t\t\tconst ty = clamp(__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uyc, p.vfOriginY), p.vfSpanY), p.vfActiveRes), .5), f32(0), maxT);\n\t\t\tconst dist = __tsover_add(textureLoad(fieldLayout.$.fieldTex, vec2u(u32(tx), u32(ty)), 0).x, outsideDist);\n\t\t\tconst inside = select(f32(0), f32(1), dist \u003c 0);\n\t\t\tfieldLayout.$.maskBuf[idx] = vec4f(inside, dist, 0, 0);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"fieldLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gridShapeUV\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rotation\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outsideDist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"maxT\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfActiveRes\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"vfActiveRes\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"vfActiveRes\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fieldLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"fieldTex\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"tx\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"ty\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inside\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"fieldLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maskBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"inside\",\n\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"fieldLayout\": () =\u003e fieldLayout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"gridShapeUV\": () =\u003e gridShapeUV,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}VfMask`)\n\t};\n}\nfunction createFluidKernelPass(root, kernel, opts) {\n\treturn createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernel\": () =\u003e kernel }\n\t}) \u0026\u0026 $.f)({}), {\n\t\tsize: [opts.n, opts.n],\n\t\tbindGroup: opts.bindGroup\n\t});\n}\nfunction createStableFluidsPasses(root, kernels, opts) {\n\tconst size = [opts.n, opts.n];\n\tconst mk = (kernel) =\u003e createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernel\": () =\u003e kernel }\n\t}) \u0026\u0026 $.f)({}), {\n\t\tsize,\n\t\tbindGroup: opts.bindGroup\n\t});\n\tconst passes = {\n\t\tcurl: mk(kernels.curl),\n\t\tvorticity: mk(kernels.vorticity),\n\t\tdivergence: mk(kernels.divergence),\n\t\tjacobi: mk(kernels.jacobi),\n\t\tgradSubtract: mk(kernels.gradSubtract),\n\t\tadvectVel: mk(kernels.advectVel),\n\t\tcopyVel: mk(kernels.copyVel),\n\t\tadvectDye: kernels.advectDye ? mk(kernels.advectDye) : void 0,\n\t\tcopyDye: kernels.copyDye ? mk(kernels.copyDye) : void 0\n\t};\n\treturn {\n\t\t...passes,\n\t\tsolveSteps({ jacobiIters, vorticity }) {\n\t\t\tconst steps = [\n\t\t\t\tpasses.curl,\n\t\t\t\tvorticity ?? passes.vorticity,\n\t\t\t\tpasses.divergence\n\t\t\t];\n\t\t\tfor (let i = 0; i \u003c jacobiIters; i++) steps.push(passes.jacobi);\n\t\t\tsteps.push(passes.gradSubtract, passes.advectVel, passes.copyVel);\n\t\t\tif (passes.advectDye) steps.push(passes.advectDye);\n\t\t\tif (passes.copyDye) steps.push(passes.copyDye);\n\t\t\treturn steps;\n\t\t}\n\t};\n}\nvar TWO_PI = TWO_PI$1;\nconst WAVE_GRID = 256;\nconst WAVE_CELLS = 256 * 256;\nvar WAVE_MAX = 255;\nconst WAVE_HALFEXTENT = 3;\nconst CURSOR_WAVE_BOUND = 6;\nconst WAVE_DECAY = 10;\nvar WAVE_DAMP = 1 - 10 * .004;\nconst WAVE_SETTLE_MS = WAVE_DAMP \u003e= 1 ? Infinity : Math.min(3e4, Math.log(1e-6) / Math.log(Math.max(WAVE_DAMP, .001)) * 16.67);\nconst HEIGHT_SLAB_PAD = .02;\nconst HEIGHT_FIELD_STATE_FORMAT = \"rgba16float\";\nconst HeightFieldParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tamp: f32,\n\tfreq: f32,\n\tseed: f32,\n\tedgePin: f32,\n\tcursorIntensity: f32,\n\tt: f32,\n\taspect: f32,\n\tfocal: f32,\n\tcamPos: vec3f,\n\tcamForward: vec3f,\n\tcamRight: vec3f,\n\tcamUp: vec3f,\n\tlighting: f32,\n\tglossiness: f32,\n\thighlights: f32,\n\tlightX: f32,\n\tlightY: f32,\n\tlightZ: f32,\n\tlightColor: vec3f,\n\tnearCutoff: f32,\n\tfarCutoff: f32,\n\tcursorWaveX: f32,\n\tcursorWaveY: f32,\n\tmouseSpeed: f32,\n\tdt: f32,\n\tdecay: f32,\n\tradius: f32,\n\twaveSpeed: f32,\n\theightEnvelope: f32,\n\tcursorActive: f32\n}), \"HeightFieldParams\");\nfunction createHeightFieldParamsUniform(root) {\n\tconst u = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(HeightFieldParams), \"u\");\n\treturn {\n\t\tbuffer: u.buffer,\n\t\twrite: (p) =\u003e u.write({\n\t\t\t...p,\n\t\t\tcamPos: vec3f(...p.camPos),\n\t\t\tcamForward: vec3f(...p.camForward),\n\t\t\tcamRight: vec3f(...p.camRight),\n\t\t\tcamUp: vec3f(...p.camUp),\n\t\t\tlightColor: vec3f(...p.lightColor)\n\t\t})\n\t};\n}\nconst waveEquationLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\treadSrc: {\n\t\tstorage: arrayOf(f32, WAVE_CELLS),\n\t\taccess: \"readonly\"\n\t},\n\twriteBuf: {\n\t\tstorage: arrayOf(f32, WAVE_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\treadBuf: {\n\t\tstorage: arrayOf(f32, WAVE_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: HeightFieldParams }\n}), \"waveEquationLayout\");\nconst heightFieldMarchLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\treadBuf: {\n\t\tstorage: arrayOf(f32, WAVE_CELLS),\n\t\taccess: \"readonly\"\n\t},\n\tparams: { uniform: HeightFieldParams },\n\tuvMaskTex: { storageTexture: textureStorage2d(HEIGHT_FIELD_STATE_FORMAT, \"write-only\") },\n\tlitTex: { storageTexture: textureStorage2d(HEIGHT_FIELD_STATE_FORMAT, \"write-only\") }\n}), \"heightFieldMarchLayout\");\nfunction createWaveStateBuffers(root) {\n\treturn {\n\t\tbufferA: createStateBuffer(root, f32, WAVE_CELLS),\n\t\tbufferB: createStateBuffer(root, f32, WAVE_CELLS),\n\t\treadBuf: createStateBuffer(root, f32, WAVE_CELLS)\n\t};\n}\nfunction buildSpectralHeightField(waveType, octaveCount, cursorEnabled) {\n\tconst invTotalWeight = 1 / (2 - Math.pow(.5, Math.max(octaveCount, 1) - 1));\n\treturn typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = heightFieldMarchLayout.$.params;\n\t\tconst u = uv.x;\n\t\tconst v = uv.y;\n\t\tconst amp = p.amp;\n\t\tconst freq = p.freq;\n\t\tconst seedU = p.seed;\n\t\tlet waveVal = f32(0);\n\t\tif (waveType === 1) {\n\t\t\tlet accSin = f32(0);\n\t\t\tfor (let i = 0; i \u003c octaveCount; i++) {\n\t\t\t\tconst iF = f32(i);\n\t\t\t\tconst scale = exp2(iF);\n\t\t\t\tconst weight = exp2(__tsover_mul(iF, -1));\n\t\t\t\tconst cu$1 = cos(__tsover_mul(iF, 1.111));\n\t\t\t\tconst su = sin(__tsover_mul(iF, 1.111));\n\t\t\t\tconst ru = __tsover_sub(__tsover_mul(u, cu$1), __tsover_mul(v, su));\n\t\t\t\tconst phase = __tsover_add(__tsover_add(__tsover_mul(__tsover_mul(__tsover_mul(ru, freq), scale), TWO_PI), __tsover_mul(p.t, __tsover_add(1, __tsover_mul(iF, .2)))), __tsover_mul(seedU, __tsover_add(1, __tsover_mul(iF, .5))));\n\t\t\t\taccSin = __tsover_add(accSin, __tsover_mul(sin(phase), weight));\n\t\t\t}\n\t\t\twaveVal = __tsover_mul(accSin, invTotalWeight);\n\t\t} else if (waveType === 2) {\n\t\t\tlet accR = f32(0);\n\t\t\tfor (let i = 0; i \u003c octaveCount; i++) {\n\t\t\t\tconst iF = f32(i);\n\t\t\t\tconst scale = exp2(iF);\n\t\t\t\tconst weight = exp2(__tsover_mul(iF, -1));\n\t\t\t\tconst driftX = cos(__tsover_mul(iF, 2.39996));\n\t\t\t\tconst driftY = sin(__tsover_mul(iF, 2.39996));\n\t\t\t\tconst coord = vec2f(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(u, freq), scale), __tsover_mul(p.t, __tsover_mul(driftX, .3))), seedU), __tsover_add(__tsover_add(__tsover_mul(__tsover_mul(v, freq), scale), __tsover_mul(p.t, __tsover_mul(driftY, .3))), __tsover_mul(seedU, .7)));\n\t\t\t\taccR = __tsover_add(accR, __tsover_mul(mxNoiseFloat2(coord), weight));\n\t\t\t}\n\t\t\tconst n = __tsover_mul(accR, invTotalWeight);\n\t\t\twaveVal = __tsover_sub(__tsover_mul(__tsover_sub(1, abs(n)), 2), 1);\n\t\t} else {\n\t\t\tconst warpFreq = __tsover_mul(freq, .5);\n\t\t\tconst wx = mxNoiseFloat2(vec2f(__tsover_add(__tsover_add(__tsover_mul(u, warpFreq), __tsover_mul(p.t, .1)), seedU), __tsover_add(__tsover_mul(v, warpFreq), __tsover_mul(seedU, 1.3))));\n\t\t\tconst wy = mxNoiseFloat2(vec2f(__tsover_add(__tsover_add(__tsover_mul(u, warpFreq), seedU), 17.3), __tsover_add(__tsover_add(__tsover_add(__tsover_mul(v, warpFreq), __tsover_mul(p.t, .07)), seedU), 31.1)));\n\t\t\tconst wu = __tsover_add(u, __tsover_mul(wx, .4));\n\t\t\tconst wv = __tsover_add(v, __tsover_mul(wy, .4));\n\t\t\tlet accW = f32(0);\n\t\t\tfor (let i = 0; i \u003c octaveCount; i++) {\n\t\t\t\tconst iF = f32(i);\n\t\t\t\tconst scale = exp2(iF);\n\t\t\t\tconst weight = exp2(__tsover_mul(iF, -1));\n\t\t\t\tconst driftX = cos(__tsover_mul(iF, 2.39996));\n\t\t\t\tconst driftY = sin(__tsover_mul(iF, 2.39996));\n\t\t\t\tconst coord = vec2f(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(wu, freq), scale), __tsover_mul(p.t, __tsover_mul(driftX, .3))), seedU), __tsover_add(__tsover_add(__tsover_mul(__tsover_mul(wv, freq), scale), __tsover_mul(p.t, __tsover_mul(driftY, .3))), __tsover_mul(seedU, .7)));\n\t\t\t\taccW = __tsover_add(accW, __tsover_mul(mxNoiseFloat2(coord), weight));\n\t\t\t}\n\t\t\twaveVal = __tsover_mul(accW, invTotalWeight);\n\t\t}\n\t\tconst cu = __tsover_mul(__tsover_sub(u, .5), 2);\n\t\tconst cv = __tsover_mul(__tsover_sub(v, .5), 2);\n\t\tconst pinFalloff = smoothstep(.6, 1, max(abs(cu), abs(cv)));\n\t\tconst pinMask = mix(f32(1), __tsover_sub(1, pinFalloff), p.edgePin);\n\t\tconst baseHeight = __tsover_mul(__tsover_mul(waveVal, amp), pinMask);\n\t\tif (cursorEnabled) {\n\t\t\tlet ripple = f32(0);\n\t\t\tif (p.cursorActive \u003e .5) {\n\t\t\t\tconst H = f32(3);\n\t\t\t\tconst waveU = __tsover_add(__tsover_div(__tsover_sub(uv.x, .5), H), .5);\n\t\t\t\tconst waveV = __tsover_add(__tsover_div(__tsover_sub(uv.y, .5), H), .5);\n\t\t\t\tconst Nm1 = f32(WAVE_MAX);\n\t\t\t\tconst gx = __tsover_mul(clamp(waveU, 0, 1), Nm1);\n\t\t\t\tconst gy = __tsover_mul(clamp(waveV, 0, 1), Nm1);\n\t\t\t\tconst ix = u32(clamp(gx, 0, Nm1));\n\t\t\t\tconst iy = u32(clamp(gy, 0, Nm1));\n\t\t\t\tconst ix1 = min(__tsover_add(ix, u32(1)), u32(WAVE_MAX));\n\t\t\t\tconst iy1 = min(__tsover_add(iy, u32(1)), u32(WAVE_MAX));\n\t\t\t\tconst fx = __tsover_sub(gx, floor(gx));\n\t\t\t\tconst fy = __tsover_sub(gy, floor(gy));\n\t\t\t\tconst W = u32(256);\n\t\t\t\tconst v00 = heightFieldMarchLayout.$.readBuf[__tsover_add(__tsover_mul(iy, W), ix)];\n\t\t\t\tconst v10 = heightFieldMarchLayout.$.readBuf[__tsover_add(__tsover_mul(iy, W), ix1)];\n\t\t\t\tconst v01 = heightFieldMarchLayout.$.readBuf[__tsover_add(__tsover_mul(iy1, W), ix)];\n\t\t\t\tconst v11 = heightFieldMarchLayout.$.readBuf[__tsover_add(__tsover_mul(iy1, W), ix1)];\n\t\t\t\tconst waveSample = mix(mix(v00, v10, fx), mix(v01, v11, fx), fy);\n\t\t\t\tripple = __tsover_mul(waveSample, __tsover_mul(p.cursorIntensity, .05));\n\t\t\t}\n\t\t\treturn __tsover_add(baseHeight, ripple);\n\t\t} else return baseHeight;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"amp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"amp\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"freq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"seedU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"waveVal\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"waveType\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"accSin\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"octaveCount\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t\t\t\t\t\t[\"iF\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.111\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.111\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ru\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"cu\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"su\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ru\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"seedU\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"accSin\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"accSin\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"phase\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"weight\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"waveVal\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"accSin\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"invTotalWeight\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"waveType\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"accR\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"octaveCount\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t\t\t\t\t\t\t[\"iF\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"driftX\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.39996\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"driftY\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.39996\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"driftX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"seedU\"\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"driftY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"seedU\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"accR\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"accR\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"noise.mxNoiseFloat2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"coord\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"weight\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"accR\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"invTotalWeight\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"waveVal\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"warpFreq\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"noise.mxNoiseFloat2\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"warpFreq\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"seedU\"\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"warpFreq\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"seedU\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"noise.mxNoiseFloat2\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"warpFreq\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"seedU\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"17.3\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"warpFreq\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.07\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"seedU\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"31.1\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"wu\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"wv\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"accW\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"octaveCount\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t\t\t\t\t\t\t[\"iF\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"driftX\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.39996\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"driftY\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.39996\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wu\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"driftX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"seedU\"\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"driftY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"seedU\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"accW\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"accW\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"noise.mxNoiseFloat2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"coord\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"weight\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"waveVal\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"accW\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"invTotalWeight\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cu\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"inner\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"cu\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"cv\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pinFalloff\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"inner\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pinMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"pinFalloff\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"edgePin\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"baseHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"waveVal\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"amp\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"pinMask\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t\"cursorEnabled\",\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"ripple\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"cursorActive\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"H\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"WAVE_HALFEXTENT\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"waveU\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"H\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"waveV\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"H\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"Nm1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"WAVE_MAX\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"waveU\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"Nm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"waveV\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"Nm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"Nm1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"Nm1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ix1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"WAVE_MAX\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"WAVE_MAX\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"W\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"WAVE_GRID\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"W\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"ix\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"W\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"ix1\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"W\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"ix\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"W\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"ix1\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"waveSample\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"ripple\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"waveSample\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cursorIntensity\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"baseHeight\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"ripple\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]],\n\t\t\t\t\t[0, [[10, \"baseHeight\"]]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"heightFieldMarchLayout\": () =\u003e heightFieldMarchLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"waveType\": () =\u003e waveType,\n\t\t\t\"octaveCount\": () =\u003e octaveCount,\n\t\t\t\"std.exp2\": () =\u003e exp2,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\t\"invTotalWeight\": () =\u003e invTotalWeight,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"noise.mxNoiseFloat2\": () =\u003e mxNoiseFloat2,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"cursorEnabled\": () =\u003e cursorEnabled,\n\t\t\t\"WAVE_HALFEXTENT\": () =\u003e 3,\n\t\t\t\"WAVE_MAX\": () =\u003e WAVE_MAX,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"WAVE_GRID\": () =\u003e 256\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"spectralHeightField\");\n}\nfunction makeWaveEquationKernel() {\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tif (cx \u003e u32(0) \u0026\u0026 cx \u003c u32(WAVE_MAX) \u0026\u0026 cy \u003e u32(0) \u0026\u0026 cy \u003c u32(WAVE_MAX)) {\n\t\t\tconst p = waveEquationLayout.$.params;\n\t\t\tconst gs = u32(256);\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, gs), cx);\n\t\t\tconst left = waveEquationLayout.$.readSrc[__tsover_sub(idx, u32(1))];\n\t\t\tconst right = waveEquationLayout.$.readSrc[__tsover_add(idx, u32(1))];\n\t\t\tconst up = waveEquationLayout.$.readSrc[__tsover_sub(idx, gs)];\n\t\t\tconst down = waveEquationLayout.$.readSrc[__tsover_add(idx, gs)];\n\t\t\tconst center = waveEquationLayout.$.readSrc[idx];\n\t\t\tconst sum = __tsover_add(__tsover_add(__tsover_add(left, right), up), down);\n\t\t\tconst prev = waveEquationLayout.$.writeBuf[idx];\n\t\t\tconst dampFactor = __tsover_sub(1, __tsover_mul(p.decay, .004));\n\t\t\tconst k2 = __tsover_mul(.5, __tsover_mul(p.waveSpeed, p.waveSpeed));\n\t\t\tconst lap = __tsover_sub(sum, __tsover_mul(center, 4));\n\t\t\tlet next = __tsover_mul(__tsover_sub(__tsover_add(__tsover_mul(center, 2), __tsover_mul(lap, k2)), prev), dampFactor);\n\t\t\tconst cellU = __tsover_div(__tsover_add(f32(cx), .5), f32(256));\n\t\t\tconst cellV = __tsover_div(__tsover_add(f32(cy), .5), f32(256));\n\t\t\tconst ddx = __tsover_sub(cellU, p.cursorWaveX);\n\t\t\tconst ddy = __tsover_sub(cellV, p.cursorWaveY);\n\t\t\tconst distSq = __tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy));\n\t\t\tconst influenceRadius = __tsover_mul(p.radius, 3);\n\t\t\tif (distSq \u003c __tsover_mul(influenceRadius, influenceRadius) \u0026\u0026 p.mouseSpeed \u003e .01) {\n\t\t\t\tconst influence = exp(__tsover_mul(__tsover_div(distSq, max(__tsover_mul(p.radius, p.radius), f32(1e-4))), -1));\n\t\t\t\tnext = __tsover_sub(next, __tsover_mul(__tsover_mul(__tsover_mul(influence, p.mouseSpeed), p.dt), 3));\n\t\t\t}\n\t\t\tconst bound = f32(6);\n\t\t\tnext = clamp(next, __tsover_mul(bound, -1), bound);\n\t\t\twaveEquationLayout.$.writeBuf[idx] = next;\n\t\t\twaveEquationLayout.$.readBuf[idx] = next;\n\t\t}\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t3,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"WAVE_MAX\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[\"WAVE_MAX\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"gs\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[\"WAVE_GRID\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"readSrc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"readSrc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"up\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"readSrc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"readSrc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"readSrc\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"right\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"up\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"down\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"writeBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dampFactor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"WAVE_DECAY_PER_STEP\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"waveSpeed\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"waveSpeed\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"lap\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"lap\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"k2\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dampFactor\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cellU\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"WAVE_GRID\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cellV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"WAVE_GRID\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cellU\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"cursorWaveX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cellV\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"cursorWaveY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"influenceRadius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"influenceRadius\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"influenceRadius\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"mouseSpeed\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0.0001\"]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mouseSpeed\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bound\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"CURSOR_WAVE_BOUND\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"next\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"bound\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"bound\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"writeBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\"next\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"waveEquationLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\"next\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"WAVE_MAX\": () =\u003e WAVE_MAX,\n\t\t\t\"waveEquationLayout\": () =\u003e waveEquationLayout,\n\t\t\t\"WAVE_GRID\": () =\u003e 256,\n\t\t\t\"WAVE_DECAY_PER_STEP\": () =\u003e .004,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"CURSOR_WAVE_BOUND\": () =\u003e 6,\n\t\t\t\"std.clamp\": () =\u003e clamp\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"waveEquationStep\");\n}\nfunction makeHeightFieldMarchKernel(opts) {\n\tconst { waveType, octaveCount, edgeMode, lightingEnabled, cursorEnabled, marchSteps, marchRefine, computeW, computeH } = opts;\n\tconst heightFn = buildSpectralHeightField(waveType, octaveCount, cursorEnabled);\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = heightFieldMarchLayout.$.params;\n\t\tconst screenU = __tsover_div(__tsover_add(f32(cx), .5), f32(computeW));\n\t\tconst screenV = __tsover_div(__tsover_add(f32(cy), .5), f32(computeH));\n\t\tconst ndcX = __tsover_mul(__tsover_mul(__tsover_sub(screenU, .5), 2), p.aspect);\n\t\tconst ndcY = __tsover_mul(__tsover_mul(__tsover_sub(screenV, .5), 2), -1);\n\t\tconst rayDir = normalize(p.camForward.mul(p.focal).add(p.camRight.mul(ndcX)).add(p.camUp.mul(ndcY)));\n\t\tconst envelope = p.heightEnvelope;\n\t\tconst dzSign = select(f32(-1), f32(1), rayDir.z \u003e= 0);\n\t\tconst dzSafe = __tsover_mul(dzSign, max(abs(rayDir.z), f32(1e-6)));\n\t\tconst tTop = __tsover_div(__tsover_sub(envelope, p.camPos.z), dzSafe);\n\t\tconst tBot = __tsover_div(__tsover_sub(__tsover_mul(envelope, -1), p.camPos.z), dzSafe);\n\t\tconst tEnter = max(min(tTop, tBot), f32(0));\n\t\tconst tExit = min(max(tTop, tBot), f32(15));\n\t\tconst farPos = p.camPos.add(rayDir.mul(f32(15)));\n\t\tlet hit = f32(0);\n\t\tlet finalT = f32(15);\n\t\tlet hitU = __tsover_add(__tsover_mul(farPos.x, .5), .5);\n\t\tlet hitV = __tsover_add(__tsover_mul(farPos.y, .5), .5);\n\t\tlet lit = vec3f(1, 1, 1);\n\t\tif (tExit \u003e tEnter) {\n\t\t\tconst stepSize = __tsover_div(__tsover_sub(tExit, tEnter), f32(marchSteps));\n\t\t\tlet tMarch = tEnter;\n\t\t\tconst pStart = p.camPos.add(rayDir.mul(tEnter));\n\t\t\tlet prevDiff = __tsover_sub(pStart.z, heightFn(vec2f(__tsover_add(__tsover_mul(pStart.x, .5), .5), __tsover_add(__tsover_mul(pStart.y, .5), .5))));\n\t\t\tfor (let s = 0; s \u003c marchSteps; s++) {\n\t\t\t\ttMarch = __tsover_add(tMarch, stepSize);\n\t\t\t\tconst pos = p.camPos.add(rayDir.mul(tMarch));\n\t\t\t\tconst h = heightFn(vec2f(__tsover_add(__tsover_mul(pos.x, .5), .5), __tsover_add(__tsover_mul(pos.y, .5), .5)));\n\t\t\t\tconst diff = __tsover_sub(pos.z, h);\n\t\t\t\tif (diff \u003c 0 \u0026\u0026 prevDiff \u003e 0) {\n\t\t\t\t\thit = 1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tprevDiff = diff;\n\t\t\t}\n\t\t\tif (hit \u003e .5) {\n\t\t\t\tlet tLow = __tsover_sub(tMarch, stepSize);\n\t\t\t\tlet tHigh = tMarch;\n\t\t\t\tfor (let r = 0; r \u003c marchRefine; r++) {\n\t\t\t\t\tconst tMid = __tsover_mul(__tsover_add(tLow, tHigh), .5);\n\t\t\t\t\tconst pMid = p.camPos.add(rayDir.mul(tMid));\n\t\t\t\t\tif (__tsover_sub(pMid.z, heightFn(vec2f(__tsover_add(__tsover_mul(pMid.x, .5), .5), __tsover_add(__tsover_mul(pMid.y, .5), .5)))) \u003e 0) tLow = tMid;\n\t\t\t\t\telse tHigh = tMid;\n\t\t\t\t}\n\t\t\t\tfinalT = __tsover_mul(__tsover_add(tLow, tHigh), .5);\n\t\t\t\tconst hitPos = p.camPos.add(rayDir.mul(finalT));\n\t\t\t\thitU = __tsover_add(__tsover_mul(hitPos.x, .5), .5);\n\t\t\t\thitV = __tsover_add(__tsover_mul(hitPos.y, .5), .5);\n\t\t\t\tif (lightingEnabled) {\n\t\t\t\t\tconst normalEps = .01;\n\t\t\t\t\tconst hC = heightFn(vec2f(hitU, hitV));\n\t\t\t\t\tconst hR = heightFn(vec2f(__tsover_add(hitU, normalEps), hitV));\n\t\t\t\t\tconst hUp = heightFn(vec2f(hitU, __tsover_add(hitV, normalEps)));\n\t\t\t\t\tconst dhdu = __tsover_div(__tsover_sub(hR, hC), normalEps);\n\t\t\t\t\tconst dhdv = __tsover_div(__tsover_sub(hUp, hC), normalEps);\n\t\t\t\t\tconst nrm = normalize(vec3f(__tsover_mul(dhdu, -.5), __tsover_mul(dhdv, -.5), 1));\n\t\t\t\t\tconst lightDir = normalize(vec3f(p.lightX, p.lightY, p.lightZ));\n\t\t\t\t\tconst viewDir = rayDir.mul(-1);\n\t\t\t\t\tconst diffuse = clamp(dot(nrm, lightDir), 0, 1);\n\t\t\t\t\tconst halfVec = normalize(lightDir.add(viewDir));\n\t\t\t\t\tconst specPow = __tsover_add(__tsover_mul(p.glossiness, 128), 4);\n\t\t\t\t\tconst specular = __tsover_mul(pow(clamp(dot(nrm, halfVec), 0, 1), specPow), p.highlights);\n\t\t\t\t\tconst ambient = vec3f(.4, .4, .4);\n\t\t\t\t\tconst tintedDiffuse = p.lightColor.mul(__tsover_mul(diffuse, .6));\n\t\t\t\t\tconst tintedSpec = p.lightColor.mul(specular);\n\t\t\t\t\tconst totalLight = ambient.add(tintedDiffuse).add(tintedSpec);\n\t\t\t\t\tlit = clamp(mix(vec3f(1, 1, 1), totalLight, p.lighting), vec3f(0, 0, 0), vec3f(3, 3, 3));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst rawSampleUV = vec2f(hitU, __tsover_sub(1, hitV));\n\t\tlet finalUV = vec2f(rawSampleUV.x, rawSampleUV.y);\n\t\tlet outOfBoundsMask = f32(1);\n\t\tif (edgeMode === 2) finalUV = edgeMirrorUV(rawSampleUV);\n\t\telse if (edgeMode === 3) finalUV = edgeWrapUV(rawSampleUV);\n\t\telse if (edgeMode === 1) {\n\t\t\tconst inside = rawSampleUV.x \u003e= 0 \u0026\u0026 rawSampleUV.x \u003c= 1 \u0026\u0026 rawSampleUV.y \u003e= 0 \u0026\u0026 rawSampleUV.y \u003c= 1;\n\t\t\toutOfBoundsMask = select(f32(0), f32(1), inside);\n\t\t} else finalUV = clamp(rawSampleUV, vec2f(0, 0), vec2f(1, 1));\n\t\tconst CUTOFF_RANGE = f32(15);\n\t\tconst edgeAA = .05;\n\t\tconst nearT = __tsover_mul(p.nearCutoff, CUTOFF_RANGE);\n\t\tconst farT = __tsover_mul(p.farCutoff, CUTOFF_RANGE);\n\t\tconst nearMask = smoothstep(__tsover_sub(nearT, edgeAA), __tsover_add(nearT, edgeAA), finalT);\n\t\tconst farMask = smoothstep(__tsover_add(farT, edgeAA), __tsover_sub(farT, edgeAA), finalT);\n\t\tconst finalMask = __tsover_mul(__tsover_mul(hit, outOfBoundsMask), __tsover_mul(nearMask, farMask));\n\t\ttextureStore(heightFieldMarchLayout.$.uvMaskTex, vec2u(cx, cy), vec4f(finalUV.x, finalUV.y, finalMask, 0));\n\t\ttextureStore(heightFieldMarchLayout.$.litTex, vec2u(cx, cy), vec4f(lit, 0));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"screenU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"computeW\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"screenV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"computeH\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ndcX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"screenU\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ndcY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"screenV\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"camForward\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"focal\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"camRight\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"ndcX\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"camUp\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"ndcY\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"envelope\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"heightEnvelope\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dzSign\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dzSafe\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dzSign\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.000001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tTop\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"envelope\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"camPos\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"dzSafe\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tBot\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"envelope\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"camPos\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"dzSafe\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tEnter\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[\"tTop\", \"tBot\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tExit\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"tTop\", \"tBot\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"MARCH_FAR\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"farPos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"camPos\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"MARCH_FAR\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"hit\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"finalT\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"MARCH_FAR\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"hitU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"farPos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"hitV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"farPos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"lit\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tExit\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\"tEnter\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"stepSize\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tExit\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"tEnter\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"marchSteps\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"tMarch\",\n\t\t\t\t\t\t\t\"tEnter\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"pStart\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"camPos\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"tEnter\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"prevDiff\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pStart\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"heightFn\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pStart\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pStart\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"marchSteps\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"tMarch\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tMarch\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"stepSize\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"camPos\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"tMarch\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"heightFn\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"prevDiff\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t], [17]]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"prevDiff\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\"diff\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"tLow\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tMarch\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"stepSize\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"tHigh\",\n\t\t\t\t\t\t\t\t\t\"tMarch\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"marchRefine\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"tMid\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tLow\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tHigh\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"pMid\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"camPos\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"tMid\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dMid\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pMid\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"heightFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pMid\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pMid\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dMid\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tLow\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tMid\"\n\t\t\t\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tHigh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tMid\"\n\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"finalT\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tLow\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"tHigh\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"camPos\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"finalT\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"hitU\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"hitV\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\"lightingEnabled\",\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"normalEps\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"hC\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"heightFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"hitU\", \"hitV\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"hR\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"heightFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hitU\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"normalEps\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t], \"hitV\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"hUp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"heightFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"hitU\", [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hitV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"normalEps\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dhdu\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"hR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"hC\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"normalEps\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dhdv\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"hUp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"hC\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"normalEps\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"nrm\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dhdu\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dhdv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"lightDir\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightX\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightY\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightZ\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"viewDir\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rayDir\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"diffuse\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"nrm\", \"lightDir\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"halfVec\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightDir\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"viewDir\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"specPow\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"glossiness\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"128\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"specular\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"nrm\", \"halfVec\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t], \"specPow\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"highlights\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"ambient\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"tintedDiffuse\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightColor\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"diffuse\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"tintedSpec\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightColor\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"specular\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"totalLight\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ambient\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"tintedDiffuse\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"tintedSpec\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"lit\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"totalLight\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lighting\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"hitU\", [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"hitV\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"outOfBoundsMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"edgeMode\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"edges.edgeMirrorUV\",\n\t\t\t\t\t\t\t[\"rawSampleUV\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"edgeMode\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"edges.edgeWrapUV\",\n\t\t\t\t\t\t\t\t[\"rawSampleUV\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"edgeMode\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"inside\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"outOfBoundsMask\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"inside\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"rawSampleUV\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"CUTOFF_RANGE\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"MARCH_FAR\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"edgeAA\",\n\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nearT\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"nearCutoff\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"CUTOFF_RANGE\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"farT\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"farCutoff\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"CUTOFF_RANGE\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nearMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"nearT\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"edgeAA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"nearT\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"edgeAA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"finalT\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"farMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"farT\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"edgeAA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"farT\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"edgeAA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"finalT\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"finalMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"outOfBoundsMask\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nearMask\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"farMask\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"uvMaskTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"finalMask\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"heightFieldMarchLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"litTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\"lit\", [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"heightFieldMarchLayout\": () =\u003e heightFieldMarchLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"computeW\": () =\u003e computeW,\n\t\t\t\"computeH\": () =\u003e computeH,\n\t\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"MARCH_FAR\": () =\u003e 15,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"marchSteps\": () =\u003e marchSteps,\n\t\t\t\"heightFn\": () =\u003e heightFn,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"marchRefine\": () =\u003e marchRefine,\n\t\t\t\"lightingEnabled\": () =\u003e lightingEnabled,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"std.pow\": () =\u003e pow,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"edgeMode\": () =\u003e edgeMode,\n\t\t\t\"edges.edgeMirrorUV\": () =\u003e edgeMirrorUV,\n\t\t\t\"edges.edgeWrapUV\": () =\u003e edgeWrapUV,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"heightFieldMarch\");\n}\nfunction createKernelPass(root, kernel, opts = {}) {\n\tconst k = kernel;\n\treturn createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tk(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"k\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"k\": () =\u003e k }\n\t}) \u0026\u0026 $.f)({}), opts);\n}\nfunction createGridKernelPass(root, kernel, opts = {}) {\n\treturn createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernel\": () =\u003e kernel }\n\t}) \u0026\u0026 $.f)({}), {\n\t\t...opts.size ? { size: opts.size } : {},\n\t\t...opts.bindGroup ? { bindGroup: opts.bindGroup } : {}\n\t});\n}\nvar grayScottParamsSchema = () =\u003e struct({\n\tfeed: f32,\n\tkill: f32,\n\tdv: f32,\n\tbrushRadSq: f32,\n\tbrushStrength: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\tcursorActive: f32,\n\tdriveInfluence: f32,\n\tdriveContrast: f32,\n\tdriveThreshold: f32,\n\tdriveInvert: f32,\n\tdriveMapX: f32,\n\tdriveMapY: f32,\n\t_pad0: f32,\n\t_pad1: f32\n}).$name(\"GrayScottParams\");\nvar makeGrayScottPlainLayout = (n, Params) =\u003e typegpu_default.bindGroupLayout({\n\treadBuf: {\n\t\tstorage: arrayOf(vec2f, n * n),\n\t\taccess: \"readonly\"\n\t},\n\twriteBuf: {\n\t\tstorage: arrayOf(vec2f, n * n),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: Params }\n});\nvar makeGrayScottDriveLayout = (n, Params) =\u003e typegpu_default.bindGroupLayout({\n\treadBuf: {\n\t\tstorage: arrayOf(vec2f, n * n),\n\t\taccess: \"readonly\"\n\t},\n\twriteBuf: {\n\t\tstorage: arrayOf(vec2f, n * n),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: Params },\n\tdriveTex: { texture: texture2d(f32) }\n});\nfunction buildGrayScottStep(opts) {\n\tconst { n, namePrefix, drive } = opts;\n\tconst Params = grayScottParamsSchema();\n\tconst suffix = drive ? \"Drive\" : \"\";\n\tconst layout = drive ? makeGrayScottDriveLayout(n, Params) : makeGrayScottPlainLayout(n, Params);\n\tconst driveLayout = drive ? layout : null;\n\tconst nbr = typegpu_default.fn([\n\t\ti32,\n\t\ti32,\n\t\ti32,\n\t\ti32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ii, ji, di, dj) =\u003e {\n\t\t\"use gpu\";\n\t\tconst row = clamp(__tsover_add(ii, di), 0, __tsover_sub(n, 1));\n\t\tconst col = clamp(__tsover_add(ji, dj), 0, __tsover_sub(n, 1));\n\t\treturn layout.$.readBuf[u32(__tsover_add(__tsover_mul(row, n), col))];\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ii\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ji\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"di\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"dj\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"row\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"di\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"col\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"dj\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t8,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"col\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Nbr${suffix}`);\n\tconst driveMap = drive \u0026\u0026 driveLayout ? typegpu_default.fn([u32, u32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = driveLayout.$.params;\n\t\tconst dims = textureDimensions(driveLayout.$.driveTex);\n\t\tconst fw = f32(dims.x);\n\t\tconst fh = f32(dims.y);\n\t\tconst fx = __tsover_div(__tsover_add(f32(cx), .5), f32(n));\n\t\tconst fy = __tsover_div(__tsover_add(f32(cy), .5), f32(n));\n\t\tconst cu = clamp(__tsover_add(__tsover_mul(__tsover_sub(fx, .5), p.driveMapX), .5), f32(0), f32(1));\n\t\tconst cv = clamp(__tsover_add(__tsover_mul(__tsover_sub(fy, .5), p.driveMapY), .5), f32(0), f32(1));\n\t\tconst px = u32(min(__tsover_mul(cu, fw), __tsover_sub(fw, 1)));\n\t\tconst py = u32(min(__tsover_mul(cv, fh), __tsover_sub(fh, 1)));\n\t\tconst texel = textureLoad(driveLayout.$.driveTex, vec2u(px, py), 0);\n\t\tconst cov = clamp(texel.w, f32(0), f32(1));\n\t\tconst luma = dot(texel.xyz.div(max(texel.w, f32(.001))), vec3f(.2126, .7152, .0722));\n\t\tconst gain = __tsover_add(f32(1), __tsover_mul(p.driveContrast, f32(drive.contrastMax)));\n\t\tconst shaped = clamp(__tsover_add(__tsover_mul(__tsover_sub(luma, p.driveThreshold), gain), .5), f32(0), f32(1));\n\t\tlet signed = __tsover_mul(__tsover_sub(shaped, .5), 2);\n\t\tsigned = select(signed, __tsover_mul(signed, -1), p.driveInvert \u003e .5);\n\t\treturn __tsover_mul(signed, cov);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"driveLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dims\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureDimensions\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"driveLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"driveTex\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fh\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cu\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"driveMapX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"driveMapY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"fw\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fw\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"fh\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fh\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"texel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"driveLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"driveTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"px\", \"py\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cov\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"luma\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"rgb\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gain\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"driveContrast\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"drive.contrastMax\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"shaped\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"luma\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"driveThreshold\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gain\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"signed\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"shaped\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"signed\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"signed\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"signed\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"driveInvert\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t\"signed\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cov\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"driveLayout\": () =\u003e driveLayout,\n\t\t\t\"std.textureDimensions\": () =\u003e textureDimensions,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"drive.contrastMax\": () =\u003e drive.contrastMax,\n\t\t\t\"std.select\": () =\u003e select\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}DriveMap`) : null;\n\tconst buildDriveRates = (drv, dm) =\u003e typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tu32,\n\t\tu32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((feed, kill, cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst mod = __tsover_mul(dm(cx, cy), layout.$.params.driveInfluence);\n\t\treturn vec2f(clamp(__tsover_add(feed, __tsover_mul(mod, f32(drv.dFeed))), f32(drv.feedMin), f32(drv.feedMax)), clamp(__tsover_sub(kill, __tsover_mul(mod, f32(drv.dKill))), f32(drv.killMin), f32(drv.killMax)));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"feed\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"kill\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"mod\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"dm\",\n\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"driveInfluence\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"feed\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"mod\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"drv.dFeed\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"drv.feedMin\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"drv.feedMax\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"kill\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"mod\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"drv.dKill\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"drv.killMin\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"drv.killMax\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"dm\": () =\u003e dm,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"drv.dFeed\": () =\u003e drv.dFeed,\n\t\t\t\"drv.feedMin\": () =\u003e drv.feedMin,\n\t\t\t\"drv.feedMax\": () =\u003e drv.feedMax,\n\t\t\t\"drv.dKill\": () =\u003e drv.dKill,\n\t\t\t\"drv.killMin\": () =\u003e drv.killMin,\n\t\t\t\"drv.killMax\": () =\u003e drv.killMax\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Rates${suffix}`);\n\tconst rates = drive \u0026\u0026 driveMap ? buildDriveRates(drive, driveMap) : typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tu32,\n\t\tu32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((feed, kill) =\u003e {\n\t\t\"use gpu\";\n\t\treturn vec2f(feed, kill);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"feed\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"kill\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"feed\", \"kill\"]\n\t\t\t]]]]\n\t\t},\n\t\texternals: { \"d.vec2f\": () =\u003e vec2f }\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Rates`);\n\treturn {\n\t\tlayout,\n\t\tParams,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst self = layout.$.readBuf[idx];\n\t\t\tconst ii = i32(cy);\n\t\t\tconst ji = i32(cx);\n\t\t\tconst L = nbr(ii, ji, 0, -1);\n\t\t\tconst R = nbr(ii, ji, 0, 1);\n\t\t\tconst T = nbr(ii, ji, -1, 0);\n\t\t\tconst B = nbr(ii, ji, 1, 0);\n\t\t\tconst TL = nbr(ii, ji, -1, -1);\n\t\t\tconst TR = nbr(ii, ji, -1, 1);\n\t\t\tconst BL = nbr(ii, ji, 1, -1);\n\t\t\tconst BR = nbr(ii, ji, 1, 1);\n\t\t\tconst lapU = __tsover_sub(__tsover_add(__tsover_mul(__tsover_add(__tsover_add(__tsover_add(L.x, R.x), T.x), B.x), .2), __tsover_mul(__tsover_add(__tsover_add(__tsover_add(TL.x, TR.x), BL.x), BR.x), .05)), self.x);\n\t\t\tconst lapV = __tsover_sub(__tsover_add(__tsover_mul(__tsover_add(__tsover_add(__tsover_add(L.y, R.y), T.y), B.y), .2), __tsover_mul(__tsover_add(__tsover_add(__tsover_add(TL.y, TR.y), BL.y), BR.y), .05)), self.y);\n\t\t\tconst fk = rates(p.feed, p.kill, cx, cy);\n\t\t\tconst feedCell = fk.x;\n\t\t\tconst killCell = fk.y;\n\t\t\tconst U = self.x;\n\t\t\tconst V = self.y;\n\t\t\tconst uvv = __tsover_mul(__tsover_mul(U, V), V);\n\t\t\tlet newU = __tsover_add(U, __tsover_add(__tsover_sub(lapU, uvv), __tsover_mul(feedCell, __tsover_sub(1, U))));\n\t\t\tlet newV = __tsover_add(V, __tsover_sub(__tsover_add(__tsover_mul(p.dv, lapV), uvv), __tsover_mul(__tsover_add(feedCell, killCell), V)));\n\t\t\tif (p.cursorActive \u003e 0) {\n\t\t\t\tconst cellX = __tsover_add(f32(cx), .5);\n\t\t\t\tconst cellY = __tsover_add(f32(cy), .5);\n\t\t\t\tconst dxp = __tsover_sub(cellX, p.cursorX);\n\t\t\t\tconst dyp = __tsover_sub(cellY, p.cursorY);\n\t\t\t\tconst distSq = __tsover_add(__tsover_mul(dxp, dxp), __tsover_mul(dyp, dyp));\n\t\t\t\tconst inf = __tsover_mul(exp(__tsover_mul(__tsover_div(distSq, max(p.brushRadSq, f32(1))), -1)), p.cursorActive);\n\t\t\t\tnewV = min(__tsover_add(newV, __tsover_mul(inf, p.brushStrength)), f32(1));\n\t\t\t}\n\t\t\tnewU = clamp(newU, 0, 1);\n\t\t\tnewV = clamp(newV, 0, 1);\n\t\t\tlayout.$.writeBuf[idx] = vec2f(newU, newV);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"R\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"T\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"B\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"TL\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"TR\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"BL\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"BR\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"nbr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ii\",\n\t\t\t\t\t\t\t\t\"ji\",\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"lapU\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"R\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"T\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"B\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"TL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"TR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"BL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"BR\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"lapV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"R\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"T\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"B\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"TL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"TR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"BL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"BR\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fk\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"rates\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"feed\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"kill\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"feedCell\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fk\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"killCell\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fk\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"U\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"V\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uvv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"U\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"V\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"V\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"newU\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"U\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"lapU\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uvv\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"feedCell\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"U\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"newV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"V\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dv\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"lapV\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"uvv\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"feedCell\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"killCell\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"V\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"cursorActive\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dxp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dyp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dxp\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"dxp\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dyp\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"dyp\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"inf\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"brushRadSq\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorActive\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"newV\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"newV\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"inf\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"brushStrength\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"newU\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"newU\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"newV\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"newV\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"writeBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"newU\", \"newV\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"nbr\": () =\u003e nbr,\n\t\t\t\t\"rates\": () =\u003e rates,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}React${suffix}`)\n\t};\n}\nfunction buildScatterSeedKernel(opts) {\n\tconst { n, density, namePrefix } = opts;\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({ stateBuf: {\n\t\tstorage: arrayOf(vec2f, n * n),\n\t\taccess: \"mutable\"\n\t} }), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst h = hash12(vec2f(f32(cx), f32(cy)));\n\t\t\tconst vSeed = select(f32(0), f32(1), h \u003c density);\n\t\t\tlayout.$.stateBuf[idx] = vec2f(1, vSeed);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash12\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"vSeed\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"density\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"stateBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], \"vSeed\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"noise.hash12\": () =\u003e hash12,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"density\": () =\u003e density,\n\t\t\t\t\"layout\": () =\u003e layout\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Seed`)\n\t};\n}\nfunction buildPairPublishKernel(opts) {\n\tconst { n, format, namePrefix } = opts;\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsrcBuf: {\n\t\t\tstorage: arrayOf(vec2f, n * n),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\toutTex: { storageTexture: textureStorage2d(format, \"write-only\") }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\t\tconst s = layout.$.srcBuf[idx];\n\t\t\ttextureStore(layout.$.outTex, vec2u(cx, cy), vec4f(s.x, s.y, 0, 0));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"srcBuf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"n\": () =\u003e n,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Output`)\n\t};\n}\nvar brushWeightCache = /* @__PURE__ */ new Map();\nfunction buildAspectBrushWeight(n) {\n\treturn typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cxf, cyf, mouseX, mouseY, radius, falloff, aspect) =\u003e {\n\t\t\"use gpu\";\n\t\tconst dx = __tsover_sub(__tsover_div(cxf, n), mouseX);\n\t\tconst dy = __tsover_sub(__tsover_div(cyf, n), mouseY);\n\t\tconst ddx = select(dx, __tsover_mul(dx, aspect), aspect \u003e= 1);\n\t\tconst ddy = select(__tsover_div(dy, aspect), dy, aspect \u003e= 1);\n\t\tconst dist = sqrt(__tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy)));\n\t\tconst inner = __tsover_mul(radius, __tsover_sub(1, falloff));\n\t\treturn __tsover_sub(1, smoothstep(inner, radius, dist));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cxf\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cyf\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"mouseX\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"mouseY\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"radius\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"falloff\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aspect\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cxf\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"mouseX\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cyf\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"mouseY\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ddx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ddy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dist\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"inner\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"inner\",\n\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"aspectBrushWeight\");\n}\nfunction makeAspectBrushWeight(n) {\n\tconst hit = brushWeightCache.get(n);\n\tif (hit) return hit;\n\tconst built = buildAspectBrushWeight(n);\n\tbrushWeightCache.set(n, built);\n\treturn built;\n}\nfunction buildOddEvenSortSet(opts) {\n\tconst { n, format, namePrefix, vertical, direction } = opts;\n\tconst count = n * n;\n\tconst nF = n;\n\tconst maxC = n - 1;\n\tconst LumaParams = struct({\n\t\tinputWidth: f32,\n\t\tinputHeight: f32\n\t}).$name(\"SortKeyParams\");\n\tconst SwapParams = struct({\n\t\tmouseX: f32,\n\t\tmouseY: f32,\n\t\tradius: f32,\n\t\tfalloff: f32,\n\t\tdecay: f32,\n\t\taspect: f32,\n\t\tseed: f32\n\t}).$name(\"SortSwapParams\");\n\tconst lumaLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tinput: { texture: texture2d(f32) },\n\t\tlumaBuf: {\n\t\t\tstorage: arrayOf(f32, count),\n\t\t\taccess: \"mutable\"\n\t\t},\n\t\tparams: { uniform: LumaParams }\n\t}), \"lumaLayout\");\n\tconst swapLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\treadBuf: {\n\t\t\tstorage: arrayOf(f32, count),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\twriteBuf: {\n\t\t\tstorage: arrayOf(f32, count),\n\t\t\taccess: \"mutable\"\n\t\t},\n\t\tlumaBuf: {\n\t\t\tstorage: arrayOf(f32, count),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tparams: { uniform: SwapParams }\n\t}), \"swapLayout\");\n\tconst outputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsrcBuf: {\n\t\t\tstorage: arrayOf(f32, count),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tstateTex: { storageTexture: textureStorage2d(format, \"write-only\") }\n\t}), \"outputLayout\");\n\tconst brushWeight = makeAspectBrushWeight(n);\n\tconst key = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = lumaLayout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), nF);\n\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), nF);\n\t\tconst ix = clamp(i32(round(__tsover_mul(u, p.inputWidth))), 0, i32(__tsover_sub(p.inputWidth, 1)));\n\t\tconst iy = clamp(i32(round(__tsover_mul(v, p.inputHeight))), 0, i32(__tsover_sub(p.inputHeight, 1)));\n\t\tconst rgb = unpremultiplyAlpha(textureLoad(lumaLayout.$.input, vec2u(u32(ix), u32(iy)), 0)).xyz;\n\t\tlumaLayout.$.lumaBuf[idx] = dot(rgb, vec3f(.299, .587, .114));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lumaLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"nF\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"nF\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"texel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"lumaLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"ix\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"iy\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"blend.unpremultiplyAlpha\",\n\t\t\t\t\t\t\t[\"texel\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"lumaLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"lumaBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"rgb\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"lumaLayout\": () =\u003e lumaLayout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"nF\": () =\u003e nF,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"blend.unpremultiplyAlpha\": () =\u003e unpremultiplyAlpha,\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Luma`);\n\tconst makeSwap = (parity) =\u003e typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = swapLayout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst xf = f32(cx);\n\t\tconst yf = f32(cy);\n\t\tconst lineC = vertical ? cy : cx;\n\t\tconst fixedC = vertical ? cx : cy;\n\t\tconst lineCf = f32(lineC);\n\t\tconst lineCi = i32(lineC);\n\t\tconst myOff = swapLayout.$.readBuf[idx];\n\t\tconst myCol = clamp(__tsover_add(lineCf, myOff), 0, maxC);\n\t\tconst isLeft = __tsover_mod(__tsover_add(lineC, u32(parity)), u32(2)) === u32(0);\n\t\tconst partnerLineI = select(__tsover_sub(lineCi, 1), __tsover_add(lineCi, 1), isLeft);\n\t\tconst valid = partnerLineI \u003e= 0 \u0026\u0026 partnerLineI \u003c n;\n\t\tconst pClamped = clamp(partnerLineI, 0, __tsover_sub(n, 1));\n\t\tconst pClampedU = u32(pClamped);\n\t\tconst partnerX = vertical ? fixedC : pClampedU;\n\t\tconst partnerY = vertical ? pClampedU : fixedC;\n\t\tconst partnerIdx = __tsover_add(__tsover_mul(partnerY, u32(n)), partnerX);\n\t\tconst partnerOff = swapLayout.$.readBuf[partnerIdx];\n\t\tconst partnerCol = clamp(__tsover_add(f32(pClamped), partnerOff), 0, maxC);\n\t\tconst myC0 = clamp(floor(myCol), 0, maxC);\n\t\tconst myC1 = min(__tsover_add(myC0, 1), maxC);\n\t\tconst myIdx0 = vertical ? __tsover_add(__tsover_mul(u32(myC0), u32(n)), fixedC) : __tsover_add(__tsover_mul(fixedC, u32(n)), u32(myC0));\n\t\tconst myIdx1 = vertical ? __tsover_add(__tsover_mul(u32(myC1), u32(n)), fixedC) : __tsover_add(__tsover_mul(fixedC, u32(n)), u32(myC1));\n\t\tconst myKey = mix(swapLayout.$.lumaBuf[myIdx0], swapLayout.$.lumaBuf[myIdx1], __tsover_sub(myCol, myC0));\n\t\tconst pC0 = clamp(floor(partnerCol), 0, maxC);\n\t\tconst pC1 = min(__tsover_add(pC0, 1), maxC);\n\t\tconst pIdx0 = vertical ? __tsover_add(__tsover_mul(u32(pC0), u32(n)), fixedC) : __tsover_add(__tsover_mul(fixedC, u32(n)), u32(pC0));\n\t\tconst pIdx1 = vertical ? __tsover_add(__tsover_mul(u32(pC1), u32(n)), fixedC) : __tsover_add(__tsover_mul(fixedC, u32(n)), u32(pC1));\n\t\tconst partnerKey = mix(swapLayout.$.lumaBuf[pIdx0], swapLayout.$.lumaBuf[pIdx1], __tsover_sub(partnerCol, pC0));\n\t\tconst wMy = brushWeight(xf, yf, p.mouseX, p.mouseY, p.radius, p.falloff, p.aspect);\n\t\tconst wP = brushWeight(f32(partnerX), f32(partnerY), p.mouseX, p.mouseY, p.radius, p.falloff, p.aspect);\n\t\tconst rnd = hash13(vec3f(xf, yf, p.seed));\n\t\tconst gate = valid \u0026\u0026 min(wMy, wP) \u003e rnd;\n\t\tconst keyDiff = __tsover_mul(__tsover_sub(myKey, partnerKey), direction);\n\t\tconst takePartner = select(keyDiff \u003c 0, keyDiff \u003e 0, isLeft);\n\t\tconst decayed = mix(select(myCol, partnerCol, gate \u0026\u0026 takePartner), lineCf, p.decay);\n\t\tswapLayout.$.writeBuf[idx] = __tsover_sub(decayed, lineCf);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"xf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"yf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lineC\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fixedC\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lineCf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"lineC\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lineCi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"lineC\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"myOff\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"myCol\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lineCf\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"myOff\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"maxC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"isLeft\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lineC\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"parity\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"partnerLineI\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lineCi\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lineCi\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isLeft\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"valid\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"partnerLineI\",\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"partnerLineI\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pClamped\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"partnerLineI\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pClampedU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"pClamped\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"partnerX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t\"fixedC\",\n\t\t\t\t\t\t\"pClampedU\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"partnerY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t\"pClampedU\",\n\t\t\t\t\t\t\"fixedC\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"partnerIdx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"partnerY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"partnerX\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"partnerOff\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"partnerIdx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"partnerCol\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"pClamped\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"partnerOff\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"maxC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"myC0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"myCol\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"maxC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"myC1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"myC0\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], \"maxC\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"myIdx0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"myC0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"fixedC\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fixedC\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"myC0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"myIdx1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"myC1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"fixedC\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fixedC\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"myC1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"myKey\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"lumaBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"myIdx0\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"lumaBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"myIdx1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"myCol\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"myC0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pC0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"partnerCol\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"maxC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pC1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"pC0\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], \"maxC\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pIdx0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"pC0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"fixedC\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fixedC\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"pC0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pIdx1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"pC1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"fixedC\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fixedC\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"pC1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"partnerKey\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"lumaBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"pIdx0\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"lumaBuf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"pIdx1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"partnerCol\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"pC0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wMy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"brushWeight\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"xf\",\n\t\t\t\t\t\t\t\"yf\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"mouseX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"mouseY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wP\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"brushWeight\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"partnerX\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"partnerY\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"mouseX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"mouseY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rnd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash13\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"xf\",\n\t\t\t\t\t\t\t\t\"yf\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gate\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t\"valid\",\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[\"wMy\", \"wP\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"rnd\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"keyDiff\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"myKey\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"partnerKey\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"direction\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"takePartner\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"keyDiff\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"keyDiff\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isLeft\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"newCol\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"myCol\",\n\t\t\t\t\t\t\t\"partnerCol\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\"gate\",\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\"takePartner\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"decayed\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"newCol\",\n\t\t\t\t\t\t\t\"lineCf\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"swapLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"writeBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"decayed\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"lineCf\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"swapLayout\": () =\u003e swapLayout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"vertical\": () =\u003e vertical,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"maxC\": () =\u003e maxC,\n\t\t\t\"parity\": () =\u003e parity,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"brushWeight\": () =\u003e brushWeight,\n\t\t\t\"noise.hash13\": () =\u003e hash13,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"direction\": () =\u003e direction\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Swap`);\n\tconst output = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(n)), cx);\n\t\tconst lineC = vertical ? cy : cx;\n\t\tconst col = clamp(__tsover_add(f32(lineC), outputLayout.$.srcBuf[idx]), 0, maxC);\n\t\tconst u = __tsover_div(__tsover_add(col, .5), nF);\n\t\ttextureStore(outputLayout.$.stateTex, vec2u(cx, cy), vec4f(u, 0, 0, 1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lineC\",\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t\"vertical\",\n\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"col\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"lineC\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"outputLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"srcBuf\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"maxC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"nF\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"outputLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"stateTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"n\": () =\u003e n,\n\t\t\t\"vertical\": () =\u003e vertical,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"outputLayout\": () =\u003e outputLayout,\n\t\t\t\"maxC\": () =\u003e maxC,\n\t\t\t\"nF\": () =\u003e nF,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Output`);\n\treturn {\n\t\tlumaLayout,\n\t\tLumaParams,\n\t\tswapLayout,\n\t\tSwapParams,\n\t\toutputLayout,\n\t\tkey,\n\t\tswap0: makeSwap(0),\n\t\tswap1: makeSwap(1),\n\t\toutput\n\t};\n}\nconst frameDiffMask = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((live, prev, threshold) =\u003e {\n\t\"use gpu\";\n\tconst dRgb = abs(live.xyz.sub(prev.xyz));\n\tconst dA = abs(__tsover_sub(live.w, prev.w));\n\tconst diff = __tsover_add(dot(dRgb, vec3f(.299, .587, .114)), dA);\n\treturn smoothstep(threshold, __tsover_add(__tsover_mul(threshold, 2), .001), diff);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"live\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"prev\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"threshold\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diff\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"dRgb\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"dA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t\"threshold\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"diff\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"frameDiffMask\");\nconst hueRotateTurns = typegpu_default.fn([vec3f, f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, amount) =\u003e {\n\t\"use gpu\";\n\tconst hsl = rgbToHsl(rgb);\n\treturn hslToRgb(vec3f(fract(__tsover_add(hsl.x, amount)), hsl.y, hsl.z));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"amount\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hsl\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"colorMixing.rgbToHsl\",\n\t\t\t\t\t[\"rgb\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotated\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hsl\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"amount\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"hsl\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"hsl\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"colorMixing.hslToRgb\",\n\t\t\t\t[\"rotated\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"colorMixing.rgbToHsl\": () =\u003e rgbToHsl,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"colorMixing.hslToRgb\": () =\u003e hslToRgb\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"hueRotateTurns\");\nfunction buildFeedbackTrailStep(opts) {\n\tconst { res, format, namePrefix, source, hueCycle, diffuseHalfUv, driftScale } = opts;\n\tconst Params = struct({\n\t\tpersistence: f32,\n\t\tdiffusion: f32,\n\t\tdriftX: f32,\n\t\tdriftY: f32,\n\t\tdt: f32,\n\t\tzoom: f32,\n\t\thueRate: f32,\n\t\tblendMode: f32,\n\t\tmotionThreshold: f32\n\t}).$name(\"FeedbackTrailParams\");\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsrc: { texture: texture2d(f32) },\n\t\tprev: { texture: texture2d(f32) },\n\t\tnext: { storageTexture: textureStorage2d(format, \"write-only\") },\n\t\tdisplay: { storageTexture: textureStorage2d(format, \"write-only\") },\n\t\tprevLive: { texture: texture2d(f32) },\n\t\tprevLiveOut: { storageTexture: textureStorage2d(format, \"write-only\") },\n\t\tsamp: { sampler: \"filtering\" },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\tconst sampleHistory = typegpu_default.fn([f32, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvx, uvy) =\u003e {\n\t\t\"use gpu\";\n\t\treturn textureSampleLevel(layout.$.prev, layout.$.samp, vec2f(uvx, uvy), f32(0));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.textureSampleLevel\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"samp\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"uvx\", \"uvy\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.textureSampleLevel\": () =\u003e textureSampleLevel,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.f32\": () =\u003e f32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}SampleHistory`);\n\tconst sampleLive = typegpu_default.fn([f32, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvx, uvy) =\u003e {\n\t\t\"use gpu\";\n\t\treturn textureSampleLevel(layout.$.src, layout.$.samp, vec2f(uvx, uvy), f32(0));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.textureSampleLevel\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"src\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"samp\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"uvx\", \"uvy\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.textureSampleLevel\": () =\u003e textureSampleLevel,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.f32\": () =\u003e f32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}SampleLive`);\n\tconst texelUv = typegpu_default.fn([u32, u32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst r = f32(res);\n\t\treturn vec2f(__tsover_div(__tsover_add(f32(cx), .5), r), __tsover_div(__tsover_add(f32(cy), .5), r));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[\"res\"]\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"r\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"res\": () =\u003e res,\n\t\t\t\"d.vec2f\": () =\u003e vec2f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}TexelUv`);\n\tconst feedbackUv = typegpu_default.fn([vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = layout.$.params;\n\t\tconst zoom = max(P.zoom, .01);\n\t\treturn vec2f(__tsover_sub(__tsover_add(__tsover_div(__tsover_sub(uv.x, .5), zoom), .5), __tsover_mul(__tsover_mul(P.driftX, P.dt), driftScale)), __tsover_sub(__tsover_add(__tsover_div(__tsover_sub(uv.y, .5), zoom), .5), __tsover_mul(__tsover_mul(P.driftY, P.dt), driftScale)));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"zoom\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"zoom\"\n\t\t\t\t\t\t], [5, \"0.01\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"zoom\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"driftX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"driftScale\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"zoom\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"driftY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"driftScale\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"driftScale\": () =\u003e driftScale\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}FeedbackUv`);\n\tconst decayed = typegpu_default.fn([f32, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((bx, by) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = layout.$.params;\n\t\tconst h = __tsover_mul(P.diffusion, diffuseHalfUv);\n\t\treturn sampleHistory(__tsover_sub(bx, h), __tsover_sub(by, h)).add(sampleHistory(__tsover_add(bx, h), __tsover_sub(by, h))).add(sampleHistory(__tsover_sub(bx, h), __tsover_add(by, h))).add(sampleHistory(__tsover_add(bx, h), __tsover_add(by, h))).mul(__tsover_mul(P.persistence, .25));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"by\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"diffusion\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"diffuseHalfUv\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sum\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sampleHistory\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sampleHistory\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"sampleHistory\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"sampleHistory\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"persistence\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"diffuseHalfUv\": () =\u003e diffuseHalfUv,\n\t\t\t\"sampleHistory\": () =\u003e sampleHistory\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Decayed`);\n\tconst decayedTinted = typegpu_default.fn([f32, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((bx, by) =\u003e {\n\t\t\"use gpu\";\n\t\tconst dec = decayed(bx, by);\n\t\tconst a = max(dec.w, 1e-4);\n\t\treturn vec4f(hueRotateTurns(dec.xyz.div(a), layout.$.params.hueRate).mul(dec.w), dec.w);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"by\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dec\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"decayed\",\n\t\t\t\t\t\t[\"bx\", \"by\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dec\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rotated\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"hueRotateTurns\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dec\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"hueRate\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dec\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dec\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"decayed\": () =\u003e decayed,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"hueRotateTurns\": () =\u003e hueRotateTurns,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}DecayedTinted`);\n\tconst trailFn = hueCycle ? decayedTinted : decayed;\n\tconst stamp = typegpu_default.fn([\n\t\tvec4f,\n\t\tf32,\n\t\tvec4f\n\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((live, m, trail) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = layout.$.params;\n\t\tconst s = vec4f(live.xyz.mul(m), __tsover_mul(live.w, m));\n\t\tconst outA = __tsover_add(s.w, __tsover_mul(trail.w, __tsover_sub(1, s.w)));\n\t\tconst rgbNormal = s.xyz.add(trail.xyz.mul(__tsover_sub(1, s.w)));\n\t\tconst rgbScreen = s.xyz.add(trail.xyz).sub(s.xyz.mul(trail.xyz));\n\t\tconst rgbAdd = s.xyz.add(trail.xyz);\n\t\treturn vec4f(select(select(rgbNormal, rgbScreen, P.blendMode \u003e .5), rgbAdd, P.blendMode \u003e 1.5), outA);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"live\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"m\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"trail\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"m\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"outA\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trail\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgbNormal\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"trail\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgbScreen\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"trail\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trail\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgbAdd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"trail\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgbSN\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rgbNormal\",\n\t\t\t\t\t\t\t\"rgbScreen\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"blendMode\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rgbSN\",\n\t\t\t\t\t\t\t\"rgbAdd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"blendMode\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"outA\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.select\": () =\u003e select\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Stamp`);\n\treturn {\n\t\tlayout,\n\t\tParams,\n\t\tkernel: source === \"motion\" ? typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst uv = texelUv(cx, cy);\n\t\t\tconst b = feedbackUv(uv);\n\t\t\tconst trail = trailFn(b.x, b.y);\n\t\t\tconst live = sampleLive(uv.x, uv.y);\n\t\t\tconst m = frameDiffMask(live, textureLoad(layout.$.prevLive, vec2u(cx, cy), 0), layout.$.params.motionThreshold);\n\t\t\ttextureStore(layout.$.next, vec2u(cx, cy), stamp(live, m, trail));\n\t\t\ttextureStore(layout.$.display, vec2u(cx, cy), trail);\n\t\t\ttextureStore(layout.$.prevLiveOut, vec2u(cx, cy), live);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"texelUv\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"feedbackUv\",\n\t\t\t\t\t\t\t[\"uv\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"trail\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"trailFn\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"sampleLive\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"pl\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"prevLive\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"frameDiffMask\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t\t\"pl\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"motionThreshold\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"stamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\t\t\"trail\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"display\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"trail\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"prevLiveOut\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"live\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"texelUv\": () =\u003e texelUv,\n\t\t\t\t\"feedbackUv\": () =\u003e feedbackUv,\n\t\t\t\t\"trailFn\": () =\u003e trailFn,\n\t\t\t\t\"sampleLive\": () =\u003e sampleLive,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"frameDiffMask\": () =\u003e frameDiffMask,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"stamp\": () =\u003e stamp\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Step`) : typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst uv = texelUv(cx, cy);\n\t\t\tconst b = feedbackUv(uv);\n\t\t\tconst trail = trailFn(b.x, b.y);\n\t\t\tconst outC = stamp(sampleLive(uv.x, uv.y), f32(1), trail);\n\t\t\ttextureStore(layout.$.next, vec2u(cx, cy), outC);\n\t\t\ttextureStore(layout.$.display, vec2u(cx, cy), outC);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"texelUv\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"feedbackUv\",\n\t\t\t\t\t\t\t[\"uv\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"trail\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"trailFn\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"sampleLive\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outC\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"stamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"trail\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"display\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"texelUv\": () =\u003e texelUv,\n\t\t\t\t\"feedbackUv\": () =\u003e feedbackUv,\n\t\t\t\t\"trailFn\": () =\u003e trailFn,\n\t\t\t\t\"sampleLive\": () =\u003e sampleLive,\n\t\t\t\t\"stamp\": () =\u003e stamp,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}StepAlpha`)\n\t};\n}\nfunction buildMacroblockAdvectKernel(opts) {\n\tconst { res, format, namePrefix } = opts;\n\tconst coarseScale = opts.blockMix?.coarseScale ?? 2.6;\n\tconst coarsePick = opts.blockMix?.coarsePick ?? .35;\n\tconst quantLevels = opts.generationLoss?.levels ?? 18;\n\tconst quantAmount = opts.generationLoss?.amount ?? .12;\n\tconst energyDecay = opts.generationLoss?.decay ?? .9985;\n\tconst Params = struct({\n\t\ttime: f32,\n\t\tdt: f32,\n\t\tseed: f32,\n\t\tintensity: f32,\n\t\tblockSize: f32,\n\t\tdrift: f32,\n\t\tchurn: f32\n\t}).$name(\"MacroblockAdvectParams\");\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsrc: { texture: texture2d(f32) },\n\t\tprev: { texture: texture2d(f32) },\n\t\tnext: { storageTexture: textureStorage2d(format, \"write-only\") },\n\t\tdisplay: { storageTexture: textureStorage2d(format, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tParams,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst P = layout.$.params;\n\t\t\tconst resF = f32(res);\n\t\t\tconst px = f32(cx);\n\t\t\tconst py = f32(cy);\n\t\t\tconst fx = __tsover_div(__tsover_add(px, .5), resF);\n\t\t\tconst fy = __tsover_div(__tsover_add(py, .5), resF);\n\t\t\tconst churnRate = __tsover_add(.15, __tsover_mul(P.churn, .8));\n\t\t\tconst bsF = max(P.blockSize, 8);\n\t\t\tconst coarse = __tsover_mul(bsF, coarseScale);\n\t\t\tconst cbx = floor(__tsover_div(px, coarse));\n\t\t\tconst cby = floor(__tsover_div(py, coarse));\n\t\t\tconst cPhase = hash11(__tsover_add(__tsover_add(__tsover_mul(cbx, 91.17), __tsover_mul(cby, 41.23)), __tsover_mul(P.seed, 3.7)));\n\t\t\tconst cEpoch = floor(__tsover_add(__tsover_mul(__tsover_mul(P.time, churnRate), .25), cPhase));\n\t\t\tconst bs = select(bsF, coarse, hash11(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(cbx, 12.9898), __tsover_mul(cby, 78.233)), __tsover_mul(cEpoch, 37.71)), __tsover_mul(P.seed, 3.7))) \u003c coarsePick);\n\t\t\tconst bx = floor(__tsover_div(px, bs));\n\t\t\tconst by = floor(__tsover_div(py, bs));\n\t\t\tconst bPhase = hash11(__tsover_add(__tsover_add(__tsover_mul(bx, 127.1), __tsover_mul(by, 311.7)), __tsover_mul(P.seed, 17.9)));\n\t\t\tconst bRate = __tsover_mul(churnRate, __tsover_add(.7, __tsover_mul(.6, hash11(__tsover_add(__tsover_add(__tsover_mul(bx, 53.7), __tsover_mul(by, 97.3)), __tsover_mul(P.seed, 5.3))))));\n\t\t\tconst bEpoch = floor(__tsover_add(__tsover_mul(P.time, bRate), bPhase));\n\t\t\tconst bh = __tsover_add(__tsover_add(__tsover_add(__tsover_mul(bx, 127.1), __tsover_mul(by, 311.7)), __tsover_mul(bEpoch, 74.7)), __tsover_mul(P.seed, 17.9));\n\t\t\tconst h1 = hash11(__tsover_add(bh, .13));\n\t\t\tconst h2 = hash11(__tsover_add(bh, 7.77));\n\t\t\tconst h3 = hash11(__tsover_add(bh, 23.19));\n\t\t\tconst bcx = __tsover_div(__tsover_mul(__tsover_add(bx, .5), bs), resF);\n\t\t\tconst bcy = __tsover_div(__tsover_mul(__tsover_add(by, .5), bs), resF);\n\t\t\tconst field = __tsover_add(__tsover_add(.5, __tsover_mul(__tsover_mul(.25, sin(__tsover_add(__tsover_add(__tsover_mul(bcx, 2.7), __tsover_mul(P.time, .31)), P.seed))), sin(__tsover_add(__tsover_sub(__tsover_mul(bcy, 2.1), __tsover_mul(P.time, .23)), __tsover_mul(P.seed, .4))))), __tsover_mul(.25, sin(__tsover_add(__tsover_add(__tsover_mul(__tsover_add(bcx, bcy), 1.6), __tsover_mul(P.time, .17)), __tsover_mul(P.seed, .7)))));\n\t\t\tconst thresh = __tsover_sub(1, __tsover_mul(P.intensity, .55));\n\t\t\tconst hold = smoothstep(__tsover_sub(thresh, .09), __tsover_add(thresh, .09), __tsover_add(field, __tsover_mul(__tsover_sub(h1, .5), .3)));\n\t\t\tconst flowAng = __tsover_add(__tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(bcx, 1.9), __tsover_mul(P.seed, 3.1))), 1.7), __tsover_mul(cos(__tsover_sub(__tsover_mul(bcy, 2.3), __tsover_mul(P.seed, 2.7))), 1.3)), __tsover_mul(P.time, .15));\n\t\t\tconst ang = __tsover_add(flowAng, __tsover_mul(__tsover_sub(h2, .5), 1.1));\n\t\t\tconst mag = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_add(.5, __tsover_mul(.5, h3)), P.drift), P.dt), 10), __tsover_div(bs, resF));\n\t\t\tconst suRaw = __tsover_sub(fx, __tsover_mul(cos(ang), mag));\n\t\t\tconst svRaw = __tsover_sub(fy, __tsover_mul(sin(ang), mag));\n\t\t\tconst inBounds = __tsover_mul(__tsover_mul(__tsover_mul(select(f32(0), f32(1), suRaw \u003e= 0), select(f32(0), f32(1), suRaw \u003c= 1)), select(f32(0), f32(1), svRaw \u003e= 0)), select(f32(0), f32(1), svRaw \u003c= 1));\n\t\t\tconst su = __tsover_sub(__tsover_mul(clamp(suRaw, 0, 1), resF), .5);\n\t\t\tconst sv = __tsover_sub(__tsover_mul(clamp(svRaw, 0, 1), resF), .5);\n\t\t\tconst sx0 = floor(su);\n\t\t\tconst sy0 = floor(sv);\n\t\t\tconst sfx = __tsover_sub(su, sx0);\n\t\t\tconst sfy = __tsover_sub(sv, sy0);\n\t\t\tconst maxT = __tsover_sub(resF, 1);\n\t\t\tconst ix0 = u32(clamp(sx0, f32(0), maxT));\n\t\t\tconst ix1 = u32(clamp(__tsover_add(sx0, 1), f32(0), maxT));\n\t\t\tconst iy0 = u32(clamp(sy0, f32(0), maxT));\n\t\t\tconst iy1 = u32(clamp(__tsover_add(sy0, 1), f32(0), maxT));\n\t\t\tconst p00 = textureLoad(layout.$.prev, vec2u(ix0, iy0), 0);\n\t\t\tconst p10 = textureLoad(layout.$.prev, vec2u(ix1, iy0), 0);\n\t\t\tconst p01 = textureLoad(layout.$.prev, vec2u(ix0, iy1), 0);\n\t\t\tconst p11 = textureLoad(layout.$.prev, vec2u(ix1, iy1), 0);\n\t\t\tconst prevC = mix(mix(p00, p10, sfx), mix(p01, p11, sfx), sfy);\n\t\t\tconst quant = floor(prevC.xyz.mul(quantLevels)).add(vec3f(.5, .5, .5)).div(quantLevels);\n\t\t\tconst held = vec4f(mix(prevC.xyz, quant, quantAmount).mul(energyDecay), prevC.w);\n\t\t\tconst rekey = clamp(__tsover_mul(P.dt, __tsover_add(1.2, __tsover_mul(__tsover_sub(1, P.intensity), 2))), 0, .2);\n\t\t\tconst srcDims = textureDimensions(layout.$.src);\n\t\t\tconst srcW = f32(srcDims.x);\n\t\t\tconst srcH = f32(srcDims.y);\n\t\t\tconst cu = __tsover_sub(__tsover_mul(fx, srcW), .5);\n\t\t\tconst cv = __tsover_sub(__tsover_mul(fy, srcH), .5);\n\t\t\tconst cx0 = floor(cu);\n\t\t\tconst cy0 = floor(cv);\n\t\t\tconst cfx = __tsover_sub(cu, cx0);\n\t\t\tconst cfy = __tsover_sub(cv, cy0);\n\t\t\tconst jx0 = u32(clamp(cx0, f32(0), __tsover_sub(srcW, 1)));\n\t\t\tconst jx1 = u32(clamp(__tsover_add(cx0, 1), f32(0), __tsover_sub(srcW, 1)));\n\t\t\tconst jy0 = u32(clamp(cy0, f32(0), __tsover_sub(srcH, 1)));\n\t\t\tconst jy1 = u32(clamp(__tsover_add(cy0, 1), f32(0), __tsover_sub(srcH, 1)));\n\t\t\tconst c00 = textureLoad(layout.$.src, vec2u(jx0, jy0), 0);\n\t\t\tconst c10 = textureLoad(layout.$.src, vec2u(jx1, jy0), 0);\n\t\t\tconst c01 = textureLoad(layout.$.src, vec2u(jx0, jy1), 0);\n\t\t\tconst c11 = textureLoad(layout.$.src, vec2u(jx1, jy1), 0);\n\t\t\tconst fresh = mix(mix(c00, c10, cfx), mix(c01, c11, cfx), cfy);\n\t\t\tconst outC = mix(fresh, mix(held, fresh, rekey), __tsover_mul(hold, inBounds));\n\t\t\ttextureStore(layout.$.next, vec2u(cx, cy), outC);\n\t\t\ttextureStore(layout.$.display, vec2u(cx, cy), outC);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"resF\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"res\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"resF\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"resF\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"churnRate\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.15\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"churn\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bsF\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"blockSize\"\n\t\t\t\t\t\t\t], [5, \"8\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"coarse\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bsF\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"coarseScale\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cbx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"coarse\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cby\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"coarse\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cPhase\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cbx\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"91.17\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cby\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"41.23\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"3.7\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cEpoch\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"churnRate\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"cPhase\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"scalePick\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cbx\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"12.9898\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cby\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"78.233\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cEpoch\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"37.71\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"3.7\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bs\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"bsF\",\n\t\t\t\t\t\t\t\t\"coarse\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"scalePick\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"coarsePick\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"bs\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"bs\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bPhase\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"127.1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"311.7\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"17.9\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bRate\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"churnRate\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"53.7\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"97.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"5.3\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bEpoch\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"bRate\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"bPhase\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bh\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"127.1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"311.7\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"bEpoch\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"74.7\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"17.9\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bh\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.13\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bh\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"7.77\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bh\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"23.19\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bcx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"bs\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"resF\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bcy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"bs\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"resF\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bcx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.7\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.31\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bcy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.23\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bcx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bcy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.6\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.17\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"thresh\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"hold\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"thresh\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.09\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"thresh\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.09\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"h1\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"flowAng\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bcx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.9\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3.1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bcy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"flowAng\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h2\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"mag\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"h3\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bs\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"resF\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"suRaw\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"mag\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"svRaw\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"mag\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inBounds\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"suRaw\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"suRaw\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"svRaw\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"svRaw\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"suRaw\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"resF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"svRaw\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"resF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"su\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"sv\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sfx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sx0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sfy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sy0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"maxT\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"resF\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ix0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"sx0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ix1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"sx0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"sy0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"sy0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"ix0\", \"iy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"ix1\", \"iy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"ix0\", \"iy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"ix1\", \"iy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"prevC\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"p00\",\n\t\t\t\t\t\t\t\t\t\t\"p10\",\n\t\t\t\t\t\t\t\t\t\t\"sfx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"p01\",\n\t\t\t\t\t\t\t\t\t\t\"p11\",\n\t\t\t\t\t\t\t\t\t\t\"sfx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sfy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"quant\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prevC\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"quantLevels\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"quantLevels\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"heldRgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prevC\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"quant\",\n\t\t\t\t\t\t\t\t\t\t\"quantAmount\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"energyDecay\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"held\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\"heldRgb\", [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prevC\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rekey\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1.2\"],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureDimensions\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcW\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcH\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"srcW\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"srcH\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"cu\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"cv\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cfx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cx0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cfy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cy0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"jx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"srcW\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"jx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"srcW\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"jy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"srcH\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"jy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"srcH\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"jx0\", \"jy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"jx1\", \"jy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"jx0\", \"jy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"jx1\", \"jy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fresh\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t\t\t\t\t\"cfx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t\t\t\t\t\"cfx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"cfy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"heldAnchored\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"held\",\n\t\t\t\t\t\t\t\t\"fresh\",\n\t\t\t\t\t\t\t\t\"rekey\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outC\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"fresh\",\n\t\t\t\t\t\t\t\t\"heldAnchored\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"hold\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"inBounds\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"display\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outC\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"res\": () =\u003e res,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"coarseScale\": () =\u003e coarseScale,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"noise.hash11\": () =\u003e hash11,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"coarsePick\": () =\u003e coarsePick,\n\t\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"quantLevels\": () =\u003e quantLevels,\n\t\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\t\"quantAmount\": () =\u003e quantAmount,\n\t\t\t\t\"energyDecay\": () =\u003e energyDecay,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.textureDimensions\": () =\u003e textureDimensions,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Step`)\n\t};\n}\nvar LUMA_QUANT = [\n\t16,\n\t11,\n\t10,\n\t16,\n\t24,\n\t40,\n\t51,\n\t61,\n\t12,\n\t12,\n\t14,\n\t19,\n\t26,\n\t58,\n\t60,\n\t55,\n\t14,\n\t13,\n\t16,\n\t24,\n\t40,\n\t57,\n\t69,\n\t56,\n\t14,\n\t17,\n\t22,\n\t29,\n\t51,\n\t87,\n\t80,\n\t62,\n\t18,\n\t22,\n\t37,\n\t56,\n\t68,\n\t109,\n\t103,\n\t77,\n\t24,\n\t35,\n\t55,\n\t64,\n\t81,\n\t104,\n\t113,\n\t92,\n\t49,\n\t64,\n\t78,\n\t87,\n\t103,\n\t121,\n\t120,\n\t101,\n\t72,\n\t92,\n\t95,\n\t98,\n\t112,\n\t100,\n\t103,\n\t99\n];\nvar CHROMA_QUANT = [\n\t17,\n\t18,\n\t24,\n\t47,\n\t99,\n\t99,\n\t99,\n\t99,\n\t18,\n\t21,\n\t26,\n\t66,\n\t99,\n\t99,\n\t99,\n\t99,\n\t24,\n\t26,\n\t56,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t47,\n\t66,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99,\n\t99\n];\nvar COS_LUT_FLAT = [];\nfor (let k = 0; k \u003c 8; k++) for (let u = 0; u \u003c 8; u++) COS_LUT_FLAT[k * 8 + u] = Math.cos((2 * k + 1) * u * Math.PI / 16);\nvar SQRT1_2 = Math.SQRT1_2;\nvar PI_OVER_16 = Math.PI / 16;\nvar COS_LUT = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.const(arrayOf(f32, 64), COS_LUT_FLAT), \"COS_LUT\");\nvar LUMA_QUANT_C = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.const(arrayOf(f32, 64), LUMA_QUANT), \"LUMA_QUANT_C\");\nvar CHROMA_QUANT_C = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.const(arrayOf(f32, 64), CHROMA_QUANT), \"CHROMA_QUANT_C\");\nvar jpegBlockCache = /* @__PURE__ */ new Map();\nfunction buildJpegBlockRgb(nLuma) {\n\treturn typegpu_default.fn([\n\t\tarrayOf(vec3f, 64),\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((block, localX, localY, quality) =\u003e {\n\t\t\"use gpu\";\n\t\tconst qualityC = clamp(quality, 1, 100);\n\t\tconst qScale = select(__tsover_sub(200, __tsover_mul(qualityC, 2)), __tsover_div(5e3, qualityC), qualityC \u003c 50);\n\t\tconst Yv = arrayOf(f32, 64)();\n\t\tconst Cbv = arrayOf(f32, 64)();\n\t\tconst Crv = arrayOf(f32, 64)();\n\t\tfor (let i = 0; i \u003c 64; i++) {\n\t\t\tconst c = block[i];\n\t\t\tYv[i] = __tsover_sub(__tsover_add(__tsover_add(__tsover_mul(c.x, .299), __tsover_mul(c.y, .587)), __tsover_mul(c.z, .114)), .5);\n\t\t\tCbv[i] = __tsover_add(__tsover_add(__tsover_mul(c.x, -.168736), __tsover_mul(c.y, -.331264)), __tsover_mul(c.z, .5));\n\t\t\tCrv[i] = __tsover_add(__tsover_add(__tsover_mul(c.x, .5), __tsover_mul(c.y, -.418688)), __tsover_mul(c.z, -.081312));\n\t\t}\n\t\tconst rowCoef = arrayOf(f32, __tsover_mul(8, nLuma))();\n\t\tfor (let y = 0; y \u003c 8; y++) for (let u = 0; u \u003c nLuma; u++) {\n\t\t\tlet sum = f32(0);\n\t\t\tfor (let x = 0; x \u003c 8; x++) sum = __tsover_add(sum, __tsover_mul(Yv[__tsover_add(__tsover_mul(y, 8), x)], COS_LUT.$[__tsover_add(__tsover_mul(x, 8), u)]));\n\t\t\trowCoef[__tsover_add(__tsover_mul(y, nLuma), u)] = sum;\n\t\t}\n\t\tlet acc = f32(0);\n\t\tfor (let v = 0; v \u003c nLuma; v++) {\n\t\t\tconst av = select(1, SQRT1_2, v === 0);\n\t\t\tconst cy = cos(__tsover_mul(__tsover_add(__tsover_mul(localY, 2), 1), __tsover_mul(f32(v), PI_OVER_16)));\n\t\t\tfor (let u = 0; u \u003c nLuma; u++) {\n\t\t\t\tconst au = select(1, SQRT1_2, u === 0);\n\t\t\t\tlet colSum = f32(0);\n\t\t\t\tfor (let y = 0; y \u003c 8; y++) colSum = __tsover_add(colSum, __tsover_mul(rowCoef[__tsover_add(__tsover_mul(y, nLuma), u)], COS_LUT.$[__tsover_add(__tsover_mul(y, 8), v)]));\n\t\t\t\tconst G = __tsover_mul(colSum, __tsover_mul(__tsover_mul(.25, au), av));\n\t\t\t\tconst q = __tsover_div(clamp(floor(__tsover_div(__tsover_add(__tsover_mul(qScale, LUMA_QUANT_C.$[__tsover_add(__tsover_mul(v, 8), u)]), 50), 100)), 1, 255), 255);\n\t\t\t\tconst Gq = __tsover_mul(floor(__tsover_add(__tsover_div(G, q), .5)), q);\n\t\t\t\tconst cxv = cos(__tsover_mul(__tsover_add(__tsover_mul(localX, 2), 1), __tsover_mul(f32(u), PI_OVER_16)));\n\t\t\t\tacc = __tsover_add(acc, __tsover_mul(__tsover_mul(__tsover_mul(Gq, __tsover_mul(au, av)), cxv), cy));\n\t\t\t}\n\t\t}\n\t\tconst Y = __tsover_add(__tsover_mul(acc, .25), .5);\n\t\tlet sumCb = f32(0);\n\t\tlet sumCr = f32(0);\n\t\tfor (let i = 0; i \u003c 64; i++) {\n\t\t\tsumCb = __tsover_add(sumCb, Cbv[i]);\n\t\t\tsumCr = __tsover_add(sumCr, Crv[i]);\n\t\t}\n\t\tconst qChroma = __tsover_div(clamp(floor(__tsover_div(__tsover_add(__tsover_mul(qScale, CHROMA_QUANT_C.$[0]), 50), 100)), 1, 255), 255);\n\t\tconst GdcCb = __tsover_div(sumCb, 8);\n\t\tconst GdcCr = __tsover_div(sumCr, 8);\n\t\tconst Cb = __tsover_div(__tsover_mul(floor(__tsover_add(__tsover_div(GdcCb, qChroma), .5)), qChroma), 8);\n\t\tconst Cr = __tsover_div(__tsover_mul(floor(__tsover_add(__tsover_div(GdcCr, qChroma), .5)), qChroma), 8);\n\t\treturn clamp(vec3f(__tsover_add(Y, __tsover_mul(Cr, 1.402)), __tsover_sub(__tsover_sub(Y, __tsover_mul(Cb, .344136)), __tsover_mul(Cr, .714136)), __tsover_add(Y, __tsover_mul(Cb, 1.772))), vec3f(0, 0, 0), vec3f(1, 1, 1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"block\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"localX\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"localY\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"quality\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qualityC\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"quality\",\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"100\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qScale\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"200\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"qualityC\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"5000\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"qualityC\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"qualityC\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"50\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"Yv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.arrayOf\",\n\t\t\t\t\t\t\t[\"d.f32\", [5, \"64\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"Cbv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.arrayOf\",\n\t\t\t\t\t\t\t[\"d.f32\", [5, \"64\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"Crv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.arrayOf\",\n\t\t\t\t\t\t\t[\"d.f32\", [5, \"64\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"64\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"Yv\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.299\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.587\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"Cbv\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.168736\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.331264\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"Crv\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.418688\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.081312\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rowCoef\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.arrayOf\",\n\t\t\t\t\t\t\t[\"d.f32\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"nLuma\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"nLuma\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\"Yv\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"COS_LUT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\"rowCoef\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"nLuma\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\"sum\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"acc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"nLuma\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"v\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"av\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"SQRT1_2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"localY\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"v\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"PI_OVER_16\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"nLuma\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"au\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\"SQRT1_2\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"colSum\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"colSum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"colSum\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rowCoef\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"nLuma\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"COS_LUT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"G\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"colSum\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"au\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"av\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"qScale\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"LUMA_QUANT_C\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"50\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"100\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"255\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[5, \"255\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"Gq\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"G\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"q\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"q\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"cxv\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"localX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"u\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"PI_OVER_16\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"Gq\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"au\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"av\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cxv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"Y\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"sumCb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"sumCr\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"64\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"sumCb\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sumCb\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"Cbv\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"sumCr\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sumCr\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"Crv\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qChroma\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"qScale\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"CHROMA_QUANT_C\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"50\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[5, \"100\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"255\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"255\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"GdcCb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sumCb\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"GdcCr\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sumCr\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"Cb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"GdcCb\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"qChroma\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"qChroma\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"Cr\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"GdcCr\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"qChroma\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"qChroma\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"Cr\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.402\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"g\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"Cb\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.344136\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"Cr\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.714136\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"Y\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"Cb\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.772\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"d.arrayOf\": () =\u003e arrayOf,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"nLuma\": () =\u003e nLuma,\n\t\t\t\"COS_LUT\": () =\u003e COS_LUT,\n\t\t\t\"SQRT1_2\": () =\u003e SQRT1_2,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"PI_OVER_16\": () =\u003e PI_OVER_16,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"LUMA_QUANT_C\": () =\u003e LUMA_QUANT_C,\n\t\t\t\"CHROMA_QUANT_C\": () =\u003e CHROMA_QUANT_C,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"jpegBlockRgb\");\n}\nfunction makeJpegBlockRgb(nLuma) {\n\tconst hit = jpegBlockCache.get(nLuma);\n\tif (hit) return hit;\n\tconst built = buildJpegBlockRgb(nLuma);\n\tjpegBlockCache.set(nLuma, built);\n\treturn built;\n}\nfunction buildBlockQuantizeGraph(opts) {\n\tconst { nLuma, scaleN, namePrefix, format } = opts;\n\tconst blockPx = 8 * scaleN;\n\tconst Params = struct({\n\t\tinputWidth: f32,\n\t\tinputHeight: f32,\n\t\tquality: f32\n\t}).$name(\"BlockQuantizeParams\");\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tinput: { texture: texture2d(f32) },\n\t\tcellTex: { storageTexture: textureStorage2d(format, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\tconst blockRgb = makeJpegBlockRgb(nLuma);\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst cellXf = f32(cx);\n\t\t\tconst cellYf = f32(cy);\n\t\t\tconst blockCol = floor(__tsover_div(cellXf, 8));\n\t\t\tconst blockRow = floor(__tsover_div(cellYf, 8));\n\t\t\tconst localX = __tsover_sub(cellXf, __tsover_mul(blockCol, 8));\n\t\t\tconst localY = __tsover_sub(cellYf, __tsover_mul(blockRow, 8));\n\t\t\tconst originX = __tsover_mul(blockCol, blockPx);\n\t\t\tconst originY = __tsover_mul(blockRow, blockPx);\n\t\t\tconst block = arrayOf(vec3f, 64)();\n\t\t\tconst wm1 = i32(__tsover_sub(p.inputWidth, 1));\n\t\t\tconst hm1 = i32(__tsover_sub(p.inputHeight, 1));\n\t\t\tfor (let y = 0; y \u003c 8; y++) for (let x = 0; x \u003c 8; x++) {\n\t\t\t\tconst px = __tsover_add(__tsover_add(originX, __tsover_mul(f32(x), scaleN)), __tsover_mul(scaleN, .5));\n\t\t\t\tconst py = __tsover_add(__tsover_add(originY, __tsover_mul(f32(y), scaleN)), __tsover_mul(scaleN, .5));\n\t\t\t\tconst ix = clamp(i32(px), 0, wm1);\n\t\t\t\tconst iy = clamp(i32(py), 0, hm1);\n\t\t\t\tconst texel = textureLoad(layout.$.input, vec2u(u32(ix), u32(iy)), 0);\n\t\t\t\tblock[__tsover_add(__tsover_mul(y, 8), x)] = unpremultiplyAlpha(texel).xyz;\n\t\t\t}\n\t\t\tconst rgb = blockRgb(block, localX, localY, p.quality);\n\t\t\ttextureStore(layout.$.cellTex, vec2u(cx, cy), vec4f(rgb, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cellXf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cellYf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"blockCol\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cellXf\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"blockRow\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cellYf\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"localX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cellXf\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"blockCol\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"localY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cellYf\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"blockRow\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blockCol\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"blockPx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blockRow\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"blockPx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.arrayOf\",\n\t\t\t\t\t\t\t\t[\"d.vec3f\", [5, \"64\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"hm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"scaleN\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"scaleN\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"y\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"scaleN\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"scaleN\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\"wm1\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\"hm1\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"ix\"]\n\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"iy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"blend.unpremultiplyAlpha\",\n\t\t\t\t\t\t\t\t\t\t\t[\"texel\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"blockRgb\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\t\t\"localX\",\n\t\t\t\t\t\t\t\t\"localY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"quality\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"cellTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\"rgb\", [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"blockPx\": () =\u003e blockPx,\n\t\t\t\t\"d.arrayOf\": () =\u003e arrayOf,\n\t\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"scaleN\": () =\u003e scaleN,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"blend.unpremultiplyAlpha\": () =\u003e unpremultiplyAlpha,\n\t\t\t\t\"blockRgb\": () =\u003e blockRgb,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Cell`),\n\t\tParams\n\t};\n}\nconst flowDirectionColor = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s0, s1, s2, s3, s4, base, up, down, left, right) =\u003e {\n\t\"use gpu\";\n\tconst liquidIntensity = smoothstep(0, .1, __tsover_mul(__tsover_add(__tsover_add(__tsover_add(__tsover_add(s0.z, s1.z), s2.z), s3.z), s4.z), .2));\n\tconst flow = s0.xy.add(s1.xy).add(s2.xy).add(s3.xy).add(s4.xy).mul(.2);\n\tconst flowMagnitude = length(flow);\n\tconst hasFlow = smoothstep(.01, .1, flowMagnitude);\n\tconst normalizedX = __tsover_div(flow.x, __tsover_add(flowMagnitude, .001));\n\tconst normalizedY = __tsover_div(flow.y, __tsover_add(flowMagnitude, .001));\n\tconst rightAmount = smoothstep(0, .7, max(normalizedX, 0));\n\tconst leftAmount = smoothstep(0, .7, max(__tsover_mul(normalizedX, -1), 0));\n\tconst upAmount = smoothstep(0, .7, max(normalizedY, 0));\n\tconst downAmount = smoothstep(0, .7, max(__tsover_mul(normalizedY, -1), 0));\n\tconst horizontalColor = left.mul(leftAmount).add(right.mul(rightAmount));\n\tconst verticalColor = down.mul(downAmount).add(up.mul(upAmount));\n\tconst horizontalWeight = __tsover_add(leftAmount, rightAmount);\n\tconst verticalWeight = __tsover_add(upAmount, downAmount);\n\tconst totalWeight = __tsover_add(__tsover_add(horizontalWeight, verticalWeight), .001);\n\treturn mix(base, horizontalColor.mul(__tsover_div(horizontalWeight, totalWeight)).add(verticalColor.mul(__tsover_div(verticalWeight, totalWeight))), vec4f(hasFlow)).mul(liquidIntensity);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s4\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"up\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"down\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"left\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"right\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"smoothedLiquid\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"s0\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"s1\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"s2\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s3\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s4\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"liquidIntensity\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.1\"],\n\t\t\t\t\t\t\"smoothedLiquid\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"s0\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"s1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"s2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"s3\",\n\t\t\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s4\",\n\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowMagnitude\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"flow\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hasFlow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.01\"],\n\t\t\t\t\t\t[5, \"0.1\"],\n\t\t\t\t\t\t\"flowMagnitude\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"flow\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"flowMagnitude\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"flow\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"flowMagnitude\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rightAmount\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"normalizedX\", [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"leftAmount\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"normalizedX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"upAmount\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"normalizedY\", [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"downAmount\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"normalizedY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"horizontalColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"leftAmount\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"rightAmount\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"verticalColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"down\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"downAmount\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"up\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"upAmount\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"horizontalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"leftAmount\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rightAmount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"verticalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"upAmount\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"downAmount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"horizontalWeight\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"verticalWeight\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"directionalColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"horizontalColor\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"horizontalWeight\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"totalWeight\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"verticalColor\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"verticalWeight\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"totalWeight\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"directionalColor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\"hasFlow\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"finalColor\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"liquidIntensity\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"flowDirectionColor\");\nconst rootPassthrough = {\n\tname: \"Root\",\n\tprops: {},\n\tfragment: ({ childNode }) =\u003e childNode ?? expr(\"vec4f(0.0, 0.0, 0.0, 0.0)\")\n};\nfunction animatedTime(params, seedName, fieldName = \"_animTime\") {\n\tconst base = params.props.member(fieldName);\n\tif (seedName) {\n\t\tconst seed = params.uniforms[seedName];\n\t\tif (seed) return base.add(seed);\n\t}\n\treturn base;\n}\nexport { buildDimensionalPlan as $, buildNoiseFieldInitKernel as A, legacySinHash11 as At, R3_ALPHA as B, heightFieldMarchLayout as C, createLateBoundChildInput as Ct, buildBrushSplatKernel as D, mixColorStopsRuntime as Dt, waveEquationLayout as E, gradientStopsInSpace as Et, createFluidKernelPass as F, makeCpuValueGetter as G, createAgentSystem as H, createStableFluidsPasses as I, texelSplatWindow as J, readAgentFrame as K, makeShapeMaskSet as L, buildStableFluidsKernels as M, buildTrigTurbulenceKernel as N, buildEmitterSplatKernel as O, packConvertedStops as Ot, buildVelocityImpulseKernel as P, boxHalfExtentsUV as Q, FIXED_POINT_GAINS as R, createWaveStateBuffers as S, createFeedbackTrailSim as St, makeWaveEquationKernel as T, backConvertToP3 as Tt, energyCoverageAlpha as U, SIZE_REF_RES as V, integrateSemiImplicitEuler as W, createGpuUniformsMap as X, worldSplatWindow as Y, bindingSizePx as Z, WAVE_GRID as _, MAX_COLOR_STOPS$1 as _t, buildGrayScottStep as a, colorToRGBA as at, createHeightFieldParamsUniform as b, resolveStops as bt, buildPairPublishKernel as c, listCountName as ct, flowDirectionColor as d, listHasDrivers as dt, buildExtraSizeProps as et, makeJpegBlockRgb as f, listPropConfig as ft, WAVE_DECAY as g, resolveListItems as gt, HEIGHT_SLAB_PAD as h, parseListDriverPath as ht, buildFeedbackTrailStep as i, setShaderCanvasDimensions as it, buildNoiseRestoreKernel as j, buildFluidOutputKernel as k, packStops as kt, buildScatterSeedKernel as l, listDriverPath as lt, HEIGHT_FIELD_STATE_FORMAT as m, packList as mt, rootPassthrough as n, isDimensionalValue as nt, buildMacroblockAdvectKernel as o, setColorSpaceModeGpu as ot, CURSOR_WAVE_BOUND as p, listPropTransform as pt, resolveRenderRes as q, buildBlockQuantizeGraph as r, resolveDimensionalProp as rt, buildOddEvenSortSet as s, isPositionDriver as st, animatedTime as t, isDimensionalProp as tt, createGridKernelPass as u, listFieldName as ut, WAVE_HALFEXTENT as v, colorStopsPropConfig as vt, makeHeightFieldMarchKernel as w, MAX_COLOR_STOPS as wt, createKernelPass as x, sortStops as xt, WAVE_SETTLE_MS as y, colorStopsTransform as yt, R2_ALPHA as z };\n","import { Ar as vec2u, Br as struct, C as createSvgSdfSampler, Cr as sin, D as driveAnalyticSubProps, Fr as size, Gn as typegpu_default, Jr as i32, Lr as texture2d, Mr as vec4f, Or as vec2f, Pr as align, Rr as textureStorage2d, S as createSdfDataTexture, Sr as sign, Tr as sqrt, Yn as textureStore, Yr as u32, _ as analyticSubPropValues, _r as mix, ar as clamp, cr as dot, ct as call, er as select, fr as floor, g as SVG_SDF_SIZE, gr as min, hr as max, jr as vec3f, mr as length, or as cos, q as createGuardedCompute, qn as textureLoad, qr as f32, rr as atan2, ti as __export, tr as abs, vr as normalize, w as createSvgSdfSamplerWithGradients, wr as smoothstep, x as createAnalyticSdfSampler, y as buildAnalyticSdfFn, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nvar SVG_SDF_SIZE$1 = 512;\nvar cache = {};\nvar pending = /* @__PURE__ */ new Set();\nvar waiters = {};\nfunction getSdfContentBounds(url, onReady) {\n\tif (!url) return null;\n\tif (url in cache) return cache[url];\n\tif (onReady) (waiters[url] ??= []).push(onReady);\n\tif (!pending.has(url)) {\n\t\tpending.add(url);\n\t\tscan(url);\n\t}\n\treturn null;\n}\nasync function scan(url) {\n\ttry {\n\t\tconst res = await fetch(url, { mode: \"cors\" });\n\t\tif (!res.ok) {\n\t\t\tcache[url] = null;\n\t\t\treturn;\n\t\t}\n\t\tconst buf = await res.arrayBuffer();\n\t\tconst pixelCount = SVG_SDF_SIZE$1 * SVG_SDF_SIZE$1;\n\t\tif (buf.byteLength !== pixelCount * 2 \u0026\u0026 buf.byteLength !== pixelCount * 4) {\n\t\t\tcache[url] = null;\n\t\t\treturn;\n\t\t}\n\t\tconst valueAt = buf.byteLength === pixelCount * 2 ? (() =\u003e {\n\t\t\tconst u = new Uint16Array(buf);\n\t\t\treturn (i) =\u003e u[i] / 32767.5 - 1;\n\t\t})() : (() =\u003e {\n\t\t\tconst f = new Float32Array(buf);\n\t\t\treturn (i) =\u003e f[i];\n\t\t})();\n\t\tlet minX = SVG_SDF_SIZE$1, minY = SVG_SDF_SIZE$1, maxX = -1, maxY = -1;\n\t\tfor (let y = 0; y \u003c SVG_SDF_SIZE$1; y++) {\n\t\t\tconst row = y * SVG_SDF_SIZE$1;\n\t\t\tfor (let x = 0; x \u003c SVG_SDF_SIZE$1; x++) if (valueAt(row + x) \u003c 0) {\n\t\t\t\tif (x \u003c minX) minX = x;\n\t\t\t\tif (x \u003e maxX) maxX = x;\n\t\t\t\tif (y \u003c minY) minY = y;\n\t\t\t\tif (y \u003e maxY) maxY = y;\n\t\t\t}\n\t\t}\n\t\tcache[url] = maxX \u003c 0 ? null : {\n\t\t\thwf: (maxX - minX + 1) / SVG_SDF_SIZE$1 / 2,\n\t\t\thhf: (maxY - minY + 1) / SVG_SDF_SIZE$1 / 2\n\t\t};\n\t} catch {\n\t\tcache[url] = null;\n\t} finally {\n\t\tpending.delete(url);\n\t\tconst fns = waiters[url];\n\t\tif (fns) {\n\t\t\tdelete waiters[url];\n\t\t\tfor (const fn of fns) fn();\n\t\t}\n\t}\n}\nfunction isSdfContentBoundsScanned(url) {\n\treturn !!url \u0026\u0026 url in cache;\n}\nvar SPRING_MAX_SUBSTEP = 1 / 60;\nfunction applySpring(current, velocity, target, smoothing, momentum, dt) {\n\tif (smoothing === 0 \u0026\u0026 momentum === 0) return [target, 0];\n\tconst stiffness = 200 * Math.pow(.01, smoothing);\n\tconst damping = 2 * Math.sqrt(stiffness) * (1 - momentum * .85);\n\tconst steps = dt \u003e SPRING_MAX_SUBSTEP ? Math.ceil(dt / SPRING_MAX_SUBSTEP) : 1;\n\tconst h = dt / steps;\n\tlet pos = current;\n\tlet vel = velocity;\n\tfor (let i = 0; i \u003c steps; i++) {\n\t\tconst force = stiffness * (target - pos);\n\t\tvel += (force - damping * vel) * h;\n\t\tpos += vel * h;\n\t}\n\treturn [pos, vel];\n}\nfunction applyBounceEase(t) {\n\tconst n1 = 7.5625, d1 = 2.75;\n\tif (t \u003c 1 / d1) return n1 * t * t;\n\tif (t \u003c 2 / d1) {\n\t\tt -= 1.5 / d1;\n\t\treturn n1 * t * t + .75;\n\t}\n\tif (t \u003c 2.5 / d1) {\n\t\tt -= 2.25 / d1;\n\t\treturn n1 * t * t + .9375;\n\t}\n\tt -= 2.625 / d1;\n\treturn n1 * t * t + .984375;\n}\nfunction applyEasing$1(t, easing) {\n\tswitch (easing) {\n\t\tcase \"linear\": return t;\n\t\tcase \"quad\": return t \u003c .5 ? 2 * t * t : 1 - Math.pow(-2 * t + 2, 2) / 2;\n\t\tcase \"expo\":\n\t\t\tif (t === 0) return 0;\n\t\t\tif (t === 1) return 1;\n\t\t\treturn t \u003c .5 ? Math.pow(2, 20 * t - 10) / 2 : (2 - Math.pow(2, -20 * t + 10)) / 2;\n\t\tcase \"bounce\": return applyBounceEase(t);\n\t\tcase \"sine\":\n\t\tdefault: return (1 - Math.cos(Math.PI * t)) / 2;\n\t}\n}\nfunction clampToTextureCap(w, h, env) {\n\tconst pr = env.pixelRatio || 1;\n\tconst gpuCssCap = Math.max(1, Math.floor(env.maxTextureDim / pr) - 1);\n\tconst capW = Math.min(w, env.viewportWidth, gpuCssCap);\n\tconst capH = Math.min(h, env.viewportHeight, gpuCssCap);\n\tconst scale = Math.min(capW / w, capH / h, 1);\n\treturn {\n\t\twidth: Math.max(1, Math.round(w * scale)),\n\t\theight: Math.max(1, Math.round(h * scale))\n\t};\n}\nfunction deriveElapsedTime(sharedTimeOrigin, prevElapsed, deltaTime, now) {\n\tif (sharedTimeOrigin != null) return (now - sharedTimeOrigin) / 1e3;\n\treturn prevElapsed + deltaTime;\n}\nfunction frameGate(now, state) {\n\tconst { lastRenderTime, isVisible, forceFullFrameRate, minInterval = 0 } = state;\n\tconst deltaTime = lastRenderTime \u003e 0 ? (now - lastRenderTime) / 1e3 : .016;\n\tif (lastRenderTime \u003e 0) {\n\t\tconst sinceLast = now - lastRenderTime;\n\t\tif (!isVisible \u0026\u0026 !forceFullFrameRate \u0026\u0026 sinceLast \u003c 1e3) return {\n\t\t\trender: false,\n\t\t\tdeltaTime\n\t\t};\n\t\tif ((isVisible || forceFullFrameRate) \u0026\u0026 sinceLast \u003c Math.max(15.666666666666668, minInterval)) return {\n\t\t\trender: false,\n\t\t\tdeltaTime\n\t\t};\n\t}\n\treturn {\n\t\trender: true,\n\t\tdeltaTime: Math.min(deltaTime, .1)\n\t};\n}\nasync function awaitGpuIdle(root) {\n\ttry {\n\t\tconst queue = root.device?.queue;\n\t\tif (queue \u0026\u0026 typeof queue.onSubmittedWorkDone === \"function\") {\n\t\t\tawait queue.onSubmittedWorkDone();\n\t\t\treturn;\n\t\t}\n\t} catch {}\n\tawait new Promise((resolve) =\u003e setTimeout(resolve, 16));\n}\nfunction runFrameSequence(seq) {\n\tseq.updateDrivers();\n\tif (!seq.ensureComposition()) return;\n\tseq.beforeRender();\n\tseq.flush();\n\tseq.render();\n\tseq.markReady();\n\tseq.afterRender();\n}\nfunction createFrameLoop(tick) {\n\tlet rafId = null;\n\tconst raf = (cb) =\u003e typeof requestAnimationFrame === \"function\" ? requestAnimationFrame(cb) : setTimeout(() =\u003e cb(performance.now()), 16);\n\tconst cancel = (id) =\u003e {\n\t\tif (typeof cancelAnimationFrame === \"function\") cancelAnimationFrame(id);\n\t\telse clearTimeout(id);\n\t};\n\tconst step = () =\u003e {\n\t\ttick();\n\t\tif (rafId !== null) rafId = raf(step);\n\t};\n\treturn {\n\t\tstart() {\n\t\t\tif (rafId !== null) return;\n\t\t\trafId = raf(step);\n\t\t},\n\t\tstop() {\n\t\t\tif (rafId !== null) {\n\t\t\t\tcancel(rafId);\n\t\t\t\trafId = null;\n\t\t\t}\n\t\t},\n\t\tget running() {\n\t\t\treturn rafId !== null;\n\t\t}\n\t};\n}\nconst SHAPE3D_TYPES$1 = [\n\t\"sphere3D\",\n\t\"cube3D\",\n\t\"torus3D\",\n\t\"octahedron3D\",\n\t\"cylinder3D\",\n\t\"capsule3D\",\n\t\"cone3D\",\n\t\"pyramid3D\",\n\t\"prism3D\",\n\t\"ellipsoid3D\",\n\t\"diamond3D\",\n\t\"link3D\",\n\t\"gem3D\",\n\t\"helix3D\",\n\t\"metaballs3D\",\n\t\"dodecahedron3D\",\n\t\"hemisphere3D\",\n\t\"ribbon3D\",\n\t\"blob3D\",\n\t\"gyroscope3D\"\n];\nfunction is3dShapeType$1(shapeType) {\n\treturn SHAPE3D_TYPES$1.includes(shapeType);\n}\nconst SVG3D_TYPES$1 = [\"svgExtrude3D\"];\nfunction isSvg3dShapeType$1(shapeType) {\n\treturn shapeType === \"svgExtrude3D\";\n}\nfunction isVolumetricShapeType$1(shapeType) {\n\treturn is3dShapeType$1(shapeType) || isSvg3dShapeType$1(shapeType);\n}\nconst SVG3D_DEFAULTS$1 = {\n\tdepth: .12,\n\tbevel: .02,\n\trotX: 15,\n\trotY: 30,\n\trotZ: 0\n};\nfunction shapeSubPropMax$1(value, fallback) {\n\tif (typeof value === \"number\") return value;\n\tif (value \u0026\u0026 typeof value === \"object\" \u0026\u0026 (value.type === \"auto-animate\" || value.type === \"mouse\")) {\n\t\tconst oMin = typeof value.outputMin === \"number\" ? value.outputMin : fallback;\n\t\tconst oMax = typeof value.outputMax === \"number\" ? value.outputMax : fallback;\n\t\treturn Math.max(oMin, oMax);\n\t}\n\treturn fallback;\n}\nconst SHAPE3D_DEFAULTS$1 = {\n\tsphere3D: {\n\t\tradius: .35,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tcube3D: {\n\t\tsizeX: .27,\n\t\tsizeY: .27,\n\t\tsizeZ: .27,\n\t\trounding: .02,\n\t\trotX: 25,\n\t\trotY: 35,\n\t\trotZ: 0\n\t},\n\ttorus3D: {\n\t\tradius: .3,\n\t\ttube: .12,\n\t\trotX: 55,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\toctahedron3D: {\n\t\tradius: .42,\n\t\trotX: 10,\n\t\trotY: 25,\n\t\trotZ: 0\n\t},\n\tcylinder3D: {\n\t\tradius: .22,\n\t\theight: .26,\n\t\trounding: .02,\n\t\trotX: 60,\n\t\trotY: 0,\n\t\trotZ: 30\n\t},\n\tcapsule3D: {\n\t\tradius: .16,\n\t\theight: .2,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 35\n\t},\n\tcone3D: {\n\t\tradius: .3,\n\t\ttopRadius: .02,\n\t\theight: .3,\n\t\trotX: 25,\n\t\trotY: 0,\n\t\trotZ: 15\n\t},\n\tpyramid3D: {\n\t\tsize: .3,\n\t\theight: .45,\n\t\trotX: -10,\n\t\trotY: 30,\n\t\trotZ: 0\n\t},\n\tprism3D: {\n\t\tradius: .28,\n\t\theight: .14,\n\t\trotX: 25,\n\t\trotY: 30,\n\t\trotZ: 0\n\t},\n\tellipsoid3D: {\n\t\tradiusX: .38,\n\t\tradiusY: .22,\n\t\tradiusZ: .3,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 20\n\t},\n\tdiamond3D: {\n\t\tradius: .3,\n\t\theight: .42,\n\t\trotX: 15,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tlink3D: {\n\t\tradius: .18,\n\t\tlength: .15,\n\t\ttube: .08,\n\t\trotX: 20,\n\t\trotY: 30,\n\t\trotZ: 0\n\t},\n\tgem3D: {\n\t\tradius: .3,\n\t\theight: .32,\n\t\tfacets: 8,\n\t\trotX: 15,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\thelix3D: {\n\t\tradius: .22,\n\t\ttube: .06,\n\t\tpitch: .16,\n\t\trotX: 20,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tmetaballs3D: {\n\t\tballs: 4,\n\t\tballRadius: .16,\n\t\tspread: .2,\n\t\tblend: .12,\n\t\tspeed: 1,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tdodecahedron3D: {\n\t\tradius: .34,\n\t\trotX: 20,\n\t\trotY: 10,\n\t\trotZ: 0\n\t},\n\themisphere3D: {\n\t\tradius: .4,\n\t\tcut: 0,\n\t\trotX: 30,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tribbon3D: {\n\t\twidth: .15,\n\t\tthickness: .03,\n\t\tlength: .38,\n\t\twave: .1,\n\t\twaveFrequency: 7,\n\t\ttwist: 140,\n\t\tspeed: 1,\n\t\trotX: 12,\n\t\trotY: 18,\n\t\trotZ: 0\n\t},\n\tblob3D: {\n\t\tradius: .3,\n\t\twobble: .07,\n\t\twobbliness: 5,\n\t\tspeed: 1,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tgyroscope3D: {\n\t\tradius: .34,\n\t\twidth: .1,\n\t\tthickness: .028,\n\t\trounding: .006,\n\t\tcore: .14,\n\t\tspeed: 1,\n\t\trotX: 15,\n\t\trotY: 0,\n\t\trotZ: 0\n\t}\n};\nfunction shape3dBoundingRadius$1(cfg) {\n\tconst d = SHAPE3D_DEFAULTS$1[cfg.type] ?? {};\n\tconst n = (k, f = .3) =\u003e shapeSubPropMax$1(cfg[k], d[k] ?? f);\n\tswitch (cfg.type) {\n\t\tcase \"cube3D\": return Math.hypot(n(\"sizeX\"), n(\"sizeY\"), n(\"sizeZ\")) + n(\"rounding\", 0);\n\t\tcase \"torus3D\": return n(\"radius\") + n(\"tube\");\n\t\tcase \"cylinder3D\": return Math.hypot(n(\"radius\"), n(\"height\")) + n(\"rounding\", 0);\n\t\tcase \"capsule3D\": return n(\"height\") + n(\"radius\");\n\t\tcase \"cone3D\": return Math.hypot(Math.max(n(\"radius\"), n(\"topRadius\")), n(\"height\"));\n\t\tcase \"pyramid3D\": return Math.hypot(n(\"size\") * Math.SQRT2, n(\"height\") * .5);\n\t\tcase \"prism3D\": return Math.hypot(n(\"radius\") * 1.1548, n(\"height\"));\n\t\tcase \"ellipsoid3D\": return Math.max(n(\"radiusX\"), n(\"radiusY\"), n(\"radiusZ\"));\n\t\tcase \"diamond3D\": return Math.max(n(\"radius\"), n(\"height\"));\n\t\tcase \"link3D\": return n(\"length\") + n(\"radius\") + n(\"tube\");\n\t\tcase \"gem3D\": return Math.max(n(\"radius\"), n(\"height\"));\n\t\tcase \"helix3D\": return Math.hypot(n(\"radius\") + n(\"tube\"), n(\"pitch\") * 3 * .5 + n(\"tube\"));\n\t\tcase \"metaballs3D\": return n(\"spread\") + n(\"ballRadius\", .16) + n(\"blend\", .12);\n\t\tcase \"dodecahedron3D\": return n(\"radius\") * 1.32;\n\t\tcase \"hemisphere3D\": return n(\"radius\");\n\t\tcase \"ribbon3D\": return Math.hypot(n(\"length\", .38), n(\"wave\", .1) * 1.2 + Math.hypot(n(\"width\", .15), n(\"thickness\", .03))) + .01;\n\t\tcase \"blob3D\": return n(\"radius\", .3) + n(\"wobble\", .07) + .02;\n\t\tcase \"gyroscope3D\": return n(\"radius\", .34) + n(\"thickness\", .028) * .5 + n(\"width\", .1) * .5 + n(\"rounding\", .006);\n\t\tcase \"sphere3D\":\n\t\tcase \"octahedron3D\":\n\t\tdefault: return n(\"radius\", .35);\n\t}\n}\nconst shapeEffectBoundingBoxDeclaration = {\n\tpropBindings: {\n\t\tx: {\n\t\t\tprop: \"center\",\n\t\t\tas: \"position-x\"\n\t\t},\n\t\ty: {\n\t\t\tprop: \"center\",\n\t\t\tas: \"position-y\"\n\t\t},\n\t\trotation: {\n\t\t\tprop: \"rotation\",\n\t\t\tas: \"degrees\"\n\t\t}\n\t},\n\tcomputeBounds(props, cw, ch) {\n\t\tconst scale = props.scale ?? 1;\n\t\tconst cx = typeof props.center?.x === \"number\" ? props.center.x : .5;\n\t\tconst cy = typeof props.center?.y === \"number\" ? props.center.y : .5;\n\t\tconst { hwf, hhf } = shapeContentExtent(props);\n\t\tconst fieldPx = scale * ch;\n\t\treturn {\n\t\t\tcenterXPx: cx * cw,\n\t\t\tcenterYPx: cy * ch,\n\t\t\twidthPx: 2 * hwf * fieldPx,\n\t\t\theightPx: 2 * hhf * fieldPx,\n\t\t\trotationDeg: props.rotation ?? 0\n\t\t};\n\t},\n\twriteBounds(bounds, currentProps, cw, ch) {\n\t\tconst center = {\n\t\t\t...currentProps.center ?? {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\tx: bounds.centerXPx / cw,\n\t\t\ty: bounds.centerYPx / ch\n\t\t};\n\t\tconst scale = currentProps.scale ?? 1;\n\t\tconst cfg = isNonUniformShapeEffect(currentProps) ? parseShapeConfig$1(currentProps.shape) : null;\n\t\tif (cfg \u0026\u0026 scale \u003e 0) return {\n\t\t\tcenter,\n\t\t\trotation: bounds.rotationDeg,\n\t\t\tshape: JSON.stringify({\n\t\t\t\t...cfg,\n\t\t\t\tradius: Math.max(.001, bounds.widthPx / (2 * scale * ch)),\n\t\t\t\theight: Math.max(.001, bounds.heightPx / (2 * scale * ch))\n\t\t\t})\n\t\t};\n\t\tconst { hwf } = shapeContentExtent(currentProps);\n\t\treturn {\n\t\t\tcenter,\n\t\t\tscale: hwf \u003e 0 ? Math.max(.01, bounds.widthPx / (2 * hwf * ch)) : .01,\n\t\t\trotation: bounds.rotationDeg\n\t\t};\n\t}\n};\nvar shapeParseCache = /* @__PURE__ */ new Map();\nfunction parseShapeConfig$1(shape) {\n\tif (typeof shape !== \"string\") return shape ?? null;\n\tif (shapeParseCache.has(shape)) return shapeParseCache.get(shape);\n\tlet parsed = null;\n\ttry {\n\t\tparsed = JSON.parse(shape);\n\t} catch {\n\t\tparsed = null;\n\t}\n\tif (shapeParseCache.size \u003e= 64) shapeParseCache.clear();\n\tshapeParseCache.set(shape, parsed);\n\treturn parsed;\n}\nfunction isNonUniformShapeEffect(props) {\n\tif (props.shapeSdfUrl) return false;\n\tconst t = parseShapeConfig$1(props.shape)?.type;\n\treturn t === \"roundedRectSDF\" || t === \"ellipseSDF\";\n}\nfunction shapeContentExtent(props) {\n\tif (props.shapeSdfUrl) {\n\t\tconst sb = props._shapeBounds ?? getSdfContentBounds(props.shapeSdfUrl);\n\t\tconst base = sb \u0026\u0026 typeof sb.hwf === \"number\" \u0026\u0026 typeof sb.hhf === \"number\" ? {\n\t\t\thwf: sb.hwf,\n\t\t\thhf: sb.hhf\n\t\t} : {\n\t\t\thwf: .5,\n\t\t\thhf: .5\n\t\t};\n\t\tconst t = props.shapeType;\n\t\tif (typeof t === \"string\" \u0026\u0026 isSvg3dShapeType$1(t)) {\n\t\t\tconst cfg$1 = parseShapeConfig$1(props.shape) ?? {};\n\t\t\tconst sub = (k) =\u003e shapeSubPropMax$1(cfg$1[k], SVG3D_DEFAULTS$1[k] ?? 0);\n\t\t\tconst br = Math.hypot(base.hwf, base.hhf, sub(\"depth\") * .5) + sub(\"bevel\") + .02;\n\t\t\treturn {\n\t\t\t\thwf: br,\n\t\t\t\thhf: br\n\t\t\t};\n\t\t}\n\t\treturn base;\n\t}\n\tconst cfg = parseShapeConfig$1(props.shape);\n\tif (!cfg || typeof cfg !== \"object\") return {\n\t\thwf: .5,\n\t\thhf: .5\n\t};\n\tif (typeof cfg.type === \"string\" \u0026\u0026 is3dShapeType$1(cfg.type)) {\n\t\tconst br = shape3dBoundingRadius$1(cfg);\n\t\treturn {\n\t\t\thwf: br,\n\t\t\thhf: br\n\t\t};\n\t}\n\tconst r = typeof cfg.radius === \"number\" ? cfg.radius : .35;\n\tswitch (cfg.type) {\n\t\tcase \"roundedRectSDF\":\n\t\tcase \"ellipseSDF\": return {\n\t\t\thwf: r,\n\t\t\thhf: typeof cfg.height === \"number\" ? cfg.height : r\n\t\t};\n\t\tcase \"ringSDF\": {\n\t\t\tconst t = typeof cfg.thickness === \"number\" ? cfg.thickness : 0;\n\t\t\treturn {\n\t\t\t\thwf: r + t,\n\t\t\t\thhf: r + t\n\t\t\t};\n\t\t}\n\t\tcase \"trapezoidSDF\": {\n\t\t\tconst bw = typeof cfg.bottomWidth === \"number\" ? cfg.bottomWidth : .3;\n\t\t\tconst tw = typeof cfg.topWidth === \"number\" ? cfg.topWidth : .2;\n\t\t\tconst h = typeof cfg.height === \"number\" ? cfg.height : .25;\n\t\t\treturn {\n\t\t\t\thwf: Math.max(bw, tw),\n\t\t\t\thhf: h\n\t\t\t};\n\t\t}\n\t\tcase \"vesicaSDF\": {\n\t\t\tconst spread = typeof cfg.spread === \"number\" ? Math.min(1, Math.max(0, cfg.spread)) : .4;\n\t\t\treturn {\n\t\t\t\thwf: r * (1 - spread),\n\t\t\t\thhf: r * Math.sqrt(Math.max(0, 1 - spread * spread))\n\t\t\t};\n\t\t}\n\t\tcase \"teardropSDF\": return {\n\t\t\thwf: r,\n\t\t\thhf: ((typeof cfg.height === \"number\" ? cfg.height : .4) + r) / 2\n\t\t};\n\t\tcase \"parallelogramSDF\": {\n\t\t\tconst w = typeof cfg.width === \"number\" ? cfg.width : .32;\n\t\t\tconst h = typeof cfg.height === \"number\" ? cfg.height : .22;\n\t\t\tconst sk = typeof cfg.skew === \"number\" ? cfg.skew : 0;\n\t\t\treturn {\n\t\t\t\thwf: w + Math.abs(sk),\n\t\t\t\thhf: h\n\t\t\t};\n\t\t}\n\t\tdefault: return {\n\t\t\thwf: r,\n\t\t\thhf: r\n\t\t};\n\t}\n}\nfunction resolveShapeType(shapeType, shape) {\n\tif (shapeType) return shapeType;\n\tlet parsed = shape;\n\tif (typeof shape === \"string\") try {\n\t\tparsed = JSON.parse(shape);\n\t} catch {\n\t\treturn \"circleSDF\";\n\t}\n\tif (parsed \u0026\u0026 typeof parsed === \"object\") {\n\t\tconst t = parsed.type;\n\t\tif (typeof t === \"string\" \u0026\u0026 t) return t;\n\t}\n\treturn \"circleSDF\";\n}\nvar sdf3d_exports = /* @__PURE__ */ __export({\n\tHELIX_TURNS: () =\u003e 3,\n\tMAX_METABALLS: () =\u003e 8,\n\tMarchParams: () =\u003e MarchParams,\n\tRotStruct: () =\u003e RotStruct,\n\tSHAPE3D_DEFAULTS: () =\u003e SHAPE3D_DEFAULTS,\n\tSHAPE3D_TYPES: () =\u003e SHAPE3D_TYPES,\n\tSVG3D_DEFAULTS: () =\u003e SVG3D_DEFAULTS,\n\tSVG3D_TYPES: () =\u003e SVG3D_TYPES,\n\tSampleParams: () =\u003e SampleParams,\n\tVOLUMETRIC_FIELD_EXTRA_FIELDS: () =\u003e VOLUMETRIC_FIELD_EXTRA_FIELDS,\n\tVOLUMETRIC_FIELD_FORMAT: () =\u003e VOLUMETRIC_FIELD_FORMAT,\n\tVOLUMETRIC_FIELD_RES: () =\u003e VOLUMETRIC_FIELD_RES,\n\tVOLUMETRIC_FIELD_RES_MOBILE: () =\u003e 768,\n\tboxFaceUV: () =\u003e boxFaceUV,\n\tbuildFieldSampleGraph: () =\u003e buildFieldSampleGraph,\n\tbuildFieldSampleGraphArgs: () =\u003e buildFieldSampleGraphArgs,\n\tbuildRaymarchedField: () =\u003e buildRaymarchedField,\n\tbuildRaymarchedFieldFn: () =\u003e buildRaymarchedFieldFn,\n\tbuildVolumetricFieldKernel: () =\u003e buildVolumetricFieldKernel,\n\tbuildVolumetricFieldSampler: () =\u003e buildVolumetricFieldSampler,\n\tcapsuleSurfaceUV: () =\u003e capsuleSurfaceUV,\n\tcreateAnalytic2dExtrudeSetup: () =\u003e createAnalytic2dExtrudeSetup,\n\tcreateAnalytic3dSdfSetup: () =\u003e createAnalytic3dSdfSetup,\n\tcreateSvg3dSdfSetup: () =\u003e createSvg3dSdfSetup,\n\tcreateVolumetricFieldCompute: () =\u003e createVolumetricFieldCompute,\n\tcreateVolumetricFieldComputeNode: () =\u003e createVolumetricFieldComputeNode,\n\teulerRotatePacked: () =\u003e eulerRotatePacked,\n\tis3dShapeType: () =\u003e is3dShapeType,\n\tisMobileGpuViewport: () =\u003e isMobileGpuViewport,\n\tisSvg3dShapeType: () =\u003e isSvg3dShapeType,\n\tisVolumetricShapeType: () =\u003e isVolumetricShapeType,\n\tmakeVolumetricFieldLayout: () =\u003e makeVolumetricFieldLayout,\n\tmakeVolumetricSvgFieldLayout: () =\u003e makeVolumetricSvgFieldLayout,\n\tmobiusSurfaceUV: () =\u003e mobiusSurfaceUV,\n\tpackedParamExtraFields: () =\u003e packedParamExtraFields,\n\tparamBoxSdf: () =\u003e paramBoxSdf,\n\tparamCapsuleSdf: () =\u003e paramCapsuleSdf,\n\tparamMobiusSdf: () =\u003e paramMobiusSdf,\n\tparamSphereSdf: () =\u003e paramSphereSdf,\n\tparamTorusSdf: () =\u003e paramTorusSdf,\n\tparamTwistedRibbonSdf: () =\u003e paramTwistedRibbonSdf,\n\tresolveActiveFieldRes: () =\u003e resolveActiveFieldRes,\n\tresolveShapeFieldSampler: () =\u003e resolveShapeFieldSampler,\n\tresolveShapeSubProp: () =\u003e resolveShapeSubProp,\n\tresolveVolumetricFieldRes: () =\u003e resolveVolumetricFieldRes,\n\trotateVec3: () =\u003e rotateVec3,\n\trotateVecCpu: () =\u003e rotateVecCpu,\n\tsdBicone: () =\u003e sdBicone,\n\tsdCappedCone: () =\u003e sdCappedCone,\n\tsdCapsule: () =\u003e sdCapsule,\n\tsdCutSphere: () =\u003e sdCutSphere,\n\tsdDodecahedron: () =\u003e sdDodecahedron,\n\tsdEllipsoid: () =\u003e sdEllipsoid,\n\tsdFlatBand: () =\u003e sdFlatBand,\n\tsdGem: () =\u003e sdGem,\n\tsdGyroscope: () =\u003e sdGyroscope,\n\tsdHelix: () =\u003e sdHelix,\n\tsdHexPrism: () =\u003e sdHexPrism,\n\tsdLink: () =\u003e sdLink,\n\tsdMetaballs: () =\u003e sdMetaballs,\n\tsdOctahedron: () =\u003e sdOctahedron,\n\tsdPyramid: () =\u003e sdPyramid,\n\tsdRibbon: () =\u003e sdRibbon,\n\tsdRoundBox: () =\u003e sdRoundBox,\n\tsdRoundCylinder: () =\u003e sdRoundCylinder,\n\tsdSphere: () =\u003e sdSphere,\n\tsdTorus: () =\u003e sdTorus,\n\tsdWobbleBlob: () =\u003e sdWobbleBlob,\n\tshape3dBoundingRadius: () =\u003e shape3dBoundingRadius,\n\tshapeSubPropMax: () =\u003e shapeSubPropMax,\n\tsmin: () =\u003e smin,\n\tsphereSurfaceUV: () =\u003e sphereSurfaceUV,\n\ttorusSurfaceUV: () =\u003e torusSurfaceUV,\n\ttwistedRibbonSurfaceUV: () =\u003e twistedRibbonSurfaceUV\n});\nvar PI = 3.141592653589793;\nvar TWO_PI = 6.283185307179586;\nconst SHAPE3D_TYPES = [\n\t\"sphere3D\",\n\t\"cube3D\",\n\t\"torus3D\",\n\t\"octahedron3D\",\n\t\"cylinder3D\",\n\t\"capsule3D\",\n\t\"cone3D\",\n\t\"pyramid3D\",\n\t\"prism3D\",\n\t\"ellipsoid3D\",\n\t\"diamond3D\",\n\t\"link3D\",\n\t\"gem3D\",\n\t\"helix3D\",\n\t\"metaballs3D\",\n\t\"dodecahedron3D\",\n\t\"hemisphere3D\",\n\t\"ribbon3D\",\n\t\"blob3D\",\n\t\"gyroscope3D\"\n];\nfunction is3dShapeType(shapeType) {\n\treturn SHAPE3D_TYPES.includes(shapeType);\n}\nconst SVG3D_TYPES = [\"svgExtrude3D\"];\nfunction isSvg3dShapeType(shapeType) {\n\treturn shapeType === \"svgExtrude3D\";\n}\nfunction isVolumetricShapeType(shapeType) {\n\treturn is3dShapeType(shapeType) || isSvg3dShapeType(shapeType);\n}\nconst SVG3D_DEFAULTS = {\n\tdepth: .12,\n\tbevel: .02,\n\trotX: 15,\n\trotY: 30,\n\trotZ: 0\n};\nvar bounceEase = (t) =\u003e {\n\tconst n1 = 7.5625;\n\tconst d1 = 2.75;\n\tif (t \u003c 1 / d1) return n1 * t * t;\n\tif (t \u003c 2 / d1) {\n\t\tt -= 1.5 / d1;\n\t\treturn n1 * t * t + .75;\n\t}\n\tif (t \u003c 2.5 / d1) {\n\t\tt -= 2.25 / d1;\n\t\treturn n1 * t * t + .9375;\n\t}\n\tt -= 2.625 / d1;\n\treturn n1 * t * t + .984375;\n};\nvar applyEasing = (t, easing) =\u003e {\n\tswitch (easing) {\n\t\tcase \"linear\": return t;\n\t\tcase \"quad\": return t \u003c .5 ? 2 * t * t : 1 - Math.pow(-2 * t + 2, 2) / 2;\n\t\tcase \"expo\":\n\t\t\tif (t === 0) return 0;\n\t\t\tif (t === 1) return 1;\n\t\t\treturn t \u003c .5 ? Math.pow(2, 20 * t - 10) / 2 : (2 - Math.pow(2, -20 * t + 10)) / 2;\n\t\tcase \"bounce\": return bounceEase(t);\n\t\tcase \"sine\":\n\t\tdefault: return (1 - Math.cos(Math.PI * t)) / 2;\n\t}\n};\nfunction resolveShapeSubProp(value, fallback, frame, key) {\n\tif (typeof value === \"number\") return value;\n\tif (value \u0026\u0026 typeof value === \"object\") {\n\t\tif (value.type === \"auto-animate\") {\n\t\t\tconst t01 = (frame.elapsed * (value.speed ?? 1) * .2 % 1 + 1) % 1;\n\t\t\tconst phase = applyEasing(value.mode === \"loop\" ? t01 : t01 \u003c .5 ? t01 * 2 : (1 - t01) * 2, value.easing ?? value.waveform ?? \"sine\");\n\t\t\tconst oMin = typeof value.outputMin === \"number\" ? value.outputMin : fallback;\n\t\t\treturn oMin + phase * ((typeof value.outputMax === \"number\" ? value.outputMax : fallback) - oMin);\n\t\t}\n\t\tif (value.type === \"mouse\") {\n\t\t\tconst target = value.axis === \"y\" ? frame.pointerY : frame.pointerX;\n\t\t\tlet st = frame.springs.get(key);\n\t\t\tif (!st) {\n\t\t\t\tst = {\n\t\t\t\t\tcurrent: target,\n\t\t\t\t\tvelocity: 0\n\t\t\t\t};\n\t\t\t\tframe.springs.set(key, st);\n\t\t\t}\n\t\t\tconst [np, nv] = applySpring(st.current, st.velocity, target, value.smoothing ?? 0, value.momentum ?? 0, frame.deltaTime);\n\t\t\tst.current = np;\n\t\t\tst.velocity = nv;\n\t\t\tconst smoothed = Math.max(.001, np);\n\t\t\tconst oMin = typeof value.outputMin === \"number\" ? value.outputMin : fallback;\n\t\t\tconst oMax = typeof value.outputMax === \"number\" ? value.outputMax : fallback;\n\t\t\tconst exponent = Math.pow(2, -(value.curve ?? 0) * 2);\n\t\t\treturn oMin + Math.pow(smoothed, exponent) * (oMax - oMin);\n\t\t}\n\t}\n\treturn fallback;\n}\nfunction shapeSubPropMax(value, fallback) {\n\tif (typeof value === \"number\") return value;\n\tif (value \u0026\u0026 typeof value === \"object\" \u0026\u0026 (value.type === \"auto-animate\" || value.type === \"mouse\")) {\n\t\tconst oMin = typeof value.outputMin === \"number\" ? value.outputMin : fallback;\n\t\tconst oMax = typeof value.outputMax === \"number\" ? value.outputMax : fallback;\n\t\treturn Math.max(oMin, oMax);\n\t}\n\treturn fallback;\n}\nconst SHAPE3D_DEFAULTS = {\n\tsphere3D: {\n\t\tradius: .35,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tcube3D: {\n\t\tsizeX: .27,\n\t\tsizeY: .27,\n\t\tsizeZ: .27,\n\t\trounding: .02,\n\t\trotX: 25,\n\t\trotY: 35,\n\t\trotZ: 0\n\t},\n\ttorus3D: {\n\t\tradius: .3,\n\t\ttube: .12,\n\t\trotX: 55,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\toctahedron3D: {\n\t\tradius: .42,\n\t\trotX: 10,\n\t\trotY: 25,\n\t\trotZ: 0\n\t},\n\tcylinder3D: {\n\t\tradius: .22,\n\t\theight: .26,\n\t\trounding: .02,\n\t\trotX: 60,\n\t\trotY: 0,\n\t\trotZ: 30\n\t},\n\tcapsule3D: {\n\t\tradius: .16,\n\t\theight: .2,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 35\n\t},\n\tcone3D: {\n\t\tradius: .3,\n\t\ttopRadius: .02,\n\t\theight: .3,\n\t\trotX: 25,\n\t\trotY: 0,\n\t\trotZ: 15\n\t},\n\tpyramid3D: {\n\t\tsize: .3,\n\t\theight: .45,\n\t\trotX: -10,\n\t\trotY: 30,\n\t\trotZ: 0\n\t},\n\tprism3D: {\n\t\tradius: .28,\n\t\theight: .14,\n\t\trotX: 25,\n\t\trotY: 30,\n\t\trotZ: 0\n\t},\n\tellipsoid3D: {\n\t\tradiusX: .38,\n\t\tradiusY: .22,\n\t\tradiusZ: .3,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 20\n\t},\n\tdiamond3D: {\n\t\tradius: .3,\n\t\theight: .42,\n\t\trotX: 15,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tlink3D: {\n\t\tradius: .18,\n\t\tlength: .15,\n\t\ttube: .08,\n\t\trotX: 20,\n\t\trotY: 30,\n\t\trotZ: 0\n\t},\n\tgem3D: {\n\t\tradius: .3,\n\t\theight: .32,\n\t\tfacets: 8,\n\t\trotX: 15,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\thelix3D: {\n\t\tradius: .22,\n\t\ttube: .06,\n\t\tpitch: .16,\n\t\trotX: 20,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tmetaballs3D: {\n\t\tballs: 4,\n\t\tballRadius: .16,\n\t\tspread: .2,\n\t\tblend: .12,\n\t\tspeed: 1,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tdodecahedron3D: {\n\t\tradius: .34,\n\t\trotX: 20,\n\t\trotY: 10,\n\t\trotZ: 0\n\t},\n\themisphere3D: {\n\t\tradius: .4,\n\t\tcut: 0,\n\t\trotX: 30,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tribbon3D: {\n\t\twidth: .15,\n\t\tthickness: .03,\n\t\tlength: .38,\n\t\twave: .1,\n\t\twaveFrequency: 7,\n\t\ttwist: 140,\n\t\tspeed: 1,\n\t\trotX: 12,\n\t\trotY: 18,\n\t\trotZ: 0\n\t},\n\tblob3D: {\n\t\tradius: .3,\n\t\twobble: .07,\n\t\twobbliness: 5,\n\t\tspeed: 1,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 0\n\t},\n\tgyroscope3D: {\n\t\tradius: .34,\n\t\twidth: .1,\n\t\tthickness: .028,\n\t\trounding: .006,\n\t\tcore: .14,\n\t\tspeed: 1,\n\t\trotX: 15,\n\t\trotY: 0,\n\t\trotZ: 0\n\t}\n};\nfunction shape3dBoundingRadius(cfg) {\n\tconst dflt = SHAPE3D_DEFAULTS[cfg.type] ?? {};\n\tconst n = (k, f = .3) =\u003e shapeSubPropMax(cfg[k], dflt[k] ?? f);\n\tswitch (cfg.type) {\n\t\tcase \"cube3D\": return Math.hypot(n(\"sizeX\"), n(\"sizeY\"), n(\"sizeZ\")) + n(\"rounding\", 0);\n\t\tcase \"torus3D\": return n(\"radius\") + n(\"tube\");\n\t\tcase \"cylinder3D\": return Math.hypot(n(\"radius\"), n(\"height\")) + n(\"rounding\", 0);\n\t\tcase \"capsule3D\": return n(\"height\") + n(\"radius\");\n\t\tcase \"cone3D\": return Math.hypot(Math.max(n(\"radius\"), n(\"topRadius\")), n(\"height\"));\n\t\tcase \"pyramid3D\": return Math.hypot(n(\"size\") * Math.SQRT2, n(\"height\") * .5);\n\t\tcase \"prism3D\": return Math.hypot(n(\"radius\") * 1.1548, n(\"height\"));\n\t\tcase \"ellipsoid3D\": return Math.max(n(\"radiusX\"), n(\"radiusY\"), n(\"radiusZ\"));\n\t\tcase \"diamond3D\": return Math.max(n(\"radius\"), n(\"height\"));\n\t\tcase \"link3D\": return n(\"length\") + n(\"radius\") + n(\"tube\");\n\t\tcase \"gem3D\": return Math.max(n(\"radius\"), n(\"height\"));\n\t\tcase \"helix3D\": return Math.hypot(n(\"radius\") + n(\"tube\"), n(\"pitch\") * 3 * .5 + n(\"tube\"));\n\t\tcase \"metaballs3D\": return n(\"spread\") + n(\"ballRadius\", .16) + n(\"blend\", .12);\n\t\tcase \"dodecahedron3D\": return n(\"radius\") * 1.32;\n\t\tcase \"hemisphere3D\": return n(\"radius\");\n\t\tcase \"ribbon3D\": return Math.hypot(n(\"length\", .38), n(\"wave\", .1) * 1.2 + Math.hypot(n(\"width\", .15), n(\"thickness\", .03))) + .01;\n\t\tcase \"blob3D\": return n(\"radius\", .3) + n(\"wobble\", .07) + .02;\n\t\tcase \"gyroscope3D\": return n(\"radius\", .34) + n(\"thickness\", .028) * .5 + n(\"width\", .1) * .5 + n(\"rounding\", .006);\n\t\tcase \"sphere3D\":\n\t\tcase \"octahedron3D\":\n\t\tdefault: return n(\"radius\", .35);\n\t}\n}\nfunction rotateVecCpu(vx, vy, vz, s) {\n\tconst x1 = vx * s.cy + vz * s.sy;\n\tconst z1 = -vx * s.sy + vz * s.cy;\n\tconst y2 = vy * s.cx - z1 * s.sx;\n\tconst z2 = vy * s.sx + z1 * s.cx;\n\treturn {\n\t\tx: x1 * s.cz - y2 * s.sz,\n\t\ty: x1 * s.sz + y2 * s.cz,\n\t\tz: z2\n\t};\n}\nconst sdSphere = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(length(p), r);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"r\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.length\",\n\t\t\t\t[\"p\"]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t\"r\"\n\t\t]]]]\n\t},\n\texternals: { \"std.length\": () =\u003e length }\n}) \u0026\u0026 $.f)({}));\nconst sdRoundBox = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, hx, hy, hz, rounding) =\u003e {\n\t\"use gpu\";\n\tconst qx = __tsover_add(__tsover_sub(abs(p.x), hx), rounding);\n\tconst qy = __tsover_add(__tsover_sub(abs(p.y), hy), rounding);\n\tconst qz = __tsover_add(__tsover_sub(abs(p.z), hz), rounding);\n\tconst outer = length(vec3f(max(qx, 0), max(qy, 0), max(qz, 0)));\n\tconst inner = min(max(qx, max(qy, qz)), 0);\n\treturn __tsover_sub(__tsover_add(outer, inner), rounding);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hz\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rounding\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hy\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hz\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outer\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qx\", [5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qy\", [5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qz\", [5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"qx\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"qy\", \"qz\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outer\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"inner\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"rounding\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdTorus = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, ringR, tubeR) =\u003e {\n\t\"use gpu\";\n\tconst qx = __tsover_sub(length(vec2f(p.x, p.z)), ringR);\n\treturn __tsover_sub(length(vec2f(qx, p.y)), tubeR);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ringR\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tubeR\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"qx\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"ringR\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.length\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"qx\", [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t\"tubeR\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdOctahedron = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, s) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(__tsover_sub(__tsover_add(__tsover_add(abs(p.x), abs(p.y)), abs(p.z)), s), .57735027);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"s\"\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[5, \"0.57735027\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.abs\": () =\u003e abs }\n}) \u0026\u0026 $.f)({}));\nconst sdRoundCylinder = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r, h, rounding) =\u003e {\n\t\"use gpu\";\n\tconst dx = __tsover_add(__tsover_sub(length(vec2f(p.x, p.z)), r), rounding);\n\tconst dy = __tsover_add(__tsover_sub(abs(p.y), h), rounding);\n\tconst inner = min(max(dx, dy), 0);\n\tconst outer = length(vec2f(max(dx, 0), max(dy, 0)));\n\treturn __tsover_sub(__tsover_add(inner, outer), rounding);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rounding\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"r\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"h\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"dx\", \"dy\"]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outer\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"dx\", [5, \"0\"]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"dy\", [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"inner\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"outer\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"rounding\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdCapsule = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r, h) =\u003e {\n\t\"use gpu\";\n\tconst cyc = clamp(p.y, __tsover_mul(h, -1), h);\n\treturn __tsover_sub(length(vec3f(p.x, __tsover_sub(p.y, cyc), p.z)), r);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"cyc\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"h\"\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.length\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cyc\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t\"r\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdCappedCone = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r1, r2, h) =\u003e {\n\t\"use gpu\";\n\tconst qx = length(vec2f(p.x, p.z));\n\tconst qy = p.y;\n\tconst k2x = __tsover_sub(r2, r1);\n\tconst k2y = __tsover_mul(h, 2);\n\tconst cax = __tsover_sub(qx, min(qx, select(r2, r1, qy \u003c 0)));\n\tconst cay = __tsover_sub(abs(qy), h);\n\tconst dotNum = __tsover_add(__tsover_mul(__tsover_sub(r2, qx), k2x), __tsover_mul(__tsover_sub(h, qy), k2y));\n\tconst dotDen = max(__tsover_add(__tsover_mul(k2x, k2x), __tsover_mul(k2y, k2y)), 1e-6);\n\tconst t = clamp(__tsover_div(dotNum, dotDen), 0, 1);\n\tconst cbx = __tsover_add(__tsover_sub(qx, r2), __tsover_mul(k2x, t));\n\tconst cby = __tsover_add(__tsover_sub(qy, h), __tsover_mul(k2y, t));\n\tconst sInner = select(f32(1), f32(-1), cay \u003c 0);\n\tconst s = select(f32(1), sInner, cbx \u003c 0);\n\tconst dca = __tsover_add(__tsover_mul(cax, cax), __tsover_mul(cay, cay));\n\tconst dcb = __tsover_add(__tsover_mul(cbx, cbx), __tsover_mul(cby, cby));\n\treturn __tsover_mul(s, sqrt(min(dca, dcb)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k2x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r2\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k2y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"qx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"qx\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\t\t\"r1\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"qy\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"h\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotNum\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k2x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k2y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotDen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"k2x\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"k2x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"k2y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"k2y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dotNum\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"dotDen\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cbx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"r2\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k2x\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cby\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"h\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k2y\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sInner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cay\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sInner\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cbx\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dca\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cax\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cax\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cay\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cay\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dcb\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cbx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cbx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cby\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cby\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"s\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"dca\", \"dcb\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdPyramid = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, b, ht) =\u003e {\n\t\"use gpu\";\n\tconst h2 = __tsover_mul(ht, .5);\n\tconst denom = sqrt(__tsover_add(__tsover_mul(ht, ht), __tsover_mul(b, b)));\n\tconst dx = __tsover_div(__tsover_add(__tsover_mul(ht, abs(p.x)), __tsover_mul(b, __tsover_sub(p.y, h2))), denom);\n\tconst dz = __tsover_div(__tsover_add(__tsover_mul(ht, abs(p.z)), __tsover_mul(b, __tsover_sub(p.y, h2))), denom);\n\tconst dBase = __tsover_sub(__tsover_mul(p.y, -1), h2);\n\treturn max(max(dx, dz), dBase);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ht\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ht\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"denom\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ht\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ht\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ht\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"h2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"denom\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ht\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"h2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"denom\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dBase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"h2\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"dx\", \"dz\"]\n\t\t\t\t], \"dBase\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdHexPrism = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r, he) =\u003e {\n\t\"use gpu\";\n\tconst kx = -.8660254;\n\tconst ky = .5;\n\tconst kz = .57735;\n\tconst ax = abs(p.x);\n\tconst ay = abs(p.y);\n\tconst az = abs(p.z);\n\tconst dk = __tsover_mul(min(__tsover_add(__tsover_mul(kx, ax), __tsover_mul(ky, ay)), 0), 2);\n\tconst px = __tsover_sub(ax, __tsover_mul(dk, kx));\n\tconst py = __tsover_sub(ay, __tsover_mul(dk, ky));\n\tconst cx = clamp(px, __tsover_mul(__tsover_mul(kz, r), -1), __tsover_mul(kz, r));\n\tconst ex = __tsover_sub(px, cx);\n\tconst ey = __tsover_sub(py, r);\n\tconst dHex = __tsover_mul(sqrt(__tsover_add(__tsover_mul(ex, ex), __tsover_mul(ey, ey))), sign(__tsover_sub(py, r)));\n\tconst dZ = __tsover_sub(az, he);\n\tconst inner = min(max(dHex, dZ), 0);\n\tconst outer = length(vec2f(max(dHex, 0), max(dZ, 0)));\n\treturn __tsover_add(inner, outer);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"he\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kx\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.8660254\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ky\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kz\",\n\t\t\t\t[5, \"0.57735\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ax\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ay\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"az\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dk\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"kx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ax\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ky\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ay\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ax\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dk\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"kx\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ay\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dk\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ky\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"kz\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"kz\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ex\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cx\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ey\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dHex\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ex\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ey\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dZ\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"az\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"he\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"dHex\", \"dZ\"]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outer\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"dHex\", [5, \"0\"]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"dZ\", [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"inner\",\n\t\t\t\t\"+\",\n\t\t\t\t\"outer\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.sign\": () =\u003e sign,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdEllipsoid = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rx, ry, rz) =\u003e {\n\t\"use gpu\";\n\tconst k0 = length(vec3f(__tsover_div(p.x, rx), __tsover_div(p.y, ry), __tsover_div(p.z, rz)));\n\tconst k1 = length(vec3f(__tsover_div(p.x, __tsover_mul(rx, rx)), __tsover_div(p.y, __tsover_mul(ry, ry)), __tsover_div(p.z, __tsover_mul(rz, rz))));\n\treturn __tsover_div(__tsover_mul(k0, __tsover_sub(k0, 1)), max(k1, 1e-6));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ry\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rz\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"rx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"ry\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"rz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"rx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ry\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"rz\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"rz\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"k0\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k0\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"k1\", [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdBicone = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r, h) =\u003e {\n\t\"use gpu\";\n\tconst qx = length(vec2f(p.x, p.z));\n\tconst qy = abs(p.y);\n\tconst abx = __tsover_mul(r, -1);\n\tconst aby = h;\n\tconst apx = __tsover_sub(qx, r);\n\tconst apy = qy;\n\tconst den = max(__tsover_add(__tsover_mul(abx, abx), __tsover_mul(aby, aby)), 1e-6);\n\tconst t = clamp(__tsover_div(__tsover_add(__tsover_mul(apx, abx), __tsover_mul(apy, aby)), den), 0, 1);\n\tconst dxx = __tsover_sub(apx, __tsover_mul(abx, t));\n\tconst dyy = __tsover_sub(apy, __tsover_mul(aby, t));\n\tconst dist = sqrt(__tsover_add(__tsover_mul(dxx, dxx), __tsover_mul(dyy, dyy)));\n\treturn __tsover_mul(dist, sign(__tsover_sub(__tsover_add(__tsover_mul(h, qx), __tsover_mul(r, qy)), __tsover_mul(r, h))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"abx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aby\",\n\t\t\t\t\"h\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"apx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"qx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"apy\",\n\t\t\t\t\"qy\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"den\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"abx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"abx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"aby\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aby\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"apx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"abx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"apy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"aby\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"den\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dxx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"apx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"abx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dyy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"apy\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aby\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dxx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dxx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dyy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dyy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dist\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.sign\": () =\u003e sign\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdLink = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, le, r1, r2) =\u003e {\n\t\"use gpu\";\n\tconst qy = max(__tsover_sub(abs(p.y), le), 0);\n\tconst ring = __tsover_sub(length(vec2f(p.x, qy)), r1);\n\treturn __tsover_sub(length(vec2f(ring, p.z)), r2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"le\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r2\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"le\"\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ring\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], \"qy\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"ring\", [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"r2\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst smin = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((a, b, k) =\u003e {\n\t\"use gpu\";\n\tconst h = clamp(__tsover_add(__tsover_mul(__tsover_div(__tsover_sub(b, a), k), .5), .5), 0, 1);\n\treturn __tsover_sub(mix(b, a, h), __tsover_mul(__tsover_mul(k, h), __tsover_sub(1, h)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"k\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"h\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"h\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"k\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"h\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"h\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdGem = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r, h, sides) =\u003e {\n\t\"use gpu\";\n\tconst base = sdBicone(p, r, h);\n\tconst lenXZ = length(vec2f(p.x, p.z));\n\tconst ang = atan2(p.z, p.x);\n\tconst sector = __tsover_div(TWO_PI, sides);\n\tconst idx = floor(__tsover_add(__tsover_div(ang, sector), .5));\n\tconst ca = __tsover_sub(ang, __tsover_mul(idx, sector));\n\tconst ri = __tsover_mul(r, cos(__tsover_div(PI, sides)));\n\treturn max(max(base, __tsover_sub(__tsover_mul(lenXZ, cos(ca)), ri)), __tsover_sub(p.y, __tsover_mul(h, .45)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sides\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"base\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdBicone\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\"h\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lenXZ\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ang\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sector\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"TWO_PI\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"sides\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"idx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"sector\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ca\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ang\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sector\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ri\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"PI\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"sides\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"facet\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lenXZ\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"ca\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"ri\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"base\", \"facet\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"table\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.45\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[\"dd\", \"table\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"sdBicone\": () =\u003e sdBicone,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"PI\": () =\u003e PI,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdHelix = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, R, tube, pitch, turns) =\u003e {\n\t\"use gpu\";\n\tconst psi = atan2(p.z, p.x);\n\tconst k = floor(__tsover_add(__tsover_sub(__tsover_div(p.y, pitch), __tsover_div(psi, TWO_PI)), .5));\n\tconst theta = __tsover_add(psi, __tsover_mul(TWO_PI, k));\n\tconst ccx = __tsover_mul(R, cos(theta));\n\tconst ccy = __tsover_div(__tsover_mul(pitch, theta), TWO_PI);\n\tconst ccz = __tsover_mul(R, sin(theta));\n\treturn max(__tsover_sub(length(vec3f(__tsover_sub(p.x, ccx), __tsover_sub(p.y, ccy), __tsover_sub(p.z, ccz))), tube), __tsover_sub(abs(p.y), __tsover_mul(__tsover_mul(pitch, turns), .5)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"R\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tube\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pitch\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"turns\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"psi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"pitch\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"psi\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"theta\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"psi\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"TWO_PI\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ccx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"R\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ccy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"pitch\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"theta\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ccz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"R\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dStrand\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"ccx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"ccy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"ccz\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"tube\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slab\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"pitch\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"turns\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[\"dStrand\", \"slab\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nvar MetaballArray = arrayOf(vec3f, 8);\nvar METABALL_COUNT = 8;\nconst sdMetaballs = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, b0, b1, b2, b3, b4, b5, b6, b7, r, k) =\u003e {\n\t\"use gpu\";\n\tconst balls = MetaballArray();\n\tballs[0] = vec3f(b0);\n\tballs[1] = vec3f(b1);\n\tballs[2] = vec3f(b2);\n\tballs[3] = vec3f(b3);\n\tballs[4] = vec3f(b4);\n\tballs[5] = vec3f(b5);\n\tballs[6] = vec3f(b6);\n\tballs[7] = vec3f(b7);\n\tlet dd = __tsover_sub(length(p.sub(balls[0])), r);\n\tfor (let i = 1; i \u003c METABALL_COUNT; i++) dd = smin(dd, __tsover_sub(length(p.sub(balls[i])), r), k);\n\treturn dd;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b4\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b5\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b6\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b7\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"k\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"balls\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"MetaballArray\",\n\t\t\t\t\t[]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b4\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"5\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"6\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b6\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t\"balls\",\n\t\t\t\t\t[5, \"7\"]\n\t\t\t\t],\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\"b7\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"balls\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"METABALL_COUNT\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"i\"\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t2,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"smin\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\"balls\",\n\t\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[10, \"dd\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"MetaballArray\": () =\u003e MetaballArray,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"METABALL_COUNT\": () =\u003e METABALL_COUNT,\n\t\t\"smin\": () =\u003e smin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdDodecahedron = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r) =\u003e {\n\t\"use gpu\";\n\tconst q = vec3f(abs(p.x), abs(p.y), abs(p.z));\n\tconst a = dot(q, vec3f(0, .5257311, .8506508));\n\tconst b = dot(q, vec3f(.8506508, 0, .5257311));\n\tconst c = dot(q, vec3f(.5257311, .8506508, 0));\n\treturn __tsover_sub(max(max(a, b), c), r);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"r\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"q\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0.5257311\"],\n\t\t\t\t\t\t\t[5, \"0.8506508\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"q\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.8506508\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0.5257311\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"q\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.5257311\"],\n\t\t\t\t\t\t\t[5, \"0.8506508\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"a\", \"b\"]\n\t\t\t\t\t], \"c\"]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"r\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdCutSphere = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r, h) =\u003e {\n\t\"use gpu\";\n\tconst w = sqrt(max(__tsover_sub(__tsover_mul(r, r), __tsover_mul(h, h)), 0));\n\tconst qx = length(vec2f(p.x, p.z));\n\tconst qy = p.y;\n\tconst s = max(__tsover_add(__tsover_mul(__tsover_mul(__tsover_sub(h, r), qx), qx), __tsover_mul(__tsover_mul(w, w), __tsover_sub(__tsover_add(h, r), __tsover_mul(qy, 2)))), __tsover_sub(__tsover_mul(h, qx), __tsover_mul(w, qy)));\n\tconst case0 = __tsover_sub(length(vec2f(qx, qy)), r);\n\tconst case1 = __tsover_sub(h, qy);\n\treturn select(select(length(vec2f(__tsover_sub(qx, w), __tsover_sub(qy, h))), case1, qx \u003c w), case0, s \u003c 0);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"case0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"qx\", \"qy\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"r\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"case1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"qy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"case2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"case2\",\n\t\t\t\t\t\t\"case1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"inner\",\n\t\t\t\t\t\"case0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdRibbon = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, w, th, len, amp, freq, ph1, ph2, twRate, twPh, lip) =\u003e {\n\t\"use gpu\";\n\tconst yc = __tsover_mul(amp, sin(__tsover_add(__tsover_mul(freq, p.x), ph1)));\n\tconst zc = __tsover_mul(__tsover_mul(amp, .6), sin(__tsover_add(__tsover_mul(__tsover_mul(freq, .8), p.x), ph2)));\n\tconst qy = __tsover_sub(p.y, yc);\n\tconst qz = __tsover_sub(p.z, zc);\n\tconst ang = __tsover_add(__tsover_mul(twRate, p.x), twPh);\n\tconst c = cos(ang);\n\tconst s = sin(ang);\n\tconst ry = __tsover_add(__tsover_mul(qy, c), __tsover_mul(qz, s));\n\tconst rz = __tsover_sub(__tsover_mul(qz, c), __tsover_mul(qy, s));\n\tconst round = __tsover_mul(th, .4);\n\tconst bx = __tsover_add(__tsover_sub(abs(ry), w), round);\n\tconst by = __tsover_add(__tsover_sub(abs(rz), th), round);\n\tconst d2 = __tsover_sub(__tsover_add(length(vec2f(max(bx, 0), max(by, 0))), min(max(bx, by), 0)), round);\n\tconst dx = __tsover_sub(abs(p.x), len);\n\tconst dd = __tsover_add(length(vec2f(max(d2, 0), max(dx, 0))), min(max(d2, dx), 0));\n\treturn __tsover_mul(dd, lip);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"w\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"th\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"len\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"freq\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ph1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ph2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"twRate\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"twPh\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lip\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"yc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"amp\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"ph1\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"zc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"amp\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"ph2\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"yc\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"zc\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ang\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"twRate\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"twPh\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"ang\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"ang\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ry\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qz\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qz\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"round\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"th\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"ry\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"round\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"by\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"rz\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"th\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"round\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"bx\", [5, \"0\"]]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"by\", [5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"bx\", \"by\"]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"round\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"len\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"d2\", [5, \"0\"]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"dx\", [5, \"0\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"d2\", \"dx\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dd\",\n\t\t\t\t\"*\",\n\t\t\t\t\"lip\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdWobbleBlob = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, r, amp, freq, ph1, ph2, lip) =\u003e {\n\t\"use gpu\";\n\tconst w = __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(p.x, freq), ph1)), sin(__tsover_add(__tsover_mul(__tsover_mul(p.y, freq), 1.3), ph2))), __tsover_mul(sin(__tsover_add(__tsover_mul(__tsover_mul(p.y, freq), .8), __tsover_mul(ph2, 1.1))), sin(__tsover_add(__tsover_mul(__tsover_mul(p.z, freq), 1.1), __tsover_mul(ph1, .9)))));\n\tconst dd = __tsover_sub(__tsover_sub(length(p), r), __tsover_mul(__tsover_mul(amp, w), .5));\n\treturn __tsover_mul(dd, lip);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"freq\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ph1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ph2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lip\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ph1\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ph2\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ph2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ph1\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[\"p\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"r\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"amp\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dd\",\n\t\t\t\t\"*\",\n\t\t\t\t\"lip\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.length\": () =\u003e length\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdFlatBand = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((radialDist, axialDist, R, ht, hw, rnd) =\u003e {\n\t\"use gpu\";\n\tconst bx = __tsover_add(__tsover_sub(abs(__tsover_sub(radialDist, R)), ht), rnd);\n\tconst by = __tsover_add(__tsover_sub(abs(axialDist), hw), rnd);\n\tconst outer = length(vec2f(max(bx, 0), max(by, 0)));\n\tconst inner = min(max(bx, by), 0);\n\treturn __tsover_sub(__tsover_add(outer, inner), rnd);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radialDist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"axialDist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"R\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ht\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rnd\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"radialDist\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"R\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"ht\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rnd\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"by\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"axialDist\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hw\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rnd\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outer\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"bx\", [5, \"0\"]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"by\", [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"bx\", \"by\"]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outer\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"inner\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"rnd\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sdGyroscope = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, radius, width, thick, rnd, core, c1, s1, c2, s2, c3, s3) =\u003e {\n\t\"use gpu\";\n\tconst hw = __tsover_mul(width, .5);\n\tconst ht = __tsover_mul(thick, .5);\n\tconst dCore = __tsover_sub(length(p), core);\n\tconst p1y = __tsover_add(__tsover_mul(p.y, c1), __tsover_mul(p.z, s1));\n\tconst p1z = __tsover_sub(__tsover_mul(p.z, c1), __tsover_mul(p.y, s1));\n\tconst d1 = sdFlatBand(length(vec2f(p.x, p1z)), p1y, radius, ht, hw, rnd);\n\tconst p2x = __tsover_sub(__tsover_mul(p.x, c2), __tsover_mul(p.z, s2));\n\tconst p2z = __tsover_add(__tsover_mul(p.z, c2), __tsover_mul(p.x, s2));\n\tconst d2 = sdFlatBand(length(vec2f(p2x, p.y)), p2z, __tsover_mul(radius, .78), ht, hw, rnd);\n\tconst p3x = __tsover_add(__tsover_mul(p.x, c3), __tsover_mul(p.y, s3));\n\tconst d3 = sdFlatBand(length(vec2f(__tsover_sub(__tsover_mul(p.y, c3), __tsover_mul(p.x, s3)), p.z)), p3x, __tsover_mul(radius, .56), ht, hw, rnd);\n\treturn min(min(dCore, d1), min(d2, d3));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"width\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thick\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rnd\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"core\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s3\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hw\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"width\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ht\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thick\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dCore\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"p\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"core\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p1y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c1\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p1z\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c1\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdFlatBand\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t], \"p1z\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"p1y\",\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\"ht\",\n\t\t\t\t\t\t\"hw\",\n\t\t\t\t\t\t\"rnd\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p2x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c2\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s2\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p2z\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c2\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s2\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdFlatBand\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[\"p2x\", [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"p2z\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.78\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"ht\",\n\t\t\t\t\t\t\"hw\",\n\t\t\t\t\t\t\"rnd\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p3x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c3\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s3\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p3y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c3\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s3\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdFlatBand\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[\"p3y\", [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"p3x\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.56\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"ht\",\n\t\t\t\t\t\t\"hw\",\n\t\t\t\t\t\t\"rnd\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.min\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"dCore\", \"d1\"]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"d2\", \"d3\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"sdFlatBand\": () =\u003e sdFlatBand,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nconst RotStruct = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcx: f32,\n\tsx: f32,\n\tcy: f32,\n\tsy: f32,\n\tcz: f32,\n\tsz: f32\n}), \"RotStruct\");\nconst rotateVec3 = typegpu_default.fn([vec3f, RotStruct], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v, rot) =\u003e {\n\t\"use gpu\";\n\tconst x1 = __tsover_add(__tsover_mul(v.x, rot.cy), __tsover_mul(v.z, rot.sy));\n\tconst z1 = __tsover_sub(__tsover_mul(v.z, rot.cy), __tsover_mul(v.x, rot.sy));\n\tconst y2 = __tsover_sub(__tsover_mul(v.y, rot.cx), __tsover_mul(z1, rot.sx));\n\tconst z2 = __tsover_add(__tsover_mul(v.y, rot.sx), __tsover_mul(z1, rot.cx));\n\treturn vec3f(__tsover_sub(__tsover_mul(x1, rot.cz), __tsover_mul(y2, rot.sz)), __tsover_add(__tsover_mul(x1, rot.sz), __tsover_mul(y2, rot.cz)), z2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"v\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rot\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"z1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"z1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"x1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y2\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"x1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y2\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"x3\",\n\t\t\t\t\t\"y3\",\n\t\t\t\t\t\"z2\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f }\n}) \u0026\u0026 $.f)({}));\nfunction buildRaymarchedFieldFn(sdfFn, patternMode = \"none\", chordMode = \"span\") {\n\tconst STEP_MIN = isMobileGpuViewport() ? 64 : 96;\n\tconst STEP_MAX = isMobileGpuViewport() ? 224 : 384;\n\tconst STEP_SCALE = isMobileGpuViewport() ? 140 : 220;\n\treturn typegpu_default.fn([\n\t\tvec2f,\n\t\tRotStruct,\n\t\tf32\n\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fuv, rot, rBound) =\u003e {\n\t\t\"use gpu\";\n\t\tconst ro0 = vec3f(__tsover_sub(fuv.x, .5), __tsover_sub(.5, fuv.y), -1.2);\n\t\tconst rd0 = vec3f(0, 0, 1);\n\t\tconst ro = rotateVec3(ro0, rot);\n\t\tconst rd = rotateVec3(rd0, rot);\n\t\tconst steps = i32(clamp(__tsover_mul(rBound, f32(STEP_SCALE)), f32(STEP_MIN), f32(STEP_MAX)));\n\t\tconst b = dot(ro, rd);\n\t\tconst perp = sqrt(max(__tsover_sub(dot(ro, ro), __tsover_mul(b, b)), 0));\n\t\tconst halfSpan = sqrt(max(__tsover_sub(__tsover_mul(rBound, rBound), __tsover_mul(perp, perp)), 0));\n\t\tconst tStart = max(__tsover_sub(__tsover_mul(b, -1), halfSpan), 0);\n\t\tconst tEnd = __tsover_add(__tsover_add(__tsover_mul(b, -1), halfSpan), .01);\n\t\tlet t = tStart;\n\t\tlet tPrev = tStart;\n\t\tlet minD = f32(10);\n\t\tlet hit = f32(0);\n\t\tfor (let i = 0; i \u003c steps; i++) {\n\t\t\tconst dd = sdfFn(ro.add(rd.mul(t)));\n\t\t\tminD = min(minD, dd);\n\t\t\tif (dd \u003c 0) {\n\t\t\t\thit = f32(1);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (t \u003e tEnd) break;\n\t\t\ttPrev = t;\n\t\t\tt = __tsover_add(t, max(dd, .002));\n\t\t}\n\t\tlet fieldVal = minD;\n\t\tlet patternU = f32(0);\n\t\tlet patternV = f32(0);\n\t\tlet viewDepth = __tsover_add(tEnd, .4);\n\t\tif (hit \u003e .5) {\n\t\t\tlet eLo = tPrev;\n\t\t\tlet eHi = t;\n\t\t\tfor (let i = 0; i \u003c 10; i++) {\n\t\t\t\tconst mid = __tsover_mul(__tsover_add(eLo, eHi), .5);\n\t\t\t\tif (sdfFn(ro.add(rd.mul(mid))) \u003e 0) eLo = mid;\n\t\t\t\telse eHi = mid;\n\t\t\t}\n\t\t\tconst tEnter = __tsover_mul(__tsover_add(eLo, eHi), .5);\n\t\t\tlet tExit = tEnter;\n\t\t\tif (chordMode === \"firstLobe\") {\n\t\t\t\tlet sInPrev = eHi;\n\t\t\t\tlet sIn = __tsover_add(eHi, .002);\n\t\t\t\tfor (let i = 0; i \u003c steps; i++) {\n\t\t\t\t\tconst dd = sdfFn(ro.add(rd.mul(sIn)));\n\t\t\t\t\tif (dd \u003e= 0) break;\n\t\t\t\t\tsInPrev = sIn;\n\t\t\t\t\tsIn = __tsover_add(sIn, max(__tsover_mul(dd, -1), .002));\n\t\t\t\t\tif (sIn \u003e tEnd) break;\n\t\t\t\t}\n\t\t\t\tlet fLo = sInPrev;\n\t\t\t\tlet fHi = sIn;\n\t\t\t\tfor (let i = 0; i \u003c 10; i++) {\n\t\t\t\t\tconst mid = __tsover_mul(__tsover_add(fLo, fHi), .5);\n\t\t\t\t\tif (sdfFn(ro.add(rd.mul(mid))) \u003c 0) fLo = mid;\n\t\t\t\t\telse fHi = mid;\n\t\t\t\t}\n\t\t\t\ttExit = __tsover_mul(__tsover_add(fLo, fHi), .5);\n\t\t\t}\n\t\t\tif (chordMode === \"span\") {\n\t\t\t\tconst roB = ro.add(rd.mul(tEnd));\n\t\t\t\tconst span = __tsover_add(__tsover_sub(tEnd, tStart), .01);\n\t\t\t\tlet s = f32(0);\n\t\t\t\tlet sPrev = f32(0);\n\t\t\t\tfor (let i = 0; i \u003c steps; i++) {\n\t\t\t\t\tconst dd = sdfFn(roB.sub(rd.mul(s)));\n\t\t\t\t\tif (dd \u003c 0) break;\n\t\t\t\t\tif (s \u003e span) break;\n\t\t\t\t\tsPrev = s;\n\t\t\t\t\ts = __tsover_add(s, max(dd, .002));\n\t\t\t\t}\n\t\t\t\tlet xLo = sPrev;\n\t\t\t\tlet xHi = s;\n\t\t\t\tfor (let i = 0; i \u003c 10; i++) {\n\t\t\t\t\tconst mid = __tsover_mul(__tsover_add(xLo, xHi), .5);\n\t\t\t\t\tif (sdfFn(roB.sub(rd.mul(mid))) \u003e 0) xLo = mid;\n\t\t\t\t\telse xHi = mid;\n\t\t\t\t}\n\t\t\t\ttExit = __tsover_sub(tEnd, __tsover_mul(__tsover_add(xLo, xHi), .5));\n\t\t\t}\n\t\t\tconst halfChord = __tsover_mul(max(__tsover_sub(tExit, tEnter), 0), .5);\n\t\t\tfieldVal = __tsover_mul(halfChord, -1);\n\t\t\tviewDepth = tEnter;\n\t\t\tif (patternMode === \"raw\") {\n\t\t\t\tconst hp = ro.add(rd.mul(tEnter));\n\t\t\t\tpatternU = __tsover_add(hp.x, __tsover_mul(hp.z, .7));\n\t\t\t\tpatternV = __tsover_add(hp.y, __tsover_mul(hp.z, .5));\n\t\t\t}\n\t\t\tif (patternMode === \"triplanar\") {\n\t\t\t\tconst hp = ro.add(rd.mul(tEnter));\n\t\t\t\tconst e2 = .004;\n\t\t\t\tconst nlx = __tsover_sub(sdfFn(vec3f(__tsover_add(hp.x, e2), hp.y, hp.z)), sdfFn(vec3f(__tsover_sub(hp.x, e2), hp.y, hp.z)));\n\t\t\t\tconst nly = __tsover_sub(sdfFn(vec3f(hp.x, __tsover_add(hp.y, e2), hp.z)), sdfFn(vec3f(hp.x, __tsover_sub(hp.y, e2), hp.z)));\n\t\t\t\tconst nlz = __tsover_sub(sdfFn(vec3f(hp.x, hp.y, __tsover_add(hp.z, e2))), sdfFn(vec3f(hp.x, hp.y, __tsover_sub(hp.z, e2))));\n\t\t\t\tconst anx = abs(nlx);\n\t\t\t\tconst anyv = abs(nly);\n\t\t\t\tconst anz = abs(nlz);\n\t\t\t\tconst branch1 = vec2f(__tsover_add(hp.y, 2.17), __tsover_add(hp.z, 5.31));\n\t\t\t\tconst branch2 = vec2f(__tsover_add(hp.z, 7.73), __tsover_add(hp.x, 1.13));\n\t\t\t\tconst branch23 = select(vec2f(hp.x, hp.y), branch2, anyv \u003e= anz);\n\t\t\t\tconst pattern = select(branch23, select(branch23, branch1, anx \u003e= anz), anx \u003e= anyv);\n\t\t\t\tpatternU = pattern.x;\n\t\t\t\tpatternV = pattern.y;\n\t\t\t}\n\t\t}\n\t\treturn vec4f(fieldVal, patternU, patternV, viewDepth);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fuv\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rot\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rBound\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ro0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"fuv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"fuv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1.2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rd0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ro\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rotateVec3\",\n\t\t\t\t\t\t[\"ro0\", \"rot\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rotateVec3\",\n\t\t\t\t\t\t[\"rd0\", \"rot\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"steps\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"STEP_SCALE\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"STEP_MIN\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"STEP_MAX\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"ro\", \"rd\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"perp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t[\"ro\", \"ro\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"halfSpan\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"perp\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"perp\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tStart\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"halfSpan\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tEnd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"halfSpan\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"tStart\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"tPrev\",\n\t\t\t\t\t\"tStart\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"minD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"hit\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"steps\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t[\"p\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"minD\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[\"minD\", \"dd\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [17]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\"tEnd\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"tPrev\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"dd\", [5, \"0.002\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"fieldVal\",\n\t\t\t\t\t\"minD\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"patternU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"patternV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"viewDepth\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tEnd\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"eLo\",\n\t\t\t\t\t\t\t\"tPrev\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"eHi\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"mid\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"eLo\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"eHi\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"dm\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"mid\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dm\",\n\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"eLo\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\"mid\"\n\t\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"eHi\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\"mid\"\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"tEnter\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"eLo\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"eHi\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"tExit\",\n\t\t\t\t\t\t\t\"tEnter\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"chordMode\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[103, \"firstLobe\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"sInPrev\",\n\t\t\t\t\t\t\t\t\t\"eHi\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"sIn\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"eHi\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.002\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"steps\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sIn\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"sInPrev\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\"sIn\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"sIn\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sIn\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [5, \"0.002\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sIn\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tEnd\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"fLo\",\n\t\t\t\t\t\t\t\t\t\"sInPrev\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"fHi\",\n\t\t\t\t\t\t\t\t\t\"sIn\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"mid\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fLo\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fHi\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dm\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"mid\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fLo\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mid\"\n\t\t\t\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fHi\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mid\"\n\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"tExit\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fLo\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"fHi\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"chordMode\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[103, \"span\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"roB\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"tEnd\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"span\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tEnd\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"tStart\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"sPrev\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"steps\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"roB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"p\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"span\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"sPrev\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"dd\", [5, \"0.002\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"xLo\",\n\t\t\t\t\t\t\t\t\t\"sPrev\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"xHi\",\n\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"mid\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"xLo\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"xHi\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dm\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"roB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"mid\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"xLo\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mid\"\n\t\t\t\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"xHi\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mid\"\n\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"tExit\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tEnd\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"xLo\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"xHi\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"halfChord\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tExit\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"tEnter\"\n\t\t\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"fieldVal\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"halfChord\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"viewDepth\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"tEnter\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"patternMode\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[103, \"raw\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"tEnter\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"patternU\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"patternV\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"patternMode\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[103, \"triplanar\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"tEnter\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"e2\",\n\t\t\t\t\t\t\t\t\t[5, \"0.004\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"nlx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"nly\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"nlz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"anx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"nlx\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"anyv\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"nly\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"anz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"nlz\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"branch1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2.17\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"5.31\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"branch2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"7.73\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.13\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"branch3\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"branch23\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"branch3\",\n\t\t\t\t\t\t\t\t\t\t\t\"branch2\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"anyv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"anz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"innerPick\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"branch23\",\n\t\t\t\t\t\t\t\t\t\t\t\"branch1\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"anx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"anz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"pattern\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"branch23\",\n\t\t\t\t\t\t\t\t\t\t\t\"innerPick\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"anx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"anyv\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"patternU\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pattern\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"patternV\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pattern\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"fieldVal\",\n\t\t\t\t\t\t\"patternU\",\n\t\t\t\t\t\t\"patternV\",\n\t\t\t\t\t\t\"viewDepth\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"rotateVec3\": () =\u003e rotateVec3,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"STEP_SCALE\": () =\u003e STEP_SCALE,\n\t\t\t\"STEP_MIN\": () =\u003e STEP_MIN,\n\t\t\t\"STEP_MAX\": () =\u003e STEP_MAX,\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"sdfFn\": () =\u003e sdfFn,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"chordMode\": () =\u003e chordMode,\n\t\t\t\"patternMode\": () =\u003e patternMode,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"raymarchedField\");\n}\nfunction buildRaymarchedField(sdfFn, patternMode = \"none\", chordMode = \"span\") {\n\treturn buildRaymarchedFieldFn(sdfFn, patternMode, chordMode);\n}\nconst VOLUMETRIC_FIELD_FORMAT = \"rgba32float\";\nconst VOLUMETRIC_FIELD_RES = 1536;\nfunction resolveVolumetricFieldRes() {\n\treturn isMobileGpuViewport() ? 768 : VOLUMETRIC_FIELD_RES;\n}\nvar ACTIVE_RES_BUCKETS = [\n\t256,\n\t320,\n\t384,\n\t512,\n\t640,\n\t768,\n\t896,\n\t1024,\n\t1280,\n\t1536\n];\nfunction resolveActiveFieldRes(spanXv, spanYv, scale, canvasHeightDevicePx, maxRes, prevRes) {\n\tif (!(canvasHeightDevicePx \u003e 0) || !(scale \u003e 0)) return maxRes;\n\tconst footprintScale = isMobileGpuViewport() ? .5 : 1;\n\tconst targetPx = Math.max(spanXv, spanYv) * scale * canvasHeightDevicePx * footprintScale;\n\tlet res = maxRes;\n\tfor (const b of ACTIVE_RES_BUCKETS) {\n\t\tif (b \u003e maxRes) break;\n\t\tif (b \u003e= targetPx) {\n\t\t\tres = b;\n\t\t\tbreak;\n\t\t}\n\t}\n\tif (prevRes \u003e 0 \u0026\u0026 res \u003c prevRes \u0026\u0026 targetPx \u003e prevRes * .78) res = Math.min(prevRes, maxRes);\n\treturn res;\n}\nconst MarchParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\trot: align(16, size(32, RotStruct)),\n\trBound: f32,\n\tspanX: f32,\n\tspanY: f32,\n\toriginX: f32,\n\toriginY: f32,\n\tactiveRes: u32,\n\tpA: f32,\n\tpB: f32,\n\tpC: f32,\n\tpD: f32,\n\tmb0: vec3f,\n\tmb1: vec3f,\n\tmb2: vec3f,\n\tmb3: vec3f,\n\tmb4: vec3f,\n\tmb5: vec3f,\n\tmb6: vec3f,\n\tmb7: vec3f\n}), \"MarchParams\");\nfunction makeVolumetricFieldLayout() {\n\treturn {\n\t\tlayout: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\t\tfield: { storageTexture: textureStorage2d(VOLUMETRIC_FIELD_FORMAT, \"write-only\") },\n\t\t\tparams: { uniform: MarchParams }\n\t\t}), \"layout\"),\n\t\tMarchParams\n\t};\n}\nfunction buildVolumetricFieldKernel(layout, marchFn) {\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = layout.$.params;\n\t\tconst activeResF = f32(p.activeRes);\n\t\tconst field = marchFn(vec2f(__tsover_add(p.originX, __tsover_mul(__tsover_div(__tsover_add(f32(cx), .5), activeResF), p.spanX)), __tsover_add(p.originY, __tsover_mul(__tsover_div(__tsover_add(f32(cy), .5), activeResF), p.spanY))), p.rot, p.rBound);\n\t\ttextureStore(layout.$.field, vec2u(cx, cy), field);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"activeResF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"activeRes\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"field\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"marchFn\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"rot\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"field\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"field\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"marchFn\": () =\u003e marchFn,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"volumetricFieldMarch\");\n}\nconst SampleParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\toriginX: f32,\n\toriginY: f32,\n\tspanX: f32,\n\tspanY: f32,\n\tactiveResF: f32,\n\trBound: f32\n}), \"SampleParams\");\nfunction buildFieldSampleGraph() {\n\tconst sampleLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tfield: {\n\t\t\ttexture: texture2d(f32),\n\t\t\tsampleType: \"unfilterable-float\"\n\t\t},\n\t\tparams: { uniform: SampleParams }\n\t}), \"sampleLayout\");\n\tconst fetchTexel = typegpu_default.fn([f32, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((xi, yi) =\u003e {\n\t\t\"use gpu\";\n\t\tconst maxT = __tsover_sub(sampleLayout.$.params.activeResF, 1);\n\t\tconst tx = u32(clamp(xi, f32(0), maxT));\n\t\tconst ty = u32(clamp(yi, f32(0), maxT));\n\t\treturn textureLoad(sampleLayout.$.field, vec2u(tx, ty), 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"xi\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"yi\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"maxT\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sampleLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"xi\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ty\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"yi\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sampleLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"field\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"tx\", \"ty\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"sampleLayout\": () =\u003e sampleLayout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"fieldFetchTexel\");\n\treturn {\n\t\tsampleLayout,\n\t\tfieldSample: typegpu_default.fn([vec2f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = sampleLayout.$.params;\n\t\t\tconst uxc = clamp(uv.x, p.originX, __tsover_add(p.originX, p.spanX));\n\t\t\tconst uyc = clamp(uv.y, p.originY, __tsover_add(p.originY, p.spanY));\n\t\t\tconst outsideDist = length(vec2f(__tsover_sub(uv.x, uxc), __tsover_sub(uv.y, uyc)));\n\t\t\tconst px = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uxc, p.originX), p.spanX), p.activeResF), .5);\n\t\t\tconst py = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uyc, p.originY), p.spanY), p.activeResF), .5);\n\t\t\tconst x0 = floor(px);\n\t\t\tconst y0 = floor(py);\n\t\t\tconst fx = __tsover_sub(px, x0);\n\t\t\tconst fy = __tsover_sub(py, y0);\n\t\t\tconst tx2 = __tsover_mul(fx, fx);\n\t\t\tconst tx3 = __tsover_mul(tx2, fx);\n\t\t\tconst wx0 = __tsover_sub(__tsover_add(__tsover_mul(tx3, -.5), tx2), __tsover_mul(fx, .5));\n\t\t\tconst wx1 = __tsover_add(__tsover_sub(__tsover_mul(tx3, 1.5), __tsover_mul(tx2, 2.5)), 1);\n\t\t\tconst wx2 = __tsover_add(__tsover_add(__tsover_mul(tx3, -1.5), __tsover_mul(tx2, 2)), __tsover_mul(fx, .5));\n\t\t\tconst wx3 = __tsover_sub(__tsover_mul(tx3, .5), __tsover_mul(tx2, .5));\n\t\t\tconst ty2 = __tsover_mul(fy, fy);\n\t\t\tconst ty3 = __tsover_mul(ty2, fy);\n\t\t\tconst wy0 = __tsover_sub(__tsover_add(__tsover_mul(ty3, -.5), ty2), __tsover_mul(fy, .5));\n\t\t\tconst wy1 = __tsover_add(__tsover_sub(__tsover_mul(ty3, 1.5), __tsover_mul(ty2, 2.5)), 1);\n\t\t\tconst wy2 = __tsover_add(__tsover_add(__tsover_mul(ty3, -1.5), __tsover_mul(ty2, 2)), __tsover_mul(fy, .5));\n\t\t\tconst wy3 = __tsover_sub(__tsover_mul(ty3, .5), __tsover_mul(ty2, .5));\n\t\t\tconst k00 = fetchTexel(__tsover_sub(x0, 1), __tsover_sub(y0, 1));\n\t\t\tconst k01 = fetchTexel(x0, __tsover_sub(y0, 1));\n\t\t\tconst k02 = fetchTexel(__tsover_add(x0, 1), __tsover_sub(y0, 1));\n\t\t\tconst k03 = fetchTexel(__tsover_add(x0, 2), __tsover_sub(y0, 1));\n\t\t\tconst k10 = fetchTexel(__tsover_sub(x0, 1), y0);\n\t\t\tconst k11 = fetchTexel(x0, y0);\n\t\t\tconst k12 = fetchTexel(__tsover_add(x0, 1), y0);\n\t\t\tconst k13 = fetchTexel(__tsover_add(x0, 2), y0);\n\t\t\tconst k20 = fetchTexel(__tsover_sub(x0, 1), __tsover_add(y0, 1));\n\t\t\tconst k21 = fetchTexel(x0, __tsover_add(y0, 1));\n\t\t\tconst k22 = fetchTexel(__tsover_add(x0, 1), __tsover_add(y0, 1));\n\t\t\tconst k23 = fetchTexel(__tsover_add(x0, 2), __tsover_add(y0, 1));\n\t\t\tconst k30 = fetchTexel(__tsover_sub(x0, 1), __tsover_add(y0, 2));\n\t\t\tconst k31 = fetchTexel(x0, __tsover_add(y0, 2));\n\t\t\tconst k32 = fetchTexel(__tsover_add(x0, 1), __tsover_add(y0, 2));\n\t\t\tconst k33 = fetchTexel(__tsover_add(x0, 2), __tsover_add(y0, 2));\n\t\t\tconst rAcc = __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(k00.r, wx0), wy0), __tsover_mul(__tsover_mul(k01.r, wx1), wy0)), __tsover_mul(__tsover_mul(k02.r, wx2), wy0)), __tsover_mul(__tsover_mul(k03.r, wx3), wy0)), __tsover_mul(__tsover_mul(k10.r, wx0), wy1)), __tsover_mul(__tsover_mul(k11.r, wx1), wy1)), __tsover_mul(__tsover_mul(k12.r, wx2), wy1)), __tsover_mul(__tsover_mul(k13.r, wx3), wy1)), __tsover_mul(__tsover_mul(k20.r, wx0), wy2)), __tsover_mul(__tsover_mul(k21.r, wx1), wy2)), __tsover_mul(__tsover_mul(k22.r, wx2), wy2)), __tsover_mul(__tsover_mul(k23.r, wx3), wy2)), __tsover_mul(__tsover_mul(k30.r, wx0), wy3)), __tsover_mul(__tsover_mul(k31.r, wx1), wy3)), __tsover_mul(__tsover_mul(k32.r, wx2), wy3)), __tsover_mul(__tsover_mul(k33.r, wx3), wy3));\n\t\t\tconst aAcc = __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(k00.a, wx0), wy0), __tsover_mul(__tsover_mul(k01.a, wx1), wy0)), __tsover_mul(__tsover_mul(k02.a, wx2), wy0)), __tsover_mul(__tsover_mul(k03.a, wx3), wy0)), __tsover_mul(__tsover_mul(k10.a, wx0), wy1)), __tsover_mul(__tsover_mul(k11.a, wx1), wy1)), __tsover_mul(__tsover_mul(k12.a, wx2), wy1)), __tsover_mul(__tsover_mul(k13.a, wx3), wy1)), __tsover_mul(__tsover_mul(k20.a, wx0), wy2)), __tsover_mul(__tsover_mul(k21.a, wx1), wy2)), __tsover_mul(__tsover_mul(k22.a, wx2), wy2)), __tsover_mul(__tsover_mul(k23.a, wx3), wy2)), __tsover_mul(__tsover_mul(k30.a, wx0), wy3)), __tsover_mul(__tsover_mul(k31.a, wx1), wy3)), __tsover_mul(__tsover_mul(k32.a, wx2), wy3)), __tsover_mul(__tsover_mul(k33.a, wx3), wy3));\n\t\t\tconst bl = mix(mix(k11, k12, fx), mix(k21, k22, fx), fy);\n\t\t\tconst rMin = min(min(k11.r, k12.r), min(k21.r, k22.r));\n\t\t\tconst rMax = max(max(k11.r, k12.r), max(k21.r, k22.r));\n\t\t\tconst aOut = clamp(aAcc, min(min(k11.a, k12.a), min(k21.a, k22.a)), max(max(k11.a, k12.a), max(k21.a, k22.a)));\n\t\t\tconst rNear = __tsover_add(clamp(rAcc, rMin, rMax), outsideDist);\n\t\t\treturn vec4f(mix(rNear, max(__tsover_sub(length(vec2f(__tsover_sub(uv.x, .5), __tsover_sub(uv.y, .5))), p.rBound), rNear), smoothstep(f32(0), .25, outsideDist)), bl.g, bl.b, aOut);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sampleLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outsideDist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"tx2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ty2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[\"x0\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], \"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[\"x0\", \"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], \"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t], \"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[\"x0\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[\"x0\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rAcc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aAcc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rMin\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rMax\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aMin\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aMax\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"aAcc\",\n\t\t\t\t\t\t\t\t\"aMin\",\n\t\t\t\t\t\t\t\t\"aMax\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"rAcc\",\n\t\t\t\t\t\t\t\t\t\"rMin\",\n\t\t\t\t\t\t\t\t\t\"rMax\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rCircle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rCircle\", \"rNear\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"aOut\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"sampleLayout\": () =\u003e sampleLayout,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"fetchTexel\": () =\u003e fetchTexel,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fieldSample\"),\n\t\tfieldSampleFast: typegpu_default.fn([vec2f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = sampleLayout.$.params;\n\t\t\tconst uxc = clamp(uv.x, p.originX, __tsover_add(p.originX, p.spanX));\n\t\t\tconst uyc = clamp(uv.y, p.originY, __tsover_add(p.originY, p.spanY));\n\t\t\tconst outsideDist = length(vec2f(__tsover_sub(uv.x, uxc), __tsover_sub(uv.y, uyc)));\n\t\t\tconst px = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uxc, p.originX), p.spanX), p.activeResF), .5);\n\t\t\tconst py = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uyc, p.originY), p.spanY), p.activeResF), .5);\n\t\t\tconst x0 = floor(px);\n\t\t\tconst y0 = floor(py);\n\t\t\tconst fx = __tsover_sub(px, x0);\n\t\t\tconst fy = __tsover_sub(py, y0);\n\t\t\tconst t00 = fetchTexel(x0, y0);\n\t\t\tconst t10 = fetchTexel(__tsover_add(x0, 1), y0);\n\t\t\tconst t01 = fetchTexel(x0, __tsover_add(y0, 1));\n\t\t\tconst t11 = fetchTexel(__tsover_add(x0, 1), __tsover_add(y0, 1));\n\t\t\tconst bl = mix(mix(t00, t10, fx), mix(t01, t11, fx), fy);\n\t\t\tconst rNear = __tsover_add(bl.r, outsideDist);\n\t\t\treturn vec4f(mix(rNear, max(__tsover_sub(length(vec2f(__tsover_sub(uv.x, .5), __tsover_sub(uv.y, .5))), p.rBound), rNear), smoothstep(f32(0), .25, outsideDist)), bl.g, bl.b, bl.a);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sampleLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outsideDist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[\"x0\", \"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], \"y0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[\"x0\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fetchTexel\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"t00\",\n\t\t\t\t\t\t\t\t\t\t\"t10\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"t01\",\n\t\t\t\t\t\t\t\t\t\t\"t11\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rCircle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rCircle\", \"rNear\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"sampleLayout\": () =\u003e sampleLayout,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"fetchTexel\": () =\u003e fetchTexel,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fieldSampleFast\"),\n\t\tSampleParams\n\t};\n}\nfunction createVolumetricFieldCompute(root, layout, kernel, onCleanup, extra = {}) {\n\tconst maxRes = resolveVolumetricFieldRes();\n\tconst fieldTexture = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [maxRes, maxRes],\n\t\tformat: VOLUMETRIC_FIELD_FORMAT\n\t}).$usage(\"storage\", \"sampled\"), \"fieldTexture\");\n\tconst paramsUniform = extra.paramsUniform ?? root.createUniform(MarchParams);\n\tonCleanup(() =\u003e fieldTexture.destroy());\n\tconst bindGroup = root.createBindGroup(layout, {\n\t\tfield: fieldTexture,\n\t\tparams: paramsUniform.buffer,\n\t\t...extra.sdfSourceTexture ? { sdfSource: extra.sdfSourceTexture } : {}\n\t});\n\tlet pipeline = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernel\": () =\u003e kernel }\n\t}) \u0026\u0026 $.f)({}), { bindGroup });\n\tfor (const bg of extra.extraBindGroups ?? []) pipeline = pipeline.with(bg);\n\tlet activeRes = maxRes;\n\treturn {\n\t\tcomputeStep: pipeline,\n\t\tfieldTexture,\n\t\tmaxRes,\n\t\tget activeRes() {\n\t\t\treturn activeRes;\n\t\t},\n\t\twriteParams(value) {\n\t\t\tparamsUniform.write(value);\n\t\t},\n\t\tdispatch(res) {\n\t\t\tactiveRes = res;\n\t\t\tpipeline.dispatchThreads(res, res);\n\t\t}\n\t};\n}\nfunction makeVolumetricSvgFieldLayout() {\n\treturn {\n\t\tlayout: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\t\tfield: { storageTexture: textureStorage2d(VOLUMETRIC_FIELD_FORMAT, \"write-only\") },\n\t\t\tparams: { uniform: MarchParams },\n\t\t\tsdfSource: { texture: texture2d(f32) }\n\t\t}), \"layout\"),\n\t\tMarchParams\n\t};\n}\nfunction buildFieldSampleGraphArgs() {\n\treturn {\n\t\tfieldSampleArg: typegpu_default.fn([\n\t\t\tvec2f,\n\t\t\ttexture2d(f32),\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32\n\t\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, field, originX, originY, spanX, spanY, activeResF, rBound) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst uxc = clamp(uv.x, originX, __tsover_add(originX, spanX));\n\t\t\tconst uyc = clamp(uv.y, originY, __tsover_add(originY, spanY));\n\t\t\tconst outsideDist = length(vec2f(__tsover_sub(uv.x, uxc), __tsover_sub(uv.y, uyc)));\n\t\t\tconst px = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uxc, originX), spanX), activeResF), .5);\n\t\t\tconst py = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uyc, originY), spanY), activeResF), .5);\n\t\t\tconst x0 = floor(px);\n\t\t\tconst y0 = floor(py);\n\t\t\tconst fx = __tsover_sub(px, x0);\n\t\t\tconst fy = __tsover_sub(py, y0);\n\t\t\tconst tx2 = __tsover_mul(fx, fx);\n\t\t\tconst tx3 = __tsover_mul(tx2, fx);\n\t\t\tconst wx0 = __tsover_sub(__tsover_add(__tsover_mul(tx3, -.5), tx2), __tsover_mul(fx, .5));\n\t\t\tconst wx1 = __tsover_add(__tsover_sub(__tsover_mul(tx3, 1.5), __tsover_mul(tx2, 2.5)), 1);\n\t\t\tconst wx2 = __tsover_add(__tsover_add(__tsover_mul(tx3, -1.5), __tsover_mul(tx2, 2)), __tsover_mul(fx, .5));\n\t\t\tconst wx3 = __tsover_sub(__tsover_mul(tx3, .5), __tsover_mul(tx2, .5));\n\t\t\tconst ty2 = __tsover_mul(fy, fy);\n\t\t\tconst ty3 = __tsover_mul(ty2, fy);\n\t\t\tconst wy0 = __tsover_sub(__tsover_add(__tsover_mul(ty3, -.5), ty2), __tsover_mul(fy, .5));\n\t\t\tconst wy1 = __tsover_add(__tsover_sub(__tsover_mul(ty3, 1.5), __tsover_mul(ty2, 2.5)), 1);\n\t\t\tconst wy2 = __tsover_add(__tsover_add(__tsover_mul(ty3, -1.5), __tsover_mul(ty2, 2)), __tsover_mul(fy, .5));\n\t\t\tconst wy3 = __tsover_sub(__tsover_mul(ty3, .5), __tsover_mul(ty2, .5));\n\t\t\tconst maxT = __tsover_sub(activeResF, 1);\n\t\t\tconst cxm = u32(clamp(__tsover_sub(x0, 1), f32(0), maxT));\n\t\t\tconst cx0 = u32(clamp(x0, f32(0), maxT));\n\t\t\tconst cx1 = u32(clamp(__tsover_add(x0, 1), f32(0), maxT));\n\t\t\tconst cx2 = u32(clamp(__tsover_add(x0, 2), f32(0), maxT));\n\t\t\tconst cym = u32(clamp(__tsover_sub(y0, 1), f32(0), maxT));\n\t\t\tconst cy0 = u32(clamp(y0, f32(0), maxT));\n\t\t\tconst cy1 = u32(clamp(__tsover_add(y0, 1), f32(0), maxT));\n\t\t\tconst cy2 = u32(clamp(__tsover_add(y0, 2), f32(0), maxT));\n\t\t\tconst k00 = textureLoad(field, vec2u(cxm, cym), 0);\n\t\t\tconst k01 = textureLoad(field, vec2u(cx0, cym), 0);\n\t\t\tconst k02 = textureLoad(field, vec2u(cx1, cym), 0);\n\t\t\tconst k03 = textureLoad(field, vec2u(cx2, cym), 0);\n\t\t\tconst k10 = textureLoad(field, vec2u(cxm, cy0), 0);\n\t\t\tconst k11 = textureLoad(field, vec2u(cx0, cy0), 0);\n\t\t\tconst k12 = textureLoad(field, vec2u(cx1, cy0), 0);\n\t\t\tconst k13 = textureLoad(field, vec2u(cx2, cy0), 0);\n\t\t\tconst k20 = textureLoad(field, vec2u(cxm, cy1), 0);\n\t\t\tconst k21 = textureLoad(field, vec2u(cx0, cy1), 0);\n\t\t\tconst k22 = textureLoad(field, vec2u(cx1, cy1), 0);\n\t\t\tconst k23 = textureLoad(field, vec2u(cx2, cy1), 0);\n\t\t\tconst k30 = textureLoad(field, vec2u(cxm, cy2), 0);\n\t\t\tconst k31 = textureLoad(field, vec2u(cx0, cy2), 0);\n\t\t\tconst k32 = textureLoad(field, vec2u(cx1, cy2), 0);\n\t\t\tconst k33 = textureLoad(field, vec2u(cx2, cy2), 0);\n\t\t\tconst rAcc = __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(k00.r, wx0), wy0), __tsover_mul(__tsover_mul(k01.r, wx1), wy0)), __tsover_mul(__tsover_mul(k02.r, wx2), wy0)), __tsover_mul(__tsover_mul(k03.r, wx3), wy0)), __tsover_mul(__tsover_mul(k10.r, wx0), wy1)), __tsover_mul(__tsover_mul(k11.r, wx1), wy1)), __tsover_mul(__tsover_mul(k12.r, wx2), wy1)), __tsover_mul(__tsover_mul(k13.r, wx3), wy1)), __tsover_mul(__tsover_mul(k20.r, wx0), wy2)), __tsover_mul(__tsover_mul(k21.r, wx1), wy2)), __tsover_mul(__tsover_mul(k22.r, wx2), wy2)), __tsover_mul(__tsover_mul(k23.r, wx3), wy2)), __tsover_mul(__tsover_mul(k30.r, wx0), wy3)), __tsover_mul(__tsover_mul(k31.r, wx1), wy3)), __tsover_mul(__tsover_mul(k32.r, wx2), wy3)), __tsover_mul(__tsover_mul(k33.r, wx3), wy3));\n\t\t\tconst aAcc = __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(k00.a, wx0), wy0), __tsover_mul(__tsover_mul(k01.a, wx1), wy0)), __tsover_mul(__tsover_mul(k02.a, wx2), wy0)), __tsover_mul(__tsover_mul(k03.a, wx3), wy0)), __tsover_mul(__tsover_mul(k10.a, wx0), wy1)), __tsover_mul(__tsover_mul(k11.a, wx1), wy1)), __tsover_mul(__tsover_mul(k12.a, wx2), wy1)), __tsover_mul(__tsover_mul(k13.a, wx3), wy1)), __tsover_mul(__tsover_mul(k20.a, wx0), wy2)), __tsover_mul(__tsover_mul(k21.a, wx1), wy2)), __tsover_mul(__tsover_mul(k22.a, wx2), wy2)), __tsover_mul(__tsover_mul(k23.a, wx3), wy2)), __tsover_mul(__tsover_mul(k30.a, wx0), wy3)), __tsover_mul(__tsover_mul(k31.a, wx1), wy3)), __tsover_mul(__tsover_mul(k32.a, wx2), wy3)), __tsover_mul(__tsover_mul(k33.a, wx3), wy3));\n\t\t\tconst bl = mix(mix(k11, k12, fx), mix(k21, k22, fx), fy);\n\t\t\tconst rMin = min(min(k11.r, k12.r), min(k21.r, k22.r));\n\t\t\tconst rMax = max(max(k11.r, k12.r), max(k21.r, k22.r));\n\t\t\tconst aOut = clamp(aAcc, min(min(k11.a, k12.a), min(k21.a, k22.a)), max(max(k11.a, k12.a), max(k21.a, k22.a)));\n\t\t\tconst rNear = __tsover_add(clamp(rAcc, rMin, rMax), outsideDist);\n\t\t\treturn vec4f(mix(rNear, max(__tsover_sub(length(vec2f(__tsover_sub(uv.x, .5), __tsover_sub(uv.y, .5))), rBound), rNear), smoothstep(f32(0), .25, outsideDist)), bl.g, bl.b, aOut);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"field\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"activeResF\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"rBound\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outsideDist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"tx2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ty2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"maxT\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"activeResF\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cxm\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cym\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rAcc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aAcc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rMin\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rMax\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aMin\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aMax\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"aAcc\",\n\t\t\t\t\t\t\t\t\"aMin\",\n\t\t\t\t\t\t\t\t\"aMax\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"rAcc\",\n\t\t\t\t\t\t\t\t\t\"rMin\",\n\t\t\t\t\t\t\t\t\t\"rMax\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rCircle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rCircle\", \"rNear\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"aOut\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fieldSampleArg\"),\n\t\tfieldSampleGradArg: typegpu_default.fn([\n\t\t\tvec2f,\n\t\t\ttexture2d(f32),\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32\n\t\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, field, originX, originY, spanX, spanY, activeResF, rBound) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst uxc = clamp(uv.x, originX, __tsover_add(originX, spanX));\n\t\t\tconst uyc = clamp(uv.y, originY, __tsover_add(originY, spanY));\n\t\t\tconst outsideDist = length(vec2f(__tsover_sub(uv.x, uxc), __tsover_sub(uv.y, uyc)));\n\t\t\tconst px = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uxc, originX), spanX), activeResF), .5);\n\t\t\tconst py = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uyc, originY), spanY), activeResF), .5);\n\t\t\tconst x0 = floor(px);\n\t\t\tconst y0 = floor(py);\n\t\t\tconst fx = __tsover_sub(px, x0);\n\t\t\tconst fy = __tsover_sub(py, y0);\n\t\t\tconst tx2 = __tsover_mul(fx, fx);\n\t\t\tconst tx3 = __tsover_mul(tx2, fx);\n\t\t\tconst wx0 = __tsover_sub(__tsover_add(__tsover_mul(tx3, -.5), tx2), __tsover_mul(fx, .5));\n\t\t\tconst wx1 = __tsover_add(__tsover_sub(__tsover_mul(tx3, 1.5), __tsover_mul(tx2, 2.5)), 1);\n\t\t\tconst wx2 = __tsover_add(__tsover_add(__tsover_mul(tx3, -1.5), __tsover_mul(tx2, 2)), __tsover_mul(fx, .5));\n\t\t\tconst wx3 = __tsover_sub(__tsover_mul(tx3, .5), __tsover_mul(tx2, .5));\n\t\t\tconst ty2 = __tsover_mul(fy, fy);\n\t\t\tconst ty3 = __tsover_mul(ty2, fy);\n\t\t\tconst wy0 = __tsover_sub(__tsover_add(__tsover_mul(ty3, -.5), ty2), __tsover_mul(fy, .5));\n\t\t\tconst wy1 = __tsover_add(__tsover_sub(__tsover_mul(ty3, 1.5), __tsover_mul(ty2, 2.5)), 1);\n\t\t\tconst wy2 = __tsover_add(__tsover_add(__tsover_mul(ty3, -1.5), __tsover_mul(ty2, 2)), __tsover_mul(fy, .5));\n\t\t\tconst wy3 = __tsover_sub(__tsover_mul(ty3, .5), __tsover_mul(ty2, .5));\n\t\t\tconst oxf = __tsover_sub(1, fx);\n\t\t\tconst bx0 = __tsover_mul(__tsover_mul(__tsover_mul(oxf, oxf), oxf), .16666667);\n\t\t\tconst bx1 = __tsover_add(__tsover_sub(__tsover_mul(tx3, .5), tx2), .66666667);\n\t\t\tconst bx2 = __tsover_add(__tsover_add(__tsover_add(__tsover_mul(tx3, -.5), __tsover_mul(tx2, .5)), __tsover_mul(fx, .5)), .16666667);\n\t\t\tconst bx3 = __tsover_mul(tx3, .16666667);\n\t\t\tconst dbx0 = __tsover_mul(__tsover_mul(oxf, oxf), -.5);\n\t\t\tconst dbx1 = __tsover_sub(__tsover_mul(tx2, 1.5), __tsover_mul(fx, 2));\n\t\t\tconst dbx2 = __tsover_add(__tsover_add(__tsover_mul(tx2, -1.5), fx), .5);\n\t\t\tconst dbx3 = __tsover_mul(tx2, .5);\n\t\t\tconst oyf = __tsover_sub(1, fy);\n\t\t\tconst by0 = __tsover_mul(__tsover_mul(__tsover_mul(oyf, oyf), oyf), .16666667);\n\t\t\tconst by1 = __tsover_add(__tsover_sub(__tsover_mul(ty3, .5), ty2), .66666667);\n\t\t\tconst by2 = __tsover_add(__tsover_add(__tsover_add(__tsover_mul(ty3, -.5), __tsover_mul(ty2, .5)), __tsover_mul(fy, .5)), .16666667);\n\t\t\tconst by3 = __tsover_mul(ty3, .16666667);\n\t\t\tconst dby0 = __tsover_mul(__tsover_mul(oyf, oyf), -.5);\n\t\t\tconst dby1 = __tsover_sub(__tsover_mul(ty2, 1.5), __tsover_mul(fy, 2));\n\t\t\tconst dby2 = __tsover_add(__tsover_add(__tsover_mul(ty2, -1.5), fy), .5);\n\t\t\tconst dby3 = __tsover_mul(ty2, .5);\n\t\t\tconst maxT = __tsover_sub(activeResF, 1);\n\t\t\tconst cxm = u32(clamp(__tsover_sub(x0, 1), f32(0), maxT));\n\t\t\tconst cx0 = u32(clamp(x0, f32(0), maxT));\n\t\t\tconst cx1 = u32(clamp(__tsover_add(x0, 1), f32(0), maxT));\n\t\t\tconst cx2 = u32(clamp(__tsover_add(x0, 2), f32(0), maxT));\n\t\t\tconst cym = u32(clamp(__tsover_sub(y0, 1), f32(0), maxT));\n\t\t\tconst cy0 = u32(clamp(y0, f32(0), maxT));\n\t\t\tconst cy1 = u32(clamp(__tsover_add(y0, 1), f32(0), maxT));\n\t\t\tconst cy2 = u32(clamp(__tsover_add(y0, 2), f32(0), maxT));\n\t\t\tconst k00 = textureLoad(field, vec2u(cxm, cym), 0);\n\t\t\tconst k01 = textureLoad(field, vec2u(cx0, cym), 0);\n\t\t\tconst k02 = textureLoad(field, vec2u(cx1, cym), 0);\n\t\t\tconst k03 = textureLoad(field, vec2u(cx2, cym), 0);\n\t\t\tconst k10 = textureLoad(field, vec2u(cxm, cy0), 0);\n\t\t\tconst k11 = textureLoad(field, vec2u(cx0, cy0), 0);\n\t\t\tconst k12 = textureLoad(field, vec2u(cx1, cy0), 0);\n\t\t\tconst k13 = textureLoad(field, vec2u(cx2, cy0), 0);\n\t\t\tconst k20 = textureLoad(field, vec2u(cxm, cy1), 0);\n\t\t\tconst k21 = textureLoad(field, vec2u(cx0, cy1), 0);\n\t\t\tconst k22 = textureLoad(field, vec2u(cx1, cy1), 0);\n\t\t\tconst k23 = textureLoad(field, vec2u(cx2, cy1), 0);\n\t\t\tconst k30 = textureLoad(field, vec2u(cxm, cy2), 0);\n\t\t\tconst k31 = textureLoad(field, vec2u(cx0, cy2), 0);\n\t\t\tconst k32 = textureLoad(field, vec2u(cx1, cy2), 0);\n\t\t\tconst k33 = textureLoad(field, vec2u(cx2, cy2), 0);\n\t\t\tconst rAcc = __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(k00.r, wx0), wy0), __tsover_mul(__tsover_mul(k01.r, wx1), wy0)), __tsover_mul(__tsover_mul(k02.r, wx2), wy0)), __tsover_mul(__tsover_mul(k03.r, wx3), wy0)), __tsover_mul(__tsover_mul(k10.r, wx0), wy1)), __tsover_mul(__tsover_mul(k11.r, wx1), wy1)), __tsover_mul(__tsover_mul(k12.r, wx2), wy1)), __tsover_mul(__tsover_mul(k13.r, wx3), wy1)), __tsover_mul(__tsover_mul(k20.r, wx0), wy2)), __tsover_mul(__tsover_mul(k21.r, wx1), wy2)), __tsover_mul(__tsover_mul(k22.r, wx2), wy2)), __tsover_mul(__tsover_mul(k23.r, wx3), wy2)), __tsover_mul(__tsover_mul(k30.r, wx0), wy3)), __tsover_mul(__tsover_mul(k31.r, wx1), wy3)), __tsover_mul(__tsover_mul(k32.r, wx2), wy3)), __tsover_mul(__tsover_mul(k33.r, wx3), wy3));\n\t\t\tconst aAcc = __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(k00.a, wx0), wy0), __tsover_mul(__tsover_mul(k01.a, wx1), wy0)), __tsover_mul(__tsover_mul(k02.a, wx2), wy0)), __tsover_mul(__tsover_mul(k03.a, wx3), wy0)), __tsover_mul(__tsover_mul(k10.a, wx0), wy1)), __tsover_mul(__tsover_mul(k11.a, wx1), wy1)), __tsover_mul(__tsover_mul(k12.a, wx2), wy1)), __tsover_mul(__tsover_mul(k13.a, wx3), wy1)), __tsover_mul(__tsover_mul(k20.a, wx0), wy2)), __tsover_mul(__tsover_mul(k21.a, wx1), wy2)), __tsover_mul(__tsover_mul(k22.a, wx2), wy2)), __tsover_mul(__tsover_mul(k23.a, wx3), wy2)), __tsover_mul(__tsover_mul(k30.a, wx0), wy3)), __tsover_mul(__tsover_mul(k31.a, wx1), wy3)), __tsover_mul(__tsover_mul(k32.a, wx2), wy3)), __tsover_mul(__tsover_mul(k33.a, wx3), wy3));\n\t\t\tconst drdpx = __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(k00.r, dbx0), by0), __tsover_mul(__tsover_mul(k01.r, dbx1), by0)), __tsover_mul(__tsover_mul(k02.r, dbx2), by0)), __tsover_mul(__tsover_mul(k03.r, dbx3), by0)), __tsover_mul(__tsover_mul(k10.r, dbx0), by1)), __tsover_mul(__tsover_mul(k11.r, dbx1), by1)), __tsover_mul(__tsover_mul(k12.r, dbx2), by1)), __tsover_mul(__tsover_mul(k13.r, dbx3), by1)), __tsover_mul(__tsover_mul(k20.r, dbx0), by2)), __tsover_mul(__tsover_mul(k21.r, dbx1), by2)), __tsover_mul(__tsover_mul(k22.r, dbx2), by2)), __tsover_mul(__tsover_mul(k23.r, dbx3), by2)), __tsover_mul(__tsover_mul(k30.r, dbx0), by3)), __tsover_mul(__tsover_mul(k31.r, dbx1), by3)), __tsover_mul(__tsover_mul(k32.r, dbx2), by3)), __tsover_mul(__tsover_mul(k33.r, dbx3), by3));\n\t\t\tconst drdpy = __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(k00.r, bx0), dby0), __tsover_mul(__tsover_mul(k01.r, bx1), dby0)), __tsover_mul(__tsover_mul(k02.r, bx2), dby0)), __tsover_mul(__tsover_mul(k03.r, bx3), dby0)), __tsover_mul(__tsover_mul(k10.r, bx0), dby1)), __tsover_mul(__tsover_mul(k11.r, bx1), dby1)), __tsover_mul(__tsover_mul(k12.r, bx2), dby1)), __tsover_mul(__tsover_mul(k13.r, bx3), dby1)), __tsover_mul(__tsover_mul(k20.r, bx0), dby2)), __tsover_mul(__tsover_mul(k21.r, bx1), dby2)), __tsover_mul(__tsover_mul(k22.r, bx2), dby2)), __tsover_mul(__tsover_mul(k23.r, bx3), dby2)), __tsover_mul(__tsover_mul(k30.r, bx0), dby3)), __tsover_mul(__tsover_mul(k31.r, bx1), dby3)), __tsover_mul(__tsover_mul(k32.r, bx2), dby3)), __tsover_mul(__tsover_mul(k33.r, bx3), dby3));\n\t\t\tconst rMin = min(min(k11.r, k12.r), min(k21.r, k22.r));\n\t\t\tconst rMax = max(max(k11.r, k12.r), max(k21.r, k22.r));\n\t\t\tconst aOut = clamp(aAcc, min(min(k11.a, k12.a), min(k21.a, k22.a)), max(max(k11.a, k12.a), max(k21.a, k22.a)));\n\t\t\tconst kSoft = __tsover_add(__tsover_mul(__tsover_sub(rMax, rMin), .3), 1e-6);\n\t\t\tconst hCap = clamp(__tsover_add(__tsover_mul(__tsover_div(__tsover_sub(rMax, rAcc), kSoft), .5), .5), 0, 1);\n\t\t\tconst rCap = __tsover_sub(mix(rMax, rAcc, hCap), __tsover_mul(__tsover_mul(kSoft, hCap), __tsover_sub(1, hCap)));\n\t\t\tconst hFlr = clamp(__tsover_add(__tsover_mul(__tsover_div(__tsover_sub(rCap, rMin), kSoft), .5), .5), 0, 1);\n\t\t\tconst rSoft = __tsover_add(mix(rMin, rCap, hFlr), __tsover_mul(__tsover_mul(kSoft, hFlr), __tsover_sub(1, hFlr)));\n\t\t\tconst rNear = __tsover_add(rSoft, outsideDist);\n\t\t\tconst rOut = mix(rNear, max(__tsover_sub(length(vec2f(__tsover_sub(uv.x, .5), __tsover_sub(uv.y, .5))), rBound), rNear), smoothstep(f32(0), .25, outsideDist));\n\t\t\tconst insideX = select(f32(0), f32(1), abs(__tsover_sub(uv.x, uxc)) \u003c 1e-7);\n\t\t\tconst insideY = select(f32(0), f32(1), abs(__tsover_sub(uv.y, uyc)) \u003c 1e-7);\n\t\t\tconst invOut = __tsover_div(1, max(outsideDist, 1e-5));\n\t\t\treturn vec4f(rOut, __tsover_add(__tsover_mul(__tsover_mul(drdpx, __tsover_div(activeResF, spanX)), insideX), __tsover_mul(__tsover_sub(uv.x, uxc), invOut)), __tsover_add(__tsover_mul(__tsover_mul(drdpy, __tsover_div(activeResF, spanY)), insideY), __tsover_mul(__tsover_sub(uv.y, uyc), invOut)), aOut);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"field\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"activeResF\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"rBound\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outsideDist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"tx2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"ty2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wy3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"oxf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"oxf\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"oxf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"oxf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"tx2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.66666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tx3\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dbx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"oxf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"oxf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dbx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dbx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dbx3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tx2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"oyf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"by0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"oyf\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"oyf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"oyf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"by1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"ty2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.66666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"by2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"by3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ty3\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.16666667\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dby0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"oyf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"oyf\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dby1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dby2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dby3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ty2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"maxT\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"activeResF\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cxm\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cym\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cym\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cxm\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx2\", \"cy2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rAcc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aAcc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wy2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"wy3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"drdpx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"by2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dbx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"by2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dbx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"by3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"dbx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"by3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"dbx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"by3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"dbx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"by3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"drdpy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k00\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k02\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k03\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k10\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k13\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k20\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dby2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"k23\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx3\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dby2\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k30\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"bx0\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"dby3\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k31\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"bx1\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"dby3\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"k32\",\n\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"bx2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"dby3\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"k33\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"bx3\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dby3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rMin\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rMax\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aMin\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aMax\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"aOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"aAcc\",\n\t\t\t\t\t\t\t\t\"aMin\",\n\t\t\t\t\t\t\t\t\"aMax\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"kSoft\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"rMax\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"rMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.000001\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"hCap\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rMax\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rAcc\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"kSoft\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rCap\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"rMax\",\n\t\t\t\t\t\t\t\t\t\"rAcc\",\n\t\t\t\t\t\t\t\t\t\"hCap\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"kSoft\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"hCap\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"hCap\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"hFlr\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rCap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rMin\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"kSoft\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rSoft\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"rMin\",\n\t\t\t\t\t\t\t\t\t\"rCap\",\n\t\t\t\t\t\t\t\t\t\"hFlr\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"kSoft\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"hFlr\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"hFlr\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rSoft\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rCircle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rCircle\", \"rNear\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"insideX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"1e-7\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"insideY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"1e-7\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"invOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"outsideDist\", [5, \"0.00001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"gU\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"drdpx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"activeResF\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"insideX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"invOut\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"gV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"drdpy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"activeResF\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"insideY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"invOut\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t\t\"gU\",\n\t\t\t\t\t\t\t\"gV\",\n\t\t\t\t\t\t\t\"aOut\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fieldSampleGradArg\"),\n\t\tfieldSampleFastArg: typegpu_default.fn([\n\t\t\tvec2f,\n\t\t\ttexture2d(f32),\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32\n\t\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, field, originX, originY, spanX, spanY, activeResF, rBound) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst uxc = clamp(uv.x, originX, __tsover_add(originX, spanX));\n\t\t\tconst uyc = clamp(uv.y, originY, __tsover_add(originY, spanY));\n\t\t\tconst outsideDist = length(vec2f(__tsover_sub(uv.x, uxc), __tsover_sub(uv.y, uyc)));\n\t\t\tconst px = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uxc, originX), spanX), activeResF), .5);\n\t\t\tconst py = __tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(uyc, originY), spanY), activeResF), .5);\n\t\t\tconst x0 = floor(px);\n\t\t\tconst y0 = floor(py);\n\t\t\tconst fx = __tsover_sub(px, x0);\n\t\t\tconst fy = __tsover_sub(py, y0);\n\t\t\tconst maxT = __tsover_sub(activeResF, 1);\n\t\t\tconst cx0 = u32(clamp(x0, f32(0), maxT));\n\t\t\tconst cx1 = u32(clamp(__tsover_add(x0, 1), f32(0), maxT));\n\t\t\tconst cy0 = u32(clamp(y0, f32(0), maxT));\n\t\t\tconst cy1 = u32(clamp(__tsover_add(y0, 1), f32(0), maxT));\n\t\t\tconst t00 = textureLoad(field, vec2u(cx0, cy0), 0);\n\t\t\tconst t10 = textureLoad(field, vec2u(cx1, cy0), 0);\n\t\t\tconst t01 = textureLoad(field, vec2u(cx0, cy1), 0);\n\t\t\tconst t11 = textureLoad(field, vec2u(cx1, cy1), 0);\n\t\t\tconst bl = mix(mix(t00, t10, fx), mix(t01, t11, fx), fy);\n\t\t\tconst rNear = __tsover_add(bl.r, outsideDist);\n\t\t\treturn vec4f(mix(rNear, max(__tsover_sub(length(vec2f(__tsover_sub(uv.x, .5), __tsover_sub(uv.y, .5))), rBound), rNear), smoothstep(f32(0), .25, outsideDist)), bl.g, bl.b, bl.a);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"field\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"activeResF\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"rBound\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outsideDist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"maxT\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"activeResF\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cy1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t00\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t10\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t01\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t11\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"t00\",\n\t\t\t\t\t\t\t\t\t\t\"t10\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"t01\",\n\t\t\t\t\t\t\t\t\t\t\"t11\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rCircle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rCircle\", \"rNear\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bl\",\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fieldSampleFastArg\"),\n\t\tfieldSampleTexelArg: typegpu_default.fn([\n\t\t\tvec2f,\n\t\t\ttexture2d(f32),\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32\n\t\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, field, originX, originY, spanX, spanY, activeResF, rBound) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst uxc = clamp(uv.x, originX, __tsover_add(originX, spanX));\n\t\t\tconst uyc = clamp(uv.y, originY, __tsover_add(originY, spanY));\n\t\t\tconst outsideDist = length(vec2f(__tsover_sub(uv.x, uxc), __tsover_sub(uv.y, uyc)));\n\t\t\tconst maxT = __tsover_sub(activeResF, 1);\n\t\t\tconst px = clamp(floor(__tsover_mul(__tsover_div(__tsover_sub(uxc, originX), spanX), activeResF)), f32(0), maxT);\n\t\t\tconst py = clamp(floor(__tsover_mul(__tsover_div(__tsover_sub(uyc, originY), spanY), activeResF)), f32(0), maxT);\n\t\t\tconst t = textureLoad(field, vec2u(u32(px), u32(py)), 0);\n\t\t\tconst rNear = __tsover_add(t.r, outsideDist);\n\t\t\treturn vec4f(mix(rNear, max(__tsover_sub(length(vec2f(__tsover_sub(uv.x, .5), __tsover_sub(uv.y, .5))), rBound), rNear), smoothstep(f32(0), .25, outsideDist)), t.g, t.b, t.a);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"field\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"originY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"activeResF\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"rBound\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originX\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"originY\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"outsideDist\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uxc\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"uyc\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"maxT\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"activeResF\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uxc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"originX\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uyc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"originY\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"activeResF\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rCircle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"rNear\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rCircle\", \"rNear\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\t\t\t\"outsideDist\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rOut\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fieldSampleTexelArg\"),\n\t\ttexelSpanFn: typegpu_default.fn([\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32\n\t\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((spanX, spanY, activeResF) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\treturn __tsover_div(max(spanX, spanY), activeResF);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanX\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"spanY\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"activeResF\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"spanX\", \"spanY\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"activeResF\"\n\t\t\t\t]]]]\n\t\t\t},\n\t\t\texternals: { \"std.max\": () =\u003e max }\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fieldTexelSpan\")\n\t};\n}\nconst VOLUMETRIC_FIELD_EXTRA_FIELDS = {\n\t_vfOriginX: {\n\t\tschema: f32,\n\t\tinitial: 0\n\t},\n\t_vfOriginY: {\n\t\tschema: f32,\n\t\tinitial: 0\n\t},\n\t_vfSpanX: {\n\t\tschema: f32,\n\t\tinitial: 1\n\t},\n\t_vfSpanY: {\n\t\tschema: f32,\n\t\tinitial: 1\n\t},\n\t_vfActiveRes: {\n\t\tschema: f32,\n\t\tinitial: 1\n\t},\n\t_vfRBound: {\n\t\tschema: f32,\n\t\tinitial: .6\n\t}\n};\nfunction buildVolumetricFieldSampler(field, p) {\n\tconst { fieldSampleArg, fieldSampleGradArg, fieldSampleFastArg, fieldSampleTexelArg, texelSpanFn } = buildFieldSampleGraphArgs();\n\tconst acc = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(field.accessor(), \"acc\");\n\tconst argsFor = (uv) =\u003e [\n\t\tuv,\n\t\tacc,\n\t\tp.originX,\n\t\tp.originY,\n\t\tp.spanX,\n\t\tp.spanY,\n\t\tp.activeResF,\n\t\tp.rBound\n\t];\n\treturn {\n\t\tvolumetricFieldSampler: (uv) =\u003e call(fieldSampleArg, \"vfSample\", argsFor(uv)),\n\t\tvolumetricFieldSamplerGrad: (uv) =\u003e call(fieldSampleGradArg, \"vfSampleGrad\", argsFor(uv)),\n\t\tvolumetricFieldSamplerFast: (uv) =\u003e call(fieldSampleFastArg, \"vfSampleFast\", argsFor(uv)),\n\t\tvolumetricFieldSamplerTexel: (uv) =\u003e call(fieldSampleTexelArg, \"vfSampleTexel\", argsFor(uv)),\n\t\tvolumetricFieldTexelSpan: call(texelSpanFn, \"vfTexelSpan\", [\n\t\t\tp.spanX,\n\t\t\tp.spanY,\n\t\t\tp.activeResF\n\t\t])\n\t};\n}\nfunction resolveShapeFieldSampler(params, options = {}) {\n\tconst { patternMode = \"none\", gradSampler: gradMode = \"fast\", bakedGradients = \"none\" } = options;\n\tconst { computeOutputs, uniforms, propValues, getCpuValue } = params;\n\tconst fieldTex = computeOutputs?.volumetricFieldTexture;\n\tif (fieldTex) {\n\t\tconst s = buildVolumetricFieldSampler(fieldTex, {\n\t\t\toriginX: uniforms._vfOriginX,\n\t\t\toriginY: uniforms._vfOriginY,\n\t\t\tspanX: uniforms._vfSpanX,\n\t\t\tspanY: uniforms._vfSpanY,\n\t\t\tactiveResF: uniforms._vfActiveRes,\n\t\t\trBound: uniforms._vfRBound\n\t\t});\n\t\tconst baked = bakedGradients !== \"none\";\n\t\tconst sampler$1 = baked ? s.volumetricFieldSamplerGrad : s.volumetricFieldSampler;\n\t\treturn {\n\t\t\tsampler: sampler$1,\n\t\t\tgradSampler: gradMode === \"same\" ? sampler$1 : s.volumetricFieldSamplerFast,\n\t\t\ttexelSampler: s.volumetricFieldSamplerTexel,\n\t\t\tvolumetric: true,\n\t\t\tbakedGradients: baked\n\t\t};\n\t}\n\tconst shapeSdfUrl = propValues.shapeSdfUrl || \"\";\n\tconst shapeType = propValues.shapeType || \"\";\n\tif (shapeSdfUrl) {\n\t\tconst bakedSvg = bakedGradients === \"all\";\n\t\tconst sampler$1 = bakedSvg ? createSvgSdfSamplerWithGradients(params, shapeSdfUrl) : createSvgSdfSampler(params, shapeSdfUrl);\n\t\treturn {\n\t\t\tsampler: sampler$1,\n\t\t\tgradSampler: sampler$1,\n\t\t\ttexelSampler: sampler$1,\n\t\t\tvolumetric: isVolumetricShapeType(shapeType),\n\t\t\tbakedGradients: bakedSvg\n\t\t};\n\t}\n\tconst st = resolveShapeType(shapeType, getCpuValue(\"shape\"));\n\tconst sampler = createAnalyticSdfSampler(st, driveAnalyticSubProps(params, () =\u003e getCpuValue(\"shape\")), patternMode);\n\treturn {\n\t\tsampler,\n\t\tgradSampler: sampler,\n\t\ttexelSampler: sampler,\n\t\tvolumetric: is3dShapeType(st),\n\t\tbakedGradients: false\n\t};\n}\nvar DEG = Math.PI / 180;\nfunction parseShapeConfig(raw) {\n\tif (raw \u0026\u0026 typeof raw === \"object\") return raw;\n\tif (typeof raw === \"string\") try {\n\t\treturn JSON.parse(raw);\n\t} catch {\n\t\treturn {};\n\t}\n\treturn {};\n}\nfunction createAnalytic3dSdfSetup(root, shapeType, initialConfig, getShapeConfig, opts = {}) {\n\tconst defaults = SHAPE3D_DEFAULTS[shapeType] ?? SHAPE3D_DEFAULTS.sphere3D;\n\tconst extraPad = opts.extraPad ?? (() =\u003e 0);\n\tconst { layout } = makeVolumetricFieldLayout();\n\tconst marchParamsBuffer = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(MarchParams), \"marchParamsBuffer\");\n\tconst sdfFn = typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\t\"use gpu\";\n\t\tconst pp = layout.$.params;\n\t\tif (shapeType === \"cube3D\") return sdRoundBox(p, pp.pA, pp.pB, pp.pC, pp.pD);\n\t\telse if (shapeType === \"torus3D\") return sdTorus(p, pp.pA, pp.pB);\n\t\telse if (shapeType === \"octahedron3D\") return sdOctahedron(p, pp.pA);\n\t\telse if (shapeType === \"cylinder3D\") return sdRoundCylinder(p, pp.pA, pp.pB, pp.pD);\n\t\telse if (shapeType === \"capsule3D\") return sdCapsule(p, pp.pA, pp.pB);\n\t\telse if (shapeType === \"cone3D\") return sdCappedCone(p, pp.pA, pp.pC, pp.pB);\n\t\telse if (shapeType === \"pyramid3D\") return sdPyramid(p, pp.pA, pp.pB);\n\t\telse if (shapeType === \"prism3D\") return sdHexPrism(p, pp.pA, pp.pB);\n\t\telse if (shapeType === \"ellipsoid3D\") return sdEllipsoid(p, pp.pA, pp.pB, pp.pC);\n\t\telse if (shapeType === \"diamond3D\") return sdBicone(p, pp.pA, pp.pB);\n\t\telse if (shapeType === \"link3D\") return sdLink(p, pp.pB, pp.pA, pp.pC);\n\t\telse if (shapeType === \"gem3D\") return sdGem(p, pp.pA, pp.pB, pp.pC);\n\t\telse if (shapeType === \"helix3D\") return sdHelix(p, pp.pA, pp.pB, pp.pC, f32(3));\n\t\telse if (shapeType === \"metaballs3D\") return sdMetaballs(p, pp.mb0, pp.mb1, pp.mb2, pp.mb3, pp.mb4, pp.mb5, pp.mb6, pp.mb7, pp.pA, pp.pD);\n\t\telse if (shapeType === \"dodecahedron3D\") return sdDodecahedron(p, pp.pA);\n\t\telse if (shapeType === \"hemisphere3D\") return sdCutSphere(p, pp.pA, pp.pB);\n\t\telse if (shapeType === \"ribbon3D\") return sdRibbon(p, pp.pA, pp.pB, pp.pC, pp.mb0.x, pp.mb0.y, pp.mb0.z, pp.mb1.x, pp.mb1.y, pp.mb1.z, pp.mb2.x);\n\t\telse if (shapeType === \"blob3D\") return sdWobbleBlob(p, pp.pA, pp.mb0.x, pp.mb0.y, pp.mb0.z, pp.mb1.x, pp.mb2.x);\n\t\telse if (shapeType === \"gyroscope3D\") return sdGyroscope(p, pp.pA, pp.pB, pp.pD, pp.mb3.x, pp.pC, pp.mb0.x, pp.mb0.y, pp.mb1.x, pp.mb1.y, pp.mb2.x, pp.mb2.y);\n\t\telse return sdSphere(p, pp.pA);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"pp\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[103, \"cube3D\"]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdRoundBox\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\"pD\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[103, \"torus3D\"]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdTorus\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[103, \"octahedron3D\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"sdOctahedron\",\n\t\t\t\t\t\t\t[\"p\", [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[103, \"cylinder3D\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"sdRoundCylinder\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\"pD\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t[103, \"capsule3D\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"sdCapsule\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t[103, \"cone3D\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"sdCappedCone\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t[103, \"pyramid3D\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"sdPyramid\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t[103, \"prism3D\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sdHexPrism\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"ellipsoid3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdEllipsoid\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"diamond3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdBicone\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"link3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdLink\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"gem3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdGem\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"helix3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdHelix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"HELIX_TURNS\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"metaballs3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdMetaballs\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb4\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb5\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb6\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb7\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pD\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"dodecahedron3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdDodecahedron\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"p\", [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"hemisphere3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdCutSphere\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"ribbon3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdRibbon\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"blob3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdWobbleBlob\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shapeType\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[103, \"gyroscope3D\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdGyroscope\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pD\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb3\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mb2\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[10, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdSphere\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"p\", [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"shapeType\": () =\u003e shapeType,\n\t\t\t\"sdRoundBox\": () =\u003e sdRoundBox,\n\t\t\t\"sdTorus\": () =\u003e sdTorus,\n\t\t\t\"sdOctahedron\": () =\u003e sdOctahedron,\n\t\t\t\"sdRoundCylinder\": () =\u003e sdRoundCylinder,\n\t\t\t\"sdCapsule\": () =\u003e sdCapsule,\n\t\t\t\"sdCappedCone\": () =\u003e sdCappedCone,\n\t\t\t\"sdPyramid\": () =\u003e sdPyramid,\n\t\t\t\"sdHexPrism\": () =\u003e sdHexPrism,\n\t\t\t\"sdEllipsoid\": () =\u003e sdEllipsoid,\n\t\t\t\"sdBicone\": () =\u003e sdBicone,\n\t\t\t\"sdLink\": () =\u003e sdLink,\n\t\t\t\"sdGem\": () =\u003e sdGem,\n\t\t\t\"sdHelix\": () =\u003e sdHelix,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"HELIX_TURNS\": () =\u003e 3,\n\t\t\t\"sdMetaballs\": () =\u003e sdMetaballs,\n\t\t\t\"sdDodecahedron\": () =\u003e sdDodecahedron,\n\t\t\t\"sdCutSphere\": () =\u003e sdCutSphere,\n\t\t\t\"sdRibbon\": () =\u003e sdRibbon,\n\t\t\t\"sdWobbleBlob\": () =\u003e sdWobbleBlob,\n\t\t\t\"sdGyroscope\": () =\u003e sdGyroscope,\n\t\t\t\"sdSphere\": () =\u003e sdSphere\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tlet elapsed = 0;\n\tlet lastShapeJson = \"\";\n\tlet lastCfg = initialConfig;\n\tconst springs = /* @__PURE__ */ new Map();\n\tlet pA = .35, pB = .3, pC = .3, pD = 0;\n\tlet rBound = .6;\n\tlet cx = 1, sx = 0, cy = 1, sy = 0, cz = 1, sz = 0;\n\tlet spanX = 1, spanY = 1, originX = 0, originY = 0;\n\tlet activeRes = resolveVolumetricFieldRes();\n\tconst mb = Array.from({ length: 8 }, () =\u003e [\n\t\t0,\n\t\t0,\n\t\t0\n\t]);\n\tconst writeMarch = () =\u003e {\n\t\tmarchParamsBuffer.write({\n\t\t\trot: {\n\t\t\t\tcx,\n\t\t\t\tsx,\n\t\t\t\tcy,\n\t\t\t\tsy,\n\t\t\t\tcz,\n\t\t\t\tsz\n\t\t\t},\n\t\t\trBound,\n\t\t\tspanX,\n\t\t\tspanY,\n\t\t\toriginX,\n\t\t\toriginY,\n\t\t\tactiveRes,\n\t\t\tpA,\n\t\t\tpB,\n\t\t\tpC,\n\t\t\tpD,\n\t\t\tmb0: vec3f(mb[0][0], mb[0][1], mb[0][2]),\n\t\t\tmb1: vec3f(mb[1][0], mb[1][1], mb[1][2]),\n\t\t\tmb2: vec3f(mb[2][0], mb[2][1], mb[2][2]),\n\t\t\tmb3: vec3f(mb[3][0], mb[3][1], mb[3][2]),\n\t\t\tmb4: vec3f(mb[4][0], mb[4][1], mb[4][2]),\n\t\t\tmb5: vec3f(mb[5][0], mb[5][1], mb[5][2]),\n\t\t\tmb6: vec3f(mb[6][0], mb[6][1], mb[6][2]),\n\t\t\tmb7: vec3f(mb[7][0], mb[7][1], mb[7][2])\n\t\t});\n\t};\n\tconst update = (frameParams) =\u003e {\n\t\tconst deltaTime = frameParams?.deltaTime ?? 0;\n\t\telapsed += deltaTime;\n\t\tconst raw = getShapeConfig();\n\t\tif (raw \u0026\u0026 typeof raw === \"object\") lastCfg = raw;\n\t\telse if (typeof raw === \"string\") {\n\t\t\tif (raw !== lastShapeJson) {\n\t\t\t\tlastShapeJson = raw;\n\t\t\t\ttry {\n\t\t\t\t\tlastCfg = JSON.parse(raw);\n\t\t\t\t} catch {}\n\t\t\t}\n\t\t}\n\t\tconst frame = {\n\t\t\telapsed,\n\t\t\tdeltaTime,\n\t\t\tpointerX: frameParams?.pointer?.x ?? .5,\n\t\t\tpointerY: frameParams?.pointer?.y ?? .5,\n\t\t\tsprings\n\t\t};\n\t\tconst sub = (k) =\u003e resolveShapeSubProp(lastCfg[k], defaults[k] ?? 0, frame, k);\n\t\tpB = .3;\n\t\tpC = .3;\n\t\tpD = 0;\n\t\tfor (let i = 0; i \u003c mb.length; i++) mb[i] = [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t];\n\t\tswitch (shapeType) {\n\t\t\tcase \"cube3D\":\n\t\t\t\tpA = sub(\"sizeX\");\n\t\t\t\tpB = sub(\"sizeY\");\n\t\t\t\tpC = sub(\"sizeZ\");\n\t\t\t\tpD = sub(\"rounding\");\n\t\t\t\tbreak;\n\t\t\tcase \"torus3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"tube\");\n\t\t\t\tbreak;\n\t\t\tcase \"cylinder3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"height\");\n\t\t\t\tpD = sub(\"rounding\");\n\t\t\t\tbreak;\n\t\t\tcase \"capsule3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"height\");\n\t\t\t\tbreak;\n\t\t\tcase \"cone3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"height\");\n\t\t\t\tpC = sub(\"topRadius\");\n\t\t\t\tbreak;\n\t\t\tcase \"pyramid3D\":\n\t\t\t\tpA = sub(\"size\");\n\t\t\t\tpB = sub(\"height\");\n\t\t\t\tbreak;\n\t\t\tcase \"prism3D\":\n\t\t\tcase \"diamond3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"height\");\n\t\t\t\tbreak;\n\t\t\tcase \"ellipsoid3D\":\n\t\t\t\tpA = sub(\"radiusX\");\n\t\t\t\tpB = sub(\"radiusY\");\n\t\t\t\tpC = sub(\"radiusZ\");\n\t\t\t\tbreak;\n\t\t\tcase \"link3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"length\");\n\t\t\t\tpC = sub(\"tube\");\n\t\t\t\tbreak;\n\t\t\tcase \"gem3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"height\");\n\t\t\t\tpC = sub(\"facets\");\n\t\t\t\tbreak;\n\t\t\tcase \"helix3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"tube\");\n\t\t\t\tpC = sub(\"pitch\");\n\t\t\t\tbreak;\n\t\t\tcase \"metaballs3D\": {\n\t\t\t\tpA = sub(\"ballRadius\");\n\t\t\t\tpB = sub(\"spread\");\n\t\t\t\tpD = sub(\"blend\");\n\t\t\t\tconst count = Math.min(8, Math.max(1, Math.round(sub(\"balls\"))));\n\t\t\t\tconst sp = pB, tt = elapsed * sub(\"speed\") * .6;\n\t\t\t\tfor (let i = 0; i \u003c mb.length; i++) {\n\t\t\t\t\tif (i \u003e= count) {\n\t\t\t\t\t\tmb[i] = [\n\t\t\t\t\t\t\t0,\n\t\t\t\t\t\t\t99,\n\t\t\t\t\t\t\t0\n\t\t\t\t\t\t];\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tconst phase = i * (TWO_PI / count);\n\t\t\t\t\tconst ang = phase + tt;\n\t\t\t\t\tconst wob = .75 + .25 * Math.sin(tt * 1.3 + i * 1.7);\n\t\t\t\t\tmb[i] = [\n\t\t\t\t\t\tsp * Math.cos(ang) * wob,\n\t\t\t\t\t\tsp * .6 * Math.sin(tt * .9 + phase * 1.5),\n\t\t\t\t\t\tsp * Math.sin(ang) * wob\n\t\t\t\t\t];\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"hemisphere3D\":\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"cut\");\n\t\t\t\tbreak;\n\t\t\tcase \"ribbon3D\": {\n\t\t\t\tpA = sub(\"width\");\n\t\t\t\tpB = sub(\"thickness\");\n\t\t\t\tpC = sub(\"length\");\n\t\t\t\tconst tt = elapsed * sub(\"speed\");\n\t\t\t\tconst amp = sub(\"wave\") * (.8 + .2 * Math.sin(tt * .9));\n\t\t\t\tconst wf = sub(\"waveFrequency\");\n\t\t\t\tconst twRate = sub(\"twist\") * DEG / Math.max(pC * 2, .01);\n\t\t\t\tmb[0] = [\n\t\t\t\t\tamp,\n\t\t\t\t\twf,\n\t\t\t\t\ttt * 1.1\n\t\t\t\t];\n\t\t\t\tmb[1] = [\n\t\t\t\t\ttt * .7 + 2.1,\n\t\t\t\t\ttwRate,\n\t\t\t\t\ttt * .45\n\t\t\t\t];\n\t\t\t\tconst slope = Math.abs(amp) * wf + Math.abs(twRate) * Math.hypot(pA, pB);\n\t\t\t\tmb[2] = [\n\t\t\t\t\t1 / Math.sqrt(1 + slope * slope),\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"blob3D\": {\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tconst tt = elapsed * sub(\"speed\");\n\t\t\t\tconst amp = sub(\"wobble\") * (.75 + .25 * Math.sin(tt * .83));\n\t\t\t\tconst wb = sub(\"wobbliness\");\n\t\t\t\tmb[0] = [\n\t\t\t\t\tamp,\n\t\t\t\t\twb,\n\t\t\t\t\ttt * 1.2\n\t\t\t\t];\n\t\t\t\tmb[1] = [\n\t\t\t\t\ttt * .77 + 1.3,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t];\n\t\t\t\tmb[2] = [\n\t\t\t\t\t1 / (1 + Math.abs(amp) * wb * 1.3),\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"gyroscope3D\": {\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tpB = sub(\"width\");\n\t\t\t\tpC = sub(\"core\");\n\t\t\t\tpD = sub(\"thickness\");\n\t\t\t\tconst rnd = Math.max(0, Math.min(sub(\"rounding\"), Math.min(pB, pD) * .5));\n\t\t\t\tconst tt = elapsed * sub(\"speed\");\n\t\t\t\tconst th1 = tt * .9;\n\t\t\t\tconst th2 = tt * .63 + 1.1;\n\t\t\t\tconst th3 = tt * 1.21 + 2.3;\n\t\t\t\tmb[0] = [\n\t\t\t\t\tMath.cos(th1),\n\t\t\t\t\tMath.sin(th1),\n\t\t\t\t\t0\n\t\t\t\t];\n\t\t\t\tmb[1] = [\n\t\t\t\t\tMath.cos(th2),\n\t\t\t\t\tMath.sin(th2),\n\t\t\t\t\t0\n\t\t\t\t];\n\t\t\t\tmb[2] = [\n\t\t\t\t\tMath.cos(th3),\n\t\t\t\t\tMath.sin(th3),\n\t\t\t\t\t0\n\t\t\t\t];\n\t\t\t\tmb[3] = [\n\t\t\t\t\trnd,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t];\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tcase \"sphere3D\":\n\t\t\tcase \"octahedron3D\":\n\t\t\tcase \"dodecahedron3D\":\n\t\t\tdefault:\n\t\t\t\tpA = sub(\"radius\");\n\t\t\t\tbreak;\n\t\t}\n\t\trBound = shape3dBoundingRadius({\n\t\t\t...lastCfg,\n\t\t\ttype: shapeType\n\t\t}) + .02 + extraPad();\n\t\tconst rx = sub(\"rotX\") * DEG, ry = sub(\"rotY\") * DEG, rz = sub(\"rotZ\") * DEG;\n\t\tcx = Math.cos(rx);\n\t\tsx = Math.sin(rx);\n\t\tcy = Math.cos(ry);\n\t\tsy = Math.sin(ry);\n\t\tcz = Math.cos(rz);\n\t\tsz = Math.sin(rz);\n\t\tconst rPad = rBound + .05;\n\t\tspanX = rPad * 2;\n\t\tspanY = rPad * 2;\n\t\toriginX = .5 - rPad;\n\t\toriginY = .5 - rPad;\n\t\twriteMarch();\n\t};\n\tupdate();\n\tconst setActiveRes = (res) =\u003e {\n\t\tif (res === activeRes) return;\n\t\tactiveRes = res;\n\t\twriteMarch();\n\t};\n\tconst getGeometryKey = () =\u003e `${pA},${pB},${pC},${pD},${rBound},` + mb.map((m) =\u003e `${m[0]},${m[1]},${m[2]}`).join(\",\");\n\tconst getStateKey = () =\u003e `${getGeometryKey()},${cx},${sx},${cy},${sy},${cz},${sz}`;\n\treturn {\n\t\tlayout,\n\t\tmarchParamsBuffer,\n\t\tsdfFn,\n\t\tupdate,\n\t\tsetActiveRes,\n\t\tgetStateKey,\n\t\tgetFootprint: () =\u003e ({\n\t\t\tspanX,\n\t\t\tspanY,\n\t\t\toriginX,\n\t\t\toriginY,\n\t\t\trBound\n\t\t}),\n\t\tgetRotation: () =\u003e ({\n\t\t\tcx,\n\t\t\tsx,\n\t\t\tcy,\n\t\t\tsy,\n\t\t\tcz,\n\t\t\tsz\n\t\t}),\n\t\tgetGeometryKey\n\t};\n}\nfunction createSvg3dSdfSetup(params, shapeSdfUrl, getShapeConfig, opts = {}) {\n\tconst root = params.gpu.root;\n\tconst extraPad = opts.extraPad ?? (() =\u003e 0);\n\tconst { texture, getVersion } = createSdfDataTexture(params, shapeSdfUrl);\n\tconst { layout } = makeVolumetricSvgFieldLayout();\n\tconst marchParamsBuffer = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(MarchParams), \"marchParamsBuffer\");\n\tconst SIZE_F = f32(512);\n\tconst MAX_TEXEL = f32(511);\n\tconst sdfFn = typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\t\"use gpu\";\n\t\tconst pp = layout.$.params;\n\t\tconst halfDepth$1 = pp.pA;\n\t\tconst bevel$1 = pp.pB;\n\t\tconst u = __tsover_sub(__tsover_mul(__tsover_add(p.x, .5), SIZE_F), .5);\n\t\tconst v = __tsover_sub(__tsover_mul(__tsover_sub(.5, p.y), SIZE_F), .5);\n\t\tconst x0 = floor(u);\n\t\tconst y0 = floor(v);\n\t\tconst fx = __tsover_sub(u, x0);\n\t\tconst fy = __tsover_sub(v, y0);\n\t\tconst cx0 = u32(clamp(x0, f32(0), MAX_TEXEL));\n\t\tconst cx1 = u32(clamp(__tsover_add(x0, 1), f32(0), MAX_TEXEL));\n\t\tconst cy0 = u32(clamp(y0, f32(0), MAX_TEXEL));\n\t\tconst cy1 = u32(clamp(__tsover_add(y0, 1), f32(0), MAX_TEXEL));\n\t\tconst s00 = textureLoad(layout.$.sdfSource, vec2u(cx0, cy0), 0).r;\n\t\tconst s10 = textureLoad(layout.$.sdfSource, vec2u(cx1, cy0), 0).r;\n\t\tconst s01 = textureLoad(layout.$.sdfSource, vec2u(cx0, cy1), 0).r;\n\t\tconst s11 = textureLoad(layout.$.sdfSource, vec2u(cx1, cy1), 0).r;\n\t\tconst field2d = mix(mix(s00, s10, fx), mix(s01, s11, fx), fy);\n\t\tconst d2 = __tsover_add(field2d, bevel$1);\n\t\tconst wz = __tsover_add(__tsover_sub(abs(p.z), halfDepth$1), bevel$1);\n\t\tconst inner = min(max(d2, wz), f32(0));\n\t\tconst outer = length(vec2f(max(d2, f32(0)), max(wz, f32(0))));\n\t\treturn __tsover_sub(__tsover_add(inner, outer), bevel$1);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"halfDepth\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bevel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"SIZE_F\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"SIZE_F\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"u\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"y0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"v\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cx0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"MAX_TEXEL\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cx1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"MAX_TEXEL\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cy0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"MAX_TEXEL\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cy1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"MAX_TEXEL\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s00\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sdfSource\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"r\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s10\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sdfSource\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"r\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s01\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sdfSource\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"r\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s11\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sdfSource\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"r\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"field2d\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"s00\",\n\t\t\t\t\t\t\t\t\t\"s10\",\n\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"s01\",\n\t\t\t\t\t\t\t\t\t\"s11\",\n\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"field2d\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"bevel\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wz\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"halfDepth\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"bevel\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"inner\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"d2\", \"wz\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"outer\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"d2\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"wz\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"inner\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"outer\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"bevel\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"SIZE_F\": () =\u003e SIZE_F,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"MAX_TEXEL\": () =\u003e MAX_TEXEL,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"d.vec2f\": () =\u003e vec2f\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tlet elapsed = 0;\n\tlet lastShapeJson = \"\";\n\tlet lastCfg = parseShapeConfig(getShapeConfig());\n\tconst springs = /* @__PURE__ */ new Map();\n\tlet halfDepth = .06, bevel = .02, rBound = .75;\n\tlet cx = 1, sx = 0, cy = 1, sy = 0, cz = 1, sz = 0;\n\tlet spanX = 1, spanY = 1, originX = 0, originY = 0;\n\tlet activeRes = resolveVolumetricFieldRes();\n\tconst writeMarch = () =\u003e {\n\t\tmarchParamsBuffer.write({\n\t\t\trot: {\n\t\t\t\tcx,\n\t\t\t\tsx,\n\t\t\t\tcy,\n\t\t\t\tsy,\n\t\t\t\tcz,\n\t\t\t\tsz\n\t\t\t},\n\t\t\trBound,\n\t\t\tspanX,\n\t\t\tspanY,\n\t\t\toriginX,\n\t\t\toriginY,\n\t\t\tactiveRes,\n\t\t\tpA: halfDepth,\n\t\t\tpB: bevel,\n\t\t\tpC: 0,\n\t\t\tpD: 0,\n\t\t\tmb0: vec3f(0, 0, 0),\n\t\t\tmb1: vec3f(0, 0, 0),\n\t\t\tmb2: vec3f(0, 0, 0),\n\t\t\tmb3: vec3f(0, 0, 0),\n\t\t\tmb4: vec3f(0, 0, 0),\n\t\t\tmb5: vec3f(0, 0, 0),\n\t\t\tmb6: vec3f(0, 0, 0),\n\t\t\tmb7: vec3f(0, 0, 0)\n\t\t});\n\t};\n\tconst update = (frameParams) =\u003e {\n\t\tconst deltaTime = frameParams?.deltaTime ?? 0;\n\t\telapsed += deltaTime;\n\t\tconst raw = getShapeConfig();\n\t\tif (raw \u0026\u0026 typeof raw === \"object\") lastCfg = raw;\n\t\telse if (typeof raw === \"string\") {\n\t\t\tif (raw !== lastShapeJson) {\n\t\t\t\tlastShapeJson = raw;\n\t\t\t\ttry {\n\t\t\t\t\tlastCfg = JSON.parse(raw);\n\t\t\t\t} catch {}\n\t\t\t}\n\t\t}\n\t\tconst frame = {\n\t\t\telapsed,\n\t\t\tdeltaTime,\n\t\t\tpointerX: frameParams?.pointer?.x ?? .5,\n\t\t\tpointerY: frameParams?.pointer?.y ?? .5,\n\t\t\tsprings\n\t\t};\n\t\tconst sub = (k) =\u003e resolveShapeSubProp(lastCfg[k], SVG3D_DEFAULTS[k] ?? 0, frame, k);\n\t\thalfDepth = Math.max(.001, sub(\"depth\") * .5);\n\t\tbevel = Math.min(Math.max(0, sub(\"bevel\")), halfDepth);\n\t\tconst cb = getSdfContentBounds(shapeSdfUrl);\n\t\tconst hwf = cb ? Math.min(.5, cb.hwf + .02) : .5;\n\t\tconst hhf = cb ? Math.min(.5, cb.hhf + .02) : .5;\n\t\tconst pad = extraPad();\n\t\trBound = Math.hypot(hwf, hhf, halfDepth) + bevel + .03 + pad;\n\t\tconst rx = sub(\"rotX\") * DEG, ry = sub(\"rotY\") * DEG, rz = sub(\"rotZ\") * DEG;\n\t\tcx = Math.cos(rx);\n\t\tsx = Math.sin(rx);\n\t\tcy = Math.cos(ry);\n\t\tsy = Math.sin(ry);\n\t\tcz = Math.cos(rz);\n\t\tsz = Math.sin(rz);\n\t\tconst s = {\n\t\t\tcx,\n\t\t\tsx,\n\t\t\tcy,\n\t\t\tsy,\n\t\t\tcz,\n\t\t\tsz\n\t\t};\n\t\tconst eX = rotateVecCpu(1, 0, 0, s);\n\t\tconst eY = rotateVecCpu(0, 1, 0, s);\n\t\tconst axisPad = bevel + .03 + pad;\n\t\tconst rBoundX = Math.abs(eX.x) * hwf + Math.abs(eX.y) * hhf + Math.abs(eX.z) * halfDepth + axisPad;\n\t\tconst rBoundY = Math.abs(eY.x) * hwf + Math.abs(eY.y) * hhf + Math.abs(eY.z) * halfDepth + axisPad;\n\t\tconst rPadX = rBoundX + .05;\n\t\tconst rPadY = rBoundY + .05;\n\t\tspanX = rPadX * 2;\n\t\tspanY = rPadY * 2;\n\t\toriginX = .5 - rPadX;\n\t\toriginY = .5 - rPadY;\n\t\twriteMarch();\n\t};\n\tupdate();\n\tconst setActiveRes = (res) =\u003e {\n\t\tif (res === activeRes) return;\n\t\tactiveRes = res;\n\t\twriteMarch();\n\t};\n\tconst getGeometryKey = () =\u003e `${halfDepth},${bevel},${rBound},${getVersion()}`;\n\tconst getStateKey = () =\u003e `${getGeometryKey()},${spanX},${spanY},${cx},${sx},${cy},${sy},${cz},${sz}`;\n\treturn {\n\t\tlayout,\n\t\tmarchParamsBuffer,\n\t\tsdfFn,\n\t\tsdfSourceTexture: texture.texture,\n\t\tupdate,\n\t\tsetActiveRes,\n\t\tgetStateKey,\n\t\tgetFootprint: () =\u003e ({\n\t\t\tspanX,\n\t\t\tspanY,\n\t\t\toriginX,\n\t\t\toriginY,\n\t\t\trBound\n\t\t}),\n\t\tgetRotation: () =\u003e ({\n\t\t\tcx,\n\t\t\tsx,\n\t\t\tcy,\n\t\t\tsy,\n\t\t\tcz,\n\t\t\tsz\n\t\t}),\n\t\tgetGeometryKey\n\t};\n}\nfunction createAnalytic2dExtrudeSetup(root, shapeType, getShapeConfig, getHalfDepth, opts = {}) {\n\tconst extraPad = opts.extraPad ?? (() =\u003e 0);\n\tconst { layout } = makeVolumetricFieldLayout();\n\tconst marchParamsBuffer = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(MarchParams), \"marchParamsBuffer\");\n\tconst analytic = buildAnalyticSdfFn(shapeType);\n\tconst sdfFn = typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\t\"use gpu\";\n\t\tconst pp = layout.$.params;\n\t\tconst d2 = analytic(vec2f(__tsover_add(p.x, .5), __tsover_sub(.5, p.y)), pp.pA, pp.pB, pp.pC, pp.pD, pp.mb0.x, pp.mb0.y, pp.mb0.z, pp.mb1.x).x;\n\t\tconst wz = __tsover_sub(abs(p.z), pp.mb1.y);\n\t\tconst inner = min(max(d2, wz), f32(0));\n\t\tconst outer = length(vec2f(max(d2, f32(0)), max(wz, f32(0))));\n\t\treturn __tsover_add(inner, outer);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"analytic\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\"pA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\"pB\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\"pC\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\"pD\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\"mb0\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wz\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pp\",\n\t\t\t\t\t\t\t\t\"mb1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"inner\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"d2\", \"wz\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"outer\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"d2\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"wz\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t\"inner\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"outer\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"analytic\": () =\u003e analytic,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.length\": () =\u003e length\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tlet lastShapeJson = \"\";\n\tlet lastCfg = parseShapeConfig(getShapeConfig());\n\tlet sub = analyticSubPropValues(lastCfg);\n\tlet halfDepth = .06, rBound = .6;\n\tlet spanX = 1, spanY = 1, originX = 0, originY = 0;\n\tlet activeRes = resolveVolumetricFieldRes();\n\tconst writeMarch = () =\u003e {\n\t\tmarchParamsBuffer.write({\n\t\t\trot: {\n\t\t\t\tcx: 1,\n\t\t\t\tsx: 0,\n\t\t\t\tcy: 1,\n\t\t\t\tsy: 0,\n\t\t\t\tcz: 1,\n\t\t\t\tsz: 0\n\t\t\t},\n\t\t\trBound,\n\t\t\tspanX,\n\t\t\tspanY,\n\t\t\toriginX,\n\t\t\toriginY,\n\t\t\tactiveRes,\n\t\t\tpA: sub.radius,\n\t\t\tpB: sub.sides,\n\t\t\tpC: sub.rounding,\n\t\t\tpD: sub.innerRatio,\n\t\t\tmb0: vec3f(sub.rotation, sub.height, sub.offset),\n\t\t\tmb1: vec3f(sub.aperture, halfDepth, 0),\n\t\t\tmb2: vec3f(0, 0, 0),\n\t\t\tmb3: vec3f(0, 0, 0),\n\t\t\tmb4: vec3f(0, 0, 0),\n\t\t\tmb5: vec3f(0, 0, 0),\n\t\t\tmb6: vec3f(0, 0, 0),\n\t\t\tmb7: vec3f(0, 0, 0)\n\t\t});\n\t};\n\tconst update = () =\u003e {\n\t\tconst raw = getShapeConfig();\n\t\tif (raw \u0026\u0026 typeof raw === \"object\") lastCfg = raw;\n\t\telse if (typeof raw === \"string\") {\n\t\t\tif (raw !== lastShapeJson) {\n\t\t\t\tlastShapeJson = raw;\n\t\t\t\ttry {\n\t\t\t\t\tlastCfg = JSON.parse(raw);\n\t\t\t\t} catch {}\n\t\t\t}\n\t\t}\n\t\tsub = analyticSubPropValues(lastCfg);\n\t\thalfDepth = Math.max(.001, getHalfDepth());\n\t\tconst { hwf, hhf } = shapeContentExtent({ shape: {\n\t\t\t...lastCfg,\n\t\t\tradius: sub.radius,\n\t\t\theight: sub.height\n\t\t} });\n\t\trBound = Math.hypot(hwf, hhf, halfDepth) + .02 + extraPad();\n\t\tconst rPad = rBound + .05;\n\t\tspanX = rPad * 2;\n\t\tspanY = rPad * 2;\n\t\toriginX = .5 - rPad;\n\t\toriginY = .5 - rPad;\n\t\twriteMarch();\n\t};\n\tupdate();\n\tconst setActiveRes = (res) =\u003e {\n\t\tif (res === activeRes) return;\n\t\tactiveRes = res;\n\t\twriteMarch();\n\t};\n\tconst getStateKey = () =\u003e `${sub.radius},${sub.sides},${sub.rounding},${sub.innerRatio},${sub.rotation},${sub.height},${sub.offset},${sub.aperture},${halfDepth},${rBound}`;\n\treturn {\n\t\tlayout,\n\t\tmarchParamsBuffer,\n\t\tsdfFn,\n\t\tupdate,\n\t\tsetActiveRes,\n\t\tgetStateKey,\n\t\tgetFootprint: () =\u003e ({\n\t\t\tspanX,\n\t\t\tspanY,\n\t\t\toriginX,\n\t\t\toriginY,\n\t\t\trBound\n\t\t}),\n\t\tgetRotation: () =\u003e ({\n\t\t\tcx: 1,\n\t\t\tsx: 0,\n\t\t\tcy: 1,\n\t\t\tsy: 0,\n\t\t\tcz: 1,\n\t\t\tsz: 0\n\t\t}),\n\t\tgetGeometryKey: getStateKey\n\t};\n}\nfunction createVolumetricFieldComputeNode(params, getShapeConfig, patternMode = \"none\", chordMode = \"span\") {\n\tconst root = params.gpu?.root;\n\tif (!root) return null;\n\tconst cfg = parseShapeConfig(getShapeConfig());\n\tconst shapeSdfUrl = params.getCpuValue(\"shapeSdfUrl\") || \"\";\n\tconst shapeType = params.getCpuValue(\"shapeType\") || cfg.type || \"\";\n\tlet setup = null;\n\tif (shapeSdfUrl \u0026\u0026 isSvg3dShapeType(shapeType)) setup = createSvg3dSdfSetup(params, shapeSdfUrl, getShapeConfig);\n\telse if (!shapeSdfUrl \u0026\u0026 is3dShapeType(shapeType)) setup = createAnalytic3dSdfSetup(root, shapeType, cfg, getShapeConfig);\n\tif (!setup) return null;\n\tconst march = buildRaymarchedFieldFn(setup.sdfFn, patternMode, chordMode);\n\tconst kernel = buildVolumetricFieldKernel(setup.layout, march);\n\tconst compute = createVolumetricFieldCompute(root, setup.layout, kernel, params.onCleanup, {\n\t\tparamsUniform: setup.marchParamsBuffer,\n\t\tsdfSourceTexture: setup.sdfSourceTexture\n\t});\n\tconst fieldTexture = params.registerComputeTexture(compute.fieldTexture);\n\tlet activeRes = compute.maxRes;\n\tlet lastKey = \"\";\n\tconst marchEvery = isMobileGpuViewport() ? 2 : 1;\n\tlet changedFrames = 0;\n\tconst domain = {\n\t\toriginX: 0,\n\t\toriginY: 0,\n\t\tspanX: 1,\n\t\tspanY: 1,\n\t\tactiveRes: 1,\n\t\trBound: .6\n\t};\n\tconst getComputeNodes = (frameParams) =\u003e {\n\t\tsetup.update(frameParams);\n\t\tconst fp = setup.getFootprint();\n\t\tconst scale = params.getCpuValue(\"scale\") ?? 1;\n\t\tconst hDev = params.dimensions.height;\n\t\tactiveRes = resolveActiveFieldRes(fp.spanX, fp.spanY, scale, hDev, compute.maxRes, activeRes);\n\t\tconst key = `${setup.getStateKey()},${activeRes}`;\n\t\tif (key === lastKey) return null;\n\t\tchangedFrames++;\n\t\tif (marchEvery \u003e 1 \u0026\u0026 changedFrames % marchEvery !== 0) return null;\n\t\tlastKey = key;\n\t\tsetup.setActiveRes(activeRes);\n\t\tparams.setExtraField(\"_vfOriginX\", fp.originX);\n\t\tparams.setExtraField(\"_vfOriginY\", fp.originY);\n\t\tparams.setExtraField(\"_vfSpanX\", fp.spanX);\n\t\tparams.setExtraField(\"_vfSpanY\", fp.spanY);\n\t\tparams.setExtraField(\"_vfActiveRes\", activeRes);\n\t\tparams.setExtraField(\"_vfRBound\", fp.rBound);\n\t\tdomain.originX = fp.originX;\n\t\tdomain.originY = fp.originY;\n\t\tdomain.spanX = fp.spanX;\n\t\tdomain.spanY = fp.spanY;\n\t\tdomain.activeRes = activeRes;\n\t\tdomain.rBound = fp.rBound;\n\t\treturn [() =\u003e compute.dispatch(activeRes)];\n\t};\n\treturn {\n\t\toutputs: { volumetricFieldTexture: fieldTexture },\n\t\tgetComputeNodes,\n\t\tfieldTexture: compute.fieldTexture,\n\t\tgetFieldDomain: () =\u003e ({ ...domain })\n\t};\n}\nvar TWISTED_RIBBON_TWIST_RATE = .08;\nconst eulerRotatePacked = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rp0, rp1) =\u003e {\n\t\"use gpu\";\n\tconst cx = rp0.x;\n\tconst sx = rp0.y;\n\tconst cy = rp0.z;\n\tconst sy = rp0.w;\n\tconst cz = rp1.x;\n\tconst sz = rp1.y;\n\tconst py = vec3f(__tsover_add(__tsover_mul(p.x, cy), __tsover_mul(p.z, sy)), p.y, __tsover_add(__tsover_mul(__tsover_mul(p.x, sy), -1), __tsover_mul(p.z, cy)));\n\tconst px = vec3f(py.x, __tsover_sub(__tsover_mul(py.y, cx), __tsover_mul(py.z, sx)), __tsover_add(__tsover_mul(py.y, sx), __tsover_mul(py.z, cx)));\n\treturn vec3f(__tsover_sub(__tsover_mul(px.x, cz), __tsover_mul(px.y, sz)), __tsover_add(__tsover_mul(px.x, sz), __tsover_mul(px.y, cz)), px.z);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sx\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sy\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cz\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sz\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f }\n}) \u0026\u0026 $.f)({})).$name(\"eulerRotatePacked\");\nconst paramSphereSdf = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rp0, rp1, _rp2, _t) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(length(eulerRotatePacked(p, rp0, rp1)), rp1.z);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.length\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t\"rp1\",\n\t\t\t\t\"z\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"paramSphereSdf\");\nconst sphereSurfaceUV = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((h, _n, rp0, rp1, _rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst n = normalize(eulerRotatePacked(h, rp0, rp1));\n\treturn vec2f(__tsover_add(__tsover_div(atan2(n.z, n.x), 6.283185307179586), .5), __tsover_mul(__tsover_add(n.y, 1), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"n\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.normalize\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"6.283185307179586\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.atan2\": () =\u003e atan2\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"sphereSurfaceUV\");\nconst paramTorusSdf = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rp0, rp1, _rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(p, rp0, rp1);\n\tconst q = vec2f(__tsover_sub(length(vec2f(rp.x, rp.z)), rp1.z), rp.y);\n\treturn __tsover_sub(length(q), rp1.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"q\"]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"paramTorusSdf\");\nconst torusSurfaceUV = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((h, _n, rp0, rp1, _rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(h, rp0, rp1);\n\tconst u = __tsover_add(__tsover_div(atan2(rp.z, rp.x), 6.283185307179586), .5);\n\tconst ringDist = __tsover_sub(length(vec2f(rp.x, rp.z)), rp1.z);\n\treturn vec2f(u, __tsover_add(__tsover_div(atan2(rp.y, ringDist), 6.283185307179586), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"6.283185307179586\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringDist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"u\", [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t], \"ringDist\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"6.283185307179586\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"torusSurfaceUV\");\nconst paramBoxSdf = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rp0, rp1, rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(p, rp0, rp1);\n\tconst rounding = rp2.y;\n\tconst qx = __tsover_add(__tsover_sub(abs(rp.x), rp1.z), rounding);\n\tconst qy = __tsover_add(__tsover_sub(abs(rp.y), rp1.w), rounding);\n\tconst qz = __tsover_add(__tsover_sub(abs(rp.z), rp2.x), rounding);\n\tconst outer = length(vec3f(max(qx, f32(0)), max(qy, f32(0)), max(qz, f32(0))));\n\tconst inner = min(max(qx, max(qy, qz)), f32(0));\n\treturn __tsover_sub(__tsover_add(outer, inner), rounding);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rounding\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outer\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qx\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qy\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qz\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inner\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"qx\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"qy\", \"qz\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outer\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"inner\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"rounding\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"paramBoxSdf\");\nconst boxFaceUV = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((h, n, rp0, rp1, rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(h, rp0, rp1);\n\tconst rn = eulerRotatePacked(n, rp0, rp1);\n\tconst an = vec3f(abs(rn.x), abs(rn.y), abs(rn.z));\n\tconst hx = rp1.z;\n\tconst hy = rp1.w;\n\tconst hz = rp2.x;\n\tconst scaleX = __tsover_div(.5, max(hy, hz));\n\tconst scaleY = __tsover_div(.5, max(hx, hz));\n\tconst scaleZ = __tsover_div(.5, max(hx, hy));\n\tconst uvX = vec2f(__tsover_add(__tsover_mul(rp.z, scaleX), .5), __tsover_add(__tsover_mul(rp.y, scaleX), .5));\n\tconst uvY = vec2f(__tsover_add(__tsover_mul(rp.x, scaleY), .5), __tsover_add(__tsover_mul(rp.z, scaleY), .5));\n\tconst uvZ = vec2f(__tsover_add(__tsover_mul(rp.x, scaleZ), .5), __tsover_add(__tsover_mul(rp.y, scaleZ), .5));\n\tconst pickXZ = select(uvZ, uvX, an.x \u003e an.z);\n\treturn select(select(uvZ, uvY, an.y \u003e an.z), pickXZ, an.x \u003e an.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"an\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rn\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rn\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rn\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hx\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hy\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hz\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaleX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"hy\", \"hz\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaleY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"hx\", \"hz\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaleZ\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"hx\", \"hy\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uvX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scaleX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scaleX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uvY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scaleY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scaleY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uvZ\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scaleZ\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scaleZ\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pickXZ\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uvZ\",\n\t\t\t\t\t\t\"uvX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"an\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"an\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pickYZ\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uvZ\",\n\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"an\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"an\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"pickYZ\",\n\t\t\t\t\t\"pickXZ\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"an\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"an\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"boxFaceUV\");\nconst paramCapsuleSdf = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rp0, rp1, _rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(p, rp0, rp1);\n\tconst radius = rp1.z;\n\tconst halfHeight = rp1.w;\n\tconst clampedY = clamp(rp.y, __tsover_mul(halfHeight, -1), halfHeight);\n\treturn __tsover_sub(length(vec3f(rp.x, __tsover_sub(rp.y, clampedY), rp.z)), radius);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"radius\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfHeight\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clampedY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"halfHeight\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"halfHeight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"clampedY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"radius\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"paramCapsuleSdf\");\nconst capsuleSurfaceUV = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((h, _n, rp0, rp1, _rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(h, rp0, rp1);\n\tconst u = __tsover_add(__tsover_div(atan2(rp.z, rp.x), 6.283185307179586), .5);\n\tconst span = __tsover_add(rp1.w, rp1.z);\n\treturn vec2f(u, clamp(__tsover_add(__tsover_mul(__tsover_div(rp.y, span), .5), .5), 0, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"6.283185307179586\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"span\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"u\", [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"span\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"capsuleSurfaceUV\");\nconst paramMobiusSdf = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rp0, rp1, rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(p, rp0, rp1);\n\tconst ringRadius = rp1.z;\n\tconst halfWidth = rp1.w;\n\tconst thickness = rp2.x;\n\tconst phi = atan2(rp.z, rp.x);\n\tconst spine = vec3f(__tsover_mul(cos(phi), ringRadius), 0, __tsover_mul(sin(phi), ringRadius));\n\tconst dvec = vec3f(__tsover_sub(rp.x, spine.x), __tsover_sub(rp.y, spine.y), __tsover_sub(rp.z, spine.z));\n\tconst halfPhi = __tsover_mul(phi, .5);\n\tconst ev = vec3f(__tsover_mul(cos(phi), cos(halfPhi)), sin(halfPhi), __tsover_mul(sin(phi), cos(halfPhi)));\n\tconst vProj = dot(dvec, ev);\n\tconst du = max(__tsover_sub(abs(vProj), halfWidth), f32(0));\n\tconst perp = vec3f(__tsover_sub(dvec.x, __tsover_mul(ev.x, vProj)), __tsover_sub(dvec.y, __tsover_mul(ev.y, vProj)), __tsover_sub(dvec.z, __tsover_mul(ev.z, vProj)));\n\treturn __tsover_sub(length(vec2f(du, length(perp))), thickness);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringRadius\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfWidth\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickness\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spine\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ringRadius\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ringRadius\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dvec\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"spine\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"spine\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"spine\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfPhi\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"phi\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ev\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"halfPhi\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"halfPhi\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"halfPhi\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vProj\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"dvec\", \"ev\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"du\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"vProj\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"halfWidth\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dvec\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ev\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"vProj\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dvec\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ev\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"vProj\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dvec\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ev\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"vProj\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"du\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[\"perp\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t\"thickness\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"paramMobiusSdf\");\nconst mobiusSurfaceUV = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((h, _n, rp0, rp1, _rp2, _t) =\u003e {\n\t\"use gpu\";\n\tconst rp = eulerRotatePacked(h, rp0, rp1);\n\tconst ringRadius = rp1.z;\n\tconst halfWidth = rp1.w;\n\tconst phi = atan2(rp.z, rp.x);\n\tconst spine = vec3f(__tsover_mul(cos(phi), ringRadius), 0, __tsover_mul(sin(phi), ringRadius));\n\tconst dvec = vec3f(__tsover_sub(rp.x, spine.x), __tsover_sub(rp.y, spine.y), __tsover_sub(rp.z, spine.z));\n\tconst halfPhi = __tsover_mul(phi, .5);\n\tconst vProj = dot(dvec, vec3f(__tsover_mul(cos(phi), cos(halfPhi)), sin(halfPhi), __tsover_mul(sin(phi), cos(halfPhi))));\n\treturn vec2f(__tsover_add(__tsover_div(phi, 6.283185307179586), .5), __tsover_add(__tsover_mul(__tsover_div(vProj, halfWidth), .5), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"eulerRotatePacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\"rp1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringRadius\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfWidth\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spine\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ringRadius\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ringRadius\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dvec\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"spine\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"spine\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rp\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"spine\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfPhi\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"phi\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ev\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"halfPhi\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"halfPhi\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[\"phi\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"halfPhi\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vProj\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"dvec\", \"ev\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"phi\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"6.283185307179586\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"vProj\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"halfWidth\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"eulerRotatePacked\": () =\u003e eulerRotatePacked,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"mobiusSurfaceUV\");\nconst paramTwistedRibbonSdf = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, rp0, rp1, _rp2, t) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = rp0.x;\n\tconst twist = rp0.y;\n\tconst halfW = rp0.z;\n\tconst thickness = rp1.x;\n\tconst phase = rp1.y;\n\tconst lipschitz = rp1.z;\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst rpx = __tsover_add(__tsover_mul(p.x, cosA), __tsover_mul(p.y, sinA));\n\tconst rpy = __tsover_add(__tsover_mul(__tsover_mul(p.x, sinA), -1), __tsover_mul(p.y, cosA));\n\tconst twistAngle = __tsover_add(__tsover_add(__tsover_mul(rpx, twist), phase), __tsover_mul(t, TWISTED_RIBBON_TWIST_RATE));\n\tconst ca = cos(twistAngle);\n\tconst sa = sin(twistAngle);\n\tconst localU = __tsover_add(__tsover_mul(rpy, ca), __tsover_mul(p.z, sa));\n\tconst localV = __tsover_add(__tsover_mul(__tsover_mul(rpy, sa), -1), __tsover_mul(p.z, ca));\n\tconst du = max(__tsover_sub(abs(localU), halfW), f32(0));\n\treturn __tsover_div(__tsover_sub(length(vec2f(du, localV)), thickness), lipschitz);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twist\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfW\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickness\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phase\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lipschitz\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rpx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rpy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twistAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rpx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"twist\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TWISTED_RIBBON_TWIST_RATE\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ca\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"twistAngle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sa\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"twistAngle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rpy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ca\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sa\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rpy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sa\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ca\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"du\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"localU\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"halfW\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"du\", \"localV\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"thickness\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"lipschitz\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"TWISTED_RIBBON_TWIST_RATE\": () =\u003e TWISTED_RIBBON_TWIST_RATE,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"paramTwistedRibbonSdf\");\nconst twistedRibbonSurfaceUV = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((h, _n, rp0, rp1, _rp2, t) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = rp0.x;\n\tconst twist = rp0.y;\n\tconst halfW = rp0.z;\n\tconst width = rp0.w;\n\tconst phase = rp1.y;\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst rpx = __tsover_add(__tsover_mul(h.x, cosA), __tsover_mul(h.y, sinA));\n\tconst rpy = __tsover_add(__tsover_mul(__tsover_mul(h.x, sinA), -1), __tsover_mul(h.y, cosA));\n\tconst twistAngle = __tsover_add(__tsover_add(__tsover_mul(rpx, twist), phase), __tsover_mul(t, TWISTED_RIBBON_TWIST_RATE));\n\tconst ca = cos(twistAngle);\n\tconst sa = sin(twistAngle);\n\tconst localUClamped = max(min(__tsover_add(__tsover_mul(rpy, ca), __tsover_mul(h.z, sa)), halfW), __tsover_mul(halfW, -1));\n\treturn vec2f(__tsover_add(__tsover_mul(rpx, .15), .5), __tsover_add(__tsover_div(localUClamped, width), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rp1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_rp2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twist\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfW\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"width\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phase\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rpx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rpy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twistAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rpx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"twist\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TWISTED_RIBBON_TWIST_RATE\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ca\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"twistAngle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sa\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"twistAngle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rpy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ca\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sa\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localUClamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"localU\", \"halfW\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"halfW\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rpx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"localUClamped\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"width\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"TWISTED_RIBBON_TWIST_RATE\": () =\u003e TWISTED_RIBBON_TWIST_RATE,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"twistedRibbonSurfaceUV\");\nfunction packedParamExtraFields(prefix, initials) {\n\tconst out = {};\n\tinitials.forEach((initial, i) =\u003e {\n\t\tout[`${prefix}${i}`] = {\n\t\t\tschema: vec4f,\n\t\t\tinitial\n\t\t};\n\t});\n\treturn out;\n}\nexport { SHAPE3D_DEFAULTS$1 as A, awaitGpuIdle as B, sdRoundBox as C, twistedRibbonSurfaceUV as D, torusSurfaceUV as E, isSvg3dShapeType$1 as F, runFrameSequence as G, createFrameLoop as H, isVolumetricShapeType$1 as I, getSdfContentBounds as K, shape3dBoundingRadius$1 as L, SVG3D_DEFAULTS$1 as M, SVG3D_TYPES$1 as N, resolveShapeType as O, is3dShapeType$1 as P, applyEasing$1 as R, rotateVecCpu as S, sphereSurfaceUV as T, deriveElapsedTime as U, clampToTextureCap as V, frameGate as W, paramSphereSdf as _, capsuleSurfaceUV as a, resolveActiveFieldRes as b, createSvg3dSdfSetup as c, isSvg3dShapeType as d, mobiusSurfaceUV as f, paramMobiusSdf as g, paramCapsuleSdf as h, buildVolumetricFieldKernel as i, SHAPE3D_TYPES$1 as j, shapeEffectBoundingBoxDeclaration as k, createVolumetricFieldCompute as l, paramBoxSdf as m, boxFaceUV as n, createAnalytic2dExtrudeSetup as o, packedParamExtraFields as p, isSdfContentBoundsScanned as q, buildFieldSampleGraphArgs as r, createAnalytic3dSdfSetup as s, RotStruct as t, is3dShapeType as u, paramTorusSdf as v, sdf3d_exports as w, rotateVec3 as x, paramTwistedRibbonSdf as y, applySpring as z };\n","import { Ar as vec2u, Br as struct, Cr as sin, Gn as typegpu_default, Lr as texture2d, Mr as vec4f, Or as vec2f, Tr as sqrt, Yr as u32, _n as hash11, _r as mix, ar as clamp, cr as dot, er as select, fr as floor, gr as min, hr as max, jr as vec3f, lr as exp, mr as length, or as cos, qn as textureLoad, qr as f32, tr as abs, vr as normalize, wr as smoothstep, xn as hash33, yr as pow } from \"./lower-Bd2jez_2.js\";\nconst arrowSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, n, hl, hw) =\u003e {\n\t\"use gpu\";\n\tconst px = abs(n);\n\tconst py = __tsover_sub(hl, t);\n\tconst qx = hw;\n\tconst qy = __tsover_mul(hl, 2);\n\tconst k = clamp(__tsover_div(__tsover_add(__tsover_mul(px, qx), __tsover_mul(py, qy)), max(__tsover_add(__tsover_mul(qx, qx), __tsover_mul(qy, qy)), 1e-9)), 0, 1);\n\tconst ax = __tsover_sub(px, __tsover_mul(qx, k));\n\tconst ay = __tsover_sub(py, __tsover_mul(qy, k));\n\tconst bx = __tsover_sub(px, __tsover_mul(qx, clamp(__tsover_div(px, max(qx, 1e-9)), 0, 1)));\n\tconst by = __tsover_sub(py, qy);\n\tconst dSq = min(__tsover_add(__tsover_mul(ax, ax), __tsover_mul(ay, ay)), __tsover_add(__tsover_mul(bx, bx), __tsover_mul(by, by)));\n\tconst inside = min(__tsover_sub(__tsover_mul(py, qx), __tsover_mul(px, qy)), __tsover_sub(qy, py)) \u003e 0;\n\treturn select(sqrt(dSq), -sqrt(dSq), inside);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hl\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hw\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"n\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hl\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t\"hw\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hl\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [5, \"1e-9\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"qx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"qx\", [5, \"1e-9\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"by\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"qy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dSq\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ax\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ax\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ay\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ay\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"bx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"by\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"qx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"qy\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"qy\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"py\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inside\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"sA\", \"sB\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[\"dSq\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[\"dSq\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"inside\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentArrowSdf\");\nconst capsuleSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, n, hl, r) =\u003e {\n\t\"use gpu\";\n\tconst tc = __tsover_sub(t, clamp(t, -hl, hl));\n\treturn __tsover_sub(sqrt(__tsover_add(__tsover_mul(tc, tc), __tsover_mul(n, n))), r);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hl\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"tc\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"t\",\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"hl\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hl\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.sqrt\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tc\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"tc\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"n\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t\"r\"\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentCapsuleSdf\");\nconst boxSdf = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, n, hl, hw) =\u003e {\n\t\"use gpu\";\n\tconst qx = __tsover_sub(abs(t), hl);\n\tconst qy = __tsover_sub(abs(n), hw);\n\tconst ox = max(qx, 0);\n\tconst oy = max(qy, 0);\n\treturn __tsover_add(sqrt(__tsover_add(__tsover_mul(ox, ox), __tsover_mul(oy, oy))), min(max(qx, qy), 0));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hl\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hw\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"hl\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"hw\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ox\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"qx\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"qy\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ox\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"oy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"qx\", \"qy\"]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentBoxSdf\");\nconst AGENT_SHAPES = {\n\tarrow: {\n\t\tkind: 1,\n\t\thl: 2.3,\n\t\thw: 1,\n\t\tsoft: 0,\n\t\text: 2.65\n\t},\n\tstreak: {\n\t\tkind: 0,\n\t\thl: 1.7,\n\t\thw: .8,\n\t\tsoft: 0,\n\t\text: 2.6\n\t},\n\tdot: {\n\t\tkind: 0,\n\t\thl: 0,\n\t\thw: 1,\n\t\tsoft: 0,\n\t\text: 1.2\n\t},\n\tsquare: {\n\t\tkind: 2,\n\t\thl: .9,\n\t\thw: .9,\n\t\tsoft: 0,\n\t\text: 1.5\n\t},\n\tglow: {\n\t\tkind: 0,\n\t\thl: 0,\n\t\thw: 0,\n\t\tsoft: 1,\n\t\text: 2.1\n\t}\n};\nfunction resolveAgentShape(name, fallback) {\n\treturn typeof name === \"string\" \u0026\u0026 name in AGENT_SHAPES ? name : fallback;\n}\nconst orientedShapeOptions = [\n\t{\n\t\tlabel: \"Arrow\",\n\t\tvalue: \"arrow\"\n\t},\n\t{\n\t\tlabel: \"Streak\",\n\t\tvalue: \"streak\"\n\t},\n\t{\n\t\tlabel: \"Dot\",\n\t\tvalue: \"dot\"\n\t},\n\t{\n\t\tlabel: \"Square\",\n\t\tvalue: \"square\"\n\t},\n\t{\n\t\tlabel: \"Glow\",\n\t\tvalue: \"glow\"\n\t}\n];\nconst pointShapeOptions = [\n\t{\n\t\tlabel: \"Dot\",\n\t\tvalue: \"dot\"\n\t},\n\t{\n\t\tlabel: \"Square\",\n\t\tvalue: \"square\"\n\t},\n\t{\n\t\tlabel: \"Glow\",\n\t\tvalue: \"glow\"\n\t}\n];\nfunction makeAgentWeightFn(shape) {\n\tconst s = AGENT_SHAPES[resolveAgentShape(shape, \"dot\")];\n\tconst sdFn = s.kind === 1 ? arrowSdf : s.kind === 2 ? boxSdf : capsuleSdf;\n\tconst HL = s.hl;\n\tconst HW = s.hw;\n\treturn typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, n, bodyR, aaW, soft) =\u003e {\n\t\t\"use gpu\";\n\t\tconst sd = sdFn(t, n, __tsover_mul(bodyR, HL), __tsover_mul(bodyR, HW));\n\t\tconst wHard = __tsover_sub(1, smoothstep(-aaW, aaW, sd));\n\t\tconst gq = __tsover_div(max(sd, 0), max(__tsover_mul(bodyR, .75), 1e-6));\n\t\treturn mix(wHard, exp(__tsover_mul(__tsover_mul(gq, gq), -1)), soft);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"n\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"soft\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdFn\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"HL\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"HW\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wHard\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"aaW\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"aaW\",\n\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"sd\", [5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wSoft\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gq\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gq\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"wHard\",\n\t\t\t\t\t\t\"wSoft\",\n\t\t\t\t\t\t\"soft\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"sdFn\": () =\u003e sdFn,\n\t\t\t\"HL\": () =\u003e HL,\n\t\t\t\"HW\": () =\u003e HW,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentWeight\");\n}\nfunction makeAgentTexelWeightFn(shape) {\n\tconst s = AGENT_SHAPES[resolveAgentShape(shape, \"dot\")];\n\tconst sdFn = s.kind === 1 ? arrowSdf : s.kind === 2 ? boxSdf : capsuleSdf;\n\tconst HL = s.hl;\n\tconst HW = s.hw;\n\tconst isDisc = s.kind === 0 \u0026\u0026 s.hl === 0;\n\tconst soft = s.soft === 1;\n\tif (isDisc) return soft ? typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, _t, _n, bodyR, _aaW) =\u003e {\n\t\t\"use gpu\";\n\t\tconst sd = __tsover_mul(bodyR, __tsover_sub(sqrt(q), HW));\n\t\tconst gq = __tsover_div(max(sd, 0), max(__tsover_mul(bodyR, .75), 1e-6));\n\t\treturn exp(__tsover_mul(__tsover_mul(gq, gq), -1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"q\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_n\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t[\"q\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"HW\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"sd\", [5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gq\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gq\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"HW\": () =\u003e HW,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.exp\": () =\u003e exp\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentTexelWeight\") : typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, _t, _n, bodyR, aaW) =\u003e {\n\t\t\"use gpu\";\n\t\tconst sd = __tsover_mul(bodyR, __tsover_sub(sqrt(q), HW));\n\t\treturn __tsover_sub(1, smoothstep(-aaW, aaW, sd));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"q\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_n\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"sd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[\"q\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"HW\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"aaW\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"aaW\",\n\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"HW\": () =\u003e HW,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentTexelWeight\");\n\treturn soft ? typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_q, t, n, bodyR, _aaW) =\u003e {\n\t\t\"use gpu\";\n\t\tconst sd = sdFn(t, n, __tsover_mul(bodyR, HL), __tsover_mul(bodyR, HW));\n\t\tconst gq = __tsover_div(max(sd, 0), max(__tsover_mul(bodyR, .75), 1e-6));\n\t\treturn exp(__tsover_mul(__tsover_mul(gq, gq), -1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_q\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"n\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdFn\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"HL\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"HW\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"sd\", [5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gq\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gq\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"sdFn\": () =\u003e sdFn,\n\t\t\t\"HL\": () =\u003e HL,\n\t\t\t\"HW\": () =\u003e HW,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.exp\": () =\u003e exp\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentTexelWeight\") : typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_q, t, n, bodyR, aaW) =\u003e {\n\t\t\"use gpu\";\n\t\tconst sd = sdFn(t, n, __tsover_mul(bodyR, HL), __tsover_mul(bodyR, HW));\n\t\treturn __tsover_sub(1, smoothstep(-aaW, aaW, sd));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_q\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"n\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"sd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdFn\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"HL\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"HW\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"aaW\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"aaW\",\n\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"sdFn\": () =\u003e sdFn,\n\t\t\t\"HL\": () =\u003e HL,\n\t\t\t\"HW\": () =\u003e HW,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentTexelWeight\");\n}\nfunction orientedShapeProfile(shape, opts) {\n\tconst name = resolveAgentShape(shape, \"streak\");\n\tconst s = AGENT_SHAPES[name];\n\tconst comet = opts?.comet !== false;\n\treturn {\n\t\tname,\n\t\tsoft: s.soft,\n\t\thl: comet \u0026\u0026 name === \"glow\" ? 1 : s.hl,\n\t\text: comet \u0026\u0026 name === \"glow\" ? s.ext + 1 : s.ext,\n\t\tsymmetric: s.kind === 0 \u0026\u0026 s.hl === 0 \u0026\u0026 !(comet \u0026\u0026 name === \"glow\")\n\t};\n}\nfunction makeOrientedCometWeightFn(shape) {\n\tconst p = orientedShapeProfile(shape);\n\tconst weightFn = makeAgentTexelWeightFn(p.name);\n\tconst HL = p.hl;\n\tconst SOFT = p.soft;\n\treturn typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, n, bodyR, aaW) =\u003e {\n\t\t\"use gpu\";\n\t\tconst hl = __tsover_mul(bodyR, HL);\n\t\tconst tEval = select(t, __tsover_sub(t, clamp(t, -hl, hl)), f32(SOFT) \u003e .5);\n\t\tconst tk = clamp(__tsover_div(__tsover_sub(hl, t), max(__tsover_mul(hl, 2), 1e-6)), 0, 1);\n\t\tconst bright = __tsover_sub(1, __tsover_mul(__tsover_mul(.55, tk), f32(SOFT)));\n\t\tconst qEval = __tsover_div(__tsover_add(__tsover_mul(tEval, tEval), __tsover_mul(n, n)), __tsover_mul(bodyR, bodyR));\n\t\treturn __tsover_mul(weightFn(qEval, tEval, n, bodyR, aaW), bright);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"n\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"hl\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"HL\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tGlow\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"hl\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"hl\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tEval\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"tGlow\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"SOFT\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tk\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"hl\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"hl\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bright\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.55\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"tk\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"SOFT\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"qEval\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tEval\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"tEval\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"bodyR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"weightFn\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"qEval\",\n\t\t\t\t\t\t\t\"tEval\",\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\"aaW\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"bright\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"HL\": () =\u003e HL,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"SOFT\": () =\u003e SOFT,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"weightFn\": () =\u003e weightFn\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentCometWeight\");\n}\nconst reynoldsSteer = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dir, vel, maxSpeed, maxForce) =\u003e {\n\t\"use gpu\";\n\tconst len = length(dir);\n\tconst steer = select(vec2f(0, 0), dir.div(max(len, 1e-5)).mul(maxSpeed), len \u003e 1e-5).sub(vel);\n\tconst sl = length(steer);\n\treturn select(steer, steer.div(max(sl, 1e-5)).mul(maxForce), sl \u003e maxForce);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dir\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vel\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"maxSpeed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"maxForce\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"dir\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"desired\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"len\", [5, \"0.00001\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"maxSpeed\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.00001\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"steer\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"desired\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"vel\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sl\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"steer\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"steer\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"steer\",\n\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"sl\", [5, \"0.00001\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"maxForce\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sl\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\"maxForce\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentReynoldsSteer\");\nconst cruiseVariation = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(.82, __tsover_mul(hash11(__tsover_add(__tsover_mul(fi, .61803), .13)), .4));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"fi\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"0.82\"],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.61803\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.13\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.4\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"noise.hash11\": () =\u003e hash11 }\n}) \u0026\u0026 $.f)({})).$name(\"agentCruiseVariation\");\nconst presenceVariation = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(.55, __tsover_mul(hash11(__tsover_add(__tsover_mul(fi, 1.91), 2.53)), .7));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"fi\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"0.55\"],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.91\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"2.53\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.7\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"noise.hash11\": () =\u003e hash11 }\n}) \u0026\u0026 $.f)({})).$name(\"agentPresenceVariation\");\nconst straightAlphaOver = typegpu_default.fn([vec4f, vec4f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, c) =\u003e {\n\t\"use gpu\";\n\tconst pa = clamp(p.w, 0, 1);\n\tconst outA = __tsover_add(pa, __tsover_mul(c.w, __tsover_sub(1, pa)));\n\tconst rgb = p.xyz.mul(pa).add(c.xyz.mul(__tsover_mul(c.w, __tsover_sub(1, pa)))).div(max(outA, 1e-4));\n\treturn vec4f(rgb.x, rgb.y, rgb.z, outA);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"c\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pa\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"pa\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"pa\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"pa\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"pa\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"outA\", [5, \"0.0001\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"outA\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentStraightAlphaOver\");\nconst dipoleOrRadialField = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rhat, axis, fieldType) =\u003e {\n\t\"use gpu\";\n\tconst mdotr = dot(axis, rhat);\n\treturn select(rhat.mul(__tsover_mul(2, mdotr)).sub(axis), rhat, fieldType \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rhat\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"axis\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fieldType\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mdotr\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"axis\", \"rhat\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dipoleB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rhat\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"mdotr\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"axis\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"dipoleB\",\n\t\t\t\t\t\"rhat\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fieldType\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentDipoleOrRadialField\");\nconst nematicTorque = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((k, target, theta) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(k, sin(__tsover_mul(2, __tsover_sub(target, theta))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"k\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"target\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"theta\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t\"k\",\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.sin\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"target\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"theta\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.sin\": () =\u003e sin }\n}) \u0026\u0026 $.f)({})).$name(\"agentNematicTorque\");\nconst trailMaxDecay = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((col, curA, prev, trails) =\u003e {\n\t\"use gpu\";\n\tconst prevA = __tsover_mul(prev.w, trails);\n\tconst win = curA \u003e= prevA;\n\tconst outA = max(curA, prevA);\n\tconst outRGB = select(vec3f(prev.x, prev.y, prev.z), vec3f(col.x, col.y, col.z), win);\n\treturn vec4f(outRGB.x, outRGB.y, outRGB.z, outA);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"col\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"curA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"prev\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"trails\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"prevA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"trails\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"win\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"curA\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\"prevA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"curA\", \"prevA\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outRGB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"win\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"outRGB\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"outRGB\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"outRGB\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"outA\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentTrailMaxDecay\");\nconst applyCameraRows = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pw, rowX, rowY, rowZ) =\u003e {\n\t\"use gpu\";\n\treturn vec3f(__tsover_add(__tsover_add(__tsover_mul(rowX.x, pw.x), __tsover_mul(rowX.y, pw.y)), __tsover_mul(rowX.z, pw.z)), __tsover_add(__tsover_add(__tsover_mul(rowY.x, pw.x), __tsover_mul(rowY.y, pw.y)), __tsover_mul(rowY.z, pw.z)), __tsover_add(__tsover_add(__tsover_mul(rowZ.x, pw.x), __tsover_mul(rowZ.y, pw.y)), __tsover_mul(rowZ.z, pw.z)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rowX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rowY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rowZ\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowX\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowX\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rowX\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowY\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowY\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rowY\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowZ\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowZ\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rowZ\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f }\n}) \u0026\u0026 $.f)({})).$name(\"agentApplyCameraRows\");\nconst applyCameraRowsTransposed = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tvec4f,\n\tvec4f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v, rowX, rowY, rowZ) =\u003e {\n\t\"use gpu\";\n\treturn vec3f(__tsover_add(__tsover_add(__tsover_mul(rowX.x, v.x), __tsover_mul(rowY.x, v.y)), __tsover_mul(rowZ.x, v.z)), __tsover_add(__tsover_add(__tsover_mul(rowX.y, v.x), __tsover_mul(rowY.y, v.y)), __tsover_mul(rowZ.y, v.z)), __tsover_add(__tsover_add(__tsover_mul(rowX.z, v.x), __tsover_mul(rowY.z, v.y)), __tsover_mul(rowZ.z, v.z)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rowX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rowY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rowZ\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowX\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowY\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rowZ\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowX\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowY\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rowZ\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowX\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rowY\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rowZ\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f }\n}) \u0026\u0026 $.f)({})).$name(\"agentApplyCameraRowsT\");\nconst BilinearFrame = struct({\n\tx0: u32,\n\tx1: u32,\n\ty0: u32,\n\ty1: u32,\n\tfx: f32,\n\tfy: f32\n}).$name(\"AgentBilinearFrame\");\nconst bilinearTexelFrame = typegpu_default.fn([vec2f, vec2f], BilinearFrame)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv01, dims) =\u003e {\n\t\"use gpu\";\n\tconst cu = __tsover_sub(__tsover_mul(uv01.x, dims.x), .5);\n\tconst cv = __tsover_sub(__tsover_mul(uv01.y, dims.y), .5);\n\tconst cx0 = floor(cu);\n\tconst cy0 = floor(cv);\n\treturn BilinearFrame({\n\t\tx0: u32(clamp(cx0, f32(0), __tsover_sub(dims.x, 1))),\n\t\tx1: u32(clamp(__tsover_add(cx0, 1), f32(0), __tsover_sub(dims.x, 1))),\n\t\ty0: u32(clamp(cy0, f32(0), __tsover_sub(dims.y, 1))),\n\t\ty1: u32(clamp(__tsover_add(cy0, 1), f32(0), __tsover_sub(dims.y, 1))),\n\t\tfx: __tsover_sub(cu, cx0),\n\t\tfy: __tsover_sub(cv, cy0)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv01\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dims\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cu\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv01\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cv\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv01\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"cu\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"cv\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"BilinearFrame\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"x0\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"x1\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cx0\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"y0\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"y1\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cy0\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"fx\": [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"cx0\"\n\t\t\t\t\t],\n\t\t\t\t\t\"fy\": [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"cy0\"\n\t\t\t\t\t]\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"BilinearFrame\": () =\u003e BilinearFrame,\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentBilinearTexelFrame\");\nconst cursorFalloff = typegpu_default.fn([vec2f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((delta, radSq) =\u003e {\n\t\"use gpu\";\n\tconst dl = dot(delta, delta);\n\treturn exp(__tsover_mul(__tsover_div(dl, max(radSq, 1e-5)), -1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"delta\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"radSq\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"dl\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[\"delta\", \"delta\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.exp\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dl\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"radSq\", [5, \"0.00001\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentCursorFalloff\");\nconst cursorMagnet = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((delta, radSq, force) =\u003e {\n\t\"use gpu\";\n\tconst dl = max(length(delta), 1e-4);\n\treturn delta.div(dl).mul(__tsover_mul(cursorFalloff(delta, radSq), force));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"delta\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radSq\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"force\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"dl\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"delta\"]\n\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"dl\"]\n\t\t\t\t],\n\t\t\t\t\"mul\"\n\t\t\t],\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cursorFalloff\",\n\t\t\t\t\t[\"delta\", \"radSq\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"force\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"cursorFalloff\": () =\u003e cursorFalloff\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentCursorMagnet\");\nfunction makeUniformScatterInit(layout, name) {\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst fi = f32(i);\n\t\tconst r = hash33(vec3f(__tsover_add(__tsover_mul(fi, 1.6180339), .71), __tsover_add(__tsover_mul(fi, 2.7182818), 4.17), __tsover_add(__tsover_mul(fi, 3.1415926), 9.03)));\n\t\tlayout.$.agents[i] = vec4f(__tsover_mul(r.x, prm.aspect), r.y, 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash33\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.6180339\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.71\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2.7182818\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"4.17\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3.1415926\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"9.03\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"noise.hash33\": () =\u003e hash33,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(name);\n}\nfunction makeBallCloudInit(layout, name, cfg) {\n\tconst RAD = cfg?.radius ?? .55;\n\tconst ZS = cfg?.zSquash ?? .8;\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst fi = f32(i);\n\t\tconst dir = normalize(hash33(vec3f(__tsover_add(__tsover_mul(fi, 1.6180339), .71), __tsover_add(__tsover_mul(fi, 2.7182818), 4.17), __tsover_add(__tsover_mul(fi, 3.1415926), 9.03))).sub(vec3f(.5, .5, .5)).add(vec3f(1e-4, 2e-4, 3e-4)));\n\t\tconst rad = __tsover_mul(pow(hash11(__tsover_add(__tsover_mul(fi, 2.2360679), 1.7)), f32(.3333)), RAD);\n\t\tconst seed = hash11(__tsover_add(__tsover_mul(fi, 1.7320508), .37));\n\t\tlayout.$.pos[i] = vec4f(__tsover_mul(dir.x, rad), __tsover_mul(dir.y, rad), __tsover_mul(__tsover_mul(dir.z, rad), ZS), seed);\n\t\tlayout.$.vel[i] = vec4f(0, 0, 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"h3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash33\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.6180339\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.71\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2.7182818\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"4.17\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3.1415926\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"9.03\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dir\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"h3\",\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0.0001\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.0002\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.0003\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2.2360679\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.3333\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"RAD\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.7320508\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.37\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rad\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rad\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"rad\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ZS\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"noise.hash33\": () =\u003e hash33,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\t\"std.pow\": () =\u003e pow,\n\t\t\t\"noise.hash11\": () =\u003e hash11,\n\t\t\t\"RAD\": () =\u003e RAD,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"ZS\": () =\u003e ZS\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(name);\n}\nfunction makeClusterFormationInit(layout, name, cfg) {\n\tconst PER = cfg?.agentsPerCluster ?? 250;\n\tconst MIN = cfg?.minClusters ?? 3;\n\tconst TAU = 6.283185307179586;\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst fi = f32(i);\n\t\tconst sd = __tsover_mul(prm.seed, 13.137);\n\t\tconst flocks = max(floor(__tsover_div(prm.count, f32(PER))), f32(MIN));\n\t\tconst c = __tsover_sub(fi, __tsover_mul(floor(__tsover_div(fi, flocks)), flocks));\n\t\tconst rc = hash33(vec3f(__tsover_add(__tsover_add(__tsover_mul(c, 7.1315), sd), .71), __tsover_add(__tsover_add(__tsover_mul(c, 3.7719), sd), 4.17), __tsover_add(__tsover_add(__tsover_mul(c, 9.4103), sd), 9.03)));\n\t\tconst ang = __tsover_mul(rc.z, TAU);\n\t\tconst hd = vec2f(cos(ang), sin(ang));\n\t\tconst center = vec2f(__tsover_mul(__tsover_add(.12, __tsover_mul(rc.x, .76)), prm.domainX), __tsover_add(.12, __tsover_mul(rc.y, .76)));\n\t\tconst ra = hash33(vec3f(__tsover_add(__tsover_add(__tsover_mul(fi, 1.6180339), sd), .71), __tsover_add(__tsover_add(__tsover_mul(fi, 2.7182818), sd), 4.17), __tsover_add(__tsover_add(__tsover_mul(fi, 3.1415926), sd), 9.03)));\n\t\tconst t = __tsover_mul(__tsover_sub(ra.x, .5), .6);\n\t\tconst n = __tsover_mul(__tsover_sub(ra.y, .5), .16);\n\t\tconst px = clamp(__tsover_sub(__tsover_add(center.x, __tsover_mul(hd.x, t)), __tsover_mul(hd.y, n)), 0, prm.domainX);\n\t\tconst py = clamp(__tsover_add(__tsover_add(center.y, __tsover_mul(hd.y, t)), __tsover_mul(hd.x, n)), 0, 1);\n\t\tconst jAng = __tsover_add(ang, __tsover_mul(__tsover_sub(ra.z, .5), .5));\n\t\tconst sp = __tsover_mul(prm.maxSpeed, __tsover_add(.75, __tsover_mul(ra.y, .25)));\n\t\tlayout.$.agents[i] = vec4f(px, py, __tsover_mul(cos(jAng), sp), __tsover_mul(sin(jAng), sp));\n\t\tlayout.$.agit[i] = f32(0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"13.137\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"flocks\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"PER\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"MIN\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"flocks\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"flocks\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash33\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"7.1315\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.71\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"3.7719\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"4.17\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"9.4103\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"9.03\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ang\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rc\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"hd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"center\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.12\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rc\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.76\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"domainX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.12\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rc\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.76\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ra\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash33\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.6180339\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.71\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2.7182818\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"4.17\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"3.1415926\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"9.03\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"n\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.16\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hd\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"hd\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"domainX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hd\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"hd\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"jAng\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"maxSpeed\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.75\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[\"jAng\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"sp\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[\"jAng\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"sp\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agit\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"PER\": () =\u003e PER,\n\t\t\t\"MIN\": () =\u003e MIN,\n\t\t\t\"noise.hash33\": () =\u003e hash33,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(name);\n}\nfunction makeRestingDirectorInit(layout, name) {\n\tconst PI = 3.141592653589793;\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst fi = f32(i);\n\t\tconst theta0 = __tsover_mul(hash11(__tsover_add(__tsover_mul(fi, 1.618034), .31)), PI);\n\t\tlayout.$.agents[i] = vec4f(f32(0), f32(0), theta0, f32(0));\n\t\tlayout.$.agit[i] = f32(0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"theta0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.618034\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.31\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"PI\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"theta0\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agit\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"noise.hash11\": () =\u003e hash11,\n\t\t\t\"PI\": () =\u003e PI,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(name);\n}\nfunction makeStrokePolylineScan(cfg) {\n\tconst MAX_POINTS = cfg.maxPoints;\n\tconst SUBDIVISIONS = cfg.subdivisions;\n\treturn typegpu_default.fn([\n\t\ttexture2d(f32),\n\t\tvec2f,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pointsTex, uv, aspect, radius, shrink, softness, viewportH) =\u003e {\n\t\t\"use gpu\";\n\t\tconst px = __tsover_mul(uv.x, aspect);\n\t\tconst py = uv.y;\n\t\tconst baseRadius = __tsover_mul(radius, .1);\n\t\tconst edgeW = __tsover_add(__tsover_div(1.5, max(viewportH, 1)), __tsover_mul(softness, baseRadius));\n\t\tconst sharp = __tsover_div(4, max(baseRadius, .005));\n\t\tlet minSdf = f32(100);\n\t\tlet ageSum = f32(0);\n\t\tlet wSum = f32(0);\n\t\tlet prev = vec4f(0, 0, 1, 0);\n\t\tlet prev2 = vec4f(0, 0, 1, 0);\n\t\tfor (let i = 0; i \u003c MAX_POINTS; i++) {\n\t\t\tconst cur = textureLoad(pointsTex, vec2u(u32(i), 0), 0);\n\t\t\tif (cur.z \u003c 1) {\n\t\t\t\tconst cx = __tsover_mul(cur.x, aspect);\n\t\t\t\tconst cy = cur.y;\n\t\t\t\tconst linked = select(f32(0), f32(1), cur.w \u003e 0);\n\t\t\t\tconst prevAlive = select(f32(0), f32(1), prev.z \u003c 1);\n\t\t\t\tif (__tsover_mul(linked, prevAlive) \u003e .5) {\n\t\t\t\t\tconst usePrev2 = __tsover_mul(select(f32(0), f32(1), prev.w \u003e 0), select(f32(0), f32(1), prev2.z \u003c 1)) \u003e .5;\n\t\t\t\t\tconst jx = __tsover_mul(prev.x, aspect);\n\t\t\t\t\tconst jy = prev.y;\n\t\t\t\t\tconst sx0 = select(jx, __tsover_mul(__tsover_add(__tsover_mul(prev2.x, aspect), jx), .5), usePrev2);\n\t\t\t\t\tconst sy0 = select(jy, __tsover_mul(__tsover_add(prev2.y, jy), .5), usePrev2);\n\t\t\t\t\tconst ageS = select(prev.z, __tsover_mul(__tsover_add(prev2.z, prev.z), .5), usePrev2);\n\t\t\t\t\tconst widPrev = abs(prev.w);\n\t\t\t\t\tconst widS = select(widPrev, __tsover_mul(__tsover_add(abs(prev2.w), widPrev), .5), usePrev2);\n\t\t\t\t\tconst ex = __tsover_mul(__tsover_add(jx, cx), .5);\n\t\t\t\t\tconst ey = __tsover_mul(__tsover_add(jy, cy), .5);\n\t\t\t\t\tconst ageE = __tsover_mul(__tsover_add(prev.z, cur.z), .5);\n\t\t\t\t\tconst widE = __tsover_mul(__tsover_add(widPrev, abs(cur.w)), .5);\n\t\t\t\t\tlet sx = sx0;\n\t\t\t\t\tlet sy = sy0;\n\t\t\t\t\tlet sAge = ageS;\n\t\t\t\t\tlet sWid = widS;\n\t\t\t\t\tlet jMin = f32(100);\n\t\t\t\t\tlet jAge = f32(1);\n\t\t\t\t\tfor (let k = 0; k \u003c SUBDIVISIONS; k++) {\n\t\t\t\t\t\tconst t = __tsover_div(__tsover_add(f32(k), 1), SUBDIVISIONS);\n\t\t\t\t\t\tconst omt = __tsover_sub(1, t);\n\t\t\t\t\t\tconst bx = __tsover_add(__tsover_add(__tsover_mul(__tsover_mul(omt, omt), sx0), __tsover_mul(__tsover_mul(__tsover_mul(2, omt), t), jx)), __tsover_mul(__tsover_mul(t, t), ex));\n\t\t\t\t\t\tconst by = __tsover_add(__tsover_add(__tsover_mul(__tsover_mul(omt, omt), sy0), __tsover_mul(__tsover_mul(__tsover_mul(2, omt), t), jy)), __tsover_mul(__tsover_mul(t, t), ey));\n\t\t\t\t\t\tconst bAge = mix(ageS, ageE, t);\n\t\t\t\t\t\tconst bWid = mix(widS, widE, t);\n\t\t\t\t\t\tconst ra = __tsover_mul(__tsover_mul(baseRadius, sWid), __tsover_sub(1, __tsover_mul(sAge, shrink)));\n\t\t\t\t\t\tconst rb = __tsover_mul(__tsover_mul(baseRadius, bWid), __tsover_sub(1, __tsover_mul(bAge, shrink)));\n\t\t\t\t\t\tconst bax = __tsover_sub(bx, sx);\n\t\t\t\t\t\tconst bay = __tsover_sub(by, sy);\n\t\t\t\t\t\tconst tt = clamp(__tsover_div(__tsover_add(__tsover_mul(__tsover_sub(px, sx), bax), __tsover_mul(__tsover_sub(py, sy), bay)), max(__tsover_add(__tsover_mul(bax, bax), __tsover_mul(bay, bay)), 1e-8)), 0, 1);\n\t\t\t\t\t\tconst dist = __tsover_sub(length(vec2f(__tsover_sub(px, __tsover_add(sx, __tsover_mul(bax, tt))), __tsover_sub(py, __tsover_add(sy, __tsover_mul(bay, tt))))), mix(ra, rb, tt));\n\t\t\t\t\t\tif (dist \u003c jMin) {\n\t\t\t\t\t\t\tjMin = dist;\n\t\t\t\t\t\t\tjAge = mix(sAge, bAge, tt);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tsx = bx;\n\t\t\t\t\t\tsy = by;\n\t\t\t\t\t\tsAge = bAge;\n\t\t\t\t\t\tsWid = bWid;\n\t\t\t\t\t}\n\t\t\t\t\tminSdf = min(minSdf, jMin);\n\t\t\t\t\tconst w = exp(__tsover_mul(__tsover_mul(jMin, -1), sharp));\n\t\t\t\t\tageSum = __tsover_add(ageSum, __tsover_mul(jAge, w));\n\t\t\t\t\twSum = __tsover_add(wSum, w);\n\t\t\t\t} else {\n\t\t\t\t\tconst dist = __tsover_sub(length(vec2f(__tsover_sub(px, cx), __tsover_sub(py, cy))), __tsover_mul(__tsover_mul(baseRadius, abs(cur.w)), __tsover_sub(1, __tsover_mul(cur.z, shrink))));\n\t\t\t\t\tminSdf = min(minSdf, dist);\n\t\t\t\t\tconst w = exp(__tsover_mul(__tsover_mul(dist, -1), sharp));\n\t\t\t\t\tageSum = __tsover_add(ageSum, __tsover_mul(cur.z, w));\n\t\t\t\t\twSum = __tsover_add(wSum, w);\n\t\t\t\t}\n\t\t\t}\n\t\t\tprev2 = vec4f(prev);\n\t\t\tprev = vec4f(cur);\n\t\t}\n\t\tconst age = __tsover_div(ageSum, max(wSum, 1e-20));\n\t\treturn vec2f(age, __tsover_mul(__tsover_sub(1, smoothstep(__tsover_mul(edgeW, -1), edgeW, minSdf)), __tsover_sub(1, smoothstep(.8, 1, age))));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pointsTex\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aspect\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"radius\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"shrink\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"softness\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"viewportH\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"px\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"py\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"baseRadius\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"edgeW\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"viewportH\", [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"baseRadius\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sharp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"baseRadius\", [5, \"0.005\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"minSdf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"100\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"ageSum\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"wSum\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"prev\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"prev2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"MAX_POINTS\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"pointsTex\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"linked\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"prevAlive\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"linked\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"prevAlive\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"usePrev2\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"jx\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"jy\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"sx0\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"jx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"usePrev2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"sy0\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"jy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"usePrev2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"ageS\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"usePrev2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"widPrev\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"widS\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"widPrev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"widPrev\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"usePrev2\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"ex\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"jx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"ey\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"jy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"ageE\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"widE\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"widPrev\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\t\t\t\"sx0\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\t\t\t\"sy0\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"sAge\",\n\t\t\t\t\t\t\t\t\t\t\t\"ageS\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"sWid\",\n\t\t\t\t\t\t\t\t\t\t\t\"widS\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"jMin\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"100\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"jAge\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"SUBDIVISIONS\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"k\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"SUBDIVISIONS\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"omt\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"omt\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"omt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"omt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ex\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"omt\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"omt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy0\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"omt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ageS\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ageE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bWid\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"widS\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"widE\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"baseRadius\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sWid\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shrink\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rb\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"baseRadius\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bWid\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shrink\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bax\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bay\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tt\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bax\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bay\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bax\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bax\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bay\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bay\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [5, \"1e-8\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bax\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"tt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bay\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"tt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ra\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rb\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"tt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jMin\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jMin\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"tt\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bx\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"by\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bAge\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sWid\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bWid\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"minSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"minSdf\", \"jMin\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"jMin\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sharp\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"ageSum\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ageSum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"jAge\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"baseRadius\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shrink\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"minSdf\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"minSdf\", \"dist\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sharp\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"ageSum\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ageSum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cur\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"prev2\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\"prev\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\"cur\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"age\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ageSum\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"wSum\", [5, \"1e-20\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"coverage\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"edgeW\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"edgeW\",\n\t\t\t\t\t\t\t\t\t\"minSdf\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0.8\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"age\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"age\", \"coverage\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"MAX_POINTS\": () =\u003e MAX_POINTS,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"SUBDIVISIONS\": () =\u003e SUBDIVISIONS,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nexport { reynoldsSteer as C, resolveAgentShape as S, trailMaxDecay as T, nematicTorque as _, cruiseVariation as a, pointShapeOptions as b, dipoleOrRadialField as c, makeBallCloudInit as d, makeClusterFormationInit as f, makeUniformScatterInit as g, makeStrokePolylineScan as h, bilinearTexelFrame as i, makeAgentTexelWeightFn as l, makeRestingDirectorInit as m, applyCameraRows as n, cursorFalloff as o, makeOrientedCometWeightFn as p, applyCameraRowsTransposed as r, cursorMagnet as s, AGENT_SHAPES as t, makeAgentWeightFn as u, orientedShapeOptions as v, straightAlphaOver as w, presenceVariation as x, orientedShapeProfile as y };\n","import { $r as Void, Ar as vec2u, Br as struct, Cr as sin, Gn as typegpu_default, Gr as dualImpl, It as mixColorsLinear, Jr as i32, Kn as textureDimensions, Lt as mixColorsVariants, Mr as vec4f, Or as vec2f, Tr as sqrt, Xr as stitch, Yn as textureStore, Yr as u32, Zr as safeStringify, _n as hash11, _r as mix, ar as clamp, at as ZERO, bn as hash22, cr as dot, ei as isAtomic, er as select, fr as floor, gr as min, hr as max, ir as ceil, jr as vec3f, kr as vec2i, lr as exp, mr as length, or as cos, pr as fract, qn as textureLoad, qr as f32, rr as atan2, sr as cross, tr as abs, vn as hash12, wr as smoothstep, xn as hash33 } from \"./lower-Bd2jez_2.js\";\nimport { B as R3_ALPHA, H as createAgentSystem, J as texelSplatWindow, R as FIXED_POINT_GAINS, U as energyCoverageAlpha, W as integrateSemiImplicitEuler, Y as worldSplatWindow, z as R2_ALPHA } from \"./porters-OTkIMOyl.js\";\nimport { S as rotateVecCpu, x as rotateVec3 } from \"./sdf3d-2AWC_wdn.js\";\nimport { C as reynoldsSteer, S as resolveAgentShape, T as trailMaxDecay, _ as nematicTorque, a as cruiseVariation, c as dipoleOrRadialField, i as bilinearTexelFrame, l as makeAgentTexelWeightFn, n as applyCameraRows, o as cursorFalloff, p as makeOrientedCometWeightFn, r as applyCameraRowsTransposed, s as cursorMagnet, t as AGENT_SHAPES, u as makeAgentWeightFn, x as presenceVariation, y as orientedShapeProfile } from \"./agents-DXoEcto0.js\";\ndualImpl({\n\tname: \"workgroupBarrier\",\n\tnormalImpl: \"workgroupBarrier is a no-op outside of CODEGEN mode.\",\n\tsignature: {\n\t\targTypes: [],\n\t\treturnType: Void\n\t},\n\tcodegenImpl: () =\u003e \"workgroupBarrier()\",\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"storageBarrier\",\n\tnormalImpl: \"storageBarrier is a no-op outside of CODEGEN mode.\",\n\tsignature: {\n\t\targTypes: [],\n\t\treturnType: Void\n\t},\n\tcodegenImpl: () =\u003e \"storageBarrier()\",\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"textureBarrier\",\n\tnormalImpl: \"textureBarrier is a no-op outside of CODEGEN mode.\",\n\tsignature: {\n\t\targTypes: [],\n\t\treturnType: Void\n\t},\n\tcodegenImpl: () =\u003e \"textureBarrier()\",\n\tsideEffects: true\n});\nvar atomicNormalError = \"Atomic operations are not supported outside of CODEGEN mode.\";\nconst atomicLoad = dualImpl({\n\tname: \"atomicLoad\",\n\tnormalImpl: atomicNormalError,\n\tsignature: (a) =\u003e {\n\t\tif (!isAtomic(a)) throw new Error(`Invalid atomic type: ${safeStringify(a)}`);\n\t\treturn {\n\t\t\targTypes: [a],\n\t\t\treturnType: a.inner\n\t\t};\n\t},\n\tcodegenImpl: (_ctx, [a]) =\u003e stitch`atomicLoad(\u0026${a})`,\n\tsideEffects: true\n});\nvar atomicActionSignature = (a) =\u003e {\n\tif (!isAtomic(a)) throw new Error(`Invalid atomic type: ${safeStringify(a)}`);\n\treturn {\n\t\targTypes: [a, a.inner.type === \"u32\" ? u32 : i32],\n\t\treturnType: Void\n\t};\n};\nvar atomicOpSignature = (a) =\u003e {\n\tif (!isAtomic(a)) throw new Error(`Invalid atomic type: ${safeStringify(a)}`);\n\tconst paramType = a.inner.type === \"u32\" ? u32 : i32;\n\treturn {\n\t\targTypes: [a, paramType],\n\t\treturnType: paramType\n\t};\n};\nconst atomicStore = dualImpl({\n\tname: \"atomicStore\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicActionSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicStore(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\nconst atomicAdd = dualImpl({\n\tname: \"atomicAdd\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicOpSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicAdd(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"atomicSub\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicOpSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicSub(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"atomicMax\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicOpSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicMax(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"atomicMin\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicOpSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicMin(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"atomicAnd\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicOpSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicAnd(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"atomicOr\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicOpSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicOr(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\ndualImpl({\n\tname: \"atomicXor\",\n\tnormalImpl: atomicNormalError,\n\tsignature: atomicOpSignature,\n\tcodegenImpl: (_ctx, [a, value]) =\u003e stitch`atomicXor(\u0026${a}, ${value})`,\n\tsideEffects: true\n});\nvar AgentPose = struct({\n\tpos: vec2f,\n\tdir: vec2f,\n\tspd: f32\n}).$name(\"AgentPose\");\nfunction splatOrientedWorld(layout, cfg) {\n\tconst L = layout;\n\tconst profile = orientedShapeProfile(cfg.shape, { comet: cfg.comet });\n\tconst RES = cfg.res;\n\tconst INV_RES = 1 / RES;\n\tconst AA_W = .75 * INV_RES;\n\tconst SPLAT_R = cfg.splatRCap;\n\tconst EXT = profile.ext;\n\tconst GAIN = profile.soft ? FIXED_POINT_GAINS.SOFT : FIXED_POINT_GAINS.HARD;\n\tconst home = cfg.home;\n\tconst pose = cfg.heading === \"angle\" ? typegpu_default.fn([u32], AgentPose)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst a = L.$.agents[i];\n\t\tconst homeP = home(f32(i));\n\t\treturn AgentPose({\n\t\t\tpos: vec2f(__tsover_add(homeP.x, a.x), __tsover_add(homeP.y, a.y)),\n\t\t\tdir: vec2f(cos(a.z), sin(a.z)),\n\t\t\tspd: f32(0)\n\t\t});\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homeP\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"home\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"AgentPose\",\n\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\"pos\": [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"homeP\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"homeP\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"dir\": [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"spd\": [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t}]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"L\": () =\u003e L,\n\t\t\t\"home\": () =\u003e home,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"AgentPose\": () =\u003e AgentPose,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.sin\": () =\u003e sin\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Pose`) : typegpu_default.fn([u32], AgentPose)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst a = L.$.agents[i];\n\t\tconst vel = vec2f(a.z, a.w);\n\t\tconst spd = length(vel);\n\t\treturn AgentPose({\n\t\t\tpos: vec2f(a.x, a.y),\n\t\t\tdir: select(vec2f(1, 0), vel.div(max(spd, 1e-5)), spd \u003e 1e-5),\n\t\t\tspd\n\t\t});\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"spd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"vel\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"AgentPose\",\n\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\"pos\": [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"dir\": [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"spd\", [5, \"0.00001\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"spd\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"0.00001\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"spd\": \"spd\"\n\t\t\t\t\t}]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"L\": () =\u003e L,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"AgentPose\": () =\u003e AgentPose,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.max\": () =\u003e max\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Pose`);\n\tconst excitement = cfg.agitation === \"buffer\" ? typegpu_default.fn([u32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i, _spd) =\u003e {\n\t\t\"use gpu\";\n\t\treturn clamp(L.$.agit[i], 0, 1);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_spd\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agit\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"L\": () =\u003e L\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Excitement`) : typegpu_default.fn([u32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_i, spd) =\u003e {\n\t\t\"use gpu\";\n\t\treturn clamp(__tsover_div(spd, max(L.$.params.speedNorm, 1e-5)), 0, 1);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"_i\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spd\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"spd\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"speedNorm\"\n\t\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"L\": () =\u003e L\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Excitement`);\n\tconst cometWeight = makeOrientedCometWeightFn(cfg.shape);\n\tconst plainWeight = makeAgentTexelWeightFn(profile.name);\n\tconst texelWeight = cfg.comet \u0026\u0026 !profile.symmetric ? typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tvec2f,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_dSq, offX, offY, dir, bodyR, _bodyRSq, aaW) =\u003e {\n\t\t\"use gpu\";\n\t\treturn cometWeight(__tsover_add(__tsover_mul(offX, dir.x), __tsover_mul(offY, dir.y)), __tsover_add(__tsover_mul(offX, -dir.y), __tsover_mul(offY, dir.x)), bodyR, aaW);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_dSq\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"offX\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"offY\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"dir\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_bodyRSq\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"n\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"cometWeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\"aaW\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: { \"cometWeight\": () =\u003e cometWeight }\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Weight`) : profile.symmetric ? typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tvec2f,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dSq, offX, offY, _dir, bodyR, bodyRSq, aaW) =\u003e {\n\t\t\"use gpu\";\n\t\treturn plainWeight(__tsover_div(dSq, bodyRSq), offX, offY, bodyR, aaW);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"dSq\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"offX\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"offY\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_dir\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyRSq\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"plainWeight\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dSq\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"bodyRSq\"\n\t\t\t\t\t],\n\t\t\t\t\t\"offX\",\n\t\t\t\t\t\"offY\",\n\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\"aaW\"\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: { \"plainWeight\": () =\u003e plainWeight }\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Weight`) : typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tvec2f,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dSq, offX, offY, dir, bodyR, bodyRSq, aaW) =\u003e {\n\t\t\"use gpu\";\n\t\tconst t = __tsover_add(__tsover_mul(offX, dir.x), __tsover_mul(offY, dir.y));\n\t\tconst n = __tsover_add(__tsover_mul(offX, -dir.y), __tsover_mul(offY, dir.x));\n\t\treturn plainWeight(__tsover_div(dSq, bodyRSq), t, n, bodyR, aaW);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"dSq\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"offX\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"offY\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"dir\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"bodyRSq\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"n\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"plainWeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dSq\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"bodyRSq\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\"aaW\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: { \"plainWeight\": () =\u003e plainWeight }\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Weight`);\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = L.$.params;\n\t\tconst p = pose(i);\n\t\tconst agitI = excitement(i, p.spd);\n\t\tconst agitGain = __tsover_mul(agitI, f32(GAIN));\n\t\tconst aspect = max(prm.aspect, 1e-5);\n\t\tconst bodyR = clamp(prm.bodyR, 1e-6, __tsover_mul(f32(SPLAT_R), INV_RES));\n\t\tconst bodyRSq = __tsover_mul(bodyR, bodyR);\n\t\tconst radW = __tsover_add(__tsover_mul(bodyR, EXT), __tsover_mul(AA_W, 2));\n\t\tconst extSq = __tsover_mul(radW, radW);\n\t\tconst win = worldSplatWindow(p.pos, radW, aspect, f32(RES));\n\t\tfor (let py = win.y0; py \u003c= win.y1; py++) {\n\t\t\tconst offY = __tsover_sub(__tsover_mul(__tsover_add(f32(py), .5), INV_RES), p.pos.y);\n\t\t\tconst offYSq = __tsover_mul(offY, offY);\n\t\t\tfor (let px = win.x0; px \u003c= win.x1; px++) {\n\t\t\t\tconst offX = __tsover_sub(__tsover_mul(__tsover_mul(__tsover_add(f32(px), .5), INV_RES), aspect), p.pos.x);\n\t\t\t\tconst dSq = __tsover_add(__tsover_mul(offX, offX), offYSq);\n\t\t\t\tif (dSq \u003c extSq) {\n\t\t\t\t\tconst w = texelWeight(dSq, offX, offY, p.dir, bodyR, bodyRSq, AA_W);\n\t\t\t\t\tconst e = u32(__tsover_mul(w, f32(GAIN)));\n\t\t\t\t\tif (e \u003e u32(0)) {\n\t\t\t\t\t\tconst idx = u32(__tsover_add(__tsover_mul(py, i32(RES)), px));\n\t\t\t\t\t\tatomicAdd(L.$.accumE[idx], e);\n\t\t\t\t\t\tif (agitI \u003e 0) atomicAdd(L.$.accumS[idx], u32(__tsover_mul(w, agitGain)));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"pose\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"agitI\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"excitement\",\n\t\t\t\t\t\t[\"i\", [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"spd\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"agitGain\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"agitI\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"GAIN\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"bodyR\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0.000001\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"SPLAT_R\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"INV_RES\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bodyRSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"bodyR\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radW\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"EXT\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"AA_W\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"extSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"radW\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"radW\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"win\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"worldSplatWindow\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"radW\",\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"py\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"INV_RES\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"offYSq\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"offY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"INV_RES\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"dSq\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"offX\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"offYSq\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dSq\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"extSq\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"texelWeight\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dSq\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dir\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bodyRSq\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"AA_W\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"GAIN\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t], \"e\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"agitI\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumS\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"agitGain\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"L\": () =\u003e L,\n\t\t\t\"pose\": () =\u003e pose,\n\t\t\t\"excitement\": () =\u003e excitement,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"GAIN\": () =\u003e GAIN,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"SPLAT_R\": () =\u003e SPLAT_R,\n\t\t\t\"INV_RES\": () =\u003e INV_RES,\n\t\t\t\"EXT\": () =\u003e EXT,\n\t\t\t\"AA_W\": () =\u003e AA_W,\n\t\t\t\"worldSplatWindow\": () =\u003e worldSplatWindow,\n\t\t\t\"RES\": () =\u003e RES,\n\t\t\t\"texelWeight\": () =\u003e texelWeight,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.atomicAdd\": () =\u003e atomicAdd\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nconst pointSlot = {\n\torbitalPlace(layout, cfg) {\n\t\tconst RATE = cfg.rate;\n\t\tconst RAD = cfg.radius;\n\t\tconst TAU = 6.283185307179586;\n\t\treturn typegpu_default.fn([f32, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi, stored) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst prm = layout.$.params;\n\t\t\tconst h = hash22(vec2f(__tsover_add(__tsover_mul(fi, 2.41), .37), __tsover_add(__tsover_mul(fi, .577), 8.19)));\n\t\t\tconst rate = __tsover_mul(__tsover_mul(__tsover_add(.5, h.x), RATE), prm.randomness);\n\t\t\tconst ph = __tsover_mul(h.y, TAU);\n\t\t\tconst rad = __tsover_mul(__tsover_mul(RAD, prm.randomness), __tsover_add(.5, __tsover_mul(h.x, .5)));\n\t\t\tconst t = __tsover_add(__tsover_mul(prm.time, rate), ph);\n\t\t\treturn stored.add(vec2f(cos(t), sin(t)).mul(rad));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fi\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"stored\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash22\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2.41\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.37\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.577\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"8.19\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rate\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"RATE\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"randomness\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ph\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"RAD\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"randomness\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rate\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"ph\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"stored\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"rad\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"noise.hash22\": () =\u003e hash22,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"RATE\": () =\u003e RATE,\n\t\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\t\"RAD\": () =\u003e RAD,\n\t\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\t\"std.sin\": () =\u003e sin\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"pointSlotOrbitalPlace\");\n\t},\n\ttwinkleBrightness(layout, cfg) {\n\t\tconst FREQ = cfg.freq;\n\t\tconst TAU = 6.283185307179586;\n\t\treturn typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst prm = layout.$.params;\n\t\t\tconst ph = __tsover_mul(hash11(__tsover_add(__tsover_mul(fi, 3.7), .93)), TAU);\n\t\t\tconst twk = __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(prm.time, FREQ), ph)), .5), .5);\n\t\t\treturn __tsover_mul(mix(f32(1), twk, prm.twinkle), __tsover_add(.4, __tsover_mul(.6, presenceVariation(fi))));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fi\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ph\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3.7\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.93\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"twk\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"FREQ\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ph\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"twk\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"twinkle\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.4\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"agents.presenceVariation\",\n\t\t\t\t\t\t\t\t\t[\"fi\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"noise.hash11\": () =\u003e hash11,\n\t\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\t\"FREQ\": () =\u003e FREQ,\n\t\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"agents.presenceVariation\": () =\u003e presenceVariation\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"pointSlotTwinkleBrightness\");\n\t},\n\tpresenceRadius(layout) {\n\t\treturn typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\treturn max(__tsover_mul(layout.$.params.bodyR, __tsover_add(.55, __tsover_mul(.45, presenceVariation(fi)))), 1e-6);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fi\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"bodyR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.55\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.45\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"agents.presenceVariation\",\n\t\t\t\t\t\t\t\t\t[\"fi\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]]]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"agents.presenceVariation\": () =\u003e presenceVariation\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"pointSlotPresenceRadius\");\n\t}\n};\nfunction splatPointWorld(layout, cfg) {\n\tconst s = AGENT_SHAPES[resolveAgentShape(cfg.shape, \"dot\")];\n\tconst name = resolveAgentShape(cfg.shape, \"dot\");\n\tconst FORCE_SOFT = s.soft;\n\tconst EXT = s.ext;\n\tconst RES = cfg.res;\n\tconst INV_RES = 1 / RES;\n\tconst AA_W = .75 * INV_RES;\n\tconst HARD_GAIN = FIXED_POINT_GAINS.HARD;\n\tconst SOFT_GAIN = FIXED_POINT_GAINS.SOFT;\n\tconst { place, brightness, bodyRadius } = cfg;\n\tconst weightFn = s.soft === 1 ? (() =\u003e {\n\t\tconst fast = makeAgentTexelWeightFn(name);\n\t\treturn typegpu_default.fn([\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32\n\t\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, t, n, bodyR, aaW, _soft) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\treturn fast(q, t, n, bodyR, aaW);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"q\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"n\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"_soft\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"fast\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\"aaW\"\n\t\t\t\t\t]\n\t\t\t\t]]]]\n\t\t\t},\n\t\t\texternals: { \"fast\": () =\u003e fast }\n\t\t}) \u0026\u0026 $.f)({})).$name(\"agentPointWeight\");\n\t})() : (() =\u003e {\n\t\tconst general = makeAgentWeightFn(name);\n\t\treturn typegpu_default.fn([\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tf32\n\t\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_q, t, n, bodyR, aaW, soft) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\treturn general(t, n, bodyR, aaW, soft);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"_q\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"n\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"bodyR\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"aaW\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"soft\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"general\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\"aaW\",\n\t\t\t\t\t\t\"soft\"\n\t\t\t\t\t]\n\t\t\t\t]]]]\n\t\t\t},\n\t\t\texternals: { \"general\": () =\u003e general }\n\t\t}) \u0026\u0026 $.f)({})).$name(\"agentPointWeight\");\n\t})();\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst s4 = layout.$.agents[i];\n\t\tconst fi = f32(i);\n\t\tconst pos = place(fi, vec2f(s4.x, s4.y));\n\t\tconst bright = brightness(fi);\n\t\tconst aspect = max(prm.aspect, 1e-5);\n\t\tconst softV = max(prm.softness, f32(FORCE_SOFT));\n\t\tconst extK = mix(f32(EXT), max(f32(EXT), 2.4), softV);\n\t\tconst gain = mix(f32(HARD_GAIN), f32(SOFT_GAIN), softV);\n\t\tconst bodyR = bodyRadius(fi);\n\t\tconst invBodyR = __tsover_div(1, bodyR);\n\t\tconst reach = __tsover_add(__tsover_mul(bodyR, extK), __tsover_mul(AA_W, 2));\n\t\tconst reachQ = __tsover_mul(__tsover_mul(reach, invBodyR), __tsover_mul(reach, invBodyR));\n\t\tconst win = worldSplatWindow(pos, reach, aspect, f32(RES));\n\t\tfor (let py = win.y0; py \u003c= win.y1; py++) {\n\t\t\tconst offY = __tsover_sub(__tsover_mul(__tsover_add(f32(py), .5), INV_RES), pos.y);\n\t\t\tfor (let px = win.x0; px \u003c= win.x1; px++) {\n\t\t\t\tconst offX = __tsover_sub(__tsover_mul(__tsover_mul(__tsover_add(f32(px), .5), INV_RES), aspect), pos.x);\n\t\t\t\tconst q = __tsover_mul(__tsover_mul(__tsover_add(__tsover_mul(offX, offX), __tsover_mul(offY, offY)), invBodyR), invBodyR);\n\t\t\t\tif (q \u003c reachQ) {\n\t\t\t\t\tconst w = __tsover_mul(weightFn(q, offX, offY, bodyR, AA_W, softV), bright);\n\t\t\t\t\tconst e = u32(__tsover_mul(w, gain));\n\t\t\t\t\tif (e \u003e u32(0)) {\n\t\t\t\t\t\tconst idx = u32(__tsover_add(__tsover_mul(py, RES), px));\n\t\t\t\t\t\tatomicAdd(layout.$.accumE[idx], e);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s4\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"place\",\n\t\t\t\t\t\t[\"fi\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s4\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"s4\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bright\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"brightness\",\n\t\t\t\t\t\t[\"fi\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"softV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"FORCE_SOFT\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"extK\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"EXT\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"EXT\"]\n\t\t\t\t\t\t\t\t], [5, \"2.4\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"softV\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gain\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"HARD_GAIN\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"SOFT_GAIN\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"softV\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"bodyRadius\",\n\t\t\t\t\t\t[\"fi\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"invBodyR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"bodyR\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"reach\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"extK\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"AA_W\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"reachQ\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"invBodyR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"invBodyR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"win\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"worldSplatWindow\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"py\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"INV_RES\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"INV_RES\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"offX\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"offY\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"invBodyR\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"invBodyR\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"reachQ\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"weightFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"bodyR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"AA_W\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"softV\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"bright\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"gain\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"RES\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t], \"e\"]\n\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"place\": () =\u003e place,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"brightness\": () =\u003e brightness,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"FORCE_SOFT\": () =\u003e FORCE_SOFT,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"EXT\": () =\u003e EXT,\n\t\t\t\"HARD_GAIN\": () =\u003e HARD_GAIN,\n\t\t\t\"SOFT_GAIN\": () =\u003e SOFT_GAIN,\n\t\t\t\"bodyRadius\": () =\u003e bodyRadius,\n\t\t\t\"AA_W\": () =\u003e AA_W,\n\t\t\t\"worldSplatWindow\": () =\u003e worldSplatWindow,\n\t\t\t\"RES\": () =\u003e RES,\n\t\t\t\"INV_RES\": () =\u003e INV_RES,\n\t\t\t\"weightFn\": () =\u003e weightFn,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.atomicAdd\": () =\u003e atomicAdd\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nfunction makeSoftenedProfile(shape, names) {\n\tconst glowProfile = typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, _ddx, _ddy, _size, _soft) =\u003e {\n\t\t\"use gpu\";\n\t\treturn exp(__tsover_mul(q, -2.5));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"q\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_ddx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_ddy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_size\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_soft\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.exp\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"q\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: { \"std.exp\": () =\u003e exp }\n\t}) \u0026\u0026 $.f)({})).$name(names.glow);\n\tif (AGENT_SHAPES[shape].soft === 1) return glowProfile;\n\tconst weightFn = makeAgentTexelWeightFn(shape);\n\treturn typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, ddx, ddy, size, soft) =\u003e {\n\t\t\"use gpu\";\n\t\treturn mix(weightFn(q, ddx, ddy, size, .9), exp(__tsover_mul(q, -2.5)), soft);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"q\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ddx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ddy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"size\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"soft\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wHard\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"weightFn\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\"size\",\n\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wSoft\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"wHard\",\n\t\t\t\t\t\t\"wSoft\",\n\t\t\t\t\t\t\"soft\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"weightFn\": () =\u003e weightFn,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"std.mix\": () =\u003e mix\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(names.blend);\n}\nfunction splatVolume(layout, cfg) {\n\tconst profileFn = makeSoftenedProfile(resolveAgentShape(cfg.shape, \"dot\"), {\n\t\tglow: cfg.names.glow,\n\t\tblend: cfg.names.profile\n\t});\n\tconst OUT_RES = cfg.outRes;\n\tconst MAX_SPLAT_SIZE = cfg.maxSplatSize;\n\tconst EXTQ = cfg.extQ;\n\tconst EXT = Math.sqrt(cfg.extQ);\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst pos = layout.$.pos[i];\n\t\tconst vel = layout.$.vel[i];\n\t\tconst persp = __tsover_div(1, clamp(__tsover_sub(1, __tsover_mul(pos.z, .35)), .45, 2));\n\t\tconst xs = __tsover_mul(pos.x, persp);\n\t\tconst ys = __tsover_mul(__tsover_mul(pos.y, persp), -1);\n\t\tconst rx = __tsover_sub(__tsover_mul(xs, prm.rotC), __tsover_mul(ys, prm.rotS));\n\t\tconst ry = __tsover_add(__tsover_mul(ys, prm.rotC), __tsover_mul(xs, prm.rotS));\n\t\tconst u = __tsover_add(prm.centerX, __tsover_div(__tsover_mul(rx, prm.scale), prm.aspect));\n\t\tconst v = __tsover_add(prm.centerYv, __tsover_mul(ry, prm.scale));\n\t\tconst outF = f32(OUT_RES);\n\t\tconst tx = __tsover_mul(u, outF);\n\t\tconst ty = __tsover_mul(v, outF);\n\t\tconst size = clamp(__tsover_mul(__tsover_mul(__tsover_mul(prm.size, __tsover_add(.65, __tsover_mul(.7, pos.w))), persp), prm.scale), .6, f32(MAX_SPLAT_SIZE));\n\t\tconst bright = __tsover_mul(__tsover_mul(__tsover_add(.7, __tsover_mul(.6, pos.w)), persp), persp);\n\t\tconst speedNorm = clamp(__tsover_mul(vel.w, prm.speedColorK), 0, 1);\n\t\tconst doSpeed = __tsover_mul(__tsover_mul(bright, speedNorm), 256) \u003e= 1;\n\t\tconst rad = i32(ceil(__tsover_mul(size, f32(EXT))));\n\t\tconst radF = f32(rad);\n\t\tif (tx \u003e __tsover_mul(radF, -1) \u0026\u0026 tx \u003c __tsover_add(outF, radF) \u0026\u0026 ty \u003e __tsover_mul(radF, -1) \u0026\u0026 ty \u003c __tsover_add(outF, radF)) {\n\t\t\tconst win = texelSplatWindow(vec2f(tx, ty), rad, vec2i(i32(__tsover_sub(OUT_RES, 1)), i32(__tsover_sub(OUT_RES, 1))));\n\t\t\tconst sizeSq = max(__tsover_mul(size, size), .01);\n\t\t\tfor (let py = win.y0; py \u003c= win.y1; py++) {\n\t\t\t\tconst ddy = __tsover_sub(__tsover_add(f32(py), .5), ty);\n\t\t\t\tconst ddySq = __tsover_mul(ddy, ddy);\n\t\t\t\tfor (let px = win.x0; px \u003c= win.x1; px++) {\n\t\t\t\t\tconst ddx = __tsover_sub(__tsover_add(f32(px), .5), tx);\n\t\t\t\t\tconst q = __tsover_div(__tsover_add(__tsover_mul(ddx, ddx), ddySq), sizeSq);\n\t\t\t\t\tif (q \u003c EXTQ) {\n\t\t\t\t\t\tconst w = profileFn(q, ddx, ddy, size, prm.softness);\n\t\t\t\t\t\tconst e = u32(__tsover_mul(__tsover_mul(w, bright), 256));\n\t\t\t\t\t\tif (e \u003e u32(0)) {\n\t\t\t\t\t\t\tconst idx = u32(__tsover_add(__tsover_mul(py, i32(OUT_RES)), px));\n\t\t\t\t\t\t\tatomicAdd(layout.$.accumE[idx], e);\n\t\t\t\t\t\t\tif (doSpeed) atomicAdd(layout.$.accumS[idx], u32(__tsover_mul(__tsover_mul(__tsover_mul(w, bright), speedNorm), 256)));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"persp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0.45\"],\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"xs\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ys\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"xs\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"rotC\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ys\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"rotS\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ry\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ys\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"rotC\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"xs\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"rotS\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"centerYv\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"outF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"OUT_RES\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"outF\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ty\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"outF\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"size\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"size\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.65\"],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"MAX_SPLAT_SIZE\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bright\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"speedNorm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"speedColorK\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"doSpeed\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bright\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"speedNorm\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"256\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.ceil\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"size\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"EXT\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"rad\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"onTarget\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"radF\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"outF\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"radF\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"radF\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"outF\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"radF\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t\"onTarget\",\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"texelSplatWindow\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[\"tx\", \"ty\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"rad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2i\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"OUT_RES\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"OUT_RES\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sizeSq\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"size\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"size\"\n\t\t\t\t\t\t\t\t], [5, \"0.01\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"ty\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ddySq\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tx\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddySq\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sizeSq\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"EXTQ\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"profileFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"size\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bright\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"256\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"OUT_RES\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], \"e\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"doSpeed\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumS\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bright\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"speedNorm\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"256\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"OUT_RES\": () =\u003e OUT_RES,\n\t\t\t\"MAX_SPLAT_SIZE\": () =\u003e MAX_SPLAT_SIZE,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.ceil\": () =\u003e ceil,\n\t\t\t\"EXT\": () =\u003e EXT,\n\t\t\t\"texelSplatWindow\": () =\u003e texelSplatWindow,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.vec2i\": () =\u003e vec2i,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"EXTQ\": () =\u003e EXTQ,\n\t\t\t\"profileFn\": () =\u003e profileFn,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.atomicAdd\": () =\u003e atomicAdd\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.names.splat);\n}\nfunction splatRelief(layout, cfg) {\n\tconst name = resolveAgentShape(cfg.shape, \"dot\");\n\tconst s = AGENT_SHAPES[name];\n\tconst weightFn = makeAgentTexelWeightFn(name);\n\tconst EXT_SHAPE = s.soft === 1 ? Math.max(s.ext, 2.4) : s.ext;\n\tconst SPLAT_R = cfg.splatRCap;\n\tconst AA_W = cfg.aaW;\n\tconst MIN_ALPHA = cfg.minAlpha;\n\tconst FP = cfg.fp;\n\tconst MIN_WEIGHT = 1 / cfg.fp;\n\tconst WOBBLE_FREQ = cfg.wobbleFreq;\n\tconst PERSP_K = cfg.perspK;\n\tconst TAU = 6.283185307179586;\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((gx, gy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = layout.$.params;\n\t\tconst i = __tsover_add(__tsover_mul(gy, u32(P.gridW)), gx);\n\t\tconst p4 = layout.$.pos[i];\n\t\tconst col = layout.$.col[i];\n\t\tconst childA = col.w;\n\t\tif (childA \u003e MIN_ALPHA) {\n\t\t\tconst homeU = __tsover_div(__tsover_add(f32(gx), .5), P.gridW);\n\t\t\tconst homeV = __tsover_div(__tsover_add(f32(gy), .5), P.gridH);\n\t\t\tconst ph = __tsover_mul(p4.w, TAU);\n\t\t\tconst wob = P.wobbleAmp;\n\t\t\tconst wx = __tsover_mul(__tsover_mul(sin(__tsover_add(__tsover_mul(P.time, WOBBLE_FREQ), ph)), wob), .012);\n\t\t\tconst wy = __tsover_mul(__tsover_mul(cos(__tsover_add(__tsover_mul(__tsover_mul(P.time, WOBBLE_FREQ), 1.13), __tsover_mul(ph, 1.7))), wob), .012);\n\t\t\tconst wz = __tsover_mul(__tsover_mul(sin(__tsover_add(__tsover_mul(__tsover_mul(P.time, WOBBLE_FREQ), .87), __tsover_mul(ph, 2.3))), wob), .06);\n\t\t\tconst rv = applyCameraRows(vec3f(__tsover_add(__tsover_add(__tsover_mul(__tsover_sub(homeU, .5), P.aspect), p4.x), wx), __tsover_add(__tsover_add(__tsover_sub(homeV, .5), p4.y), wy), __tsover_add(p4.z, wz)), P.rowX, P.rowY, P.rowZ);\n\t\t\tconst persp0 = __tsover_div(1, clamp(__tsover_sub(1, __tsover_mul(rv.z, PERSP_K)), .35, 2.6));\n\t\t\tconst persp = __tsover_mul(persp0, P.zoom);\n\t\t\tconst su = __tsover_add(__tsover_add(.5, __tsover_div(__tsover_mul(rv.x, persp), P.aspect)), P.transX);\n\t\t\tconst sv = __tsover_add(__tsover_add(.5, __tsover_mul(rv.y, persp)), P.transY);\n\t\t\tconst tx = __tsover_mul(su, P.outW);\n\t\t\tconst ty = __tsover_mul(sv, P.outH);\n\t\t\tconst dotR = clamp(__tsover_mul(__tsover_mul(__tsover_mul(P.particleSize, P.spacing), .5), persp), .5, f32(SPLAT_R));\n\t\t\tconst dr = max(P.depth, .001);\n\t\t\tconst near = smoothstep(__tsover_mul(dr, -1), dr, rv.z);\n\t\t\tconst shade = mix(f32(1), __tsover_add(.35, __tsover_mul(.65, near)), P.depthShading);\n\t\t\tconst depthWeight = __tsover_mul(__tsover_mul(persp0, persp0), shade);\n\t\t\tconst cw = __tsover_mul(childA, depthWeight);\n\t\t\tconst extR = __tsover_add(f32(EXT_SHAPE), __tsover_div(f32(AA_W), dotR));\n\t\t\tconst rad = i32(ceil(__tsover_mul(dotR, extR)));\n\t\t\tconst radF = f32(rad);\n\t\t\tconst onTarget = tx \u003e __tsover_mul(radF, -1) \u0026\u0026 tx \u003c __tsover_add(P.outW, radF) \u0026\u0026 ty \u003e __tsover_mul(radF, -1) \u0026\u0026 ty \u003c __tsover_add(P.outH, radF);\n\t\t\tif (cw \u003e MIN_WEIGHT \u0026\u0026 onTarget) {\n\t\t\t\tconst owU = u32(P.outW);\n\t\t\t\tconst win = texelSplatWindow(vec2f(tx, ty), rad, vec2i(__tsover_sub(i32(P.outW), 1), __tsover_sub(i32(P.outH), 1)));\n\t\t\t\tfor (let py = win.y0; py \u003c= win.y1; py++) {\n\t\t\t\t\tconst ddy = __tsover_sub(__tsover_add(f32(py), .5), ty);\n\t\t\t\t\tfor (let px = win.x0; px \u003c= win.x1; px++) {\n\t\t\t\t\t\tconst ddx = __tsover_sub(__tsover_add(f32(px), .5), tx);\n\t\t\t\t\t\tconst q = __tsover_div(__tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy)), max(__tsover_mul(dotR, dotR), .01));\n\t\t\t\t\t\tif (q \u003c __tsover_mul(extR, extR)) {\n\t\t\t\t\t\t\tconst wc = __tsover_mul(weightFn(q, ddx, ddy, dotR, f32(AA_W)), cw);\n\t\t\t\t\t\t\tif (wc \u003e 0) {\n\t\t\t\t\t\t\t\tconst idx = __tsover_add(__tsover_mul(u32(py), owU), u32(px));\n\t\t\t\t\t\t\t\tatomicAdd(layout.$.accumR[idx], u32(__tsover_mul(__tsover_mul(col.x, wc), FP)));\n\t\t\t\t\t\t\t\tatomicAdd(layout.$.accumG[idx], u32(__tsover_mul(__tsover_mul(col.y, wc), FP)));\n\t\t\t\t\t\t\t\tatomicAdd(layout.$.accumB[idx], u32(__tsover_mul(__tsover_mul(col.z, wc), FP)));\n\t\t\t\t\t\t\t\tatomicAdd(layout.$.accumW[idx], u32(__tsover_mul(wc, FP)));\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"gridW\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"gx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p4\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"col\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"col\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"childA\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"childA\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\"MIN_ALPHA\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"homeU\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"gridW\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"homeV\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"gridH\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ph\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"wob\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"wobbleAmp\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"WOBBLE_FREQ\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"ph\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wob\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.012\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"WOBBLE_FREQ\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.13\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ph\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wob\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.012\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"wz\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"WOBBLE_FREQ\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.87\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ph\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"wob\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"homeU\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"wx\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"homeV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"wy\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"wz\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"agents.applyCameraRows\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"rowX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"rowY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"rowZ\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"persp0\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"PERSP_K\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.35\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"2.6\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"persp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"persp0\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"zoom\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"transX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"transY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"outW\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"outH\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dotR\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"particleSize\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"spacing\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"SPLAT_R\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dr\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"depth\"\n\t\t\t\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"near\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dr\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"dr\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"shade\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"0.35\"],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.65\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"near\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"depthShading\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"depthWeight\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"persp0\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"persp0\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"shade\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cw\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"childA\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"depthWeight\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"extR\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"EXT_SHAPE\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"AA_W\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"dotR\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"rad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.ceil\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dotR\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"extR\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"radF\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"rad\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"onTarget\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"radF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"outW\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"radF\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"radF\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\"outH\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"radF\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cw\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\"MIN_WEIGHT\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\"onTarget\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"owU\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\"outW\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"texelSplatWindow\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"tx\", \"ty\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"rad\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2i\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"outW\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"outH\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"ty\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"win\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dotR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dotR\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [5, \"0.01\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"extR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"extR\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"weightFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dotR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"AA_W\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cw\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"py\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"owU\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"px\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumR\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wc\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"FP\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumG\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wc\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"FP\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wc\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"FP\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"accumW\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"FP\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"MIN_ALPHA\": () =\u003e MIN_ALPHA,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"WOBBLE_FREQ\": () =\u003e WOBBLE_FREQ,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"agents.applyCameraRows\": () =\u003e applyCameraRows,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"PERSP_K\": () =\u003e PERSP_K,\n\t\t\t\"SPLAT_R\": () =\u003e SPLAT_R,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"EXT_SHAPE\": () =\u003e EXT_SHAPE,\n\t\t\t\"AA_W\": () =\u003e AA_W,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.ceil\": () =\u003e ceil,\n\t\t\t\"MIN_WEIGHT\": () =\u003e MIN_WEIGHT,\n\t\t\t\"texelSplatWindow\": () =\u003e texelSplatWindow,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.vec2i\": () =\u003e vec2i,\n\t\t\t\"weightFn\": () =\u003e weightFn,\n\t\t\t\"std.atomicAdd\": () =\u003e atomicAdd,\n\t\t\t\"FP\": () =\u003e FP\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nfunction resolveRamp(layout, cfg) {\n\tconst L = layout;\n\tconst mixFn = mixColorsVariants[cfg.colorSpace] ?? mixColorsLinear;\n\tconst RES = cfg.res;\n\tconst INV_GAIN = cfg.invGain;\n\tconst energyOf = cfg.exposure === true ? typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((eRaw) =\u003e {\n\t\t\"use gpu\";\n\t\treturn __tsover_mul(__tsover_mul(eRaw, INV_GAIN), L.$.params.exposure);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"eRaw\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"eRaw\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"INV_GAIN\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t],\n\t\t\t\t\t\"exposure\"\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"INV_GAIN\": () =\u003e INV_GAIN,\n\t\t\t\"L\": () =\u003e L\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Energy`) : typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((eRaw) =\u003e {\n\t\t\"use gpu\";\n\t\treturn __tsover_mul(eRaw, INV_GAIN);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"eRaw\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t1,\n\t\t\t\t\"eRaw\",\n\t\t\t\t\"*\",\n\t\t\t\t\"INV_GAIN\"\n\t\t\t]]]]\n\t\t},\n\t\texternals: { \"INV_GAIN\": () =\u003e INV_GAIN }\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}Energy`);\n\tif (cfg.trails === \"none\") return typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = L.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(y, u32(RES)), x);\n\t\tconst eRaw = f32(atomicLoad(L.$.accumE[idx]));\n\t\tatomicStore(L.$.accumE[idx], u32(0));\n\t\tconst sRaw = f32(atomicLoad(L.$.accumS[idx]));\n\t\tatomicStore(L.$.accumS[idx], u32(0));\n\t\tif (eRaw \u003e 0) {\n\t\t\tconst energy = energyOf(eRaw);\n\t\t\tconst agitAvg = __tsover_div(sRaw, max(eRaw, 1));\n\t\t\tconst col = mixFn(prm.colA, prm.colB, clamp(agitAvg, 0, 1));\n\t\t\tconst a = __tsover_mul(energyCoverageAlpha(energy, 1.6), col.w);\n\t\t\ttextureStore(L.$.outTex, vec2u(x, y), vec4f(col.x, col.y, col.z, a));\n\t\t} else textureStore(L.$.outTex, vec2u(x, y), vec4f(prm.colA.x, prm.colA.y, prm.colA.z, f32(0)));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"eRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumS\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumS\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"eRaw\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"energy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"energyOf\",\n\t\t\t\t\t\t\t\t[\"eRaw\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"agitAvg\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sRaw\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"eRaw\", [5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"mixFn\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"colA\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"colB\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"agitAvg\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"energyCoverageAlpha\",\n\t\t\t\t\t\t\t\t\t[\"energy\", [5, \"1.6\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"x\", \"y\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"x\", \"y\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"colA\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"colA\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"colA\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"L\": () =\u003e L,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"RES\": () =\u003e RES,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.atomicLoad\": () =\u003e atomicLoad,\n\t\t\t\"std.atomicStore\": () =\u003e atomicStore,\n\t\t\t\"energyOf\": () =\u003e energyOf,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"mixFn\": () =\u003e mixFn,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"energyCoverageAlpha\": () =\u003e energyCoverageAlpha,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n\tconst composite = cfg.trails === \"on\" || cfg.trails.baked ? typegpu_default.fn([\n\t\tvec4f,\n\t\tf32,\n\t\tu32\n\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((col, curA, idx) =\u003e {\n\t\t\"use gpu\";\n\t\treturn trailMaxDecay(col, curA, L.$.trailBuf[idx], L.$.params.trails);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"col\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"curA\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"idx\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"agents.trailMaxDecay\",\n\t\t\t\t[\n\t\t\t\t\t\"col\",\n\t\t\t\t\t\"curA\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"trailBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"trails\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"agents.trailMaxDecay\": () =\u003e trailMaxDecay,\n\t\t\t\"L\": () =\u003e L\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}TrailComposite`) : typegpu_default.fn([\n\t\tvec4f,\n\t\tf32,\n\t\tu32\n\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((col, curA, _idx) =\u003e {\n\t\t\"use gpu\";\n\t\treturn vec4f(col.x, col.y, col.z, curA);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"col\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"curA\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_idx\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"curA\"\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: { \"d.vec4f\": () =\u003e vec4f }\n\t}) \u0026\u0026 $.f)({})).$name(`${cfg.name}TrailComposite`);\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = L.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(y, u32(RES)), x);\n\t\tconst eRaw = f32(atomicLoad(L.$.accumE[idx]));\n\t\tatomicStore(L.$.accumE[idx], u32(0));\n\t\tconst sRaw = f32(atomicLoad(L.$.accumS[idx]));\n\t\tatomicStore(L.$.accumS[idx], u32(0));\n\t\tconst energy = energyOf(eRaw);\n\t\tlet col = vec4f(prm.colA);\n\t\tif (eRaw \u003e 0) {\n\t\t\tconst agitAvg = __tsover_div(sRaw, max(eRaw, 1));\n\t\t\tcol = mixFn(prm.colA, prm.colB, clamp(agitAvg, 0, 1));\n\t\t}\n\t\tconst curA = __tsover_mul(energyCoverageAlpha(energy, 1.6), col.w);\n\t\tconst out = composite(col, curA, idx);\n\t\tL.$.trailBuf[idx] = vec4f(out);\n\t\ttextureStore(L.$.outTex, vec2u(x, y), out);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"eRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumS\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumS\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"energy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"energyOf\",\n\t\t\t\t\t\t[\"eRaw\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"col\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"colA\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"eRaw\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"agitAvg\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sRaw\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"eRaw\", [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"mixFn\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"colA\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"colB\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"agitAvg\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"curA\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"energyCoverageAlpha\",\n\t\t\t\t\t\t\t[\"energy\", [5, \"1.6\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"out\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"composite\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\"curA\",\n\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"trailBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\"out\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"x\", \"y\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"out\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"L\": () =\u003e L,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"RES\": () =\u003e RES,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.atomicLoad\": () =\u003e atomicLoad,\n\t\t\t\"std.atomicStore\": () =\u003e atomicStore,\n\t\t\t\"energyOf\": () =\u003e energyOf,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"mixFn\": () =\u003e mixFn,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"energyCoverageAlpha\": () =\u003e energyCoverageAlpha,\n\t\t\t\"composite\": () =\u003e composite,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nfunction resolveTint(layout, cfg) {\n\tconst RES = cfg.res;\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(y, u32(RES)), x);\n\t\tconst energy = __tsover_mul(f32(atomicLoad(layout.$.accumE[idx])), __tsover_div(1, 255));\n\t\tatomicStore(layout.$.accumE[idx], u32(0));\n\t\tconst a = __tsover_mul(energyCoverageAlpha(energy, 1.6), prm.color.w);\n\t\ttextureStore(layout.$.outTex, vec2u(x, y), vec4f(prm.color.x, prm.color.y, prm.color.z, a));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"energy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[5, \"255\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"energyCoverageAlpha\",\n\t\t\t\t\t\t\t[\"energy\", [5, \"1.6\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"color\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"x\", \"y\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"color\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"color\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"color\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"RES\": () =\u003e RES,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.atomicLoad\": () =\u003e atomicLoad,\n\t\t\t\"std.atomicStore\": () =\u003e atomicStore,\n\t\t\t\"energyCoverageAlpha\": () =\u003e energyCoverageAlpha,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nfunction resolveWeightedColor(layout, cfg) {\n\tconst FP = cfg.fp;\n\tconst ALPHA_K = cfg.alphaK;\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, y) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = layout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(y, u32(P.outW)), x);\n\t\tconst wRaw = f32(atomicLoad(layout.$.accumW[idx]));\n\t\tconst rRaw = f32(atomicLoad(layout.$.accumR[idx]));\n\t\tconst gRaw = f32(atomicLoad(layout.$.accumG[idx]));\n\t\tconst bRaw = f32(atomicLoad(layout.$.accumB[idx]));\n\t\tatomicStore(layout.$.accumR[idx], u32(0));\n\t\tatomicStore(layout.$.accumG[idx], u32(0));\n\t\tatomicStore(layout.$.accumB[idx], u32(0));\n\t\tatomicStore(layout.$.accumW[idx], u32(0));\n\t\tconst denom = max(wRaw, f32(1));\n\t\tconst r = __tsover_div(rRaw, denom);\n\t\tconst g = __tsover_div(gRaw, denom);\n\t\tconst b = __tsover_div(bRaw, denom);\n\t\tconst alpha = energyCoverageAlpha(__tsover_mul(wRaw, __tsover_div(1, FP)), ALPHA_K);\n\t\ttextureStore(layout.$.outTex, vec2u(x, y), vec4f(r, g, b, alpha));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"y\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"outW\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumW\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumR\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumG\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bRaw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"accumB\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumG\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atomicStore\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"accumW\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"denom\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"wRaw\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rRaw\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"denom\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"g\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"gRaw\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"denom\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bRaw\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"denom\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"alpha\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"energyCoverageAlpha\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"wRaw\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"FP\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"ALPHA_K\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"x\", \"y\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"alpha\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.atomicLoad\": () =\u003e atomicLoad,\n\t\t\t\"std.atomicStore\": () =\u003e atomicStore,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"energyCoverageAlpha\": () =\u003e energyCoverageAlpha,\n\t\t\t\"FP\": () =\u003e FP,\n\t\t\t\"ALPHA_K\": () =\u003e ALPHA_K,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nconst splat = {\n\torientedWorld: splatOrientedWorld,\n\tpointWorld: splatPointWorld,\n\tvolume: splatVolume,\n\trelief: splatRelief\n};\nconst resolve = {\n\tramp: resolveRamp,\n\ttint: resolveTint,\n\tweightedColor: resolveWeightedColor\n};\nfunction pressure(layout, cfg) {\n\tconst DGRID = cfg.gridDim;\n\tconst DOMAIN = cfg.domain;\n\tconst densAt = typegpu_default.fn([\n\t\ti32,\n\t\ti32,\n\t\ti32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy, cz) =\u003e {\n\t\t\"use gpu\";\n\t\tconst g = i32(DGRID);\n\t\tconst x = clamp(cx, 0, __tsover_sub(g, 1));\n\t\tconst y = clamp(cy, 0, __tsover_sub(g, 1));\n\t\tconst z = clamp(cz, 0, __tsover_sub(g, 1));\n\t\tconst idx = u32(__tsover_add(__tsover_mul(__tsover_add(__tsover_mul(z, g), y), g), x));\n\t\treturn __tsover_mul(f32(atomicLoad(layout.$.dens[idx])), __tsover_div(1, 64));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cz\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"g\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"DGRID\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"y\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"z\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atomicLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"dens\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"64\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"DGRID\": () =\u003e DGRID,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.atomicLoad\": () =\u003e atomicLoad,\n\t\t\t\"layout\": () =\u003e layout\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tconst densTrilinearGrad = typegpu_default.fn([vec3f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst g = f32(DGRID);\n\t\tconst c = vec3f(__tsover_sub(__tsover_mul(__tsover_div(__tsover_add(__tsover_add(pos.x, prm.gridOffX), DOMAIN), __tsover_mul(2, DOMAIN)), g), .5), __tsover_sub(__tsover_mul(__tsover_div(__tsover_add(__tsover_add(pos.y, prm.gridOffY), DOMAIN), __tsover_mul(2, DOMAIN)), g), .5), __tsover_sub(__tsover_mul(__tsover_div(__tsover_add(__tsover_add(pos.z, prm.gridOffZ), DOMAIN), __tsover_mul(2, DOMAIN)), g), .5));\n\t\tconst base = clamp(floor(c), vec3f(0, 0, 0), vec3f(__tsover_sub(g, 2), __tsover_sub(g, 2), __tsover_sub(g, 2)));\n\t\tconst f = clamp(c.sub(base), vec3f(0, 0, 0), vec3f(1, 1, 1));\n\t\tconst bi = i32(base.x);\n\t\tconst bj = i32(base.y);\n\t\tconst bk = i32(base.z);\n\t\tlet acc = f32(0);\n\t\tlet gx = f32(0);\n\t\tlet gy = f32(0);\n\t\tlet gz = f32(0);\n\t\tfor (let dz = 0; dz \u003c 2; dz++) for (let dy = 0; dy \u003c 2; dy++) for (let dx = 0; dx \u003c 2; dx++) {\n\t\t\tconst wx = mix(__tsover_sub(1, f.x), f.x, f32(dx));\n\t\t\tconst wy = mix(__tsover_sub(1, f.y), f.y, f32(dy));\n\t\t\tconst wz = mix(__tsover_sub(1, f.z), f.z, f32(dz));\n\t\t\tconst sx = __tsover_sub(__tsover_mul(f32(dx), 2), 1);\n\t\t\tconst sy = __tsover_sub(__tsover_mul(f32(dy), 2), 1);\n\t\t\tconst sz = __tsover_sub(__tsover_mul(f32(dz), 2), 1);\n\t\t\tconst cv = densAt(__tsover_add(bi, dx), __tsover_add(bj, dy), __tsover_add(bk, dz));\n\t\t\tacc = __tsover_add(acc, __tsover_mul(cv, __tsover_mul(__tsover_mul(wx, wy), wz)));\n\t\t\tgx = __tsover_add(gx, __tsover_mul(cv, __tsover_mul(__tsover_mul(sx, wy), wz)));\n\t\t\tgy = __tsover_add(gy, __tsover_mul(cv, __tsover_mul(__tsover_mul(wx, sy), wz)));\n\t\t\tgz = __tsover_add(gz, __tsover_mul(cv, __tsover_mul(__tsover_mul(wx, wy), sz)));\n\t\t}\n\t\treturn vec4f(gx, gy, gz, acc);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"g\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"DGRID\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gridOffX\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gridOffY\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gridOffZ\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"base\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"base\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bj\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bk\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"acc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"gx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"gy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"gz\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"dz\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dz\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"dz\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dx\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dy\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"wz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dz\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dx\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dy\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dz\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"densAt\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bi\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bk\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"gz\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gz\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"wy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\"gz\",\n\t\t\t\t\t\t\"acc\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"DGRID\": () =\u003e DGRID,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"DOMAIN\": () =\u003e DOMAIN,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"densAt\": () =\u003e densAt,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tconst clearKernel = typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tatomicStore(layout.$.dens[i], u32(0));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"std.atomicStore\",\n\t\t\t\t[[\n\t\t\t\t\t8,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"dens\"\n\t\t\t\t\t],\n\t\t\t\t\t\"i\"\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]]\n\t\t\t]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.atomicStore\": () =\u003e atomicStore,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.names.clear);\n\tconst splatKernel = typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst pos = layout.$.pos[i];\n\t\tconst g = f32(DGRID);\n\t\tconst c = vec3f(__tsover_sub(__tsover_mul(__tsover_div(__tsover_add(__tsover_add(pos.x, prm.gridOffX), DOMAIN), __tsover_mul(2, DOMAIN)), g), .5), __tsover_sub(__tsover_mul(__tsover_div(__tsover_add(__tsover_add(pos.y, prm.gridOffY), DOMAIN), __tsover_mul(2, DOMAIN)), g), .5), __tsover_sub(__tsover_mul(__tsover_div(__tsover_add(__tsover_add(pos.z, prm.gridOffZ), DOMAIN), __tsover_mul(2, DOMAIN)), g), .5));\n\t\tconst base = clamp(floor(c), vec3f(0, 0, 0), vec3f(__tsover_sub(g, 2), __tsover_sub(g, 2), __tsover_sub(g, 2)));\n\t\tconst f = clamp(c.sub(base), vec3f(0, 0, 0), vec3f(1, 1, 1));\n\t\tconst bi = i32(base.x);\n\t\tconst bj = i32(base.y);\n\t\tconst bk = i32(base.z);\n\t\tconst gi = i32(DGRID);\n\t\tfor (let dz = 0; dz \u003c 2; dz++) for (let dy = 0; dy \u003c 2; dy++) for (let dx = 0; dx \u003c 2; dx++) {\n\t\t\tconst wx = mix(__tsover_sub(1, f.x), f.x, f32(dx));\n\t\t\tconst wy = mix(__tsover_sub(1, f.y), f.y, f32(dy));\n\t\t\tconst wz = mix(__tsover_sub(1, f.z), f.z, f32(dz));\n\t\t\tconst w = __tsover_mul(__tsover_mul(wx, wy), wz);\n\t\t\tconst idx = u32(__tsover_add(__tsover_mul(__tsover_add(__tsover_mul(__tsover_add(bk, dz), gi), __tsover_add(bj, dy)), gi), __tsover_add(bi, dx)));\n\t\t\tatomicAdd(layout.$.dens[idx], u32(__tsover_add(__tsover_mul(w, 64), .5)));\n\t\t}\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"g\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"DGRID\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gridOffX\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gridOffY\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gridOffZ\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"DOMAIN\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"base\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"base\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bj\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bk\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"DGRID\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"dz\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dz\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"dz\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dx\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dy\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"wz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dz\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"wy\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"wz\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bk\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dz\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"gi\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"gi\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bi\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.atomicAdd\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"dens\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"64\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t]]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"DGRID\": () =\u003e DGRID,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"DOMAIN\": () =\u003e DOMAIN,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.atomicAdd\": () =\u003e atomicAdd\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.names.splat);\n\treturn {\n\t\tforce: typegpu_default.fn([\n\t\t\tvec3f,\n\t\t\tvec3f,\n\t\t\tf32\n\t\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, _vel, _seed) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst prm = layout.$.params;\n\t\t\tconst gv = densTrilinearGrad(pos);\n\t\t\tconst pressNorm = __tsover_div(__tsover_mul(prm.spread, 4.4), max(__tsover_add(__tsover_mul(gv.w, 2), 6), 6));\n\t\t\treturn vec3f(__tsover_mul(__tsover_mul(gv.x, -1), pressNorm), __tsover_mul(__tsover_mul(gv.y, -1), pressNorm), __tsover_mul(__tsover_mul(gv.z, -1), pressNorm));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"_vel\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"_seed\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"gv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"densTrilinearGrad\",\n\t\t\t\t\t\t\t[\"pos\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"pressNorm\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"spread\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"4.4\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"gv\",\n\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"6\"]\n\t\t\t\t\t\t\t\t], [5, \"6\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"pressNorm\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"pressNorm\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"gv\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"pressNorm\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"densTrilinearGrad\": () =\u003e densTrilinearGrad,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"forcePressure\"),\n\t\tclearKernel,\n\t\tsplatKernel,\n\t\tcells: DGRID * DGRID * DGRID\n\t};\n}\nfunction containment(layout, cfg) {\n\tconst field$1 = cfg.field;\n\tconst E = cfg.gradEps;\n\tconst { wall, recall, homing, entrainment } = cfg;\n\treturn typegpu_default.fn([\n\t\tvec3f,\n\t\tvec3f,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, vel, _seed) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst sd = field$1(pos);\n\t\tconst e = f32(E);\n\t\tconst gv = vec3f(__tsover_sub(field$1(vec3f(__tsover_add(pos.x, e), pos.y, pos.z)), field$1(vec3f(__tsover_sub(pos.x, e), pos.y, pos.z))), __tsover_sub(field$1(vec3f(pos.x, __tsover_add(pos.y, e), pos.z)), field$1(vec3f(pos.x, __tsover_sub(pos.y, e), pos.z))), __tsover_sub(field$1(vec3f(pos.x, pos.y, __tsover_add(pos.z, e))), field$1(vec3f(pos.x, pos.y, __tsover_sub(pos.z, e)))));\n\t\tconst gn = gv.div(max(length(gv), 1e-4));\n\t\tlet F = vec3f(0, 0, 0);\n\t\tconst out = max(sd, 0);\n\t\tconst wallF = __tsover_add(__tsover_mul(smoothstep(wall.featherFrom, wall.featherTo, sd), wall.base), __tsover_mul(out, wall.springK));\n\t\tF = F.sub(gn.mul(wallF));\n\t\tconst rl = length(pos);\n\t\tconst recallF = __tsover_mul(smoothstep(recall.from, recall.to, rl), recall.k);\n\t\tF = F.sub(pos.mul(__tsover_div(recallF, max(rl, 1e-4))));\n\t\tconst homingF = __tsover_mul(smoothstep(homing.from, homing.to, sd), homing.k);\n\t\tF = F.sub(pos.mul(__tsover_div(homingF, max(rl, 1e-4))));\n\t\tconst featureVel = cross(vec3f(prm.omegaX, prm.omegaY, prm.omegaZ), pos);\n\t\tconst insideM = __tsover_sub(1, smoothstep(-entrainment.featherHalf, entrainment.featherHalf, sd));\n\t\tF = F.add(featureVel.sub(vel).mul(__tsover_mul(prm.entrain, insideM)));\n\t\treturn F;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_seed\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t[\"pos\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"e\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"E\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gz\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"field\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\"gz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gn\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"gv\",\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[\"gv\"]\n\t\t\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"F\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"out\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"sd\", [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wallF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"wall.featherFrom\",\n\t\t\t\t\t\t\t\t\t\"wall.featherTo\",\n\t\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"wall.base\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"out\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"wall.springK\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"F\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"F\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"gn\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"wallF\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rl\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"pos\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"recallF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"recall.from\",\n\t\t\t\t\t\t\t\t\"recall.to\",\n\t\t\t\t\t\t\t\t\"rl\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"recall.k\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"F\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"F\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"recallF\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rl\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homingF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"homing.from\",\n\t\t\t\t\t\t\t\t\"homing.to\",\n\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"homing.k\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"F\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"F\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"homingF\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"rl\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"featureVel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cross\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"omegaX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"omegaY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"omegaZ\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"pos\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"insideM\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"entrainment.featherHalf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"entrainment.featherHalf\",\n\t\t\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"F\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"F\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"featureVel\",\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"vel\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"entrain\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"insideM\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, \"F\"]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"field\": () =\u003e field$1,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"E\": () =\u003e E,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\"wall.featherFrom\": () =\u003e wall.featherFrom,\n\t\t\t\"wall.featherTo\": () =\u003e wall.featherTo,\n\t\t\t\"wall.base\": () =\u003e wall.base,\n\t\t\t\"wall.springK\": () =\u003e wall.springK,\n\t\t\t\"recall.from\": () =\u003e recall.from,\n\t\t\t\"recall.to\": () =\u003e recall.to,\n\t\t\t\"recall.k\": () =\u003e recall.k,\n\t\t\t\"homing.from\": () =\u003e homing.from,\n\t\t\t\"homing.to\": () =\u003e homing.to,\n\t\t\t\"homing.k\": () =\u003e homing.k,\n\t\t\t\"std.cross\": () =\u003e cross,\n\t\t\t\"entrainment.featherHalf\": () =\u003e entrainment.featherHalf\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceContainment\");\n}\nfunction cursorXY(layout) {\n\treturn typegpu_default.fn([\n\t\tvec3f,\n\t\tvec3f,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, _vel, _seed) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst mxy = cursorMagnet(vec2f(__tsover_sub(pos.x, prm.cursorX), __tsover_sub(pos.y, prm.cursorY)), prm.cursorRadSq, prm.cursorForce);\n\t\treturn vec3f(mxy.x, mxy.y, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_seed\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"mxy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"agents.cursorMagnet\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"cursorRadSq\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"cursorForce\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mxy\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mxy\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"agents.cursorMagnet\": () =\u003e cursorMagnet,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceCursorXY\");\n}\nfunction gravity(layout) {\n\treturn typegpu_default.fn([\n\t\tvec3f,\n\t\tvec3f,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_pos, _vel, _seed) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\treturn vec3f(prm.gravX, prm.gravY, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_seed\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"prm\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"gravX\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"gravY\"\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceGravity\");\n}\nfunction turbulence(layout, cfg) {\n\tconst { posScale, timeX, timeY, seedScale, gain } = cfg;\n\treturn typegpu_default.fn([\n\t\tvec3f,\n\t\tvec3f,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, _vel, seed) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\treturn hash33(pos.mul(posScale).add(vec3f(__tsover_mul(prm.time, timeX), __tsover_mul(prm.time, timeY), __tsover_mul(seed, seedScale)))).sub(vec3f(.5, .5, .5)).mul(__tsover_mul(prm.agitation, gain));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"seed\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rnd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"noise.hash33\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"posScale\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"timeX\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"time\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"timeY\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"seedScale\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rnd\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"agitation\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"gain\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"noise.hash33\": () =\u003e hash33,\n\t\t\t\"posScale\": () =\u003e posScale,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"timeX\": () =\u003e timeX,\n\t\t\t\"timeY\": () =\u003e timeY,\n\t\t\t\"seedScale\": () =\u003e seedScale,\n\t\t\t\"gain\": () =\u003e gain\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceTurbulence\");\n}\nfunction composeForces3(parts) {\n\treturn parts.reduce((acc, part, index) =\u003e typegpu_default.fn([\n\t\tvec3f,\n\t\tvec3f,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, vel, seed) =\u003e {\n\t\t\"use gpu\";\n\t\treturn acc(pos, vel, seed).add(part(pos, vel, seed));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"seed\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"part\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"acc\": () =\u003e acc,\n\t\t\t\"part\": () =\u003e part\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`forceSum${index}`));\n}\nfunction forces3d(layout, cfg) {\n\tconst total = composeForces3(cfg.forces);\n\tconst MAX_SPEED = cfg.maxSpeed;\n\tconst C = cfg.posClamp;\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst p4 = layout.$.pos[i];\n\t\tconst v4 = layout.$.vel[i];\n\t\tlet pos = vec3f(p4.x, p4.y, p4.z);\n\t\tconst vPrev = vec3f(v4.x, v4.y, v4.z);\n\t\tconst dt = prm.dt;\n\t\tconst v3 = integrateSemiImplicitEuler(vPrev, total(pos, vPrev, p4.w), dt, prm.dragMul, f32(MAX_SPEED));\n\t\tpos = clamp(pos.add(v3.mul(dt)), vec3f(-C, -C, -C), vec3f(C, C, C));\n\t\tlayout.$.pos[i] = vec4f(pos.x, pos.y, pos.z, p4.w);\n\t\tlayout.$.vel[i] = vec4f(v3.x, v3.y, v3.z, length(v3));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p4\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v4\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vPrev\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dt\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"F\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"total\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"vPrev\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"integrateSemiImplicitEuler\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"vPrev\",\n\t\t\t\t\t\t\t\"F\",\n\t\t\t\t\t\t\t\"dt\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"dragMul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"MAX_SPEED\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"dt\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"C\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"C\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"C\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"C\",\n\t\t\t\t\t\t\t\t\t\"C\",\n\t\t\t\t\t\t\t\t\t\"C\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t[\"v3\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"total\": () =\u003e total,\n\t\t\t\"integrateSemiImplicitEuler\": () =\u003e integrateSemiImplicitEuler,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"MAX_SPEED\": () =\u003e MAX_SPEED,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"C\": () =\u003e C,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.length\": () =\u003e length\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nfunction flocking(layout, cfg) {\n\tconst MAX_AGENTS = cfg.maxAgents;\n\treturn typegpu_default.fn([\n\t\tvec2f,\n\t\tvec2f,\n\t\tf32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, vel, maxSpeedI) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tlet sep = vec2f(0, 0);\n\t\tlet ali = vec2f(0, 0);\n\t\tlet coh = vec2f(0, 0);\n\t\tlet nCount = f32(0);\n\t\tlet sCount = f32(0);\n\t\tfor (let j = 0; j \u003c MAX_AGENTS; j++) {\n\t\t\tif (f32(j) \u003e= prm.count) break;\n\t\t\tconst other = layout.$.agents[u32(j)];\n\t\t\tconst opos = vec2f(other.x, other.y);\n\t\t\tconst off = pos.sub(opos);\n\t\t\tconst dsq = dot(off, off);\n\t\t\tif (dsq \u003e 1e-7 \u0026\u0026 dsq \u003c prm.perceptionSq) {\n\t\t\t\tali = ali.add(vec2f(other.z, other.w));\n\t\t\t\tcoh = coh.add(opos);\n\t\t\t\tnCount = __tsover_add(nCount, 1);\n\t\t\t\tif (dsq \u003c prm.sepRadiusSq) {\n\t\t\t\t\tsep = sep.add(off.div(dsq));\n\t\t\t\t\tsCount = __tsover_add(sCount, 1);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tlet accel = vec2f(0, 0);\n\t\tif (nCount \u003e .5) {\n\t\t\tconst aliSteer = reynoldsSteer(ali.div(nCount), vel, maxSpeedI, prm.maxForce);\n\t\t\tconst cohSteer = reynoldsSteer(coh.div(nCount).sub(pos), vel, maxSpeedI, prm.maxForce);\n\t\t\taccel = accel.add(aliSteer.mul(prm.aliW)).add(cohSteer.mul(prm.cohW));\n\t\t}\n\t\tif (sCount \u003e .5) accel = accel.add(reynoldsSteer(sep, vel, maxSpeedI, prm.maxForce).mul(prm.sepW));\n\t\treturn accel;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"maxSpeedI\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"sep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"ali\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"coh\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"nCount\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"sCount\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"j\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"j\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"MAX_AGENTS\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"j\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"j\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"j\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"opos\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"opos\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dsq\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"off\", \"off\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dsq\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"1e-7\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dsq\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"perceptionSq\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"ali\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"ali\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"coh\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"coh\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"opos\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"nCount\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"nCount\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dsq\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"sepRadiusSq\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"sep\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sep\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"dsq\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"sCount\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"sCount\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"accel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nCount\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"aliSteer\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"agents.reynoldsSteer\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"ali\",\n\t\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"nCount\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"maxSpeedI\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"maxForce\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cohSteer\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"agents.reynoldsSteer\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"coh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"nCount\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"pos\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"maxSpeedI\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"maxForce\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"accel\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"accel\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"aliSteer\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"aliW\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"cohSteer\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"cohW\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sCount\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"accel\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"accel\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"agents.reynoldsSteer\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"sep\",\n\t\t\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\t\t\"maxSpeedI\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"maxForce\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"sepW\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[10, \"accel\"]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"MAX_AGENTS\": () =\u003e MAX_AGENTS,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"agents.reynoldsSteer\": () =\u003e reynoldsSteer\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceFlocking\");\n}\nfunction cursorSteer(layout) {\n\treturn typegpu_default.fn([\n\t\tvec2f,\n\t\tvec2f,\n\t\tf32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, _vel, _maxSpeedI) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tlet accel = vec2f(0, 0);\n\t\tif (prm.cursorMode \u003e .5) {\n\t\t\tconst cd = vec2f(prm.cursorX, prm.cursorY).sub(pos);\n\t\t\tconst cdsq = dot(cd, cd);\n\t\t\tif (cdsq \u003e 1e-7 \u0026\u0026 cdsq \u003c prm.cursorRadiusSq) {\n\t\t\t\tconst cdist = sqrt(cdsq);\n\t\t\t\tconst falloff = __tsover_sub(1, __tsover_div(cdist, max(prm.cursorRadius, 1e-5)));\n\t\t\t\tconst sign = select(f32(1), f32(-1), prm.cursorMode \u003e 1.5);\n\t\t\t\taccel = cd.div(cdist).mul(__tsover_mul(__tsover_mul(sign, falloff), prm.cursorForce));\n\t\t\t}\n\t\t}\n\t\treturn accel;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_maxSpeedI\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"accel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"cursorMode\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"pos\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cdsq\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"cd\", \"cd\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cdsq\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"1e-7\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cdsq\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"cursorRadiusSq\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"cdist\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t\t\t[\"cdsq\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"falloff\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cdist\",\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cursorRadius\"\n\t\t\t\t\t\t\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sign\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cursorMode\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"accel\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"cdist\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sign\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cursorForce\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[10, \"accel\"]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"d.f32\": () =\u003e f32\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceCursorSteer\");\n}\nfunction wallTurn(layout) {\n\treturn typegpu_default.fn([\n\t\tvec2f,\n\t\tvec2f,\n\t\tf32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, _vel, _maxSpeedI) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst m = prm.margin;\n\t\tconst tf = prm.turnForce;\n\t\treturn vec2f(__tsover_add(select(f32(0), tf, pos.x \u003c m), select(f32(0), -tf, pos.x \u003e __tsover_sub(prm.domainX, m))), __tsover_add(select(f32(0), tf, pos.y \u003c m), select(f32(0), -tf, pos.y \u003e __tsover_sub(1, m))));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_maxSpeedI\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"m\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"margin\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"turnForce\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ax\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"tf\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"tf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"domainX\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ay\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"tf\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"tf\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"ax\", \"ay\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.vec2f\": () =\u003e vec2f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceWallTurn\");\n}\nfunction composeSteer2(parts) {\n\treturn parts.reduce((acc, part, index) =\u003e typegpu_default.fn([\n\t\tvec2f,\n\t\tvec2f,\n\t\tf32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, vel, maxSpeedI) =\u003e {\n\t\t\"use gpu\";\n\t\treturn acc(pos, vel, maxSpeedI).add(part(pos, vel, maxSpeedI));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"pos\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"vel\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"maxSpeedI\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\"maxSpeedI\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"part\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\"maxSpeedI\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"acc\": () =\u003e acc,\n\t\t\t\"part\": () =\u003e part\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`steerSum${index}`));\n}\nfunction steering2d(layout, cfg) {\n\tconst total = composeSteer2(cfg.forces);\n\tconst { rest: AGIT_REST, gain: AGIT_GAIN, cool: AGIT_COOL } = cfg.agitation;\n\tconst FLOOR = cfg.cruiseFloor;\n\tconst REST = cfg.wallRestitution;\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst self = layout.$.agents[i];\n\t\tlet pos = vec2f(self.x, self.y);\n\t\tlet vel = vec2f(self.z, self.w);\n\t\tconst dt = prm.dt;\n\t\tconst maxSpeedI = __tsover_mul(prm.maxSpeed, cruiseVariation(f32(i)));\n\t\tconst accel = total(pos, vel, maxSpeedI);\n\t\tconst effort = __tsover_div(length(accel), max(prm.maxForce, 1e-5));\n\t\tconst raw = clamp(__tsover_mul(__tsover_sub(effort, AGIT_REST), AGIT_GAIN), 0, 1);\n\t\tconst cooled = __tsover_mul(layout.$.agit[i], exp(__tsover_mul(dt, -AGIT_COOL)));\n\t\tlayout.$.agit[i] = max(raw, cooled);\n\t\tvel = vel.add(accel.mul(dt));\n\t\tconst spd = length(vel);\n\t\tconst clamped = clamp(spd, __tsover_mul(maxSpeedI, FLOOR), maxSpeedI);\n\t\tvel = vel.div(max(spd, 1e-5)).mul(clamped);\n\t\tpos = pos.add(vel.mul(dt));\n\t\tconst hitX = pos.x \u003c 0 || pos.x \u003e prm.domainX;\n\t\tconst hitY = pos.y \u003c 0 || pos.y \u003e 1;\n\t\tconst nvx = select(vel.x, __tsover_mul(vel.x, -REST), hitX);\n\t\tconst nvy = select(vel.y, __tsover_mul(vel.y, -REST), hitY);\n\t\tconst cx = clamp(pos.x, 0, prm.domainX);\n\t\tconst cy = clamp(pos.y, 0, 1);\n\t\tlayout.$.agents[i] = vec4f(cx, cy, nvx, nvy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"self\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dt\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"maxSpeedI\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"maxSpeed\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"agents.cruiseVariation\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"accel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"total\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\"maxSpeedI\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"effort\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[\"accel\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"maxForce\"\n\t\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"raw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"effort\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"AGIT_REST\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"AGIT_GAIN\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cooled\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"agit\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dt\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"AGIT_COOL\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agit\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"raw\", \"cooled\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"accel\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"dt\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"spd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"vel\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"clamped\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"spd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"maxSpeedI\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"FLOOR\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"maxSpeedI\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"vel\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"spd\", [5, \"0.00001\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"clamped\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"dt\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"hitX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"domainX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"hitY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nvx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"REST\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"hitX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nvy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vel\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"REST\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"hitY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"domainX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"nvx\",\n\t\t\t\t\t\t\t\"nvy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"agents.cruiseVariation\": () =\u003e cruiseVariation,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"total\": () =\u003e total,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"AGIT_REST\": () =\u003e AGIT_REST,\n\t\t\t\"AGIT_GAIN\": () =\u003e AGIT_GAIN,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"AGIT_COOL\": () =\u003e AGIT_COOL,\n\t\t\t\"FLOOR\": () =\u003e FLOOR,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"REST\": () =\u003e REST,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nconst FieldSample = struct({\n\trhat: vec2f,\n\tstrength: f32,\n\tphi: f32\n}).$name(\"AgentFieldSample\");\nfunction dipoleOrRadial(layout) {\n\treturn typegpu_default.fn([vec2f], FieldSample)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst cursor = vec2f(prm.cursorX, prm.cursorY);\n\t\tconst delta = pos.sub(cursor);\n\t\tconst r = max(length(delta), 1e-4);\n\t\tconst rhat = delta.div(r);\n\t\tconst B = dipoleOrRadialField(rhat, vec2f(prm.axisX, prm.axisY), prm.fieldType);\n\t\treturn FieldSample({\n\t\t\trhat,\n\t\t\tstrength: __tsover_mul(prm.strength, exp(__tsover_mul(__tsover_div(__tsover_mul(r, r), max(prm.reachSq, 1e-6)), -1))),\n\t\t\tphi: atan2(B.y, B.x)\n\t\t});\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cursor\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"delta\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"cursor\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[\"delta\"]\n\t\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rhat\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"r\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"axis\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"axisX\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"axisY\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"B\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"agents.dipoleOrRadialField\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"rhat\",\n\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"fieldType\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fieldStr\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"reachSq\"\n\t\t\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"FieldSample\",\n\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\"rhat\": \"rhat\",\n\t\t\t\t\t\t\"strength\": \"fieldStr\",\n\t\t\t\t\t\t\"phi\": [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"B\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"B\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t}]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"agents.dipoleOrRadialField\": () =\u003e dipoleOrRadialField,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"FieldSample\": () =\u003e FieldSample,\n\t\t\t\"std.atan2\": () =\u003e atan2\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentFieldDipoleOrRadial\");\n}\nconst restOrientationAngle = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi, restMode) =\u003e {\n\t\"use gpu\";\n\treturn select(select(__tsover_mul(hash11(__tsover_add(__tsover_mul(fi, 2.3987), .517)), 3.141592653589793), f32(0), restMode \u003e .5), f32(1.5707963267948966), restMode \u003e 1.5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"fi\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"restMode\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"randAng\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash11\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2.3987\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.517\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"3.141592653589793\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"randAng\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"restMode\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1.5707963267948966\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"restMode\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"noise.hash11\": () =\u003e hash11,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"agentRestAngle\");\nfunction alignToField(layout) {\n\treturn typegpu_default.fn([\n\t\tFieldSample,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fld, theta, _fi) =\u003e {\n\t\t\"use gpu\";\n\t\treturn nematicTorque(__tsover_mul(layout.$.params.alignK, fld.strength), fld.phi, theta);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fld\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"theta\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_fi\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"agents.nematicTorque\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"alignK\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fld\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"fld\",\n\t\t\t\t\t\t\"phi\"\n\t\t\t\t\t],\n\t\t\t\t\t\"theta\"\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"agents.nematicTorque\": () =\u003e nematicTorque,\n\t\t\t\"layout\": () =\u003e layout\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"torqueAlignToField\");\n}\nfunction restTorque(layout) {\n\treturn typegpu_default.fn([\n\t\tFieldSample,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_fld, theta, fi) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\treturn nematicTorque(prm.restK, restOrientationAngle(fi, prm.restMode), theta);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"_fld\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"theta\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fi\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"prm\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"agents.nematicTorque\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"restK\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"restOrientationAngle\",\n\t\t\t\t\t\t[\"fi\", [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"restMode\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"theta\"\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"agents.nematicTorque\": () =\u003e nematicTorque,\n\t\t\t\"restOrientationAngle\": () =\u003e restOrientationAngle\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"torqueRest\");\n}\nfunction composeTorques(parts) {\n\treturn parts.reduce((acc, part, index) =\u003e typegpu_default.fn([\n\t\tFieldSample,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fld, theta, fi) =\u003e {\n\t\t\"use gpu\";\n\t\treturn __tsover_add(acc(fld, theta, fi), part(fld, theta, fi));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fld\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"theta\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fi\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"acc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"fld\",\n\t\t\t\t\t\t\"theta\",\n\t\t\t\t\t\t\"fi\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"part\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"fld\",\n\t\t\t\t\t\t\"theta\",\n\t\t\t\t\t\t\"fi\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"acc\": () =\u003e acc,\n\t\t\t\"part\": () =\u003e part\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`torqueSum${index}`));\n}\nfunction jitteredGridHome(layout, cfg) {\n\tconst OVERSCAN = cfg.overscan;\n\treturn typegpu_default.fn([f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst cols = prm.gridCols;\n\t\tconst row = floor(__tsover_div(fi, max(cols, 1)));\n\t\tconst col = __tsover_sub(fi, __tsover_mul(row, max(cols, 1)));\n\t\tconst h = hash22(vec2f(__tsover_add(__tsover_mul(fi, .7548), .11), __tsover_add(__tsover_mul(fi, 1.3236), 5.31)));\n\t\tconst jx = __tsover_mul(__tsover_sub(h.x, .5), prm.jitter);\n\t\tconst jy = __tsover_mul(__tsover_sub(h.y, .5), prm.jitter);\n\t\treturn vec2f(__tsover_sub(__tsover_mul(__tsover_add(__tsover_add(col, .5), jx), prm.cellW), OVERSCAN), __tsover_sub(__tsover_mul(__tsover_add(__tsover_add(row, .5), jy), prm.cellH), OVERSCAN));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fi\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cols\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"gridCols\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"row\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"cols\", [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"col\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"cols\", [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash22\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.7548\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.11\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.3236\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"5.31\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"jx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"jitter\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"jy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"jitter\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"jx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"cellW\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"OVERSCAN\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"jy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"cellH\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"OVERSCAN\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"noise.hash22\": () =\u003e hash22,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"OVERSCAN\": () =\u003e OVERSCAN\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"agentJitteredHome\");\n}\nfunction orientation2d(layout, cfg) {\n\tconst { home, fieldAt } = cfg;\n\tconst total = composeTorques(cfg.torques);\n\tconst MAX_OFFSET = cfg.maxOffset;\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst st = layout.$.agents[i];\n\t\tlet off = vec2f(st.x, st.y);\n\t\tlet theta = st.z;\n\t\tlet omega = st.w;\n\t\tconst dt = prm.dt;\n\t\tconst fi = f32(i);\n\t\tconst homeP = home(fi);\n\t\tconst fld = fieldAt(vec2f(__tsover_add(homeP.x, off.x), __tsover_add(homeP.y, off.y)));\n\t\tomega = __tsover_add(omega, __tsover_mul(total(fld, theta, fi), dt));\n\t\tomega = __tsover_mul(omega, exp(__tsover_mul(__tsover_mul(prm.damping, dt), -1)));\n\t\ttheta = __tsover_add(theta, __tsover_mul(omega, dt));\n\t\tconst raw = clamp(__tsover_div(abs(omega), max(prm.omegaRef, 1e-5)), 0, 1);\n\t\tconst cooled = __tsover_mul(layout.$.agit[i], exp(__tsover_mul(dt, -prm.agitCool)));\n\t\tlayout.$.agit[i] = max(raw, cooled);\n\t\tconst pull = fld.rhat.mul(__tsover_mul(__tsover_mul(prm.pullK, fld.strength), -1));\n\t\toff = off.add(pull.mul(dt));\n\t\toff = off.mul(exp(__tsover_mul(__tsover_mul(prm.homeK, dt), -1)));\n\t\tconst offLen = length(off);\n\t\toff = select(off, off.div(max(offLen, 1e-5)).mul(MAX_OFFSET), offLen \u003e MAX_OFFSET);\n\t\tlayout.$.agents[i] = vec4f(off.x, off.y, theta, omega);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"st\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"off\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"theta\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"omega\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dt\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homeP\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"home\",\n\t\t\t\t\t\t[\"fi\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"homeP\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"homeP\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fld\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t[\"pos\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"omega\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"omega\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"total\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"fld\",\n\t\t\t\t\t\t\t\t\t\"theta\",\n\t\t\t\t\t\t\t\t\t\"fi\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"omega\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"omega\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"damping\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"theta\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"theta\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"omega\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"raw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[\"omega\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"omegaRef\"\n\t\t\t\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cooled\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"agit\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dt\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"agitCool\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agit\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"raw\", \"cooled\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pull\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"fld\",\n\t\t\t\t\t\t\t\t\"rhat\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"pullK\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"fld\",\n\t\t\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"off\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pull\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"dt\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"off\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\"homeK\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"offLen\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"off\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"off\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t[\"offLen\", [5, \"0.00001\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"MAX_OFFSET\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"offLen\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\"MAX_OFFSET\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"theta\",\n\t\t\t\t\t\t\t\"omega\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"home\": () =\u003e home,\n\t\t\t\"fieldAt\": () =\u003e fieldAt,\n\t\t\t\"total\": () =\u003e total,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"MAX_OFFSET\": () =\u003e MAX_OFFSET,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nfunction variedHeading(layout) {\n\treturn typegpu_default.fn([f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fi) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst h = hash22(vec2f(__tsover_add(__tsover_mul(fi, .7548), .13), __tsover_add(__tsover_mul(fi, 1.3236), 5.71)));\n\t\tconst speedMul = __tsover_add(1, __tsover_mul(__tsover_sub(h.x, .5), prm.speedVar));\n\t\tconst ang = __tsover_add(prm.angleRad, __tsover_mul(__tsover_mul(__tsover_sub(h.y, .5), 2), prm.angleVarRad));\n\t\treturn vec2f(cos(ang), sin(ang)).mul(__tsover_mul(prm.driftBase, speedMul));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fi\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash22\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.7548\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.13\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.3236\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"5.71\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"speedMul\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"speedVar\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ang\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"angleRad\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"angleVarRad\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"driftBase\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"speedMul\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"noise.hash22\": () =\u003e hash22,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.sin\": () =\u003e sin\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"driftVariedHeading\");\n}\nfunction cursorGust(layout) {\n\treturn typegpu_default.fn([vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tlet impulse = vec2f(0, 0);\n\t\tif (prm.cursorForce \u003e 1e-5) impulse = cursorMagnet(pos.sub(vec2f(prm.cursorX, prm.cursorY)), prm.cursorRadSq, prm.cursorForce).mul(prm.dt);\n\t\treturn impulse;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"impulse\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"cursorForce\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.00001\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"impulse\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"agents.cursorMagnet\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorRadSq\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorForce\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[10, \"impulse\"]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"agents.cursorMagnet\": () =\u003e cursorMagnet\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceCursorGust\");\n}\nfunction drift2d(layout, cfg) {\n\tconst { drift: drift$1, gust } = cfg;\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst s = layout.$.agents[i];\n\t\tconst fi = f32(i);\n\t\tconst dt = prm.dt;\n\t\tlet pos = vec2f(s.x, s.y);\n\t\tlet gustV = vec2f(s.z, s.w);\n\t\tgustV = gustV.add(gust(pos));\n\t\tgustV = gustV.mul(prm.dragMul);\n\t\tpos = pos.add(drift$1(fi).add(gustV).mul(dt));\n\t\tconst wx = __tsover_sub(pos.x, __tsover_mul(floor(__tsover_div(pos.x, max(prm.domainX, 1e-4))), prm.domainX));\n\t\tconst wy = __tsover_sub(pos.y, floor(pos.y));\n\t\tlayout.$.agents[i] = vec4f(wx, wy, gustV.x, gustV.y);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dt\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"gustV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"gustV\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"gustV\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gust\",\n\t\t\t\t\t\t\t[\"pos\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"gustV\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"gustV\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"dragMul\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"drift\",\n\t\t\t\t\t\t\t\t\t\t\t[\"fi\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"gustV\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"dt\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\t\t\"domainX\"\n\t\t\t\t\t\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\"domainX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"gustV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"gustV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"gust\": () =\u003e gust,\n\t\t\t\"drift\": () =\u003e drift$1,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nvar channelLuminance = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, _a) =\u003e {\n\t\"use gpu\";\n\treturn dot(rgb, vec3f(.299, .587, .114));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"_a\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.dot\",\n\t\t\t[\"rgb\", [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar channelLuminanceInv = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, _a) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(1, dot(rgb, vec3f(.299, .587, .114)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"_a\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[\"rgb\", [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar channelRed = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, _a) =\u003e {\n\t\"use gpu\";\n\treturn rgb.x;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"_a\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t7,\n\t\t\t\"rgb\",\n\t\t\t\"x\"\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nvar channelGreen = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, _a) =\u003e {\n\t\"use gpu\";\n\treturn rgb.y;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"_a\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t7,\n\t\t\t\"rgb\",\n\t\t\t\"y\"\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nvar channelBlue = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, _a) =\u003e {\n\t\"use gpu\";\n\treturn rgb.z;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"_a\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t7,\n\t\t\t\"rgb\",\n\t\t\t\"z\"\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nvar channelSaturation = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, _a) =\u003e {\n\t\"use gpu\";\n\tconst mx = max(max(rgb.x, rgb.y), rgb.z);\n\tconst mn = min(min(rgb.x, rgb.y), rgb.z);\n\treturn __tsover_sub(mx, mn);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"_a\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"mx\",\n\t\t\t\t\"-\",\n\t\t\t\t\"mn\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min\n\t}\n}) \u0026\u0026 $.f)({}));\nvar channelAlpha = typegpu_default.fn([vec3f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((_rgb, a) =\u003e {\n\t\"use gpu\";\n\treturn a;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"_rgb\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"a\"\n\t\t}],\n\t\t\"body\": [0, [[10, \"a\"]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst channel = {\n\tluminance: channelLuminance,\n\tluminanceInverted: channelLuminanceInv,\n\tred: channelRed,\n\tgreen: channelGreen,\n\tblue: channelBlue,\n\tsaturation: channelSaturation,\n\talpha: channelAlpha,\n\tbyMode: {\n\t\t0: channelLuminance,\n\t\t1: channelLuminanceInv,\n\t\t2: channelRed,\n\t\t3: channelGreen,\n\t\t4: channelBlue,\n\t\t5: channelSaturation,\n\t\t6: channelAlpha\n\t}\n};\nfunction cursorInView(layout, cfg) {\n\tconst PERSP_K = cfg.perspK;\n\treturn typegpu_default.fn([\n\t\tvec2f,\n\t\tvec2f,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((homeW, off, z) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = layout.$.params;\n\t\tconst rv = applyCameraRows(vec3f(__tsover_add(homeW.x, off.x), __tsover_add(homeW.y, off.y), z), P.rowX, P.rowY, P.rowZ);\n\t\tconst persp = __tsover_div(P.zoom, clamp(__tsover_sub(1, __tsover_mul(rv.z, PERSP_K)), .35, 2.6));\n\t\tconst su = __tsover_add(__tsover_add(.5, __tsover_div(__tsover_mul(rv.x, persp), P.aspect)), P.transX);\n\t\tconst sv = __tsover_add(__tsover_add(.5, __tsover_mul(rv.y, persp)), P.transY);\n\t\tconst deltaS = vec2f(__tsover_mul(__tsover_sub(su, P.pointerX), P.aspect), __tsover_sub(sv, P.pointerY));\n\t\tconst mxy = cursorMagnet(deltaS, P.cursorRadSq, P.cursorForce);\n\t\tconst mz = __tsover_mul(cursorFalloff(deltaS, P.cursorRadSq), P.cursorZForce);\n\t\treturn applyCameraRowsTransposed(vec3f(mxy.x, mxy.y, mz), P.rowX, P.rowY, P.rowZ);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"homeW\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"off\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"z\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pw\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"homeW\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"homeW\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"agents.applyCameraRows\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"pw\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"rowX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"rowY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"rowZ\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"persp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"zoom\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"PERSP_K\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0.35\"],\n\t\t\t\t\t\t\t\t[5, \"2.6\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"su\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"transX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"persp\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"transY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"deltaS\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"pointerX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"pointerY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"mxy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"agents.cursorMagnet\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"deltaS\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"cursorRadSq\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"cursorForce\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"mz\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"agents.cursorFalloff\",\n\t\t\t\t\t\t\t[\"deltaS\", [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"cursorRadSq\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"cursorZForce\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"agents.applyCameraRowsTransposed\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"mxy\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"mxy\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"rowX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"rowY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"rowZ\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"agents.applyCameraRows\": () =\u003e applyCameraRows,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"PERSP_K\": () =\u003e PERSP_K,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"agents.cursorMagnet\": () =\u003e cursorMagnet,\n\t\t\t\"agents.cursorFalloff\": () =\u003e cursorFalloff,\n\t\t\t\"agents.applyCameraRowsTransposed\": () =\u003e applyCameraRowsTransposed\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"forceCursorInView\");\n}\nfunction relief(layout, cfg) {\n\tconst { channel: channel$1, cursor } = cfg;\n\tconst STIFF = cfg.stiffness;\n\tconst MAX_SPEED = cfg.maxSpeed;\n\tconst MIN_ALPHA = cfg.minAlpha;\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((gx, gy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = layout.$.params;\n\t\tconst i = __tsover_add(__tsover_mul(gy, u32(P.gridW)), gx);\n\t\tconst homeU = __tsover_div(__tsover_add(f32(gx), .5), P.gridW);\n\t\tconst homeV = __tsover_div(__tsover_add(f32(gy), .5), P.gridH);\n\t\tconst dims = textureDimensions(layout.$.src);\n\t\tconst bf = bilinearTexelFrame(vec2f(homeU, homeV), vec2f(f32(dims.x), f32(dims.y)));\n\t\tconst c00 = textureLoad(layout.$.src, vec2u(bf.x0, bf.y0), 0);\n\t\tconst c10 = textureLoad(layout.$.src, vec2u(bf.x1, bf.y0), 0);\n\t\tconst c01 = textureLoad(layout.$.src, vec2u(bf.x0, bf.y1), 0);\n\t\tconst c11 = textureLoad(layout.$.src, vec2u(bf.x1, bf.y1), 0);\n\t\tconst prem = mix(mix(c00, c10, bf.fx), mix(c01, c11, bf.fx), bf.fy);\n\t\tconst a = prem.w;\n\t\tconst rgb = prem.xyz.div(max(a, f32(1e-4)));\n\t\tlayout.$.col[i] = vec4f(rgb.x, rgb.y, rgb.z, a);\n\t\tconst ch = channel$1(rgb, a);\n\t\tconst targetZ = __tsover_mul(__tsover_sub(ch, .5), P.depth);\n\t\tconst p4 = layout.$.pos[i];\n\t\tconst v4 = layout.$.vel[i];\n\t\tconst dt = P.dt;\n\t\tconst needsSnap = P.snap \u003e .5 || v4.w \u003c .5;\n\t\tconst homeW = vec2f(__tsover_mul(__tsover_sub(homeU, .5), P.aspect), __tsover_sub(homeV, .5));\n\t\tconst off = vec2f(p4.x, p4.y);\n\t\tconst cf = cursor(homeW, off, p4.z);\n\t\tconst F = vec3f(__tsover_mul(off.x, -STIFF), __tsover_mul(off.y, -STIFF), __tsover_mul(__tsover_sub(targetZ, p4.z), STIFF)).add(cf);\n\t\tlet v3 = integrateSemiImplicitEuler(vec3f(v4.x, v4.y, v4.z), F, dt, P.dragMul, f32(MAX_SPEED));\n\t\tlet offN = off.add(vec2f(v3.x, v3.y).mul(dt));\n\t\tlet curZ = __tsover_add(p4.z, __tsover_mul(v3.z, dt));\n\t\toffN = select(offN, vec2f(0, 0), needsSnap);\n\t\tcurZ = select(curZ, targetZ, needsSnap);\n\t\tv3 = select(v3, vec3f(0, 0, 0), needsSnap);\n\t\tconst seed = hash12(vec2f(__tsover_add(f32(gx), .5), __tsover_add(f32(gy), .5)));\n\t\tconst seenN = select(v4.w, f32(1), a \u003e MIN_ALPHA);\n\t\tlayout.$.pos[i] = vec4f(offN.x, offN.y, curZ, seed);\n\t\tlayout.$.vel[i] = vec4f(v3.x, v3.y, v3.z, seenN);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"gridW\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"gx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homeU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"gridW\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homeV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"gridH\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dims\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureDimensions\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"agents.bilinearTexelFrame\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"homeU\", \"homeV\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c00\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c10\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c01\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"c11\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prem\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prem\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"prem\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"a\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0.0001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"col\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ch\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"channel\",\n\t\t\t\t\t\t[\"rgb\", \"a\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"targetZ\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ch\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"depth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p4\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v4\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dt\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"needsSnap\",\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"snap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homeW\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"homeU\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"homeV\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"off\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"cursor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"homeW\",\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"F\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"STIFF\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"STIFF\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"targetZ\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"STIFF\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"cf\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"v3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"integrateSemiImplicitEuler\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"F\",\n\t\t\t\t\t\t\t\"dt\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"dragMul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"MAX_SPEED\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"offN\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"dt\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"curZ\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p4\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"offN\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"offN\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"needsSnap\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"curZ\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"curZ\",\n\t\t\t\t\t\t\t\"targetZ\",\n\t\t\t\t\t\t\t\"needsSnap\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"v3\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"needsSnap\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.hash12\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"seenN\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v4\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\"MIN_ALPHA\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"pos\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"offN\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"offN\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"curZ\",\n\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"v3\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"seenN\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.textureDimensions\": () =\u003e textureDimensions,\n\t\t\t\"agents.bilinearTexelFrame\": () =\u003e bilinearTexelFrame,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"channel\": () =\u003e channel$1,\n\t\t\t\"cursor\": () =\u003e cursor,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"STIFF\": () =\u003e STIFF,\n\t\t\t\"integrateSemiImplicitEuler\": () =\u003e integrateSemiImplicitEuler,\n\t\t\t\"MAX_SPEED\": () =\u003e MAX_SPEED,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"noise.hash12\": () =\u003e hash12,\n\t\t\t\"MIN_ALPHA\": () =\u003e MIN_ALPHA\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nfunction advect2d(layout, cfg) {\n\tconst N = cfg.gridN;\n\tconst INERTIA_RATE = cfg.inertiaRate;\n\tconst HOME_RATE = cfg.homeRate;\n\tconst R2A = R2_ALPHA[0];\n\tconst R2B = R2_ALPHA[1];\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst a = layout.$.agents[i];\n\t\tconst pos = vec2f(a.x, a.y);\n\t\tconst dt = prm.dt;\n\t\tconst aspect = max(prm.aspect, 1e-5);\n\t\tconst NF = f32(N);\n\t\tconst bf = bilinearTexelFrame(vec2f(__tsover_div(pos.x, aspect), pos.y), vec2f(NF, NF));\n\t\tconst v00 = textureLoad(layout.$.velTex, vec2u(bf.x0, bf.y0), 0);\n\t\tconst v10 = textureLoad(layout.$.velTex, vec2u(bf.x1, bf.y0), 0);\n\t\tconst v01 = textureLoad(layout.$.velTex, vec2u(bf.x0, bf.y1), 0);\n\t\tconst v11 = textureLoad(layout.$.velTex, vec2u(bf.x1, bf.y1), 0);\n\t\tconst gvx = mix(mix(v00.x, v10.x, bf.fx), mix(v01.x, v11.x, bf.fx), bf.fy);\n\t\tconst gvy = mix(mix(v00.y, v10.y, bf.fx), mix(v01.y, v11.y, bf.fx), bf.fy);\n\t\tconst fieldVx = __tsover_mul(__tsover_mul(__tsover_div(gvx, NF), aspect), prm.advect);\n\t\tconst fieldVy = __tsover_mul(__tsover_div(gvy, NF), prm.advect);\n\t\tconst blend = __tsover_sub(1, exp(__tsover_mul(__tsover_mul(dt, INERTIA_RATE), -1)));\n\t\tconst fi = f32(i);\n\t\tconst homeX = __tsover_mul(fract(__tsover_add(.5, __tsover_mul(fi, R2A))), aspect);\n\t\tconst homeY = fract(__tsover_add(.5, __tsover_mul(fi, R2B)));\n\t\tconst velX = __tsover_add(mix(a.z, fieldVx, blend), __tsover_mul(__tsover_sub(homeX, pos.x), __tsover_mul(HOME_RATE, dt)));\n\t\tconst velY = __tsover_add(mix(a.w, fieldVy, blend), __tsover_mul(__tsover_sub(homeY, pos.y), __tsover_mul(HOME_RATE, dt)));\n\t\tconst nposX = clamp(__tsover_add(pos.x, __tsover_mul(velX, dt)), 0, aspect);\n\t\tconst nposY = clamp(__tsover_add(pos.y, __tsover_mul(velY, dt)), 0, 1);\n\t\tlayout.$.agents[i] = vec4f(nposX, nposY, velX, velY);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dt\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"NF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"N\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"agents.bilinearTexelFrame\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"NF\", \"NF\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v00\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v10\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y0\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v01\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x0\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v11\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"velTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"x1\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\"y1\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gvx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gvy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v00\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v10\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v01\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"v11\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bf\",\n\t\t\t\t\t\t\t\t\"fy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fieldVx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gvx\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"NF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"advect\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fieldVy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gvy\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"NF\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"advect\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"blend\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dt\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"INERTIA_RATE\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homeX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"R2A\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"homeY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"R2B\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"velX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fieldVx\",\n\t\t\t\t\t\t\t\t\"blend\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"homeX\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"HOME_RATE\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"velY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fieldVy\",\n\t\t\t\t\t\t\t\t\"blend\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"homeY\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"HOME_RATE\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nposX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"velX\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nposY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"velY\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"agents\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"nposX\",\n\t\t\t\t\t\t\t\"nposY\",\n\t\t\t\t\t\t\t\"velX\",\n\t\t\t\t\t\t\t\"velY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"N\": () =\u003e N,\n\t\t\t\"agents.bilinearTexelFrame\": () =\u003e bilinearTexelFrame,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"INERTIA_RATE\": () =\u003e INERTIA_RATE,\n\t\t\t\"std.fract\": () =\u003e fract,\n\t\t\t\"R2A\": () =\u003e R2A,\n\t\t\t\"R2B\": () =\u003e R2B,\n\t\t\t\"HOME_RATE\": () =\u003e HOME_RATE,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(cfg.name);\n}\nconst force = {\n\tpressure,\n\tcontainment,\n\tcursorXY,\n\tgravity,\n\tturbulence,\n\tflocking,\n\tcursorSteer,\n\twallTurn,\n\tcursorGust,\n\tcursorInView\n};\nconst torque = {\n\talignToField,\n\trest: restTorque\n};\nconst field = {\n\tdipoleOrRadial,\n\tjitteredGridHome\n};\nconst drift = { variedHeading };\nconst integrator = {\n\tforces3d,\n\tsteering2d,\n\torientation2d,\n\tdrift2d,\n\trelief,\n\tadvect2d\n};\nvar extrudeZ = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((d2, wz) =\u003e {\n\t\"use gpu\";\n\tconst ox = max(d2, 0);\n\tconst oz = max(wz, 0);\n\treturn __tsover_add(min(max(d2, wz), 0), sqrt(__tsover_add(__tsover_mul(ox, ox), __tsover_mul(oz, oz))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"d2\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"wz\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ox\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"d2\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oz\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"wz\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"d2\", \"wz\"]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ox\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"oz\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"oz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"shapeFieldExtrudeZ\");\nfunction analyticExtruded(layout, sdf2d) {\n\treturn typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p3) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst d2 = sdf2d(vec2f(__tsover_add(p3.x, .5), __tsover_sub(.5, p3.y)), prm.saRadius, prm.saSides, prm.saRounding, prm.saInnerRatio, prm.saRotation, prm.saHeight, prm.saOffset, prm.saAperture).x;\n\t\treturn extrudeZ(d2, __tsover_sub(abs(p3.z), prm.halfDepth));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p3\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"uv2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"sdf2d\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"uv2\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saRadius\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saSides\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saRounding\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saInnerRatio\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saRotation\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saHeight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saOffset\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\t\t\"saAperture\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"extrudeZ\",\n\t\t\t\t\t[\"d2\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"halfDepth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"sdf2d\": () =\u003e sdf2d,\n\t\t\t\"extrudeZ\": () =\u003e extrudeZ,\n\t\t\t\"std.abs\": () =\u003e abs\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"shapeFieldAnalyticExtruded\");\n}\nfunction svgExtruded(layout, svgLayout, cfg) {\n\tconst SIZE = cfg.size;\n\treturn typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p3) =\u003e {\n\t\t\"use gpu\";\n\t\tconst prm = layout.$.params;\n\t\tconst sizeM1 = __tsover_sub(SIZE, 1);\n\t\tconst tx = clamp(i32(__tsover_mul(__tsover_add(p3.x, .5), SIZE)), 0, sizeM1);\n\t\tconst ty = clamp(i32(__tsover_mul(__tsover_sub(.5, p3.y), SIZE)), 0, sizeM1);\n\t\tconst d2 = textureLoad(svgLayout.$.sdfSource, vec2u(u32(tx), u32(ty)), 0).x;\n\t\tconst exX = max(__tsover_sub(abs(p3.x), .5), 0);\n\t\tconst exY = max(__tsover_sub(abs(p3.y), .5), 0);\n\t\treturn extrudeZ(__tsover_add(d2, sqrt(__tsover_add(__tsover_mul(exX, exX), __tsover_mul(exY, exY)))), __tsover_sub(abs(p3.z), prm.halfDepth));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p3\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"prm\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sizeM1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"SIZE\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"SIZE\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"sizeM1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ty\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"SIZE\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"sizeM1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"svgLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sdfSource\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"tx\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"ty\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"exX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"exY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d2e\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"exX\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"exX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"exY\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"exY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"extrudeZ\",\n\t\t\t\t\t[\"d2e\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p3\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"prm\",\n\t\t\t\t\t\t\t\"halfDepth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"SIZE\": () =\u003e SIZE,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"svgLayout\": () =\u003e svgLayout,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"extrudeZ\": () =\u003e extrudeZ\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"shapeFieldSvgExtruded\");\n}\nfunction analytic3d(layout, baked) {\n\treturn typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p3) =\u003e {\n\t\t\"use gpu\";\n\t\treturn baked(rotateVec3(p3, layout.$.params.rot));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p3\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"baked\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdf3d.rotateVec3\",\n\t\t\t\t\t[\"p3\", [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"rot\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"baked\": () =\u003e baked,\n\t\t\t\"sdf3d.rotateVec3\": () =\u003e rotateVec3,\n\t\t\t\"layout\": () =\u003e layout\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"shapeFieldAnalytic3d\");\n}\nfunction svgLifted3d(layout, baked) {\n\treturn typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p3) =\u003e {\n\t\t\"use gpu\";\n\t\tconst ps = rotateVec3(p3, layout.$.params.rot);\n\t\tconst exX = max(__tsover_sub(abs(ps.x), .5), 0);\n\t\tconst exY = max(__tsover_sub(abs(ps.y), .5), 0);\n\t\treturn __tsover_add(baked(ps), sqrt(__tsover_add(__tsover_mul(exX, exX), __tsover_mul(exY, exY))));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p3\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ps\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdf3d.rotateVec3\",\n\t\t\t\t\t\t[\"p3\", [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"rot\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"exX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ps\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"exY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ps\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"baked\",\n\t\t\t\t\t\t[\"ps\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"exX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"exX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"exY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"exY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"sdf3d.rotateVec3\": () =\u003e rotateVec3,\n\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"baked\": () =\u003e baked,\n\t\t\t\"std.sqrt\": () =\u003e sqrt\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"shapeFieldSvgLifted3d\");\n}\nconst shapeField = {\n\tanalyticExtruded,\n\tsvgExtruded,\n\tanalytic3d,\n\tsvgLifted3d\n};\nfunction expDecay(rate, dt) {\n\treturn Math.exp(-rate * dt);\n}\nfunction pointerToShapeLocal(opts) {\n\tconst dxAc = (opts.pointerX - opts.centerX) * opts.aspect;\n\tconst dyv = opts.pointerY - opts.centerYv;\n\treturn {\n\t\tx: (dxAc * opts.rotC + dyv * opts.rotS) / opts.scale,\n\t\ty: -((dyv * opts.rotC - dxAc * opts.rotS) / opts.scale)\n\t};\n}\nfunction omegaFromRotationDeltas(prev, next, dt) {\n\tif (!prev) return null;\n\tconst wx = (next.x - prev.x) / dt;\n\tconst wy = (next.y - prev.y) / dt;\n\tconst wz = (next.z - prev.z) / dt;\n\tconst s = {\n\t\tcx: Math.cos(next.x),\n\t\tsx: Math.sin(next.x),\n\t\tcy: Math.cos(next.y),\n\t\tsy: Math.sin(next.y),\n\t\tcz: Math.cos(next.z),\n\t\tsz: Math.sin(next.z)\n\t};\n\tconst ex = rotateVecCpu(1, 0, 0, s);\n\tconst ey = rotateVecCpu(0, 1, 0, s);\n\tconst ez = rotateVecCpu(0, 0, 1, s);\n\treturn {\n\t\tx: -(ex.x * wx + ex.y * wy + ex.z * wz),\n\t\ty: -(ey.x * wx + ey.y * wy + ey.z * wz),\n\t\tz: -(ez.x * wx + ez.y * wy + ez.z * wz)\n\t};\n}\nfunction entrainmentFromOmega(om, opts) {\n\tconst omLen = Math.hypot(om.x, om.y, om.z);\n\tconst omCap = omLen \u003e opts.cap ? opts.cap / omLen : 1;\n\treturn {\n\t\tomegaX: om.x * omCap,\n\t\tomegaY: om.y * omCap,\n\t\tomegaZ: om.z * omCap,\n\t\tentrain: Math.min(1, omLen * opts.gainRate) * opts.gainMax\n\t};\n}\nfunction createMotionAxis(opts) {\n\tconst smoothing = opts?.smoothing ?? .1;\n\tconst teleport = opts?.teleport ?? .25;\n\tlet lastX = .5;\n\tlet lastY = .5;\n\tlet axisX = 1;\n\tlet axisY = 0;\n\treturn { update(x, y) {\n\t\tconst mvx = x - lastX;\n\t\tconst mvy = y - lastY;\n\t\tconst mvLen = Math.hypot(mvx, mvy);\n\t\tif (mvLen \u003e .001 \u0026\u0026 mvLen \u003c teleport) {\n\t\t\tconst nx = mvx / mvLen;\n\t\t\tconst ny = mvy / mvLen;\n\t\t\taxisX += (nx - axisX) * smoothing;\n\t\t\taxisY += (ny - axisY) * smoothing;\n\t\t\tconst al = Math.hypot(axisX, axisY) || 1;\n\t\t\taxisX /= al;\n\t\t\taxisY /= al;\n\t\t}\n\t\tlastX = x;\n\t\tlastY = y;\n\t\treturn {\n\t\t\tx: axisX,\n\t\t\ty: axisY\n\t\t};\n\t} };\n}\nfunction fitJitteredGrid(count, domainX, overscan) {\n\tconst spanX = domainX + 2 * overscan;\n\tconst spanY = 1 + 2 * overscan;\n\tconst cols = Math.max(1, Math.round(Math.sqrt(count * (spanX / spanY))));\n\tconst rows = Math.max(1, Math.ceil(count / cols));\n\treturn {\n\t\tcols,\n\t\tcellW: spanX / cols,\n\t\tcellH: spanY / rows\n\t};\n}\nfunction fitIsoGrid(count, aspect, min$1, max$1) {\n\tlet w = Math.round(Math.sqrt(count * aspect));\n\tw = Math.min(Math.max(w, min$1), max$1);\n\tlet h = Math.round(count / w);\n\th = Math.min(Math.max(h, min$1), max$1);\n\treturn {\n\t\tw,\n\t\th\n\t};\n}\nfunction cameraRowsYDown(rx, ry, rz) {\n\tconst cx = Math.cos(rx), sx = Math.sin(rx);\n\tconst cy = Math.cos(ry), sy = Math.sin(ry);\n\tconst cz = Math.cos(rz), sz = Math.sin(rz);\n\tconst m00 = cz * cy, m01 = cz * sy * sx - sz * cx, m02 = cz * sy * cx + sz * sx;\n\tconst m10 = sz * cy, m11 = sz * sy * sx + cz * cx, m12 = sz * sy * cx - cz * sx;\n\tconst m20 = -sy, m21 = cy * sx, m22 = cy * cx;\n\treturn {\n\t\trowX: [\n\t\t\tm00,\n\t\t\t-m01,\n\t\t\tm02\n\t\t],\n\t\trowY: [\n\t\t\t-m10,\n\t\t\tm11,\n\t\t\t-m12\n\t\t],\n\t\trowZ: [\n\t\t\tm20,\n\t\t\t-m21,\n\t\t\tm22\n\t\t]\n\t};\n}\nfunction r3SubCellOffset(frameIdx, cell) {\n\treturn {\n\t\tx: frameIdx * R3_ALPHA[0] % 1 * cell,\n\t\ty: frameIdx * R3_ALPHA[1] % 1 * cell,\n\t\tz: frameIdx * R3_ALPHA[2] % 1 * cell\n\t};\n}\nconst renderAgents = {\n\torientedWorld(layout, cfg) {\n\t\tconst { ramp, names, extraOnSplat,...splatCfg } = cfg;\n\t\treturn {\n\t\t\tsplat: {\n\t\t\t\tkernel: splat.orientedWorld(layout, {\n\t\t\t\t\t...splatCfg,\n\t\t\t\t\tname: names.splat\n\t\t\t\t}),\n\t\t\t\tthreads: \"agents\",\n\t\t\t\t...extraOnSplat ? { extra: true } : {}\n\t\t\t},\n\t\t\tresolve: {\n\t\t\t\tkernel: resolve.ramp(layout, {\n\t\t\t\t\tinvGain: 1 / 255,\n\t\t\t\t\t...ramp,\n\t\t\t\t\tres: cfg.res,\n\t\t\t\t\tname: names.resolve\n\t\t\t\t}),\n\t\t\t\tthreads: \"fixed\",\n\t\t\t\tsize: [cfg.res, cfg.res]\n\t\t\t}\n\t\t};\n\t},\n\tpointWorld(layout, cfg) {\n\t\tconst { names,...splatCfg } = cfg;\n\t\treturn {\n\t\t\tsplat: {\n\t\t\t\tkernel: splat.pointWorld(layout, {\n\t\t\t\t\t...splatCfg,\n\t\t\t\t\tname: names.splat\n\t\t\t\t}),\n\t\t\t\tthreads: \"agents\"\n\t\t\t},\n\t\t\tresolve: {\n\t\t\t\tkernel: resolve.tint(layout, {\n\t\t\t\t\tres: cfg.res,\n\t\t\t\t\tname: names.resolve\n\t\t\t\t}),\n\t\t\t\tthreads: \"fixed\",\n\t\t\t\tsize: [cfg.res, cfg.res]\n\t\t\t}\n\t\t};\n\t},\n\tvolume(layout, cfg) {\n\t\tconst { ramp, names, extraOnSplat,...splatCfg } = cfg;\n\t\treturn {\n\t\t\tsplat: {\n\t\t\t\tkernel: splat.volume(layout, {\n\t\t\t\t\t...splatCfg,\n\t\t\t\t\tnames\n\t\t\t\t}),\n\t\t\t\tthreads: \"agents\",\n\t\t\t\t...extraOnSplat ? { extra: true } : {}\n\t\t\t},\n\t\t\tresolve: {\n\t\t\t\tkernel: resolve.ramp(layout, {\n\t\t\t\t\tinvGain: 1 / 256,\n\t\t\t\t\t...ramp,\n\t\t\t\t\tres: cfg.outRes,\n\t\t\t\t\tname: names.resolve\n\t\t\t\t}),\n\t\t\t\tthreads: \"fixed\",\n\t\t\t\tsize: [cfg.outRes, cfg.outRes]\n\t\t\t}\n\t\t};\n\t},\n\trelief(layout, cfg) {\n\t\tconst { out, weightedColor, names,...splatCfg } = cfg;\n\t\treturn {\n\t\t\tsplat: {\n\t\t\t\tkernel: splat.relief(layout, {\n\t\t\t\t\t...splatCfg,\n\t\t\t\t\tname: names.splat\n\t\t\t\t}),\n\t\t\t\tthreads: \"grid\"\n\t\t\t},\n\t\t\tresolve: {\n\t\t\t\tkernel: resolve.weightedColor(layout, {\n\t\t\t\t\tfp: cfg.fp,\n\t\t\t\t\talphaK: weightedColor.alphaK,\n\t\t\t\t\tname: names.resolve\n\t\t\t\t}),\n\t\t\t\tthreads: \"fixed\",\n\t\t\t\tsize: out\n\t\t\t}\n\t\t};\n\t}\n};\nfunction agentSim(cfg) {\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tif (cfg.childTexture \u0026\u0026 !params.childNode) return null;\n\t\t\tif (!params.gpu?.root) return null;\n\t\t\tconst childTexture = cfg.childTexture ? params.convertToTexture(params.childNode) : null;\n\t\t\tconst baked = cfg.bake(params);\n\t\t\tif (!baked) return null;\n\t\t\tconst sys = createAgentSystem(params, {\n\t\t\t\tlayout: cfg.layout,\n\t\t\t\tparams: cfg.params,\n\t\t\t\tmaxAgents: cfg.maxAgents,\n\t\t\t\toutput: baked.outputSize ? {\n\t\t\t\t\t...cfg.output,\n\t\t\t\t\tsize: baked.outputSize\n\t\t\t\t} : cfg.output,\n\t\t\t\t...cfg.countCap ? { countCap: cfg.countCap } : {},\n\t\t\t\t...cfg.externalKeys ? { externalKeys: cfg.externalKeys } : {},\n\t\t\t\t...baked.extraBindGroup ? { extraBindGroup: baked.extraBindGroup } : {},\n\t\t\t\tpipelines: baked.pipelines,\n\t\t\t\tprogram: baked.program,\n\t\t\t\t...baked.initStep ? { initStep: baked.initStep } : {}\n\t\t\t});\n\t\t\tif (!sys) return null;\n\t\t\tif (baked.bindNow) sys.bindExternal(baked.bindNow);\n\t\t\tconst tick = cfg.frame(sys, params, baked.setup);\n\t\t\treturn {\n\t\t\t\toutputs: childTexture ? {\n\t\t\t\t\tchildTexture,\n\t\t\t\t\t...sys.outputs\n\t\t\t\t} : sys.outputs,\n\t\t\t\t...childTexture \u0026\u0026 cfg.childTexture ? { bindInputs: (resolveInput) =\u003e {\n\t\t\t\t\tconst src = resolveInput(childTexture.key);\n\t\t\t\t\tif (!src) return;\n\t\t\t\t\tsys.bindExternal({ [cfg.childTexture.externalKey]: src.texture });\n\t\t\t\t} } : {},\n\t\t\t\tgetComputeNodes: tick\n\t\t\t};\n\t\t},\n\t\tgpu: { fragment: (params) =\u003e {\n\t\t\tconst { ctx, childNode, computeOutputs } = params;\n\t\t\tconst field$1 = computeOutputs?.[cfg.fragment.output];\n\t\t\tif (!field$1) return cfg.fragment.fallback === \"child\" ? childNode ?? ZERO : ZERO;\n\t\t\tconst sampled = field$1.sample(ctx.uv, \"linearClamp\");\n\t\t\treturn cfg.fragment.compose ? cfg.fragment.compose(sampled, params) : sampled;\n\t\t} }\n\t};\n}\nexport { integrator as _, entrainmentFromOmega as a, fitJitteredGrid as c, r3SubCellOffset as d, shapeField as f, force as g, field as h, createMotionAxis as i, omegaFromRotationDeltas as l, drift as m, renderAgents as n, expDecay as o, channel as p, cameraRowsYDown as r, fitIsoGrid as s, agentSim as t, pointerToShapeLocal as u, torque as v, pointSlot as y };\n","import { Gn as typegpu_default, Mr as vec4f, Or as vec2f, ar as clamp, cr as dot, jr as vec3f, qr as f32, tr as abs, vn as hash12, yr as pow } from \"./lower-Bd2jez_2.js\";\ntypegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_add(__tsover_mul(rgb.x, .2126), __tsover_mul(rgb.y, .7152)), __tsover_mul(rgb.z, .0722));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2126\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.7152\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"z\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.0722\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_add(__tsover_mul(rgb.x, .299), __tsover_mul(rgb.y, .587)), __tsover_mul(rgb.z, .114));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.299\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.587\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"z\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.114\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst luma709Dot = typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\treturn dot(rgb, vec3f(.2126, .7152, .0722));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.dot\",\n\t\t\t[\"rgb\", [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst luma601Dot = typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\treturn dot(rgb, vec3f(.299, .587, .114));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.dot\",\n\t\t\t[\"rgb\", [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, contrast, pivot) =\u003e {\n\t\"use gpu\";\n\treturn clamp(__tsover_add(__tsover_mul(__tsover_sub(x, pivot), contrast), pivot), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pivot\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"pivot\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"contrast\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"pivot\"\n\t\t\t\t],\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"1\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp }\n}) \u0026\u0026 $.f)({}));\nconst signedToUnit = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_mul(v, .5), .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"v\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"v\",\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[5, \"0.5\"]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(1, abs(v));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"v\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[\"v\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.abs\": () =\u003e abs }\n}) \u0026\u0026 $.f)({}));\nconst toneUnitPivotInverted = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((noise01, contrast, balance) =\u003e {\n\t\"use gpu\";\n\tconst k = clamp(__tsover_add(__tsover_add(__tsover_mul(__tsover_sub(noise01, .5), __tsover_add(contrast, 1)), .5), balance), 0, 1);\n\treturn __tsover_sub(1, k);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"noise01\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"balance\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"k\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"noise01\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"contrast\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"balance\"\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t\"k\"\n\t\t]]]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp }\n}) \u0026\u0026 $.f)({}));\nconst toneSignedInverted = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v, contrast, balance) =\u003e {\n\t\"use gpu\";\n\tconst adjusted = __tsover_add(__tsover_mul(v, __tsover_add(contrast, 1)), balance);\n\tconst k = clamp(__tsover_add(__tsover_mul(adjusted, .5), .5), 0, 1);\n\treturn __tsover_sub(1, k);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"balance\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"adjusted\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"contrast\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"balance\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"adjusted\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t\"k\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp }\n}) \u0026\u0026 $.f)({}));\nconst toneUnitMultiplicative = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v, contrast, balance) =\u003e {\n\t\"use gpu\";\n\tconst signed = __tsover_sub(__tsover_mul(v, 2), 1);\n\tconst adjusted = __tsover_add(__tsover_mul(signed, contrast), balance);\n\treturn clamp(__tsover_add(__tsover_mul(adjusted, .5), .5), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"balance\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"signed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"adjusted\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"signed\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"contrast\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"balance\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"adjusted\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp }\n}) \u0026\u0026 $.f)({}));\nconst toneGlowInverted = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v, glow, contrast, balance) =\u003e {\n\t\"use gpu\";\n\tconst spread = pow(v, __tsover_div(5, glow));\n\tconst contrasted = clamp(__tsover_add(__tsover_mul(__tsover_sub(spread, .5), contrast), .5), 0, 1);\n\tconst balanceShift = __tsover_sub(__tsover_div(balance, 100), .5);\n\tconst balanced = clamp(__tsover_add(contrasted, balanceShift), 0, 1);\n\treturn __tsover_sub(1, balanced);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glow\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"balance\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spread\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"v\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"5\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"glow\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"contrasted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"spread\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"contrast\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"balanceShift\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"balance\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"100\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"balanced\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"contrasted\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"balanceShift\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t\"balanced\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction toneRemap(options) {\n\tconst { domain, contrastMode, invert, glowGamma = false, balance = \"plain\" } = options;\n\tif (glowGamma) {\n\t\tif (domain === \"unit\" \u0026\u0026 contrastMode === \"multiplicative\" \u0026\u0026 invert \u0026\u0026 balance === \"percentCentred\") return toneGlowInverted;\n\t} else if (balance === \"plain\") {\n\t\tif (domain === \"unit\" \u0026\u0026 contrastMode === \"additive\" \u0026\u0026 invert) return toneUnitPivotInverted;\n\t\tif (domain === \"signed\" \u0026\u0026 contrastMode === \"additive\" \u0026\u0026 invert) return toneSignedInverted;\n\t\tif (domain === \"unit\" \u0026\u0026 contrastMode === \"multiplicative\" \u0026\u0026 !invert) return toneUnitMultiplicative;\n\t}\n\tthrow new Error(`toneRemap: no variant for {domain: '${domain}', contrastMode: '${contrastMode}', invert: ${invert}, glowGamma: ${glowGamma}, balance: '${balance}'} — add its body to kit/tone.ts rather than approximating.`);\n}\nconst rgbDither = typegpu_default.fn([\n\tvec4f,\n\tvec2f,\n\tvec2f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, uv, viewport, animTime) =\u003e {\n\t\"use gpu\";\n\tconst n = hash12(uv.mul(viewport).add(vec2f(animTime, __tsover_mul(animTime, 1.618))));\n\treturn vec4f(clamp(base.xyz.add(__tsover_mul(__tsover_sub(n, .5), .004)), vec3f(0), vec3f(1)), base.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"viewport\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"animTime\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.618\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.004\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"rgb\", [\n\t\t\t\t\t7,\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hash12\": () =\u003e hash12,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nexport { toneRemap as a, signedToUnit as i, luma709Dot as n, toneSignedInverted as o, rgbDither as r, toneUnitPivotInverted as s, luma601Dot as t };\n","import { Cr as sin, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Tr as sqrt, _r as mix, ar as clamp, er as select, fr as floor, hr as max, in as aspectOf, jr as vec3f, lr as exp, mr as length, or as cos, qr as f32, rr as atan2, tr as abs, wr as smoothstep, yr as pow, zn as TAU } from \"./lower-Bd2jez_2.js\";\nimport { t as luma601Dot } from \"./tone-BKhfiOBn.js\";\nconst radialGaussianFalloff = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, sharpness) =\u003e {\n\t\"use gpu\";\n\treturn exp(-__tsover_mul(__tsover_mul(dist, dist), sharpness));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dist\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"sharpness\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.exp\",\n\t\t\t[[\n\t\t\t\t4,\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"sharpness\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.exp\": () =\u003e exp }\n}) \u0026\u0026 $.f)({}));\nconst anisotropicGaussianSpot = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((du, dv, sharpness) =\u003e {\n\t\"use gpu\";\n\treturn exp(__tsover_mul(__tsover_add(__tsover_mul(du, du), __tsover_mul(dv, dv)), -sharpness));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"du\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sharpness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.exp\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"du\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"du\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dv\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dv\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"sharpness\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.exp\": () =\u003e exp }\n}) \u0026\u0026 $.f)({}));\nconst radialGaussianGlow = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, lx, ly, sizeSq) =\u003e {\n\t\"use gpu\";\n\tconst dx = __tsover_mul(__tsover_sub(uv.x, lx), aspect);\n\tconst dy = __tsover_sub(uv.y, ly);\n\tconst dd2 = __tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy));\n\treturn exp(__tsover_div(__tsover_mul(-.5, dd2), sizeSq));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ly\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sizeSq\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"lx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"ly\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.exp\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dd2\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"sizeSq\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"std.exp\": () =\u003e exp }\n}) \u0026\u0026 $.f)({}));\nconst angularSineLobes = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((angle, count, phase, sharpness) =\u003e {\n\t\"use gpu\";\n\treturn pow(__tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(angle, count), phase)), .5), .5), sharpness);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"count\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sharpness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"t\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.pow\",\n\t\t\t[\"t\", \"sharpness\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.pow\": () =\u003e pow\n\t}\n}) \u0026\u0026 $.f)({}));\nconst angularCosineSpikes = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((angle, halfCount, power) =\u003e {\n\t\"use gpu\";\n\treturn pow(abs(cos(__tsover_mul(angle, halfCount))), power);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfCount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"power\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.pow\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"halfCount\"\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t], \"power\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.cos\": () =\u003e cos\n\t}\n}) \u0026\u0026 $.f)({}));\nconst seamlessAngularField = typegpu_default.fn([vec2f], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((delta) =\u003e {\n\t\"use gpu\";\n\tconst angle = atan2(delta.y, delta.x);\n\treturn vec3f(angle, __tsover_sub(angle, __tsover_mul(TAU, floor(__tsover_div(angle, TAU)))), smoothstep(-.15, .15, delta.x));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"delta\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleWrapped\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"TAU\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blend\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.15\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"angleWrapped\",\n\t\t\t\t\t\"blend\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst chromaticRingBand = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, center, spread, width) =\u003e {\n\t\"use gpu\";\n\tconst w = max(width, 1e-4);\n\treturn vec3f(__tsover_sub(1, smoothstep(0, w, abs(__tsover_sub(dist, __tsover_add(center, spread))))), __tsover_sub(1, smoothstep(0, w, abs(__tsover_sub(dist, center)))), __tsover_sub(1, smoothstep(0, w, abs(__tsover_sub(dist, __tsover_sub(center, spread))))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spread\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"width\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"width\", [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"spread\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"center\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"spread\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst pointToSegment = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, a, b) =\u003e {\n\t\"use gpu\";\n\tconst lineVec = vec2f(__tsover_sub(b.x, a.x), __tsover_sub(b.y, a.y));\n\tconst toPoint = vec2f(__tsover_sub(p.x, a.x), __tsover_sub(p.y, a.y));\n\tconst dotProduct = __tsover_add(__tsover_mul(toPoint.x, lineVec.x), __tsover_mul(toPoint.y, lineVec.y));\n\tconst lineLengthSq = __tsover_add(__tsover_mul(lineVec.x, lineVec.x), __tsover_mul(lineVec.y, lineVec.y));\n\tconst t = clamp(__tsover_div(dotProduct, max(lineLengthSq, 1e-4)), 0, 1);\n\tconst closestPoint = vec2f(__tsover_add(a.x, __tsover_mul(lineVec.x, t)), __tsover_add(a.y, __tsover_mul(lineVec.y, t)));\n\tconst distVec = vec2f(__tsover_sub(p.x, closestPoint.x), __tsover_sub(p.y, closestPoint.y));\n\treturn vec2f(t, sqrt(__tsover_add(__tsover_mul(distVec.x, distVec.x), __tsover_mul(distVec.y, distVec.y))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineVec\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toPoint\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotProduct\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"toPoint\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"toPoint\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineLengthSq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dotProduct\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"lineLengthSq\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"closestPoint\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"lineVec\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distVec\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"closestPoint\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"closestPoint\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"t\", [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"distVec\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"distVec\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"distVec\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"distVec\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst taperedSegmentGlow = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, t, startThickness, endThickness, startSoftness, endSoftness) =\u003e {\n\t\"use gpu\";\n\tconst thickness = mix(startThickness, endThickness, t);\n\tconst softness = max(mix(startSoftness, endSoftness, t), 1e-4);\n\tconst normalizedDist = __tsover_div(dist, max(thickness, 1e-4));\n\tconst edgeEnd = __tsover_add(1, softness);\n\tconst alpha = pow(__tsover_sub(1, smoothstep(1, edgeEnd, normalizedDist)), __tsover_add(1, __tsover_mul(softness, 1.5)));\n\treturn vec2f(smoothstep(__tsover_sub(1, softness), __tsover_add(1, softness), normalizedDist), alpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"startThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"endThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"startSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"endSoftness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"startThickness\",\n\t\t\t\t\t\t\"endThickness\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"startSoftness\",\n\t\t\t\t\t\t\t\"endSoftness\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedDist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dist\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"thickness\", [5, \"0.0001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeEnd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"softness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alphaBase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"edgeEnd\",\n\t\t\t\t\t\t\t\"normalizedDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softnessFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"alphaBase\", \"softnessFactor\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorGradientStart\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"softness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorGradientEnd\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"softness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorT\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"colorGradientStart\",\n\t\t\t\t\t\t\"colorGradientEnd\",\n\t\t\t\t\t\t\"normalizedDist\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"colorT\", \"alpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst streakBand = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((u, center, width) =\u003e {\n\t\"use gpu\";\n\treturn exp(__tsover_div(__tsover_mul(__tsover_mul(__tsover_sub(u, center), __tsover_sub(u, center)), -1), __tsover_mul(width, width)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"u\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"width\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.exp\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"center\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"center\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"width\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"width\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.exp\": () =\u003e exp }\n}) \u0026\u0026 $.f)({}));\nconst heatRamp3 = typegpu_default.fn([\n\tf32,\n\tvec3f,\n\tvec3f,\n\tvec3f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((heat, hot, mid, fringe) =\u003e {\n\t\"use gpu\";\n\tconst toMid = smoothstep(0, .5, heat);\n\tconst toHot = smoothstep(.55, 1.15, heat);\n\treturn mix(mix(fringe, mid, vec3f(toMid)), hot, vec3f(toHot)).mul(clamp(heat, 0, 1.6));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"heat\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hot\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mid\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fringe\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toMid\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"heat\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toHot\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.55\"],\n\t\t\t\t\t\t[5, \"1.15\"],\n\t\t\t\t\t\t\"heat\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t\"mid\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\"toMid\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hot\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"toHot\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"heat\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1.6\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst chromaticHeatTaps = typegpu_default.fn([\n\tf32,\n\tvec3f,\n\tvec3f,\n\tvec3f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((heat, hot, mid, fringe) =\u003e {\n\t\"use gpu\";\n\tconst rampR = heatRamp3(__tsover_mul(heat, 1.08), hot, mid, fringe);\n\tconst rampG = heatRamp3(heat, hot, mid, fringe);\n\tconst rampB = heatRamp3(__tsover_mul(heat, .88), hot, mid, fringe);\n\treturn vec3f(rampR.x, rampG.y, rampB.z);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"heat\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hot\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mid\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fringe\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rampR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"heatRamp3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"heat\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.08\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hot\",\n\t\t\t\t\t\t\"mid\",\n\t\t\t\t\t\t\"fringe\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rampG\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"heatRamp3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"heat\",\n\t\t\t\t\t\t\"hot\",\n\t\t\t\t\t\t\"mid\",\n\t\t\t\t\t\t\"fringe\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rampB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"heatRamp3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"heat\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.88\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hot\",\n\t\t\t\t\t\t\"mid\",\n\t\t\t\t\t\t\"fringe\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rampR\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rampG\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rampB\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"heatRamp3\": () =\u003e heatRamp3,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst radialFeatherMask = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, radius, feather) =\u003e {\n\t\"use gpu\";\n\tconst falloffStart = __tsover_mul(radius, __tsover_sub(1, feather));\n\treturn __tsover_sub(1, smoothstep(falloffStart, radius, dist));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"feather\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"falloffStart\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"radius\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"feather\"\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t\"falloffStart\",\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t\"dist\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.smoothstep\": () =\u003e smoothstep }\n}) \u0026\u0026 $.f)({}));\nconst softRayLobes = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((angle, count, phase, softness) =\u003e {\n\t\"use gpu\";\n\treturn angularSineLobes(angle, count, phase, __tsover_mul(__tsover_div(1, __tsover_add(softness, .05)), .3));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"count\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"sharpness\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.3\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"angularSineLobes\",\n\t\t\t[\n\t\t\t\t\"angle\",\n\t\t\t\t\"count\",\n\t\t\t\t\"phase\",\n\t\t\t\t\"sharpness\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"angularSineLobes\": () =\u003e angularSineLobes }\n}) \u0026\u0026 $.f)({}));\nconst radialBurstFrame = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, center) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst cx = center.x;\n\tconst cy = __tsover_sub(1, center.y);\n\tconst dx = __tsover_sub(__tsover_mul(uv.x, aspect), __tsover_mul(cx, aspect));\n\tconst dy = __tsover_sub(uv.y, cy);\n\treturn vec2f(sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy))), atan2(dy, dx));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"center\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[\"dy\", \"dx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"dist\", \"angle\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst vignetteMask = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, strength) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst vigX = __tsover_mul(__tsover_sub(uv.x, .5), aspect);\n\tconst vigY = __tsover_sub(uv.y, .5);\n\tconst vigD2 = __tsover_add(__tsover_mul(vigX, vigX), __tsover_mul(vigY, vigY));\n\treturn clamp(__tsover_sub(1, __tsover_mul(vigD2, strength)), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vigX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vigY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vigD2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"vigX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"vigX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"vigY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"vigY\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"vigD2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst screenGlowComposite = typegpu_default.fn([vec4f, vec3f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, leakRgb) =\u003e {\n\t\"use gpu\";\n\tconst base = color.xyz;\n\tconst outRgb = clamp(vec3f(1, 1, 1).sub(vec3f(1, 1, 1).sub(clamp(base, vec3f(0), vec3f(1))).mul(vec3f(1, 1, 1).sub(clamp(leakRgb, vec3f(0), vec3f(1))))).add(leakRgb.mul(.16)), vec3f(0), vec3f(1));\n\tconst leakLuma = clamp(luma601Dot(leakRgb), 0, 1);\n\treturn vec4f(outRgb, clamp(__tsover_add(color.w, __tsover_mul(leakLuma, .85)), 0, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"leakRgb\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"base\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"screened\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"leakRgb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lifted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"screened\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"leakRgb\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.16\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"lifted\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"leakLuma\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"tone.luma601Dot\",\n\t\t\t\t\t\t\t[\"leakRgb\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"leakLuma\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.85\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"outRgb\", \"outA\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"tone.luma601Dot\": () =\u003e luma601Dot,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst beamLocalFrame = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, anchorRaw) =\u003e {\n\t\"use gpu\";\n\tconst pA = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst anchor = vec2f(__tsover_mul(anchorRaw.x, aspect), __tsover_sub(1, anchorRaw.y));\n\tconst toCenter = vec2f(__tsover_mul(aspect, .5), .5).sub(anchor);\n\tconst cLen = length(toCenter);\n\tconst dirX = select(__tsover_div(toCenter.x, max(cLen, .001)), f32(1), cLen \u003c .02);\n\tconst dirY = select(__tsover_div(toCenter.y, max(cLen, .001)), f32(0), cLen \u003c .02);\n\tconst relX = __tsover_sub(pA.x, anchor.x);\n\tconst relY = __tsover_sub(pA.y, anchor.y);\n\treturn vec2f(__tsover_add(__tsover_mul(relX, dirX), __tsover_mul(relY, dirY)), __tsover_sub(__tsover_mul(relY, dirX), __tsover_mul(relX, dirY)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"anchorRaw\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"anchor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"anchorRaw\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"anchorRaw\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toCenter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t], [5, \"0.5\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"anchor\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cLen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"toCenter\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dirX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"toCenter\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"cLen\", [5, \"0.001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cLen\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dirY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"toCenter\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"cLen\", [5, \"0.001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cLen\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"relX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pA\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"anchor\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"relY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pA\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"anchor\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"relX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dirX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"relY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dirY\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"relY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dirX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"relX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dirY\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nexport { chromaticRingBand as a, radialFeatherMask as c, screenGlowComposite as d, seamlessAngularField as f, vignetteMask as g, taperedSegmentGlow as h, chromaticHeatTaps as i, radialGaussianFalloff as l, streakBand as m, anisotropicGaussianSpot as n, pointToSegment as o, softRayLobes as p, beamLocalFrame as r, radialBurstFrame as s, angularCosineSpikes as t, radialGaussianGlow as u };\n","import { An as value12, Bn as TWO_PI, Cn as mxNoiseFloat3, Cr as sin, Er as step, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD, Qn as fwidth, Tr as sqrt, Vr as mod, Xn as dpdx, Zn as dpdy, _r as mix, an as canvasCentredDelta, ar as clamp, cr as dot, dn as unflipPosition, en as aspectCenteredDelta, er as select, fr as floor, gr as min, hr as max, in as aspectOf, jr as vec3f, ln as rotate2, lr as exp, mr as length, on as directionalProjection, or as cos, pr as fract, qr as f32, rr as atan2, tn as aspectCentrePosition, tr as abs, vn as hash12, vr as normalize, wr as smoothstep, yr as pow, zn as TAU } from \"./lower-Bd2jez_2.js\";\nimport { a as toneRemap } from \"./tone-BKhfiOBn.js\";\nimport { f as seamlessAngularField, h as taperedSegmentGlow, m as streakBand, n as anisotropicGaussianSpot, o as pointToSegment } from \"./lightfields-DvrUaH_6.js\";\nconst footprint1 = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, softness) =\u003e {\n\t\"use gpu\";\n\tconst baseW = max(abs(dpdx(x)), abs(dpdy(x)));\n\treturn max(__tsover_add(baseW, softness), 1e-5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"softness\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"baseW\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dpdx\",\n\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t]]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dpdy\",\n\t\t\t\t\t\t[\"x\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.max\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t\"baseW\",\n\t\t\t\t\"+\",\n\t\t\t\t\"softness\"\n\t\t\t], [5, \"0.00001\"]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.dpdx\": () =\u003e dpdx,\n\t\t\"std.dpdy\": () =\u003e dpdy\n\t}\n}) \u0026\u0026 $.f)({}));\nconst footprint2 = typegpu_default.fn([vec2f, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, softness) =\u003e {\n\t\"use gpu\";\n\tconst dpx = dpdx(p);\n\tconst dpy = dpdy(p);\n\tconst baseW = vec2f(max(abs(dpx.x), abs(dpy.x)), max(abs(dpx.y), abs(dpy.y)));\n\treturn vec2f(max(__tsover_add(baseW.x, softness), 1e-5), max(__tsover_add(baseW.y, softness), 1e-5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"softness\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dpx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dpdx\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dpy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dpdy\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseW\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dpx\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dpy\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dpx\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dpy\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"baseW\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"baseW\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dpdx\": () =\u003e dpdx,\n\t\t\"std.dpdy\": () =\u003e dpdy,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nconst quilezStepFilter = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, w, threshold) =\u003e {\n\t\"use gpu\";\n\tconst a = __tsover_add(p, __tsover_mul(w, .5));\n\tconst b = __tsover_sub(p, __tsover_mul(w, .5));\n\tconst oneMinusThreshold = __tsover_sub(1, threshold);\n\tconst Fa = __tsover_add(__tsover_mul(floor(a), oneMinusThreshold), max(__tsover_sub(fract(a), threshold), 0));\n\tconst Fb = __tsover_add(__tsover_mul(floor(b), oneMinusThreshold), max(__tsover_sub(fract(b), threshold), 0));\n\treturn clamp(__tsover_div(__tsover_sub(Fa, Fb), w), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"w\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"threshold\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oneMinusThreshold\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"threshold\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Fa\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"oneMinusThreshold\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Fb\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"b\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"oneMinusThreshold\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t[\"b\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"Fa\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"Fb\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst quilezLineFilterAxis = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, w, N) =\u003e {\n\t\"use gpu\";\n\tconst a = __tsover_add(p, __tsover_mul(w, .5));\n\tconst b = __tsover_sub(p, __tsover_mul(w, .5));\n\treturn __tsover_div(__tsover_sub(__tsover_sub(__tsover_add(floor(a), min(__tsover_mul(fract(a), N), 1)), floor(b)), min(__tsover_mul(fract(b), N), 1)), __tsover_mul(N, w));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"w\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"N\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"N\"\n\t\t\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"b\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t[\"b\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"N\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"N\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.fract\": () =\u003e fract\n\t}\n}) \u0026\u0026 $.f)({}));\nconst quilezCheckerFilter = typegpu_default.fn([vec2f, vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, w) =\u003e {\n\t\"use gpu\";\n\tconst aHalf = vec2f(__tsover_mul(w.x, .5), __tsover_mul(w.y, .5));\n\tconst minusSideX = abs(__tsover_sub(fract(__tsover_mul(__tsover_sub(p.x, aHalf.x), .5)), .5));\n\tconst minusSideY = abs(__tsover_sub(fract(__tsover_mul(__tsover_sub(p.y, aHalf.y), .5)), .5));\n\tconst plusSideX = abs(__tsover_sub(fract(__tsover_mul(__tsover_add(p.x, aHalf.x), .5)), .5));\n\tconst plusSideY = abs(__tsover_sub(fract(__tsover_mul(__tsover_add(p.y, aHalf.y), .5)), .5));\n\tconst iX = __tsover_div(__tsover_mul(__tsover_sub(minusSideX, plusSideX), 2), w.x);\n\tconst iY = __tsover_div(__tsover_mul(__tsover_sub(minusSideY, plusSideY), 2), w.y);\n\treturn clamp(__tsover_sub(.5, __tsover_mul(__tsover_mul(iX, iY), .5)), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"w\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aHalf\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"minusSideX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"aHalf\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"minusSideY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"aHalf\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"plusSideX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"aHalf\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"plusSideY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"aHalf\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"minusSideX\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"plusSideX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"minusSideY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"plusSideY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"iX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"iY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst lineMaskFromField = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((field, lineWidth, lo, hi) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(__tsover_sub(1, smoothstep(lo, hi, field)), step(1e-4, lineWidth));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"field\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lineWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lo\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hi\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"lo\",\n\t\t\t\t\t\t\"hi\",\n\t\t\t\t\t\t\"field\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.step\",\n\t\t\t\t[[5, \"0.0001\"], \"lineWidth\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.step\": () =\u003e step\n\t}\n}) \u0026\u0026 $.f)({}));\nconst bandMask = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x, lo, hi) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(smoothstep(lo, hi, x), smoothstep(lo, hi, __tsover_sub(1, x)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"x\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lo\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hi\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t\"lo\",\n\t\t\t\t\t\"hi\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t\"lo\",\n\t\t\t\t\t\"hi\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.smoothstep\": () =\u003e smoothstep }\n}) \u0026\u0026 $.f)({}));\nconst discCoverage = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, radius, footprint) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(1, smoothstep(__tsover_sub(radius, __tsover_mul(footprint, .5)), radius, dist));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"footprint\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"footprint\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t\"dist\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.smoothstep\": () =\u003e smoothstep }\n}) \u0026\u0026 $.f)({}));\nvar INV_360 = 1 / 360;\nconst gradientRawT = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((start, end, angle, uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst startPos = unflipPosition(start);\n\tconst endPos = unflipPosition(end);\n\tconst gradientVector = endPos.sub(startPos);\n\tconst gradientLength = length(gradientVector);\n\tconst gradientDir = normalize(gradientVector);\n\tconst safeViewportY = max(viewport.y, 1e-6);\n\tconst aspect = __tsover_div(viewport.x, safeViewportY);\n\tconst angleRad = __tsover_mul(__tsover_mul(angle, DEG_TO_RAD), -1);\n\tconst cosAngle = cos(angleRad);\n\tconst sinAngle = sin(angleRad);\n\tconst midpoint = startPos.add(endPos).mul(.5);\n\tconst centeredUV = uv.sub(midpoint);\n\tconst rotated = rotate2(vec2f(__tsover_mul(centeredUV.x, aspect), centeredUV.y), cosAngle, sinAngle);\n\tconst projection = dot(vec2f(__tsover_div(rotated.x, aspect), rotated.y).add(midpoint).sub(startPos), gradientDir);\n\treturn __tsover_div(projection, max(gradientLength, 1e-6));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"start\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"end\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"startPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"unflipPosition\",\n\t\t\t\t\t[\"start\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"endPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"unflipPosition\",\n\t\t\t\t\t[\"end\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gradientVector\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"endPos\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"startPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gradientLength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"gradientVector\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gradientDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[\"gradientVector\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeViewportY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safeViewportY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"midpoint\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"startPos\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"endPos\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"midpoint\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotated\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.rotate2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"cosAngle\",\n\t\t\t\t\t\t\"sinAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"midpoint\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"relativePos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rotatedUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"startPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"projection\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"relativePos\", \"gradientDir\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"projection\",\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"gradientLength\", [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"unflipPosition\": () =\u003e unflipPosition,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"geom.rotate2\": () =\u003e rotate2,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.dot\": () =\u003e dot\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gradientEdgeMirror = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\tconst m = mod(abs(t), 2);\n\treturn select(m, __tsover_sub(2, m), m \u003e 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"m\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.mod\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"t\"]\n\t\t\t\t], [5, \"2\"]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.select\",\n\t\t\t[\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"m\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"m\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.mod\": () =\u003e mod,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gradientEdgeWrap = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\treturn fract(t);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[\"t\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.fract\": () =\u003e fract }\n}) \u0026\u0026 $.f)({}));\nconst gradientClamp01 = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\treturn clamp(t, 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t\"t\",\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"1\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp }\n}) \u0026\u0026 $.f)({}));\nconst gradientTransparentAlpha = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\tconst inLow = select(f32(0), f32(1), t \u003e= 0);\n\tconst inHigh = select(f32(0), f32(1), t \u003c= 1);\n\treturn __tsover_mul(inLow, inHigh);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inLow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inHigh\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"inLow\",\n\t\t\t\t\"*\",\n\t\t\t\t\"inHigh\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst radialDist = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, skewAngle, ellipseAspect, radius, uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst delta = aspectCenteredDelta(uv, center, viewport);\n\tconst skewRad = __tsover_mul(skewAngle, DEG_TO_RAD);\n\tconst rotated = rotate2(delta, cos(skewRad), -sin(skewRad));\n\tconst dist = length(vec2f(__tsover_mul(rotated.x, ellipseAspect), rotated.y));\n\tconst safeRadius = max(radius, 1e-6);\n\treturn __tsover_div(dist, safeRadius);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"skewAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ellipseAspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCenteredDelta\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"viewport\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"skewRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"skewAngle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosS\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"skewRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinS\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"skewRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotated\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.rotate2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"cosS\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sinS\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stretched\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ellipseAspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"stretched\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeRadius\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"radius\", [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dist\",\n\t\t\t\t\"/\",\n\t\t\t\t\"safeRadius\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectCenteredDelta\": () =\u003e aspectCenteredDelta,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"geom.rotate2\": () =\u003e rotate2,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst conicSweep = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, rotation, uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst delta = aspectCenteredDelta(uv, center, viewport);\n\tconst angle = atan2(delta.y, delta.x);\n\tconst normalized = __tsover_sub(.5, __tsover_div(angle, TAU));\n\tconst rotationFraction = __tsover_mul(rotation, INV_360);\n\treturn __tsover_add(normalized, rotationFraction);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCenteredDelta\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"viewport\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalized\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotationFraction\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"INV_360\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"normalized\",\n\t\t\t\t\"+\",\n\t\t\t\t\"rotationFraction\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectCenteredDelta\": () =\u003e aspectCenteredDelta,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"INV_360\": () =\u003e INV_360\n\t}\n}) \u0026\u0026 $.f)({}));\nconst diamondDist = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, size, rotation, roundness, uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst delta = aspectCenteredDelta(uv, center, viewport);\n\tconst rotRad = __tsover_mul(rotation, DEG_TO_RAD);\n\tconst rotated = rotate2(delta, cos(rotRad), -sin(rotRad));\n\tconst absDx = abs(rotated.x);\n\tconst absDy = abs(rotated.y);\n\tconst dist = mix(__tsover_add(absDx, absDy), max(absDx, absDy), roundness);\n\treturn __tsover_div(dist, size);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"size\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"roundness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCenteredDelta\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"viewport\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotated\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.rotate2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"cosR\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"absDx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"absDy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"absDx\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"absDy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"linf\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"absDx\", \"absDy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"l1\",\n\t\t\t\t\t\t\"linf\",\n\t\t\t\t\t\t\"roundness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dist\",\n\t\t\t\t\"/\",\n\t\t\t\t\"size\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectCenteredDelta\": () =\u003e aspectCenteredDelta,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"geom.rotate2\": () =\u003e rotate2,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst repeatRings = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, repeat) =\u003e {\n\t\"use gpu\";\n\tconst s = __tsover_mul(t, repeat);\n\treturn select(clamp(s, 0, 1), fract(s), repeat \u003e 1.0001);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"repeat\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"s\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"t\",\n\t\t\t\t\"*\",\n\t\t\t\t\"repeat\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.select\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"s\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"repeat\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"1.0001\"]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.fract\": () =\u003e fract\n\t}\n}) \u0026\u0026 $.f)({}));\nconst repeatWrap = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, repeat) =\u003e {\n\t\"use gpu\";\n\treturn fract(__tsover_mul(t, repeat));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"repeat\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t\"t\",\n\t\t\t\t\"*\",\n\t\t\t\t\"repeat\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.fract\": () =\u003e fract }\n}) \u0026\u0026 $.f)({}));\nconst colorWheelT = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, angle, scale, animTime) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst aspect = aspectOf(viewport);\n\tconst projectedCoord = __tsover_add(directionalProjection(canvasCentredDelta(uv, aspect), cos(angleRad), sin(angleRad)), __tsover_mul(aspect, .5));\n\treturn fract(__tsover_add(__tsover_mul(__tsover_mul(projectedCoord, scale), .2), animTime));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"projectedCoord\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"directionalProjection\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"canvasCentredDelta\",\n\t\t\t\t\t\t\t\t[\"uv\", \"aspect\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"projectedCoord\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"animTime\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"directionalProjection\": () =\u003e directionalProjection,\n\t\t\"canvasCentredDelta\": () =\u003e canvasCentredDelta,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.fract\": () =\u003e fract\n\t}\n}) \u0026\u0026 $.f)({}));\nconst colorWheelRainbow = typegpu_default.fn([f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\tconst h6 = __tsover_mul(t, 6);\n\treturn vec4f(clamp(__tsover_sub(abs(__tsover_sub(h6, 3)), 1), 0, 1), clamp(__tsover_sub(2, abs(__tsover_sub(h6, 2))), 0, 1), clamp(__tsover_sub(2, abs(__tsover_sub(h6, 4))), 0, 1), 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h6\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"6\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h6\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h6\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h6\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst colorWheelPhase = typegpu_default.fn([f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\tconst t3 = __tsover_mul(t, 3);\n\treturn vec2f(fract(t3), floor(t3));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"t3\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"t\",\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"3\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[\"t3\"]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"std.floor\",\n\t\t\t\t[\"t3\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.floor\": () =\u003e floor\n\t}\n}) \u0026\u0026 $.f)({}));\nconst colorWheelSelect = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((c01, c12, c20, floorT3) =\u003e {\n\t\"use gpu\";\n\treturn mix(mix(c20, c12, step(floorT3, 1.5)), c01, step(floorT3, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c01\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c12\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c20\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"floorT3\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"seg1\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"c20\",\n\t\t\t\t\t\"c12\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[\"floorT3\", [5, \"1.5\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.mix\",\n\t\t\t[\n\t\t\t\t\"seg1\",\n\t\t\t\t\"c01\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[\"floorT3\", [5, \"0.5\"]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.step\": () =\u003e step\n\t}\n}) \u0026\u0026 $.f)({}));\nconst spiralOffset = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, scale, animTime, uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, viewport.y);\n\tconst dx = __tsover_sub(__tsover_mul(uv.x, aspect), __tsover_mul(center.x, aspect));\n\tconst dy = __tsover_sub(uv.y, __tsover_sub(1, center.y));\n\tconst l = length(vec2f(dx, dy));\n\tconst angle = __tsover_sub(atan2(dy, dx), animTime);\n\treturn __tsover_add(__tsover_mul(l, scale), __tsover_div(angle, TWO_PI));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"dx\", \"dy\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t\t[\"dy\", \"dx\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"animTime\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"l\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"TWO_PI\": () =\u003e TWO_PI\n\t}\n}) \u0026\u0026 $.f)({}));\nconst spiralMask = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, scale, strokeWidth, strokeFalloff, softness, animTime, uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, viewport.y);\n\tconst l = length(vec2f(__tsover_sub(__tsover_mul(uv.x, aspect), __tsover_mul(center.x, aspect)), __tsover_sub(uv.y, __tsover_sub(1, center.y))));\n\tconst offset = spiralOffset(center, scale, animTime, uv, viewport);\n\tconst stripe = fract(offset);\n\tconst shape = __tsover_mul(abs(__tsover_sub(stripe, .5)), 2);\n\tconst baseWidth = clamp(strokeWidth, __tsover_mul(strokeFalloff, .005), 1);\n\tconst falloffAmount = __tsover_sub(1, __tsover_mul(clamp(strokeFalloff, 0, 1), l));\n\tconst width = __tsover_mul(baseWidth, falloffAmount);\n\tconst fw = fwidth(offset);\n\tconst fwMult = __tsover_sub(4, __tsover_mul(__tsover_mul(smoothstep(.05, .4, __tsover_mul(strokeWidth, 2)), smoothstep(.05, .4, __tsover_mul(__tsover_sub(1, strokeWidth), 2))), 3));\n\tconst pixelSize = mix(__tsover_mul(fwMult, fw), fwidth(shape), clamp(fw, 0, 1));\n\treturn smoothstep(__tsover_sub(__tsover_sub(width, pixelSize), softness), __tsover_add(__tsover_add(width, pixelSize), softness), shape);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strokeWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strokeFalloff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"dx\", \"dy\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"spiralOffset\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"viewport\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stripe\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"offset\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shape\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"stripe\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseWidth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"strokeWidth\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"strokeFalloff\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.005\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"falloffAmount\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"strokeFalloff\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"l\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"width\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"baseWidth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"falloffAmount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fw\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t[\"offset\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fwMult\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.4\"],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"strokeWidth\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.4\"],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"strokeWidth\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixelSize\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fwMult\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fw\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t[\"shape\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"fw\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"width\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"pixelSize\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"width\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"pixelSize\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t],\n\t\t\t\t\t\"shape\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"spiralOffset\": () =\u003e spiralOffset,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nvar mpgWeight = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvAspect, pos, effPower) =\u003e {\n\t\"use gpu\";\n\tconst dx = __tsover_sub(uvAspect.x, pos.x);\n\tconst dy = __tsover_sub(uvAspect.y, pos.y);\n\tconst dist = __tsover_add(sqrt(__tsover_add(__tsover_mul(dx, dx), __tsover_mul(dy, dy))), .001);\n\treturn __tsover_div(1, pow(dist, effPower));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvAspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"effPower\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uvAspect\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uvAspect\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"dist\", \"effPower\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.pow\": () =\u003e pow\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mpgFactors = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, vp, posA, posB, posC, posD, posE, smoothness) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(vp);\n\tconst uvAspect = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst pA = aspectCentrePosition(posA, aspect);\n\tconst pB = aspectCentrePosition(posB, aspect);\n\tconst pC = aspectCentrePosition(posC, aspect);\n\tconst pD = aspectCentrePosition(posD, aspect);\n\tconst pE = aspectCentrePosition(posE, aspect);\n\tconst effPower = min(__tsover_div(8, __tsover_add(smoothness, .5)), 8);\n\tconst wA = mpgWeight(uvAspect, pA, effPower);\n\tconst wB = mpgWeight(uvAspect, pB, effPower);\n\tconst wC = mpgWeight(uvAspect, pC, effPower);\n\tconst wD = mpgWeight(uvAspect, pD, effPower);\n\tconst wE = mpgWeight(uvAspect, pE, effPower);\n\tconst accW1 = wA;\n\tconst t1 = __tsover_div(wB, __tsover_add(accW1, wB));\n\tconst accW2 = __tsover_add(accW1, wB);\n\tconst t2 = __tsover_div(wC, __tsover_add(accW2, wC));\n\tconst accW3 = __tsover_add(accW2, wC);\n\tconst t3 = __tsover_div(wD, __tsover_add(accW3, wD));\n\tconst accW4 = __tsover_add(accW3, wD);\n\treturn vec4f(t1, t2, t3, __tsover_div(wE, __tsover_add(accW4, wE)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"posA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"posB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"posC\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"posD\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"posE\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"smoothness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"vp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uvAspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCentrePosition\",\n\t\t\t\t\t[\"posA\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCentrePosition\",\n\t\t\t\t\t[\"posB\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pC\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCentrePosition\",\n\t\t\t\t\t[\"posC\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pD\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCentrePosition\",\n\t\t\t\t\t[\"posD\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pE\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCentrePosition\",\n\t\t\t\t\t[\"posE\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"effPower\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"smoothness\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"8\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mpgWeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uvAspect\",\n\t\t\t\t\t\t\"pA\",\n\t\t\t\t\t\t\"effPower\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mpgWeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uvAspect\",\n\t\t\t\t\t\t\"pB\",\n\t\t\t\t\t\t\"effPower\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wC\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mpgWeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uvAspect\",\n\t\t\t\t\t\t\"pC\",\n\t\t\t\t\t\t\"effPower\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wD\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mpgWeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uvAspect\",\n\t\t\t\t\t\t\"pD\",\n\t\t\t\t\t\t\"effPower\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wE\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mpgWeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uvAspect\",\n\t\t\t\t\t\t\"pE\",\n\t\t\t\t\t\t\"effPower\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accW1\",\n\t\t\t\t\"wA\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"wB\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"accW1\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"wB\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accW2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"accW1\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"wB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"wC\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"accW2\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"wC\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accW3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"accW2\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"wC\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"wD\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"accW3\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"wD\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accW4\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"accW3\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"wD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t4\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"wE\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"accW4\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"wE\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"t1\",\n\t\t\t\t\t\"t2\",\n\t\t\t\t\t\"t3\",\n\t\t\t\t\t\"t4\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"aspectCentrePosition\": () =\u003e aspectCentrePosition,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"mpgWeight\": () =\u003e mpgWeight,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst beamField = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, vp, start, end, startThickness, endThickness, startSoftness, endSoftness) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(vp);\n\tconst startPos = vec2f(start.x, __tsover_sub(1, start.y));\n\tconst endPos = vec2f(end.x, __tsover_sub(1, end.y));\n\tconst acStart = vec2f(__tsover_mul(startPos.x, aspect), startPos.y);\n\tconst acEnd = vec2f(__tsover_mul(endPos.x, aspect), endPos.y);\n\tconst proj = pointToSegment(vec2f(__tsover_mul(uv.x, aspect), uv.y), acStart, acEnd);\n\tconst field = taperedSegmentGlow(proj.y, proj.x, __tsover_mul(startThickness, .25), __tsover_mul(endThickness, .25), startSoftness, endSoftness);\n\tconst colorT = field.x;\n\tconst alpha = field.y;\n\treturn vec2f(colorT, alpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"start\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"end\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"startThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"endThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"startSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"endSoftness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"vp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"startPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"start\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"start\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"endPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"end\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"end\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acStart\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"startPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"startPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acEnd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"endPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"endPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"proj\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.pointToSegment\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"acUV\",\n\t\t\t\t\t\t\"acStart\",\n\t\t\t\t\t\t\"acEnd\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"field\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.taperedSegmentGlow\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"proj\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"proj\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"startThickness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"endThickness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"startSoftness\",\n\t\t\t\t\t\t\"endSoftness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorT\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"field\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"field\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"colorT\", \"alpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"lightfields.pointToSegment\": () =\u003e pointToSegment,\n\t\t\"lightfields.taperedSegmentGlow\": () =\u003e taperedSegmentGlow\n\t}\n}) \u0026\u0026 $.f)({}));\nconst plasmaTone = toneRemap({\n\tdomain: \"unit\",\n\tcontrastMode: \"multiplicative\",\n\tinvert: true,\n\tglowGamma: true,\n\tbalance: \"percentCentred\"\n});\nconst volumeDomain = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, scale) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\treturn vec3f(__tsover_mul(uv.x, aspect), uv.y, 0).mul(exp(__tsover_sub(scale, 1)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"base\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.exp\": () =\u003e exp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst unitNoise3 = typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_mul(mxNoiseFloat3(pos), .5), .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"pos\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.mxNoiseFloat3\",\n\t\t\t\t\t[\"pos\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[5, \"0.5\"]\n\t\t]]]]\n\t},\n\texternals: { \"noise.mxNoiseFloat3\": () =\u003e mxNoiseFloat3 }\n}) \u0026\u0026 $.f)({}));\nconst flowLayers = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, detail, animTime) =\u003e {\n\t\"use gpu\";\n\tconst t = animTime;\n\tconst freq1 = detail;\n\tconst d1 = vec2f(__tsover_add(uv.x, __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(uv.y, __tsover_mul(freq1, 1.7)), __tsover_mul(t, .8))), .12), __tsover_mul(cos(__tsover_sub(__tsover_mul(uv.x, __tsover_mul(freq1, .9)), __tsover_mul(t, .5))), .05))), __tsover_add(uv.y, __tsover_add(__tsover_mul(cos(__tsover_sub(__tsover_mul(uv.x, __tsover_mul(freq1, 1.3)), __tsover_mul(t, .6))), .12), __tsover_mul(sin(__tsover_add(__tsover_mul(uv.y, __tsover_mul(freq1, 1.1)), __tsover_mul(t, .7))), .05))));\n\tconst pattern1 = sin(__tsover_add(__tsover_add(__tsover_mul(d1.x, __tsover_mul(freq1, 2.1)), __tsover_mul(d1.y, __tsover_mul(freq1, 1.8))), __tsover_mul(t, .4)));\n\tconst freq2 = __tsover_mul(detail, 2.1);\n\tconst d2 = vec2f(__tsover_add(d1.x, __tsover_add(__tsover_mul(cos(__tsover_sub(__tsover_mul(d1.y, __tsover_mul(freq2, 2.7)), __tsover_mul(t, .45))), .07), __tsover_mul(sin(__tsover_add(__tsover_mul(d1.x, __tsover_mul(freq2, 1.9)), __tsover_mul(t, .6))), .04))), __tsover_add(d1.y, __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(d1.x, __tsover_mul(freq2, 2.3)), __tsover_mul(t, .65))), .07), __tsover_mul(cos(__tsover_sub(__tsover_mul(d1.y, __tsover_mul(freq2, 1.6)), __tsover_mul(t, .4))), .04))));\n\tconst pattern2 = cos(__tsover_add(__tsover_sub(__tsover_mul(d2.x, __tsover_mul(freq2, 1.4)), __tsover_mul(d2.y, __tsover_mul(freq2, 1.9))), __tsover_mul(t, .35)));\n\tconst freq3 = __tsover_mul(detail, 3.7);\n\tconst d3 = vec2f(__tsover_add(d2.x, __tsover_add(__tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(d2.y, __tsover_mul(freq3, 1.8)), __tsover_mul(t, .85))), .04), __tsover_mul(cos(__tsover_sub(__tsover_mul(d2.x, __tsover_mul(freq3, 1.3)), __tsover_mul(t, .55))), .025)), __tsover_mul(sin(__tsover_add(__tsover_mul(__tsover_add(d2.x, d2.y), __tsover_mul(freq3, .7)), __tsover_mul(t, .9))), .02))), __tsover_add(d2.y, __tsover_add(__tsover_add(__tsover_mul(cos(__tsover_sub(__tsover_mul(d2.x, __tsover_mul(freq3, 1.6)), __tsover_mul(t, .75))), .04), __tsover_mul(sin(__tsover_add(__tsover_mul(d2.y, __tsover_mul(freq3, 1.1)), __tsover_mul(t, .5))), .025)), __tsover_mul(cos(__tsover_sub(__tsover_mul(__tsover_add(d2.x, d2.y), __tsover_mul(freq3, .8)), __tsover_mul(t, .95))), .02))));\n\tconst pattern3 = sin(__tsover_sub(__tsover_add(__tsover_mul(d3.x, __tsover_mul(freq3, 1.1)), __tsover_mul(d3.y, __tsover_mul(freq3, 1.5))), __tsover_mul(t, .55)));\n\treturn __tsover_add(__tsover_add(__tsover_mul(pattern1, .45), __tsover_mul(pattern2, .35)), __tsover_mul(pattern3, .2));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"detail\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t\"animTime\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"freq1\",\n\t\t\t\t\"detail\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.12\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.12\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pattern1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq1\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq1\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.8\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"freq2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"detail\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.45\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.07\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.9\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.04\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.65\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.07\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.6\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.04\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pattern2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.4\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq2\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.9\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"freq3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"detail\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"3.7\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.8\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.85\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.04\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.025\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.6\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.04\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.025\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pattern3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"d3\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"d3\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"freq3\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"pattern1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.45\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"pattern2\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"pattern3\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos\n\t}\n}) \u0026\u0026 $.f)({}));\nconst unitThreshold = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pattern, bias, low, high) =\u003e {\n\t\"use gpu\";\n\treturn smoothstep(low, high, __tsover_add(__tsover_add(__tsover_mul(pattern, .5), .5), bias));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pattern\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bias\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"low\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"high\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"normalized\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"pattern\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t\"bias\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.smoothstep\",\n\t\t\t[\n\t\t\t\t\"low\",\n\t\t\t\t\"high\",\n\t\t\t\t\"normalized\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.smoothstep\": () =\u003e smoothstep }\n}) \u0026\u0026 $.f)({}));\nconst shimmerPulse = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pattern, animTime, speed, span, depth) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(animTime, speed), __tsover_mul(pattern, span))), depth), 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pattern\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"span\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"depth\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"speed\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"pattern\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"span\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"depth\"\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[5, \"1\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.sin\": () =\u003e sin }\n}) \u0026\u0026 $.f)({}));\nvar godraysHash = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\treturn hash12(p);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"noise.hash12\",\n\t\t\t[\"p\"]\n\t\t]]]]\n\t},\n\texternals: { \"noise.hash12\": () =\u003e hash12 }\n}) \u0026\u0026 $.f)({}));\nvar godraysValueNoise = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((st) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(st);\n\tconst f = fract(st);\n\tconst a = godraysHash(i);\n\tconst b = godraysHash(vec2f(__tsover_add(i.x, 1), i.y));\n\tconst c = godraysHash(vec2f(i.x, __tsover_add(i.y, 1)));\n\tconst e = godraysHash(vec2f(__tsover_add(i.x, 1), __tsover_add(i.y, 1)));\n\tconst u = f.mul(f).mul(f.mul(-2).add(3));\n\treturn mix(mix(a, b, u.x), mix(c, e, u.x), u.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"st\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"st\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"st\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysHash\",\n\t\t\t\t\t[\"i\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysHash\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysHash\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"e\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysHash\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"3\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"x1\",\n\t\t\t\t\t\"x2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"godraysHash\": () =\u003e godraysHash,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nvar godraysRaysShape = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((a, aWrapped, blend, r, freq, intensity) =\u003e {\n\t\"use gpu\";\n\tconst nLeft = pow(godraysValueNoise(vec2f(__tsover_mul(a, freq), r)), intensity);\n\treturn mix(pow(godraysValueNoise(vec2f(__tsover_mul(aWrapped, freq), r)), intensity), nLeft, blend);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aWrapped\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blend\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"freq\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nLeft\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"godraysValueNoise\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t], \"r\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], \"intensity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nRight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"godraysValueNoise\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"aWrapped\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"freq\"\n\t\t\t\t\t\t\t], \"r\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], \"intensity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"nRight\",\n\t\t\t\t\t\"nLeft\",\n\t\t\t\t\t\"blend\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"godraysValueNoise\": () =\u003e godraysValueNoise,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst godraysFrame = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, center) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst delta = uv.sub(centerPos);\n\tconst shapeUV = vec2f(__tsover_mul(delta.x, aspect), delta.y);\n\tconst ang = seamlessAngularField(shapeUV);\n\treturn vec4f(ang.x, ang.y, ang.z, length(shapeUV));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shapeUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ang\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.seamlessAngularField\",\n\t\t\t\t\t[\"shapeUV\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"shapeUV\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"lightfields.seamlessAngularField\": () =\u003e seamlessAngularField,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"std.length\": () =\u003e length\n\t}\n}) \u0026\u0026 $.f)({}));\nvar godraysRayLayer = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec4f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((frame, animTime, spots, intensityCalc, dens, sched, freqs) =\u003e {\n\t\"use gpu\";\n\tconst rA = __tsover_sub(__tsover_mul(frame.w, sched.x), __tsover_mul(animTime, sched.y));\n\tconst rB = __tsover_sub(__tsover_mul(__tsover_mul(frame.w, sched.z), __tsover_add(1, spots)), __tsover_mul(animTime, sched.w));\n\tconst f = __tsover_mul(dens, freqs.x);\n\tconst shapeA = godraysRaysShape(frame.x, frame.y, frame.z, rA, f, intensityCalc);\n\tconst shapeB = godraysRaysShape(frame.x, frame.y, frame.z, rB, __tsover_mul(f, freqs.y), intensityCalc);\n\treturn __tsover_mul(shapeA, shapeB);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spots\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensityCalc\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dens\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sched\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"freqs\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sched\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sched\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sched\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"spots\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sched\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dens\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"freqs\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shapeA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysRaysShape\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"rA\",\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\"intensityCalc\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shapeB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysRaysShape\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"rB\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"freqs\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"intensityCalc\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"shapeA\",\n\t\t\t\t\"*\",\n\t\t\t\t\"shapeB\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"godraysRaysShape\": () =\u003e godraysRaysShape }\n}) \u0026\u0026 $.f)({}));\nconst godraysRayStack = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((frame, animTimeRaw, density, intensity, spotty) =\u003e {\n\t\"use gpu\";\n\tconst animTime = __tsover_mul(animTimeRaw, .2);\n\tconst spots = __tsover_mul(6.5, abs(spotty));\n\tconst intensityCalc = __tsover_sub(4, __tsover_mul(3, clamp(intensity, 0, 1)));\n\tconst dens = __tsover_mul(6, density);\n\tconst layer1 = godraysRayLayer(frame, animTime, spots, intensityCalc, dens, vec4f(1, 3, .5, 2), vec2f(5, 4));\n\tconst layer2 = godraysRayLayer(frame, animTime, spots, intensityCalc, dens, vec4f(1.4, 2.5, .7, 1.8), vec2f(4.5, 3.5));\n\treturn clamp(__tsover_add(layer1, __tsover_mul(layer2, .7)), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTimeRaw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"density\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spotty\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"animTime\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"animTimeRaw\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spots\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"6.5\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"spotty\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"intensityCalc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dens\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"6\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"density\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"layer1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysRayLayer\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"spots\",\n\t\t\t\t\t\t\"intensityCalc\",\n\t\t\t\t\t\t\"dens\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"5\"], [5, \"4\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"layer2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"godraysRayLayer\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"spots\",\n\t\t\t\t\t\t\"intensityCalc\",\n\t\t\t\t\t\t\"dens\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1.4\"],\n\t\t\t\t\t\t\t\t[5, \"2.5\"],\n\t\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\t[5, \"1.8\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"4.5\"], [5, \"3.5\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"layer1\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"layer2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"godraysRayLayer\": () =\u003e godraysRayLayer,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst coverageOverComposite = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rayColor, bgColor, coverage) =\u003e {\n\t\"use gpu\";\n\tconst rayA = __tsover_mul(coverage, rayColor.w);\n\tconst finalAlpha = __tsover_add(rayA, __tsover_mul(bgColor.w, __tsover_sub(1, rayA)));\n\tconst safeAlpha = clamp(finalAlpha, .001, 1);\n\tconst rayContribution = rayColor.xyz.mul(rayA);\n\tconst bgContribution = bgColor.xyz.mul(bgColor.w).mul(__tsover_sub(1, rayA));\n\treturn vec4f(rayContribution.add(bgContribution).div(safeAlpha), finalAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rayColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bgColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"coverage\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rayA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"coverage\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rayColor\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rayA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"bgColor\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rayA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"finalAlpha\",\n\t\t\t\t\t\t[5, \"0.001\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rayContribution\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rayColor\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"rayA\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bgContribution\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bgColor\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bgColor\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"rayA\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rayContribution\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"bgContribution\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"safeAlpha\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"finalColor\", \"finalAlpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst leakDrift = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, seed, flicker) =\u003e {\n\t\"use gpu\";\n\tconst nA = value12(vec2f(__tsover_mul(t, .9), __tsover_add(__tsover_mul(seed, .53), 11.7)));\n\tconst nB = value12(vec2f(__tsover_add(__tsover_mul(t, 2.7), 41.3), __tsover_add(__tsover_mul(seed, .29), 5.1)));\n\tconst breathe = __tsover_add(__tsover_mul(nA, .65), __tsover_mul(nB, .35));\n\treturn vec4f(mix(1, __tsover_add(.25, __tsover_mul(1.5, breathe)), flicker), value12(vec2f(__tsover_add(__tsover_mul(t, .13), 3.1), __tsover_add(__tsover_mul(seed, .41), 27))), value12(vec2f(__tsover_add(__tsover_mul(t, .09), 17.7), __tsover_add(__tsover_mul(seed, .61), 8.4))), value12(vec2f(__tsover_add(__tsover_mul(t, .17), 51.2), __tsover_add(__tsover_mul(seed, .23), 2.9))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flicker\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.53\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"11.7\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2.7\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"41.3\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.29\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"5.1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"breathe\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nA\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.65\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nB\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flickerMod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"breathe\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"flicker\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evo1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.13\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"3.1\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.41\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"27\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evo2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.09\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"17.7\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.61\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"8.4\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evo3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.17\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"51.2\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.23\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"2.9\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"flickerMod\",\n\t\t\t\t\t\"evo1\",\n\t\t\t\t\t\"evo2\",\n\t\t\t\t\t\"evo3\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"noise.value12\": () =\u003e value12,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst leakBloom = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tvec4f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((u, v, spread, drift) =\u003e {\n\t\"use gpu\";\n\tconst evo2 = drift.z;\n\tconst sp = max(spread, .05);\n\tconst elong = __tsover_mul(sp, __tsover_add(1.5, __tsover_mul(.7, evo2)));\n\tconst du = __tsover_div(u, sp);\n\tconst dv = __tsover_div(v, elong);\n\treturn vec2f(anisotropicGaussianSpot(du, dv, 1.9), __tsover_mul(anisotropicGaussianSpot(du, dv, .45), .22));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"u\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spread\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"drift\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evo2\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"drift\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"spread\", [5, \"0.05\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"elong\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sp\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"evo2\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"du\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"sp\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dv\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"elong\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"main\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.anisotropicGaussianSpot\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"du\",\n\t\t\t\t\t\t\"dv\",\n\t\t\t\t\t\t[5, \"1.9\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shoulder\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"lightfields.anisotropicGaussianSpot\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"du\",\n\t\t\t\t\t\t\t\"dv\",\n\t\t\t\t\t\t\t[5, \"0.45\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.22\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"main\", \"shoulder\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"lightfields.anisotropicGaussianSpot\": () =\u003e anisotropicGaussianSpot,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst leakStreaks = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec4f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((u, v, spread, streaks, drift) =\u003e {\n\t\"use gpu\";\n\tconst evo1 = drift.y;\n\tconst evo2 = drift.z;\n\tconst evo3 = drift.w;\n\tconst sp = max(spread, .05);\n\tconst elong = __tsover_mul(sp, __tsover_add(1.5, __tsover_mul(.7, evo2)));\n\tconst dv = __tsover_div(v, elong);\n\tconst alongFade = exp(__tsover_mul(__tsover_mul(dv, dv), -.55));\n\tconst s1c = __tsover_mul(sp, __tsover_add(.42, __tsover_mul(.22, evo1)));\n\tconst s1w = max(__tsover_mul(sp, __tsover_add(.07, __tsover_mul(.07, evo3))), .008);\n\tconst streak1 = __tsover_mul(streakBand(u, s1c, s1w), alongFade);\n\tconst s2c = __tsover_mul(sp, __tsover_add(.8, __tsover_mul(.3, evo1)));\n\tconst s2w = max(__tsover_mul(sp, __tsover_add(.16, __tsover_mul(.12, evo3))), .015);\n\tconst streak2 = __tsover_mul(__tsover_mul(streakBand(u, s2c, s2w), alongFade), .45);\n\treturn __tsover_mul(__tsover_add(streak1, streak2), streaks);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"u\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spread\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"streaks\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"drift\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evo1\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"drift\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evo2\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"drift\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evo3\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"drift\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"spread\", [5, \"0.05\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"elong\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sp\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"evo2\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dv\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"elong\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alongFade\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dv\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dv\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s1c\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sp\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.42\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.22\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"evo1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s1w\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sp\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.07\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.07\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"evo3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.008\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"streak1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"lightfields.streakBand\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"s1c\",\n\t\t\t\t\t\t\t\"s1w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"alongFade\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s2c\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sp\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.8\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.3\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"evo1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s2w\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sp\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.16\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.12\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"evo3\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.015\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"streak2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"lightfields.streakBand\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"s2c\",\n\t\t\t\t\t\t\t\t\"s2w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"alongFade\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.45\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"streak1\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"streak2\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"streaks\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"lightfields.streakBand\": () =\u003e streakBand\n\t}\n}) \u0026\u0026 $.f)({}));\nconst heatDither = typegpu_default.fn([\n\tf32,\n\tvec2f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((heat, uv, t) =\u003e {\n\t\"use gpu\";\n\treturn max(__tsover_add(heat, __tsover_mul(__tsover_sub(hash12(uv.mul(1024).add(vec2f(t, __tsover_mul(t, 1.7)))), .5), .012)), 0);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"heat\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"dithered\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"heat\",\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash12\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[5, \"1024\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"t\", [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.012\"]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.max\",\n\t\t\t[\"dithered\", [5, \"0\"]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"noise.hash12\": () =\u003e hash12,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rampWrap = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, cycles) =\u003e {\n\t\"use gpu\";\n\tconst s = __tsover_mul(t, cycles);\n\tconst m = __tsover_mul(fract(__tsover_mul(s, .5)), 2);\n\treturn mix(__tsover_sub(1, abs(__tsover_sub(m, 1))), .5, smoothstep(.5, 1.5, __tsover_mul(footprint1(t, 0), cycles)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cycles\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cycles\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"band\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fp\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"footprint1\",\n\t\t\t\t\t\t[\"t\", [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cycles\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"band\",\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\"fp\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"footprint1\": () =\u003e footprint1,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nexport { unitThreshold as A, radialDist as C, shimmerPulse as D, repeatWrap as E, footprint2 as F, lineMaskFromField as I, quilezCheckerFilter as L, bandMask as M, discCoverage as N, spiralMask as O, footprint1 as P, quilezLineFilterAxis as R, plasmaTone as S, repeatRings as T, heatDither as _, colorWheelT as a, leakStreaks as b, diamondDist as c, godraysRayStack as d, gradientClamp01 as f, gradientTransparentAlpha as g, gradientRawT as h, colorWheelSelect as i, volumeDomain as j, unitNoise3 as k, flowLayers as l, gradientEdgeWrap as m, colorWheelPhase as n, conicSweep as o, gradientEdgeMirror as p, colorWheelRainbow as r, coverageOverComposite as s, beamField as t, godraysFrame as u, leakBloom as v, rampWrap as w, mpgFactors as x, leakDrift as y, quilezStepFilter as z };\n","import { ft as floatE, ht as Expr, mt as vec4, pt as mixExpr, st as asLocal } from \"./lower-Bd2jez_2.js\";\nvar toE = (v) =\u003e typeof v === \"number\" ? floatE(v) : v;\nvar emit = (v, ctx) =\u003e typeof v === \"number\" ? floatE(v)._emit(ctx) : v._emit(ctx);\nfunction callB(name, ...args) {\n\treturn new Expr((ctx) =\u003e `${name}(${args.map((a) =\u003e emit(a, ctx)).join(\", \")})`);\n}\nfunction binary(op, a, b) {\n\treturn new Expr((ctx) =\u003e `(${emit(a, ctx)} ${op} ${emit(b, ctx)})`);\n}\nconst add = (a, b) =\u003e binary(\"+\", a, b);\nconst sub = (a, b) =\u003e binary(\"-\", a, b);\nconst mul = (a, b) =\u003e binary(\"*\", a, b);\nconst div = (a, b) =\u003e binary(\"/\", a, b);\nconst neg = (a) =\u003e new Expr((ctx) =\u003e `(-(${emit(a, ctx)}))`);\nconst abs = (x) =\u003e callB(\"abs\", x);\nconst floor = (x) =\u003e callB(\"floor\", x);\nconst fract = (x) =\u003e callB(\"fract\", x);\nconst sqrt = (x) =\u003e callB(\"sqrt\", x);\nconst pow = (x, y) =\u003e callB(\"pow\", x, y);\nconst exp = (x) =\u003e callB(\"exp\", x);\nconst sin = (x) =\u003e callB(\"sin\", x);\nconst cos = (x) =\u003e callB(\"cos\", x);\nconst atan2 = (y, x) =\u003e callB(\"atan2\", y, x);\nconst min = (a, b) =\u003e callB(\"min\", a, b);\nconst max = (a, b) =\u003e callB(\"max\", a, b);\nconst clamp = (x, lo, hi) =\u003e callB(\"clamp\", x, lo, hi);\nconst mix = (a, b, t) =\u003e mixExpr(toE(a), toE(b), typeof t === \"number\" ? t : t);\nconst step = (edge, x) =\u003e callB(\"step\", edge, x);\nconst smoothstep = (e0, e1, x) =\u003e callB(\"smoothstep\", e0, e1, x);\nconst sign = (x) =\u003e callB(\"sign\", x);\nconst length = (v) =\u003e callB(\"length\", v);\nconst dot = (a, b) =\u003e callB(\"dot\", a, b);\nconst normalize = (v) =\u003e callB(\"normalize\", v);\nconst rotate2 = (p, cosA, sinA) =\u003e vec2(sub(mul(member2(p, \"x\"), cosA), mul(member2(p, \"y\"), sinA)), add(mul(member2(p, \"x\"), sinA), mul(member2(p, \"y\"), cosA)));\nvar member2 = (v, m) =\u003e typeof v === \"number\" ? v : v.member(m);\nconst reflect = (i, n) =\u003e callB(\"reflect\", i, n);\nconst refract = (i, n, eta) =\u003e callB(\"refract\", i, n, eta);\nconst exp2 = (x) =\u003e callB(\"exp2\", x);\nconst hashPhase = (seed, salt) =\u003e mul(fract(mul(sin(mul(seed, salt.k)), salt.big)), 6.283185307179586);\nconst lt = (a, b) =\u003e binary(\"\u003c\", a, b);\nconst le = (a, b) =\u003e binary(\"\u003c=\", a, b);\nconst gt = (a, b) =\u003e binary(\"\u003e\", a, b);\nconst ge = (a, b) =\u003e binary(\"\u003e=\", a, b);\nconst select = (cond, ifTrue, ifFalse) =\u003e new Expr((ctx) =\u003e `select(${emit(ifFalse, ctx)}, ${emit(ifTrue, ctx)}, ${emit(cond, ctx)})`);\nconst float = (n) =\u003e floatE(n);\nconst vec2 = (x, y) =\u003e callB(\"vec2f\", x, y);\nconst vec3 = (x, y, z) =\u003e callB(\"vec3f\", x, y, z);\nconst vec4$1 = (...parts) =\u003e vec4(...parts.map(toE));\nconst splat3 = (x) =\u003e callB(\"vec3f\", x);\nconst local = (e, hint) =\u003e asLocal(e, hint);\nconst softPlus = (x, k) =\u003e {\n\tconst xe = local(x, \"sp\");\n\treturn mul(add(xe, sqrt(add(mul(xe, xe), mul(k, k)))), .5);\n};\nconst gaussBell = (x, k) =\u003e exp(neg(mul(mul(x, x), k)));\nexport { rotate2 as A, vec2 as B, mix as C, pow as D, normalize as E, softPlus as F, vec4$1 as H, splat3 as I, sqrt as L, sign as M, sin as N, reflect as O, smoothstep as P, step as R, min as S, neg as T, vec3 as V, le as _, cos as a, lt as b, exp as c, floor as d, fract as f, hashPhase as g, gt as h, clamp as i, select as j, refract as k, exp2 as l, ge as m, add as n, div as o, gaussBell as p, atan2 as r, dot as s, abs as t, float as u, length as v, mul as w, max as x, local as y, sub as z };\n","import { Bt as mixPreconvertedVariants, Cn as mxNoiseFloat3, Dn as perlin13, Fn as GOLDEN, It as mixColorsLinear, Jt as domainWarp2, Kt as chainedWarpStep, Lt as mixColorsVariants, Qt as scatterFieldAnchored, Rt as mixPreconvertedInSpace, Zt as scatterField$1, a as resolveScalar, ct as call, ft as floatE, jn as value13, jt as convertP3ToMixSpaceCPU, mt as vec4, o as uniformOf, qt as domainWarp1, s as Scalar, st as asLocal, zn as TAU, zt as mixPreconvertedLinear } from \"./lower-Bd2jez_2.js\";\nimport { s as toneUnitPivotInverted } from \"./tone-BKhfiOBn.js\";\nimport { A as unitThreshold, C as radialDist, D as shimmerPulse, E as repeatWrap, O as spiralMask, S as plasmaTone, T as repeatRings, c as diamondDist, f as gradientClamp01, g as gradientTransparentAlpha, h as gradientRawT, j as volumeDomain, k as unitNoise3, l as flowLayers, m as gradientEdgeWrap, o as conicSweep, p as gradientEdgeMirror, w as rampWrap } from \"./gradientPaints-5HpJVNfb.js\";\nimport { Dt as mixColorStopsRuntime, t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { o as transformColorSpace } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, V as vec3, f as fract, i as clamp, t as abs, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nconst noiseToneKColor = toneUnitPivotInverted;\nfunction mixStopsOrColorsExpr(params, t, endpoints = {}) {\n\tconst { uniforms, propValues } = params;\n\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\tif ((propValues.stopCount ?? 0) \u003e 1) return mixColorStopsRuntime(t, {\n\t\tcolorsArray: uniforms.colorsArray,\n\t\tpositionsArray: uniforms.positionsArray,\n\t\tconvertedColorsArray: uniforms.convertedColorsArray,\n\t\tstopCount: uniforms.stopCount\n\t}, colorSpaceMode);\n\treturn call(mixColorsVariants[colorSpaceMode] ?? mixColorsLinear, \"mixColors\", [\n\t\tuniforms[endpoints.colorA ?? \"colorA\"],\n\t\tuniforms[endpoints.colorB ?? \"colorB\"],\n\t\tt\n\t]);\n}\nvar f = Math.fround;\nvar F_GOLDEN = f(GOLDEN);\nvar F_TAU = f(TAU);\nconst SCATTER_DRIFT_RATE = .11;\nvar U32 = f(4294967295);\nvar bitView = /* @__PURE__ */ new DataView(/* @__PURE__ */ new ArrayBuffer(4));\nfunction floatBitsToUint(x) {\n\tbitView.setFloat32(0, f(x), true);\n\treturn bitView.getUint32(0, true);\n}\nfunction umul(a, b) {\n\treturn Math.imul(a \u003e\u003e\u003e 0, b \u003e\u003e\u003e 0) \u003e\u003e\u003e 0;\n}\nfunction hash11Cpu(p) {\n\tconst u = floatBitsToUint(f(f(p) * f(3141592653)));\n\treturn f(f(umul(umul(u, u), 3141592653)) / U32);\n}\nfunction hash22Cpu(x, y) {\n\tconst h = (floatBitsToUint(f(f(x) * f(141421356))) ^ floatBitsToUint(f(f(y) * f(2718281828)))) \u003e\u003e\u003e 0;\n\treturn [f(f(umul(h, 3141592653)) / U32), f(f(umul(h, 1618033988)) / U32)];\n}\nfunction spiralScatterCpu(fi, count, seed, drift, aspect, animTime) {\n\tconst theta = f(f(fi * F_GOLDEN) + f(hash11Cpu(f(f(seed * f(.7311)) + f(1.618))) * F_TAU));\n\tconst r = f(Math.sqrt(f(f(fi + .5) / f(count))));\n\tconst jh = hash22Cpu(f(f(fi * f(3.77)) + f(.917)), f(f(seed * f(1.093)) + f(2.236)));\n\tconst jx = f(f(jh[0] - .5) * f(.26));\n\tconst jy = f(f(jh[1] - .5) * f(.26));\n\tconst ph = hash22Cpu(f(f(fi * f(7.13)) + f(1.618)), f(f(seed * f(.531)) + f(3.71)));\n\tconst phx = f(ph[0] * F_TAU);\n\tconst phy = f(ph[1] * F_TAU);\n\tconst w1 = f(.5 + f(hash11Cpu(f(f(f(fi * f(5.417)) + f(seed * f(.291))) + f(.917))) * f(.7)));\n\tconst tw = f(f(animTime * f(SCATTER_DRIFT_RATE)) * w1);\n\tconst dx = f(Math.sin(f(tw + phx)));\n\tconst dy = f(Math.cos(f(f(tw * f(1.37)) + phy)));\n\tconst nx = f(f(f(f(Math.cos(theta)) * r) * f(.62)) + jx) + f(f(dx * f(drift)) * f(.16));\n\tconst ny = f(f(f(f(Math.sin(theta)) * r) * f(.62)) + jy) + f(f(dy * f(drift)) * f(.16));\n\treturn [f(f(.5 + f(nx)) * f(aspect)), f(.5 + f(ny))];\n}\nfunction packScatterAnchors(count, seed, drift, aspect, animTime) {\n\tconst out = new Array(16);\n\tfor (let i = 0; i \u003c 8; i++) {\n\t\tconst [x, y] = spiralScatterCpu(i, count, seed, drift, aspect, animTime);\n\t\tout[i * 2] = x;\n\t\tout[i * 2 + 1] = y;\n\t}\n\treturn out;\n}\nfunction baseArg(spec, params) {\n\tif (typeof spec === \"number\") return floatE(spec);\n\tif (spec instanceof Scalar || spec.kind !== \"ctx\") return resolveScalar(spec, params);\n\treturn params.ctx[spec.name];\n}\nfunction fArg(spec, params) {\n\tif (typeof spec === \"object\" \u0026\u0026 spec !== null \u0026\u0026 \"base\" in spec) {\n\t\tlet e = baseArg(spec.base, params);\n\t\tif (spec.add !== void 0) e = e.add(spec.add);\n\t\tif (spec.mul !== void 0) e = e.mul(spec.mul);\n\t\treturn e;\n\t}\n\treturn baseArg(spec, params);\n}\nfunction frame(params) {\n\treturn {\n\t\tuv: params.uvContext ?? params.ctx.uv,\n\t\tviewport: params.effectiveViewportSize ?? params.ctx.viewportSize\n\t};\n}\nfunction structural(ref, params) {\n\treturn params.propValues[ref.name];\n}\nfunction colorSpaceModeOf(raw) {\n\tif (typeof raw === \"number\") return raw;\n\tif (typeof raw === \"string\") return transformColorSpace(raw);\n\treturn 0;\n}\nfunction mixColorsIn(space, params) {\n\treturn mixColorsVariants[space ? colorSpaceModeOf(params.propValues[space.name]) : 0] ?? mixColorsLinear;\n}\nfunction colorLadder3(slots) {\n\treturn (t1, t2, params) =\u003e {\n\t\tconst variant = mixColorsIn(slots.space, params);\n\t\treturn call(variant, \"mixColors\", [\n\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\tuniformOf(slots.a, params),\n\t\t\t\tuniformOf(slots.b, params),\n\t\t\t\tt1\n\t\t\t]),\n\t\t\tuniformOf(slots.c, params),\n\t\t\tt2\n\t\t]);\n\t};\n}\nfunction pair(a, b, space) {\n\treturn (t, params) =\u003e {\n\t\treturn call(mixColorsVariants[colorSpaceModeOf(structural(space, params))] ?? mixColorsLinear, \"mixColors\", [\n\t\t\tuniformOf(a, params),\n\t\t\tuniformOf(b, params),\n\t\t\tt\n\t\t]);\n\t};\n}\nfunction stops(space) {\n\treturn (t, params) =\u003e {\n\t\tconst spaceMode = colorSpaceModeOf(structural(space, params));\n\t\tif ((params.propValues.stopCount ?? 0) \u003e 1) return mixColorStopsRuntime(t, {\n\t\t\tcolorsArray: params.uniforms.colorsArray,\n\t\t\tpositionsArray: params.uniforms.positionsArray,\n\t\t\tconvertedColorsArray: params.uniforms.convertedColorsArray,\n\t\t\tstopCount: params.uniforms.stopCount\n\t\t}, spaceMode);\n\t\treturn call(mixColorsVariants[spaceMode] ?? mixColorsLinear, \"mixColors\", [\n\t\t\tparams.uniforms.colorA,\n\t\t\tparams.uniforms.colorB,\n\t\t\tt\n\t\t]);\n\t};\n}\nvar TRANSPARENT = 1;\nvar MIRROR = 2;\nvar WRAP = 3;\nfunction rampOver(field, palette, opts) {\n\treturn (params) =\u003e {\n\t\tconst { uv } = frame(params);\n\t\tconst t = field(params, uv);\n\t\tif (!opts?.edges) return palette(t, params);\n\t\tconst edgeMode = structural(opts.edges, params) ?? 0;\n\t\tlet finalT;\n\t\tif (edgeMode === MIRROR) finalT = call(gradientEdgeMirror, \"gradientEdgeMirror\", [t]);\n\t\telse if (edgeMode === WRAP) finalT = call(gradientEdgeWrap, \"gradientEdgeWrap\", [t]);\n\t\telse if (edgeMode === TRANSPARENT) finalT = t;\n\t\telse finalT = call(gradientClamp01, \"gradientClamp01\", [t]);\n\t\tconst color = palette(call(gradientClamp01, \"gradientClamp01\", [finalT]), params);\n\t\tif (edgeMode === TRANSPARENT) {\n\t\t\tconst cut = call(gradientTransparentAlpha, \"gradientTransparentAlpha\", [t]);\n\t\t\treturn vec4(color.member(\"rgb\"), color.member(\"a\").mul(cut));\n\t\t}\n\t\treturn color;\n\t};\n}\nconst dist = {\n\tlinear(slots) {\n\t\treturn (params, uv) =\u003e {\n\t\t\tconst { viewport } = frame(params);\n\t\t\treturn call(gradientRawT, \"gradientRawT\", [\n\t\t\t\tuniformOf(slots.from, params),\n\t\t\t\tuniformOf(slots.to, params),\n\t\t\t\tfArg(slots.angle, params),\n\t\t\t\tuv,\n\t\t\t\tviewport\n\t\t\t]);\n\t\t};\n\t},\n\tradial(slots) {\n\t\treturn (params, uv) =\u003e {\n\t\t\tconst { viewport } = frame(params);\n\t\t\treturn call(radialDist, \"radialDist\", [\n\t\t\t\tuniformOf(slots.center, params),\n\t\t\t\tfArg(slots.skew, params),\n\t\t\t\tfArg(slots.aspect, params),\n\t\t\t\tfArg(slots.radius, params),\n\t\t\t\tuv,\n\t\t\t\tviewport\n\t\t\t]);\n\t\t};\n\t},\n\tconic(slots) {\n\t\treturn (params, uv) =\u003e {\n\t\t\tconst { viewport } = frame(params);\n\t\t\treturn call(conicSweep, \"conicSweep\", [\n\t\t\t\tuniformOf(slots.center, params),\n\t\t\t\tfArg(slots.rotation, params),\n\t\t\t\tuv,\n\t\t\t\tviewport\n\t\t\t]);\n\t\t};\n\t},\n\tdiamond(slots) {\n\t\treturn (params, uv) =\u003e {\n\t\t\tconst { viewport } = frame(params);\n\t\t\treturn call(diamondDist, \"diamondDist\", [\n\t\t\t\tuniformOf(slots.center, params),\n\t\t\t\tfArg(slots.size, params),\n\t\t\t\tfArg(slots.rotation, params),\n\t\t\t\tfArg(slots.roundness, params),\n\t\t\t\tuv,\n\t\t\t\tviewport\n\t\t\t]);\n\t\t};\n\t},\n\tspiral(slots) {\n\t\treturn (params, uv) =\u003e {\n\t\t\tconst { viewport } = frame(params);\n\t\t\treturn call(spiralMask, \"spiralMask\", [\n\t\t\t\tuniformOf(slots.center, params),\n\t\t\t\tfArg(slots.scale, params),\n\t\t\t\tfArg(slots.width, params),\n\t\t\t\tfArg(slots.falloff, params),\n\t\t\t\tfArg(slots.softness, params),\n\t\t\t\tanimatedTime(params),\n\t\t\t\tuv,\n\t\t\t\tviewport\n\t\t\t]);\n\t\t};\n\t}\n};\nfunction rings(field, count) {\n\treturn (params, coord) =\u003e call(repeatRings, \"repeatRings\", [field(params, coord), fArg(count, params)]);\n}\nfunction tiles(field, count) {\n\treturn (params, coord) =\u003e call(repeatWrap, \"repeatWrap\", [field(params, coord), fArg(count, params)]);\n}\nfunction tone(field, opts) {\n\treturn (params, coord) =\u003e call(plasmaTone, \"toneRemap\", [\n\t\tfield(params, coord),\n\t\tfArg(opts.glow, params),\n\t\tfArg(opts.contrast, params),\n\t\tfArg(opts.balance, params)\n\t]);\n}\nfunction threshold(field, opts) {\n\treturn (params, coord) =\u003e call(unitThreshold, \"unitThreshold\", [\n\t\tfield(params, coord),\n\t\topts.bias !== void 0 ? fArg(opts.bias, params) : floatE(0),\n\t\tfloatE(opts.low),\n\t\tfloatE(opts.high)\n\t]);\n}\nfunction share(field) {\n\tconst cache = /* @__PURE__ */ new WeakMap();\n\treturn (params, coord) =\u003e {\n\t\tlet bound = cache.get(params);\n\t\tif (!bound) {\n\t\t\tbound = asLocal(field(params, coord), \"field\");\n\t\t\tcache.set(params, bound);\n\t\t}\n\t\treturn bound;\n\t};\n}\nvar NOISE_BASES = {\n\tmx3: {\n\t\tfn: () =\u003e unitNoise3,\n\t\thint: \"unitNoise3\"\n\t},\n\tperlin: {\n\t\tfn: () =\u003e perlin13,\n\t\thint: \"perlin13\"\n\t},\n\tvalue: {\n\t\tfn: () =\u003e value13,\n\t\thint: \"value13\"\n\t},\n\tmx3signed: {\n\t\tfn: () =\u003e mxNoiseFloat3,\n\t\thint: \"mxNoiseFloat3\"\n\t}\n};\nfunction noiseField(basis) {\n\tconst entry = NOISE_BASES[basis];\n\treturn (_params, coord) =\u003e call(entry.fn(), entry.hint, [coord]);\n}\nfunction warped(field, opts) {\n\tconst warpFn = domainWarp2(mxNoiseFloat3, { name: \"warpDomain\" });\n\treturn (params, coord) =\u003e {\n\t\tlet amount = fArg(opts.amount, params);\n\t\tif (opts.amountScale !== void 0) amount = amount.mul(opts.amountScale);\n\t\tlet time = animatedTime(params);\n\t\tif (opts.timeScale !== void 0) time = time.mul(opts.timeScale);\n\t\treturn field(params, call(warpFn, \"warpDomain\", [\n\t\t\tcoord,\n\t\t\ttime,\n\t\t\tamount\n\t\t]));\n\t};\n}\nfunction scaledVolume(field, opts) {\n\treturn (params, uv) =\u003e {\n\t\tconst { viewport } = frame(params);\n\t\treturn field(params, call(volumeDomain, \"volumeDomain\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tfArg(opts.scale, params)\n\t\t]));\n\t};\n}\nfunction flowField(slots) {\n\treturn (params, coord) =\u003e call(flowLayers, \"flowLayers\", [\n\t\tcoord,\n\t\tfArg(slots.detail, params),\n\t\tanimatedTime(params)\n\t]);\n}\nfunction pulse(field, opts) {\n\treturn (params, coord) =\u003e call(shimmerPulse, \"shimmerPulse\", [\n\t\tfield(params, coord),\n\t\tanimatedTime(params),\n\t\tfloatE(opts.speed),\n\t\tfloatE(opts.span),\n\t\tfloatE(opts.depth)\n\t]);\n}\nfunction hueWheel(h) {\n\tconst x = local(mul(fract(h), 6), \"hue6\");\n\treturn vec3(clamp(sub(abs(sub(x, 3)), 1), 0, 1), clamp(sub(2, abs(sub(x, 2))), 0, 1), clamp(sub(2, abs(sub(x, 4))), 0, 1));\n}\nfunction shimmered(paint, gain) {\n\treturn (params) =\u003e paint(params).mul(gain(params, params.ctx.uv));\n}\nfunction scatterField(opts) {\n\tconst e = (v) =\u003e typeof v === \"number\" ? floatE(v) : v;\n\tif (opts.anchors) return call(scatterFieldAnchored, \"scatterField\", [\n\t\topts.at,\n\t\te(opts.count),\n\t\te(opts.seed),\n\t\topts.anchors,\n\t\te(opts.softness)\n\t]);\n\treturn call(scatterField$1, \"scatterField\", [\n\t\topts.at,\n\t\te(opts.count),\n\t\te(opts.seed),\n\t\te(opts.drift),\n\t\te(opts.aspect),\n\t\te(opts.time),\n\t\te(opts.softness)\n\t]);\n}\nfunction scatteredAnchors(params, slots) {\n\tlet aspect = params.dimensions.width / Math.max(params.dimensions.height, 1e-6);\n\tparams.onResize(({ width, height }) =\u003e {\n\t\taspect = width / Math.max(height, 1e-6);\n\t});\n\tlet lastKey = \"\";\n\tparams.onBeforeRender(() =\u003e {\n\t\tconst t = params.getCpuValue(\"_animTime\");\n\t\tconst count = params.getCpuValue(slots.count.name);\n\t\tconst seed = params.getCpuValue(slots.seed.name);\n\t\tconst drift = params.getCpuValue(slots.drift.name);\n\t\tif (typeof t !== \"number\" || typeof count !== \"number\" || typeof seed !== \"number\" || typeof drift !== \"number\") return;\n\t\tconst key = `${count}|${seed}|${drift}|${aspect}|${t}`;\n\t\tif (key === lastKey) return;\n\t\tlastKey = key;\n\t\tparams.setExtraField(slots.field, packScatterAnchors(count, seed, drift, aspect, t));\n\t});\n\treturn params.uniforms[slots.field];\n}\nfunction wrapRamp(opts) {\n\treturn call(rampWrap, \"rampWrap\", [opts.t, typeof opts.cycles === \"number\" ? floatE(opts.cycles) : opts.cycles]);\n}\nfunction foldRamp(t) {\n\treturn call(gradientEdgeMirror, \"gradientEdgeMirror\", [t]);\n}\nfunction warpedPoint(opts) {\n\tconst e = (v) =\u003e typeof v === \"number\" ? floatE(v) : v;\n\tif (opts.levels === 1) return call(domainWarp1(mxNoiseFloat3, { name: \"warpDomain1\" }), \"warpDomain1\", [\n\t\topts.at,\n\t\te(opts.time),\n\t\te(opts.amount)\n\t]);\n\treturn call(domainWarp2(mxNoiseFloat3, { name: \"warpDomain\" }), \"warpDomain\", [\n\t\topts.at,\n\t\te(opts.time),\n\t\te(opts.amount)\n\t]);\n}\nfunction warpStep(opts) {\n\tconst e = (v) =\u003e typeof v === \"number\" ? floatE(v) : v;\n\treturn call(chainedWarpStep, \"chainedWarpStep\", [\n\t\topts.at,\n\t\tfloatE(opts.scale),\n\t\te(opts.z),\n\t\tvec2(opts.offsets[0][0], opts.offsets[0][1]),\n\t\tvec2(opts.offsets[1][0], opts.offsets[1][1]),\n\t\tfloatE(opts.reach),\n\t\te(opts.strength)\n\t]);\n}\nfunction standardPalette(t, params) {\n\treturn mixStopsOrColorsExpr(params, t);\n}\nfunction quadBlend(slots) {\n\treturn (t1, t2, params) =\u003e {\n\t\tconst { uniforms } = params;\n\t\tconst colorSpaceMode = colorSpaceModeOf(params.propValues[slots.space.name]);\n\t\tconst colorA = uniformOf(slots.a, params);\n\t\tconst colorB = uniformOf(slots.b, params);\n\t\tconst colorC = uniformOf(slots.c, params);\n\t\tconst colorD = uniformOf(slots.d, params);\n\t\tif (colorSpaceMode !== 0) {\n\t\t\tlet lastKey = \"\";\n\t\t\tparams.onBeforeRender(() =\u003e {\n\t\t\t\tconst cols = [\n\t\t\t\t\tslots.a.name,\n\t\t\t\t\tslots.b.name,\n\t\t\t\t\tslots.c.name,\n\t\t\t\t\tslots.d.name\n\t\t\t\t].map((prop) =\u003e params.getCpuValue(prop));\n\t\t\t\tif (cols.some((c) =\u003e !c)) return;\n\t\t\t\tconst key = cols.map((c) =\u003e `${c.x},${c.y},${c.z}`).join(\"|\");\n\t\t\t\tif (key === lastKey) return;\n\t\t\t\tlastKey = key;\n\t\t\t\tconst fields = [\n\t\t\t\t\t\"convA\",\n\t\t\t\t\t\"convB\",\n\t\t\t\t\t\"convC\",\n\t\t\t\t\t\"convD\"\n\t\t\t\t];\n\t\t\t\tcols.forEach((c, i) =\u003e {\n\t\t\t\t\tconst conv = convertP3ToMixSpaceCPU(c.x, c.y, c.z, colorSpaceMode);\n\t\t\t\t\tparams.setExtraField(fields[i], [\n\t\t\t\t\t\tconv[0],\n\t\t\t\t\t\tconv[1],\n\t\t\t\t\t\tconv[2]\n\t\t\t\t\t]);\n\t\t\t\t});\n\t\t\t});\n\t\t\tconst row1$1 = asLocal(call(mixPreconvertedInSpace, \"mixInSpace\", [\n\t\t\t\tuniforms.convA,\n\t\t\t\tcolorA.member(\"a\"),\n\t\t\t\tuniforms.convB,\n\t\t\t\tcolorB.member(\"a\"),\n\t\t\t\tt1\n\t\t\t]), \"flowRow1\");\n\t\t\tconst row2$1 = asLocal(call(mixPreconvertedInSpace, \"mixInSpace\", [\n\t\t\t\tuniforms.convC,\n\t\t\t\tcolorC.member(\"a\"),\n\t\t\t\tuniforms.convD,\n\t\t\t\tcolorD.member(\"a\"),\n\t\t\t\tt1\n\t\t\t]), \"flowRow2\");\n\t\t\treturn call(mixPreconvertedVariants[colorSpaceMode] ?? mixPreconvertedLinear, \"mixPreconvertedColors\", [\n\t\t\t\trow1$1.member(\"conv\"),\n\t\t\t\trow2$1.member(\"conv\"),\n\t\t\t\trow1$1.member(\"alpha\"),\n\t\t\t\trow2$1.member(\"alpha\"),\n\t\t\t\tt2\n\t\t\t]);\n\t\t}\n\t\treturn call(mixColorsLinear, \"mixColors\", [\n\t\t\tasLocal(call(mixColorsLinear, \"mixColors\", [\n\t\t\t\tcolorA,\n\t\t\t\tcolorB,\n\t\t\t\tt1\n\t\t\t]), \"flowRow1\"),\n\t\t\tasLocal(call(mixColorsLinear, \"mixColors\", [\n\t\t\t\tcolorC,\n\t\t\t\tcolorD,\n\t\t\t\tt1\n\t\t\t]), \"flowRow2\"),\n\t\t\tt2\n\t\t]);\n\t};\n}\nexport { tone as C, wrapRamp as D, warpedPoint as E, noiseToneKColor as O, tiles as S, warped as T, share as _, foldRamp as a, stops as b, noiseField as c, quadBlend as d, rampOver as f, scatteredAnchors as g, scatterField as h, flowField as i, pair as l, scaledVolume as m, colorSpaceModeOf as n, hueWheel as o, rings as p, dist as r, mixColorsIn as s, colorLadder3 as t, pulse as u, shimmered as v, warpStep as w, threshold as x, standardPalette as y };\n","function tintToward(color, opts) {\n\treturn {\n\t\tkind: \"tintToward\",\n\t\tcolor,\n\t\tamount: opts.amount\n\t};\n}\nfunction displaceBy(field, opts) {\n\treturn {\n\t\tkind: \"displaceBy\",\n\t\tfield,\n\t\tstrength: opts.strength,\n\t\tchromatic: opts.chromatic,\n\t\tedges: opts.edges\n\t};\n}\nfunction gather(config) {\n\treturn {\n\t\tkind: \"gather\",\n\t\t...config\n\t};\n}\nexport { gather as n, tintToward as r, displaceBy as t };\n","import { Br as struct, Cr as sin, Er as step, Gn as typegpu_default, Jr as i32, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD, Qn as fwidth, Rn as SQRT3, Tr as sqrt, Xn as dpdx, Zn as dpdy, _r as mix, an as canvasCentredDelta, ar as clamp, cn as flooredMod2, cr as dot, ct as call, er as select, fr as floor, ft as floatE, gr as min, hr as max, in as aspectOf, jr as vec3f, ln as rotate2, mr as length, mt as vec4, n as paintFrame, o as uniformOf, on as directionalProjection, or as cos, ot as arrayExpr, pr as fract, pt as mixExpr, qr as f32, rn as aspectCorrectedUVFlipY, sn as flooredMod1, tr as abs, un as rotateAboutCanvasCentre, vn as hash12, wr as smoothstep, xr as round, zn as TAU, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { F as footprint2, I as lineMaskFromField, L as quilezCheckerFilter, M as bandMask, N as discCoverage, P as footprint1, R as quilezLineFilterAxis, z as quilezStepFilter } from \"./gradientPaints-5HpJVNfb.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { s as mixColorsIn } from \"./fields-DgADOKsP.js\";\nimport { y as local } from \"./math-D864seEs.js\";\nimport { n as gather } from \"./filter-BrhpSs3Z.js\";\nvar TWO_OVER_SQRT3 = 2 / Math.sqrt(3);\nconst CellTile = struct({\n\tcell: vec2f,\n\tlocal: vec2f\n}).$name(\"CellTile\");\nconst squareTiling = typegpu_default.fn([vec2f], CellTile)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\treturn CellTile({\n\t\tcell: floor(p),\n\t\tlocal: fract(p)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"CellTile\",\n\t\t\t[[104, {\n\t\t\t\t\"cell\": [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t],\n\t\t\t\t\"local\": [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t}]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"CellTile\": () =\u003e CellTile,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract\n\t}\n}) \u0026\u0026 $.f)({}));\nconst HexCell = struct({\n\tgv: vec2f,\n\tid: vec2f\n}).$name(\"HexCell\");\nconst hexTiling = typegpu_default.fn([vec2f, vec2f], HexCell)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, s) =\u003e {\n\t\"use gpu\";\n\tconst sh = s.mul(.5);\n\tconst a = flooredMod2(p, s).sub(sh);\n\tconst b = flooredMod2(p.sub(sh), s).sub(sh);\n\tconst gv = select(b, a, dot(a, a) \u003c dot(b, b));\n\treturn HexCell({\n\t\tgv,\n\t\tid: p.sub(gv)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sh\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"flooredMod2\",\n\t\t\t\t\t\t\t[\"p\", \"s\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"sh\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"flooredMod2\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"sh\"]\n\t\t\t\t\t\t\t], \"s\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"sh\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"a\", \"a\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"b\", \"b\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"HexCell\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"gv\": \"gv\",\n\t\t\t\t\t\"id\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"gv\"]\n\t\t\t\t\t]\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"flooredMod2\": () =\u003e flooredMod2,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"HexCell\": () =\u003e HexCell\n\t}\n}) \u0026\u0026 $.f)({}));\nconst triLattice = typegpu_default.fn([vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_sub(p.x, __tsover_div(p.y, SQRT3)), __tsover_mul(p.y, TWO_OVER_SQRT3));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"SQRT3\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"TWO_OVER_SQRT3\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"SQRT3\": () =\u003e SQRT3,\n\t\t\"TWO_OVER_SQRT3\": () =\u003e TWO_OVER_SQRT3\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellCentreUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cells) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, max(viewport.y, 1e-6));\n\tconst correctedX = __tsover_mul(uv.x, aspect);\n\tconst correctedY = __tsover_sub(1, uv.y);\n\tconst cellCenterCorrectedX = __tsover_div(__tsover_add(floor(__tsover_mul(correctedX, cells)), .5), cells);\n\tconst cellCenterCorrectedY = __tsover_div(__tsover_add(floor(__tsover_mul(correctedY, cells)), .5), cells);\n\treturn vec2f(__tsover_div(cellCenterCorrectedX, aspect), __tsover_sub(1, cellCenterCorrectedY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cells\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellCenterCorrectedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"correctedX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cells\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"cells\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellCenterCorrectedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"correctedY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cells\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"cells\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cellCenterCorrectedX\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cellCenterCorrectedY\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellCentreUVRotated = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cells, rotationRad) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, max(viewport.y, 1e-6));\n\tconst correctedX = __tsover_mul(uv.x, aspect);\n\tconst correctedY = __tsover_sub(1, uv.y);\n\tconst cosR = cos(rotationRad);\n\tconst sinR = sin(rotationRad);\n\tconst centerX = __tsover_mul(aspect, .5);\n\tconst centerY = .5;\n\tconst cx = __tsover_sub(correctedX, centerX);\n\tconst cy = __tsover_sub(correctedY, centerY);\n\tconst rotX = __tsover_add(__tsover_sub(__tsover_mul(cx, cosR), __tsover_mul(cy, sinR)), centerX);\n\tconst rotY = __tsover_add(__tsover_add(__tsover_mul(cx, sinR), __tsover_mul(cy, cosR)), centerY);\n\tconst cellRX = __tsover_div(__tsover_add(floor(__tsover_mul(rotX, cells)), .5), cells);\n\tconst cellRY = __tsover_div(__tsover_add(floor(__tsover_mul(rotY, cells)), .5), cells);\n\tconst ccx = __tsover_sub(cellRX, centerX);\n\tconst ccy = __tsover_sub(cellRY, centerY);\n\tconst unrotX = __tsover_add(__tsover_add(__tsover_mul(ccx, cosR), __tsover_mul(ccy, sinR)), centerX);\n\tconst unrotY = __tsover_add(__tsover_add(__tsover_mul(ccx, -sinR), __tsover_mul(ccy, cosR)), centerY);\n\treturn vec2f(__tsover_div(unrotX, aspect), __tsover_sub(1, unrotY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cells\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotationRad\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotationRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotationRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerY\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"correctedX\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"correctedY\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellRX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rotX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cells\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"cells\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellRY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rotY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cells\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"cells\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ccx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cellRX\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ccy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cellRY\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"unrotX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ccx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ccy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"unrotY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ccx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ccy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"unrotX\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"unrotY\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellHash = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((id) =\u003e {\n\t\"use gpu\";\n\tconst q0 = fract(id.mul(vec2f(123.34, 345.45)));\n\tconst q1 = q0.add(dot(q0, q0.add(34.345)));\n\treturn fract(__tsover_mul(q1.x, q1.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"id\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"id\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"123.34\"], [5, \"345.45\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"q0\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"34.345\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.dot\": () =\u003e dot\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rowSpeedHash = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((row) =\u003e {\n\t\"use gpu\";\n\treturn fract(__tsover_mul(sin(__tsover_mul(row, 127.1)), 43758.5453));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"row\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"127.1\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"43758.5453\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rowSpeedMultiplier = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rowHash, variance) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(1, __tsover_mul(__tsover_mul(__tsover_sub(rowHash, .5), 4), variance));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rowHash\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"variance\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rowHash\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"variance\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst variationFactor = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rand, variation) =\u003e {\n\t\"use gpu\";\n\treturn max(__tsover_add(1, __tsover_mul(__tsover_mul(__tsover_sub(rand, .5), 2), variation)), 0);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rand\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"variation\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.max\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rand\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"variation\"\n\t\t\t\t]\n\t\t\t], [5, \"0\"]]\n\t\t]]]]\n\t},\n\texternals: { \"std.max\": () =\u003e max }\n}) \u0026\u0026 $.f)({}));\nvar INV_SQRT3_2 = 2 / Math.sqrt(3);\nvar SQRT3_2 = Math.sqrt(3) / 2;\nconst latticeFrameFlipY = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cells, rotationDeg) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst correctedUV = vec2f(__tsover_mul(uv.x, aspect), __tsover_sub(1, uv.y));\n\tconst rotRad = __tsover_mul(rotationDeg, DEG_TO_RAD);\n\treturn rotateAboutCanvasCentre(correctedUV, aspect, cos(rotRad), sin(rotRad)).mul(cells);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cells\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotationDeg\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotationDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rotateAboutCanvasCentre\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"correctedUV\",\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\"cosR\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"cells\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"rotateAboutCanvasCentre\": () =\u003e rotateAboutCanvasCentre\n\t}\n}) \u0026\u0026 $.f)({}));\nconst latticeFrameCW = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cells, rotationDeg) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst correctedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst ang = -__tsover_mul(rotationDeg, DEG_TO_RAD);\n\treturn rotateAboutCanvasCentre(correctedUV, aspect, cos(ang), sin(ang)).mul(cells);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cells\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotationDeg\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ang\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotationDeg\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"ang\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"ang\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rotateAboutCanvasCentre\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"correctedUV\",\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\"cosR\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"cells\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"rotateAboutCanvasCentre\": () =\u003e rotateAboutCanvasCentre\n\t}\n}) \u0026\u0026 $.f)({}));\nconst latticeFrame = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cells, rotationDeg) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst correctedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst rotRad = __tsover_mul(rotationDeg, DEG_TO_RAD);\n\treturn rotateAboutCanvasCentre(correctedUV, aspect, cos(rotRad), sin(rotRad)).mul(cells);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cells\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotationDeg\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotationDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rotateAboutCanvasCentre\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"correctedUV\",\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\"cosR\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"cells\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"rotateAboutCanvasCentre\": () =\u003e rotateAboutCanvasCentre\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellVariation = typegpu_default.fn([vec2f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cellId, variation) =\u003e {\n\t\"use gpu\";\n\treturn variationFactor(cellHash(cellId), variation);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cellId\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"variation\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"variationFactor\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"cellHash\",\n\t\t\t\t[\"cellId\"]\n\t\t\t], \"variation\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"variationFactor\": () =\u003e variationFactor,\n\t\t\"cellHash\": () =\u003e cellHash\n\t}\n}) \u0026\u0026 $.f)({}));\nconst strokeBandFloored = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((field, lineWidth, pixel, softness) =\u003e {\n\t\"use gpu\";\n\tconst soft = __tsover_mul(softness, .5);\n\treturn lineMaskFromField(field, lineWidth, max(__tsover_sub(lineWidth, soft), 0), __tsover_add(__tsover_add(lineWidth, pixel), soft));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"field\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lineWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pixel\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"soft\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"softness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lo\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"soft\"\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hi\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"pixel\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"soft\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"lineMaskFromField\",\n\t\t\t\t[\n\t\t\t\t\t\"field\",\n\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\"lo\",\n\t\t\t\t\t\"hi\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"lineMaskFromField\": () =\u003e lineMaskFromField\n\t}\n}) \u0026\u0026 $.f)({}));\nconst strokeBandSymmetric = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((field, lineWidth, aaWidth) =\u003e {\n\t\"use gpu\";\n\treturn lineMaskFromField(field, lineWidth, __tsover_sub(lineWidth, aaWidth), __tsover_add(lineWidth, aaWidth));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"field\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lineWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aaWidth\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"lineMaskFromField\",\n\t\t\t[\n\t\t\t\t\"field\",\n\t\t\t\t\"lineWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"aaWidth\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"aaWidth\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"lineMaskFromField\": () =\u003e lineMaskFromField }\n}) \u0026\u0026 $.f)({}));\nconst checkerBlend = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cells, softness) =\u003e {\n\t\"use gpu\";\n\tconst p = aspectCorrectedUVFlipY(uv, viewport).mul(cells);\n\treturn quilezCheckerFilter(p, footprint2(p, softness));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cells\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"p\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"aspectCorrectedUVFlipY\",\n\t\t\t\t\t\t[\"uv\", \"viewport\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"cells\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"quilezCheckerFilter\",\n\t\t\t[\"p\", [\n\t\t\t\t6,\n\t\t\t\t\"footprint2\",\n\t\t\t\t[\"p\", \"softness\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"aspectCorrectedUVFlipY\": () =\u003e aspectCorrectedUVFlipY,\n\t\t\"quilezCheckerFilter\": () =\u003e quilezCheckerFilter,\n\t\t\"footprint2\": () =\u003e footprint2\n\t}\n}) \u0026\u0026 $.f)({}));\nconst stripeCoordP = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, angle, density, animTime, offset) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst aspect = aspectOf(viewport);\n\tconst rotatedCoord = __tsover_add(directionalProjection(canvasCentredDelta(uv, aspect), cos(angleRad), sin(angleRad)), __tsover_mul(aspect, .5));\n\treturn __tsover_add(__tsover_add(__tsover_mul(rotatedCoord, density), animTime), offset);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"density\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedCoord\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"directionalProjection\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"canvasCentredDelta\",\n\t\t\t\t\t\t\t\t[\"uv\", \"aspect\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotatedCoord\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"density\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"animTime\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t\"offset\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"directionalProjection\": () =\u003e directionalProjection,\n\t\t\"canvasCentredDelta\": () =\u003e canvasCentredDelta,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst stripesMask = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, angle, density, animTime, offset, balance, softness) =\u003e {\n\t\"use gpu\";\n\tconst p = stripeCoordP(uv, viewport, angle, density, animTime, offset);\n\treturn quilezStepFilter(p, footprint1(p, softness), balance);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"density\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"balance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"p\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"stripeCoordP\",\n\t\t\t\t[\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"density\",\n\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\"offset\"\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"quilezStepFilter\",\n\t\t\t[\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"footprint1\",\n\t\t\t\t\t[\"p\", \"softness\"]\n\t\t\t\t],\n\t\t\t\t\"balance\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"stripeCoordP\": () =\u003e stripeCoordP,\n\t\t\"quilezStepFilter\": () =\u003e quilezStepFilter,\n\t\t\"footprint1\": () =\u003e footprint1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst chevronMask = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, count, angle, balance, softness, offset, animTime) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst rot = rotate2(canvasCentredDelta(uv, aspectOf(viewport)), cosA, -sinA);\n\tconst zigzag = __tsover_mul(abs(__tsover_sub(fract(__tsover_mul(rot.y, count)), .5)), 2);\n\tconst stripeCoord = __tsover_add(__tsover_add(__tsover_add(__tsover_mul(rot.x, count), __tsover_mul(zigzag, .5)), animTime), offset);\n\tconst pattern = fract(stripeCoord);\n\tconst fw = fwidth(stripeCoord);\n\treturn smoothstep(__tsover_sub(__tsover_sub(balance, softness), fw), __tsover_add(__tsover_add(balance, softness), fw), pattern);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"count\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"balance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rot\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rotate2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"canvasCentredDelta\",\n\t\t\t\t\t\t\t[\"uv\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t\t\t\t[\"viewport\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"cosA\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"zigzag\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stripeCoord\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"zigzag\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"animTime\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"offset\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pattern\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"stripeCoord\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fw\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t[\"stripeCoord\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"balance\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"fw\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"balance\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"fw\"\n\t\t\t\t\t],\n\t\t\t\t\t\"pattern\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"rotate2\": () =\u003e rotate2,\n\t\t\"canvasCentredDelta\": () =\u003e canvasCentredDelta,\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ripplesMask = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, frequency, softness, thickness, phase, animTime, uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, viewport.y);\n\tconst dist = length(vec2f(__tsover_sub(__tsover_mul(uv.x, aspect), __tsover_mul(center.x, aspect)), __tsover_sub(uv.y, __tsover_sub(1, center.y))));\n\tconst baseWave = sin(__tsover_add(__tsover_sub(__tsover_mul(dist, frequency), animTime), phase));\n\tconst thicknessThreshold = __tsover_sub(__tsover_mul(thickness, 2), 1);\n\tconst banded = smoothstep(__tsover_sub(thicknessThreshold, softness), __tsover_add(thicknessThreshold, softness), baseWave);\n\treturn __tsover_sub(1, banded);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"dx\", \"dy\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"waveInput\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"frequency\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"animTime\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"phase\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseWave\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"waveInput\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thicknessThreshold\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"banded\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"thicknessThreshold\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"thicknessThreshold\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"baseWave\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t\"banded\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nvar colHash = typegpu_default.fn([f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((idx) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(fract(__tsover_mul(sin(__tsover_mul(idx, 127.1)), 43758.5453123)), fract(__tsover_mul(sin(__tsover_mul(idx, 311.7)), 38291.3421)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"idx\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"127.1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"43758.5453123\"]\n\t\t\t\t]]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"311.7\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"38291.3421\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst fallingCapAlpha = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((vPeriodic, trailLen, density, hw, rounding, fwU, distFromCenter) =\u003e {\n\t\"use gpu\";\n\tconst maxDepth = __tsover_mul(hw, rounding);\n\tconst gapDist = __tsover_mul(max(__tsover_sub(vPeriodic, trailLen), 0), density);\n\tconst tcap = clamp(__tsover_div(gapDist, max(maxDepth, 1e-4)), 0, 1);\n\tconst capHW = __tsover_mul(hw, sqrt(max(__tsover_sub(1, __tsover_mul(tcap, tcap)), 0)));\n\treturn __tsover_mul(__tsover_sub(1, smoothstep(max(__tsover_sub(capHW, fwU), 0), max(__tsover_add(capHW, fwU), .001), distFromCenter)), smoothstep(0, fwU, capHW));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vPeriodic\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"trailLen\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"density\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rounding\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fwU\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distFromCenter\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxDepth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hw\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"rounding\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gapDist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"vPeriodic\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"trailLen\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"density\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tcap\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gapDist\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"maxDepth\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"capHW\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hw\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tcap\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"tcap\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"capHW\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"fwU\"\n\t\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"capHW\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"fwU\"\n\t\t\t\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"distFromCenter\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\"fwU\",\n\t\t\t\t\t\t\"capHW\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst fallingBalanceRemap = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((withinStreak, balance) =\u003e {\n\t\"use gpu\";\n\tconst balanceNum = __tsover_sub(__tsover_mul(2, balance), 1);\n\tconst balanceDen = max(__tsover_mul(2, __tsover_sub(1, balance)), .001);\n\treturn clamp(__tsover_div(__tsover_add(withinStreak, balanceNum), balanceDen), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"withinStreak\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"balance\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"balanceNum\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"balance\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"balanceDen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"balance\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"withinStreak\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"balanceNum\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"balanceDen\"\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst fallingLinesField = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, vp, angle, density, speedVariance, trailLength, strokeWidth, rounding, balance, animTime) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(vp);\n\tconst centeredUV = vec2f(__tsover_mul(uv.x, aspect), uv.y).sub(vec2f(__tsover_mul(aspect, .5), .5));\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst u = __tsover_sub(__tsover_mul(centeredUV.y, cosA), __tsover_mul(centeredUV.x, sinA));\n\tconst v = __tsover_add(__tsover_mul(centeredUV.x, cosA), __tsover_mul(centeredUV.y, sinA));\n\tconst colF = __tsover_mul(u, density);\n\tconst colIdx = floor(colF);\n\tconst colLocalU = fract(colF);\n\tconst h = colHash(colIdx);\n\tconst speedMod = __tsover_add(1, __tsover_mul(__tsover_mul(__tsover_sub(h.x, .5), speedVariance), 2));\n\tconst phase = h.y;\n\tconst animOffset = fract(__tsover_mul(animTime, speedMod));\n\tconst vPeriodic = fract(__tsover_sub(__tsover_sub(v, animOffset), phase));\n\tconst trailLen = trailLength;\n\tconst withinStreak = clamp(__tsover_div(vPeriodic, trailLen), 0, 1);\n\tconst fwV = clamp(fwidth(v), .001, .1);\n\tconst fwU = clamp(__tsover_mul(fwidth(u), density), .001, .1);\n\tconst streakMask = __tsover_sub(1, smoothstep(__tsover_sub(trailLen, fwV), __tsover_add(trailLen, fwV), vPeriodic));\n\tconst hw = __tsover_mul(strokeWidth, .5);\n\tconst distFromCenter = abs(__tsover_sub(colLocalU, .5));\n\tconst widthMask = __tsover_sub(1, smoothstep(__tsover_sub(hw, fwU), __tsover_add(hw, fwU), distFromCenter));\n\treturn vec2f(max(__tsover_mul(streakMask, widthMask), fallingCapAlpha(vPeriodic, trailLen, density, hw, rounding, fwU, distFromCenter)), fallingBalanceRemap(withinStreak, balance));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"density\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speedVariance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"trailLength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strokeWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rounding\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"balance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"vp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"corrUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"corrUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colF\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"density\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colIdx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"colF\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colLocalU\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"colF\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"colHash\",\n\t\t\t\t\t[\"colIdx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"speedMod\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"speedVariance\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phase\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"animOffset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"speedMod\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vPeriodic\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"animOffset\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"trailLen\",\n\t\t\t\t\"trailLength\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"withinStreak\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"vPeriodic\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"trailLen\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fwV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t[\"v\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.001\"],\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fwU\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t\t[\"u\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"density\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.001\"],\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"streakMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"trailLen\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"fwV\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"trailLen\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"fwV\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vPeriodic\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hw\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strokeWidth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distFromCenter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"colLocalU\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"widthMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hw\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"fwU\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hw\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"fwU\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"distFromCenter\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rectMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"streakMask\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"widthMask\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"capAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"fallingCapAlpha\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"vPeriodic\",\n\t\t\t\t\t\t\"trailLen\",\n\t\t\t\t\t\t\"density\",\n\t\t\t\t\t\t\"hw\",\n\t\t\t\t\t\t\"rounding\",\n\t\t\t\t\t\t\"fwU\",\n\t\t\t\t\t\t\"distFromCenter\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"rectMask\", \"capAlpha\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"finalMask\", [\n\t\t\t\t\t6,\n\t\t\t\t\t\"fallingBalanceRemap\",\n\t\t\t\t\t[\"withinStreak\", \"balance\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"colHash\": () =\u003e colHash,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"fallingCapAlpha\": () =\u003e fallingCapAlpha,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"fallingBalanceRemap\": () =\u003e fallingBalanceRemap\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gridCellCenterUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cells, rotation) =\u003e {\n\t\"use gpu\";\n\treturn cellCentreUVRotated(uv, viewport, cells, __tsover_mul(rotation, DEG_TO_RAD));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cells\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"cellCentreUVRotated\",\n\t\t\t[\n\t\t\t\t\"uv\",\n\t\t\t\t\"viewport\",\n\t\t\t\t\"cells\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"cellCentreUVRotated\": () =\u003e cellCentreUVRotated,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gridField = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((gridUV, thickness, softness, variation) =\u003e {\n\t\"use gpu\";\n\tconst lineWidth = __tsover_mul(thickness, .01);\n\tconst safeLine = max(lineWidth, 1e-4);\n\tconst lineFraction = __tsover_mul(safeLine, 2);\n\tconst N = __tsover_div(1, lineFraction);\n\tconst p = gridUV.add(safeLine);\n\tconst dpx = dpdx(p);\n\tconst dpy = dpdy(p);\n\tconst wx = __tsover_add(max(max(abs(dpx.x), abs(dpy.x)), 1e-5), softness);\n\tconst wy = __tsover_add(max(max(abs(dpx.y), abs(dpy.y)), 1e-5), softness);\n\tconst iX = quilezLineFilterAxis(p.x, wx, N);\n\tconst iY = quilezLineFilterAxis(p.y, wy, N);\n\tconst gapBoth = __tsover_mul(__tsover_sub(1, iX), __tsover_sub(1, iY));\n\treturn vec2f(__tsover_mul(__tsover_sub(1, gapBoth), step(1e-4, lineWidth)), cellVariation(floor(gridUV), variation));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gridUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"variation\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeLine\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"lineWidth\", [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineFraction\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"safeLine\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"N\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"lineFraction\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"gridUV\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"safeLine\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dpx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dpdx\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dpy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dpdy\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dpx\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dpy\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"softness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dpx\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dpy\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"softness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"quilezLineFilterAxis\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\"N\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"quilezLineFilterAxis\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"wy\",\n\t\t\t\t\t\t\"N\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gapBoth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"iX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"iY\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gridMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"gapBoth\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[5, \"0.0001\"], \"lineWidth\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"variedFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cellVariation\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"gridUV\"]\n\t\t\t\t\t], \"variation\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"gridMask\", \"variedFactor\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dpdx\": () =\u003e dpdx,\n\t\t\"std.dpdy\": () =\u003e dpdy,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"quilezLineFilterAxis\": () =\u003e quilezLineFilterAxis,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"cellVariation\": () =\u003e cellVariation,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst dotGridAlpha = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, density, dotSize, offset, speedVariance, twinkle, animTime, time) =\u003e {\n\t\"use gpu\";\n\tconst correctedUV = aspectCorrectedUVFlipY(uv, viewport);\n\tconst gridUV = correctedUV.mul(density);\n\tconst rowIndex = floor(gridUV.y);\n\tconst speedMod = rowSpeedMultiplier(rowSpeedHash(rowIndex), speedVariance);\n\tconst drift = __tsover_mul(animTime, speedMod);\n\tconst staticStagger = __tsover_mul(offset, flooredMod1(rowIndex, 2));\n\tconst tile = squareTiling(vec2f(__tsover_sub(__tsover_sub(gridUV.x, staticStagger), drift), gridUV.y));\n\tconst centerDistance = length(tile.local.sub(.5));\n\tconst pixelSize = length(fwidth(correctedUV.mul(density)));\n\tconst coverage = discCoverage(centerDistance, __tsover_mul(dotSize, .5), pixelSize);\n\tconst dotPhase = fract(__tsover_mul(sin(__tsover_add(__tsover_mul(tile.cell.x, 12.9898), __tsover_mul(tile.cell.y, 78.233))), 43758.5453));\n\tconst twinkleTime = __tsover_add(__tsover_mul(time, 2), __tsover_mul(dotPhase, TAU));\n\tconst twinkleModifier = mix(1, __tsover_add(__tsover_mul(sin(twinkleTime), .5), .5), twinkle);\n\treturn __tsover_mul(coverage, twinkleModifier);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"density\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dotSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speedVariance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"twinkle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"correctedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectCorrectedUVFlipY\",\n\t\t\t\t\t[\"uv\", \"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gridUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"correctedUV\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"density\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rowIndex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"gridUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"speedMod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rowSpeedMultiplier\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rowSpeedHash\",\n\t\t\t\t\t\t[\"rowIndex\"]\n\t\t\t\t\t], \"speedVariance\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"drift\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"speedMod\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"staticStagger\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"offset\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"flooredMod1\",\n\t\t\t\t\t\t[\"rowIndex\", [5, \"2\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shiftedGrid\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"gridUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"staticStagger\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"gridUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tile\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"squareTiling\",\n\t\t\t\t\t[\"shiftedGrid\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerDistance\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixelSize\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"correctedUV\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"density\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"coverage\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"discCoverage\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"centerDistance\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dotSize\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"pixelSize\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotPhase\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"12.9898\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"78.233\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"43758.5453\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twinkleTime\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dotPhase\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twinkleValue\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"twinkleTime\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twinkleModifier\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"twinkleValue\",\n\t\t\t\t\t\t\"twinkle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"coverage\",\n\t\t\t\t\"*\",\n\t\t\t\t\"twinkleModifier\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectCorrectedUVFlipY\": () =\u003e aspectCorrectedUVFlipY,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"rowSpeedMultiplier\": () =\u003e rowSpeedMultiplier,\n\t\t\"rowSpeedHash\": () =\u003e rowSpeedHash,\n\t\t\"flooredMod1\": () =\u003e flooredMod1,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"squareTiling\": () =\u003e squareTiling,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"discCoverage\": () =\u003e discCoverage,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst hexGridField = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((scaledUV, thickness, softness, variation) =\u003e {\n\t\"use gpu\";\n\tconst hex = hexTiling(scaledUV, vec2f(SQRT3, 1));\n\tconst variedFactor = cellVariation(vec2f(round(__tsover_mul(hex.id.x, INV_SQRT3_2)), round(__tsover_mul(hex.id.y, 2))), variation);\n\tconst pAbs = vec2f(abs(hex.gv.x), abs(hex.gv.y));\n\tconst hexDist = max(dot(pAbs, vec2f(SQRT3_2, .5)), pAbs.y);\n\treturn vec2f(strokeBandFloored(__tsover_sub(.5, hexDist), __tsover_mul(thickness, .01), __tsover_mul(fwidth(scaledUV.x), .5), softness), variedFactor);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scaledUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"variation\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hexTiling\",\n\t\t\t\t\t[\"scaledUV\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"SQRT3\", [5, \"1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ix\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.round\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"id\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"INV_SQRT3_2\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.round\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"id\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"variedFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cellVariation\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"ix\", \"iy\"]\n\t\t\t\t\t], \"variation\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pAbs\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"gv\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"gv\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hexDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"pAbs\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"SQRT3_2\", [5, \"0.5\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pAbs\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeDist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"hexDist\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixel\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"scaledUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"strokeBandFloored\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"edgeDist\",\n\t\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\t\"pixel\",\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"lineMask\", \"variedFactor\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hexTiling\": () =\u003e hexTiling,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"SQRT3\": () =\u003e SQRT3,\n\t\t\"std.round\": () =\u003e round,\n\t\t\"INV_SQRT3_2\": () =\u003e INV_SQRT3_2,\n\t\t\"cellVariation\": () =\u003e cellVariation,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"SQRT3_2\": () =\u003e SQRT3_2,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"strokeBandFloored\": () =\u003e strokeBandFloored\n\t}\n}) \u0026\u0026 $.f)({}));\nconst triangularGridField = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, thickness, softness, variation, speedVariance, animTime) =\u003e {\n\t\"use gpu\";\n\tconst ps = triLattice(p);\n\tconst speedMod = rowSpeedMultiplier(rowSpeedHash(floor(ps.y)), speedVariance);\n\tconst drift = __tsover_mul(animTime, speedMod);\n\tconst psShifted = vec2f(__tsover_sub(ps.x, drift), ps.y);\n\tconst cell = floor(psShifted);\n\tconst f = fract(psShifted);\n\tconst upper = step(1, __tsover_add(f.x, f.y));\n\tconst variedFactor = cellVariation(vec2f(__tsover_add(__tsover_mul(cell.x, 2), upper), cell.y), variation);\n\treturn vec2f(strokeBandSymmetric(min(min(min(f.x, __tsover_sub(1, f.x)), min(f.y, __tsover_sub(1, f.y))), abs(__tsover_sub(__tsover_add(f.x, f.y), 1))), __tsover_mul(thickness, .02), __tsover_add(max(fwidth(ps.x), fwidth(ps.y)), __tsover_mul(softness, .5))), variedFactor);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"variation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speedVariance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ps\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"triLattice\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rowIndex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"ps\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"speedMod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rowSpeedMultiplier\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rowSpeedHash\",\n\t\t\t\t\t\t[\"rowIndex\"]\n\t\t\t\t\t], \"speedVariance\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"drift\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"speedMod\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"psShifted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ps\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"ps\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cell\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"psShifted\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"psShifted\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"upper\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[[5, \"1\"], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"triId\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"upper\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"variedFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cellVariation\",\n\t\t\t\t\t[\"triId\", \"variation\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dEdge\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aaWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"ps\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"ps\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"strokeBandSymmetric\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"dEdge\",\n\t\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\t\"aaWidth\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"lineMask\", \"variedFactor\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"triLattice\": () =\u003e triLattice,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"rowSpeedMultiplier\": () =\u003e rowSpeedMultiplier,\n\t\t\"rowSpeedHash\": () =\u003e rowSpeedHash,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"cellVariation\": () =\u003e cellVariation,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"strokeBandSymmetric\": () =\u003e strokeBandSymmetric\n\t}\n}) \u0026\u0026 $.f)({}));\nconst brickFrame = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, rotation) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst centred = canvasCentredDelta(uv, aspect);\n\tconst rotRad = __tsover_mul(rotation, DEG_TO_RAD);\n\tconst rot = rotate2(centred, cos(rotRad), -sin(rotRad));\n\treturn vec2f(__tsover_add(__tsover_div(rot.x, aspect), .5), __tsover_add(rot.y, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centred\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"canvasCentredDelta\",\n\t\t\t\t\t[\"uv\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rot\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rotate2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"centred\",\n\t\t\t\t\t\t\"cosR\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rot\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"canvasCentredDelta\": () =\u003e canvasCentredDelta,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"rotate2\": () =\u003e rotate2,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst brickRowStagger = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((row, seed, speedVariance) =\u003e {\n\t\"use gpu\";\n\tconst rowMod2 = flooredMod1(row, 2);\n\treturn vec2f(__tsover_mul(rowMod2, .5), mix(__tsover_sub(__tsover_mul(rowMod2, 2), 1), __tsover_mul(__tsover_sub(fract(__tsover_mul(sin(__tsover_add(row, __tsover_mul(seed, .137))), 43758.5453)), .5), 2), speedVariance));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"row\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speedVariance\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rowMod2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"flooredMod1\",\n\t\t\t\t\t[\"row\", [5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rowOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rowMod2\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rowDir\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rowMod2\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rowHash\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.137\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"43758.5453\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"rowOffset\", [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rowDir\",\n\t\t\t\t\t\t\"rowHash\",\n\t\t\t\t\t\t\"speedVariance\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"flooredMod1\": () =\u003e flooredMod1,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst brickMortarMask = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cellUV, mortarUV, aaUV) =\u003e {\n\t\"use gpu\";\n\tconst brickU = bandMask(cellUV.x, __tsover_sub(mortarUV.x, aaUV.x), __tsover_add(mortarUV.x, aaUV.x));\n\tconst brickV = bandMask(cellUV.y, __tsover_sub(mortarUV.y, aaUV.y), __tsover_add(mortarUV.y, aaUV.y));\n\treturn __tsover_mul(brickU, brickV);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mortarUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aaUV\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brickU\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"bandMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cellUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mortarUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"aaUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mortarUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"aaUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brickV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"bandMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cellUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mortarUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"aaUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mortarUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"aaUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"brickU\",\n\t\t\t\t\"*\",\n\t\t\t\t\"brickV\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"bandMask\": () =\u003e bandMask }\n}) \u0026\u0026 $.f)({}));\nconst brickField = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cellsX, cellsY, mortar, softness, variation, rotation, offset, speedVariance, seed, animTime) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst frame = brickFrame(uv, viewport, rotation);\n\tconst u = frame.x;\n\tconst v = frame.y;\n\tconst mortarU = __tsover_mul(mortar, .3);\n\tconst mortarV = __tsover_div(__tsover_mul(__tsover_mul(mortarU, aspect), cellsY), cellsX);\n\tconst row = floor(__tsover_mul(v, cellsY));\n\tconst stagger = brickRowStagger(row, seed, speedVariance);\n\tconst brickArg = __tsover_add(__tsover_add(__tsover_add(__tsover_mul(u, cellsX), stagger.x), __tsover_mul(animTime, stagger.y)), offset);\n\tconst vScaled = __tsover_mul(v, cellsY);\n\tconst cellU = fract(brickArg);\n\tconst cellV = fract(vScaled);\n\tconst soft = __tsover_mul(softness, .5);\n\tconst aaU = __tsover_add(fwidth(brickArg), soft);\n\tconst aaV = __tsover_add(fwidth(vScaled), soft);\n\treturn vec2f(brickMortarMask(vec2f(cellU, cellV), vec2f(mortarU, mortarV), vec2f(aaU, aaV)), cellVariation(vec2f(floor(brickArg), row), variation));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellsX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellsY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mortar\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"variation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speedVariance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"frame\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"brickFrame\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"rotation\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mortarU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"mortar\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mortarV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mortarU\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cellsY\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"cellsX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"row\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cellsY\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stagger\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"brickRowStagger\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"row\",\n\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\"speedVariance\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brickArg\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cellsX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"stagger\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"stagger\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"offset\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vScaled\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cellsY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellU\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"brickArg\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"vScaled\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"soft\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"softness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aaU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t[\"brickArg\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"soft\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aaV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t[\"vScaled\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"soft\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brickMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"brickMortarMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"cellU\", \"cellV\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"mortarU\", \"mortarV\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"aaU\", \"aaV\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brickId\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"brickArg\"]\n\t\t\t\t\t], \"row\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"variedFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cellVariation\",\n\t\t\t\t\t[\"brickId\", \"variation\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"brickMask\", \"variedFactor\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"brickFrame\": () =\u003e brickFrame,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"brickRowStagger\": () =\u003e brickRowStagger,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"brickMortarMask\": () =\u003e brickMortarMask,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"cellVariation\": () =\u003e cellVariation\n\t}\n}) \u0026\u0026 $.f)({}));\nvar truchetHash = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\tconst h = dot(p, vec2f(127.1, 311.7));\n\treturn fract(__tsover_mul(sin(h), 43758.5453));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"h\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[\"p\", [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"127.1\"], [5, \"311.7\"]]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"h\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"43758.5453\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst truchetField = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((scaledUV, thickness, softness, seed) =\u003e {\n\t\"use gpu\";\n\tconst tile = squareTiling(scaledUV);\n\tconst flip = truchetHash(vec2f(__tsover_add(tile.cell.x, seed), __tsover_add(tile.cell.y, seed))) \u003e .5;\n\tconst c1x = select(f32(0), f32(1), flip);\n\tconst c2x = select(f32(1), f32(0), flip);\n\treturn strokeBandFloored(min(abs(__tsover_sub(length(vec2f(__tsover_sub(tile.local.x, c1x), tile.local.y)), .5)), abs(__tsover_sub(length(vec2f(__tsover_sub(tile.local.x, c2x), __tsover_sub(tile.local.y, 1))), .5))), __tsover_mul(thickness, .005), __tsover_mul(fwidth(scaledUV.x), .5), softness);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scaledUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tile\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"squareTiling\",\n\t\t\t\t\t[\"scaledUV\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"truchetHash\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flip\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c1x\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"flip\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c2x\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"flip\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"c1x\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"c2x\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"arcDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"d1\", \"d2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.005\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixel\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"scaledUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"strokeBandFloored\",\n\t\t\t\t[\n\t\t\t\t\t\"arcDist\",\n\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\"pixel\",\n\t\t\t\t\t\"softness\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"squareTiling\": () =\u003e squareTiling,\n\t\t\"truchetHash\": () =\u003e truchetHash,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"strokeBandFloored\": () =\u003e strokeBandFloored\n\t}\n}) \u0026\u0026 $.f)({}));\nconst weaveColor = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec4f,\n\tvec4f\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((scaledUV, gap, colorA, colorB) =\u003e {\n\t\"use gpu\";\n\tconst tile = squareTiling(scaledUV);\n\tconst pixel = __tsover_mul(fwidth(scaledUV.x), .5);\n\tconst hBand = bandMask(tile.local.y, gap, __tsover_add(gap, pixel));\n\tconst vBand = bandMask(tile.local.x, gap, __tsover_add(gap, pixel));\n\tconst isHTopFloat = flooredMod1(__tsover_add(tile.cell.x, tile.cell.y), 2);\n\tconst intersection = __tsover_mul(hBand, vBand);\n\tconst hVis = clamp(__tsover_sub(hBand, __tsover_mul(intersection, isHTopFloat)), 0, 1);\n\tconst vVis = clamp(__tsover_sub(vBand, __tsover_mul(intersection, __tsover_sub(1, isHTopFloat))), 0, 1);\n\tconst weightA = __tsover_mul(colorA.w, hVis);\n\tconst weightB = __tsover_mul(colorB.w, vVis);\n\tconst totalAlpha = clamp(__tsover_add(weightA, weightB), 0, 1);\n\tconst safeWeight = max(__tsover_add(weightA, weightB), .001);\n\treturn vec4f(__tsover_div(__tsover_add(__tsover_mul(colorA.x, weightA), __tsover_mul(colorB.x, weightB)), safeWeight), __tsover_div(__tsover_add(__tsover_mul(colorA.y, weightA), __tsover_mul(colorB.y, weightB)), safeWeight), __tsover_div(__tsover_add(__tsover_mul(colorA.z, weightA), __tsover_mul(colorB.z, weightB)), safeWeight), totalAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scaledUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gap\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tile\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"squareTiling\",\n\t\t\t\t\t[\"scaledUV\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixel\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"scaledUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hBand\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"bandMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"gap\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gap\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"pixel\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vBand\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"bandMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"gap\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gap\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"pixel\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isHTopFloat\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"flooredMod1\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tile\",\n\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"intersection\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"hBand\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"vBand\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hVis\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"hBand\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"intersection\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"isHTopFloat\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vVis\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"vBand\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"intersection\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"isHTopFloat\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"hVis\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"weightB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"vVis\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"weightB\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"weightA\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"weightB\"\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"weightA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"weightB\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safeWeight\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"weightA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"weightB\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safeWeight\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"weightA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"weightB\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safeWeight\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"totalAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"squareTiling\": () =\u003e squareTiling,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"bandMask\": () =\u003e bandMask,\n\t\t\"flooredMod1\": () =\u003e flooredMod1,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar INV_2_SQRT3 = 2 / Math.sqrt(3);\nconst isoCubeField = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((scaledUV, thickness, softness) =\u003e {\n\t\"use gpu\";\n\tconst hex = hexTiling(scaledUV, vec2f(1, SQRT3));\n\tconst s0 = dot(hex.gv, vec2f(0, 1));\n\tconst s1 = dot(hex.gv, vec2f(-SQRT3_2, -.5));\n\tconst s2 = dot(hex.gv, vec2f(SQRT3_2, -.5));\n\tconst isTop = s0 \u003e= max(s1, s2);\n\tconst tone = select(select(.74, .5, s1 \u003e= s2), 1, isTop);\n\tconst rand = cellHash(vec2f(round(__tsover_mul(hex.id.x, 2)), round(__tsover_mul(hex.id.y, INV_2_SQRT3))));\n\tconst mx = max(s0, max(s1, s2));\n\tconst mn = min(s0, min(s1, s2));\n\tconst midScore = __tsover_sub(__tsover_sub(__tsover_add(__tsover_add(s0, s1), s2), mx), mn);\n\tconst internal = __tsover_sub(mx, midScore);\n\tconst pAbs = vec2f(abs(hex.gv.x), abs(hex.gv.y));\n\tconst hexDist = max(dot(pAbs, vec2f(.5, SQRT3_2)), pAbs.x);\n\treturn vec3f(rand, tone, strokeBandSymmetric(min(internal, __tsover_sub(.5, hexDist)), __tsover_mul(thickness, .02), __tsover_add(__tsover_mul(fwidth(scaledUV.x), .5), __tsover_mul(softness, .5))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scaledUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hexTiling\",\n\t\t\t\t\t[\"scaledUV\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"1\"], \"SQRT3\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\"gv\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\"gv\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"SQRT3_2\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\"gv\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"SQRT3_2\", [\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isTop\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"s0\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"s1\", \"s2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isLeft\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"s1\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\"s2\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tone\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0.74\"],\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"isLeft\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"isTop\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ix\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.round\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"id\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.round\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"id\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"INV_2_SQRT3\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rand\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cellHash\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"ix\", \"iy\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"s0\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"s1\", \"s2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"s0\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"s1\", \"s2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"midScore\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"s0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"s1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"s2\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"mx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"mn\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"internal\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"mx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"midScore\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pAbs\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"gv\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hex\",\n\t\t\t\t\t\t\t\t\"gv\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hexDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"pAbs\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0.5\"], \"SQRT3_2\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pAbs\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rimDist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"hexDist\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeField\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"internal\", \"rimDist\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aaWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"scaledUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wire\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"strokeBandSymmetric\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"edgeField\",\n\t\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\t\"aaWidth\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"rand\",\n\t\t\t\t\t\"tone\",\n\t\t\t\t\t\"wire\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hexTiling\": () =\u003e hexTiling,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"SQRT3\": () =\u003e SQRT3,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"SQRT3_2\": () =\u003e SQRT3_2,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.round\": () =\u003e round,\n\t\t\"INV_2_SQRT3\": () =\u003e INV_2_SQRT3,\n\t\t\"cellHash\": () =\u003e cellHash,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"strokeBandSymmetric\": () =\u003e strokeBandSymmetric,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar SMOOTHNESS = .1;\nconst halftoneClassic = typegpu_default.fn([\n\tvec4f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((childColor, uv, aspect, angleDeg, frequency) =\u003e {\n\t\"use gpu\";\n\tconst aspectUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst angleRad = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst c = cos(angleRad);\n\tconst s = sin(angleRad);\n\tconst gridUV = fract(vec2f(dot(aspectUV, vec2f(c, __tsover_mul(s, -1))), dot(aspectUV, vec2f(s, c))).mul(frequency)).sub(vec2f(.5, .5));\n\tconst brightness = dot(vec3f(childColor.x, childColor.y, childColor.z), vec3f(.299, .587, .114));\n\tconst dotSize = __tsover_add(__tsover_mul(brightness, .7), .15);\n\tconst dist = length(gridUV);\n\tconst dotPattern = __tsover_sub(1, smoothstep(__tsover_sub(dotSize, SMOOTHNESS), __tsover_add(dotSize, SMOOTHNESS), dist));\n\treturn vec4f(__tsover_mul(childColor.x, dotPattern), __tsover_mul(childColor.y, dotPattern), __tsover_mul(childColor.z, dotPattern), __tsover_mul(childColor.w, dotPattern));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"childColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"aspectUV\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"aspectUV\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"s\", \"c\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gridUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rotatedUV\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"frequency\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brightness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotSize\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"brightness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"gridUV\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotPattern\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dotSize\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"SMOOTHNESS\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dotSize\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"SMOOTHNESS\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dotPattern\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dotPattern\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dotPattern\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dotPattern\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"SMOOTHNESS\": () =\u003e SMOOTHNESS,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst halftonePlateUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, misprintAngleDeg, plateIndexDeg, misprint, aspect) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(__tsover_add(misprintAngleDeg, plateIndexDeg), DEG_TO_RAD);\n\treturn vec2f(__tsover_add(uv.x, __tsover_mul(cos(angleRad), misprint)), __tsover_add(uv.y, __tsover_div(__tsover_mul(sin(angleRad), misprint), aspect)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"misprintAngleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"plateIndexDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"misprint\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"angleRad\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"misprintAngleDeg\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"plateIndexDeg\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"misprint\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"misprint\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst halftoneChannelK = typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(1, max(max(s.x, s.y), s.z));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t], [\n\t\t\t\t\t7,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.max\": () =\u003e max }\n}) \u0026\u0026 $.f)({}));\nconst halftoneChannelC = typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s) =\u003e {\n\t\"use gpu\";\n\tconst k = halftoneChannelK(s);\n\tconst invK = max(__tsover_sub(1, k), 1e-4);\n\treturn __tsover_div(__tsover_sub(__tsover_sub(1, s.x), k), invK);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"halftoneChannelK\",\n\t\t\t\t\t[\"s\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"invK\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"k\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"invK\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"halftoneChannelK\": () =\u003e halftoneChannelK,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst halftoneChannelM = typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s) =\u003e {\n\t\"use gpu\";\n\tconst k = halftoneChannelK(s);\n\tconst invK = max(__tsover_sub(1, k), 1e-4);\n\treturn __tsover_div(__tsover_sub(__tsover_sub(1, s.y), k), invK);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"halftoneChannelK\",\n\t\t\t\t\t[\"s\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"invK\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"k\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"invK\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"halftoneChannelK\": () =\u003e halftoneChannelK,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst halftoneChannelY = typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s) =\u003e {\n\t\"use gpu\";\n\tconst k = halftoneChannelK(s);\n\tconst invK = max(__tsover_sub(1, k), 1e-4);\n\treturn __tsover_div(__tsover_sub(__tsover_sub(1, s.z), k), invK);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"s\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"halftoneChannelK\",\n\t\t\t\t\t[\"s\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"invK\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"k\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"invK\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"halftoneChannelK\": () =\u003e halftoneChannelK,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst halftonePlateGrid = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angleDeg, intensity, frequency) =\u003e {\n\t\"use gpu\";\n\tconst aspectUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst angleRad = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst c = cos(angleRad);\n\tconst s = sin(angleRad);\n\tconst dist = length(fract(vec2f(dot(aspectUV, vec2f(c, __tsover_mul(s, -1))), dot(aspectUV, vec2f(s, c))).mul(frequency)).sub(vec2f(.5, .5)));\n\tconst size = __tsover_sub(__tsover_mul(intensity, .75), SMOOTHNESS);\n\treturn __tsover_sub(1, smoothstep(__tsover_sub(size, SMOOTHNESS), __tsover_add(size, SMOOTHNESS), dist));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"aspectUV\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"c\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"aspectUV\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"s\", \"c\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grid\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rotatedUV\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"frequency\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"grid\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"size\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"SMOOTHNESS\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"size\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"SMOOTHNESS\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"size\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"SMOOTHNESS\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"SMOOTHNESS\": () =\u003e SMOOTHNESS,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst halftoneTransmission = typegpu_default.fn([vec4f, f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((inkColor, inkMask) =\u003e {\n\t\"use gpu\";\n\treturn mix(vec3f(1, 1, 1), vec3f(inkColor.x, inkColor.y, inkColor.z), vec3f(__tsover_mul(inkMask, inkColor.w)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"inkColor\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"inkMask\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.mix\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"inkColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"inkColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"inkColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"inkMask\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"inkColor\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherCoord = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, gridRes, pixelSize) =\u003e {\n\t\"use gpu\";\n\treturn floor(vec2f(__tsover_div(__tsover_mul(uv.x, gridRes.x), pixelSize), __tsover_div(__tsover_mul(uv.y, gridRes.y), pixelSize)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gridRes\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pixelSize\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.floor\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"gridRes\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"pixelSize\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"gridRes\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"pixelSize\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherPixUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord, pixelSize, gridRes) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_div(__tsover_mul(__tsover_add(coord.x, .5), pixelSize), gridRes.x), __tsover_div(__tsover_mul(__tsover_add(coord.y, .5), pixelSize), gridRes.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"coord\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pixelSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gridRes\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"pixelSize\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"gridRes\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"pixelSize\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"gridRes\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst ditherLuma = typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((c) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(dot(vec3f(c.x, c.y, c.z), vec3f(.299, .587, .114)), c.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"c\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t\"c\",\n\t\t\t\t\"w\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherBayerQuad = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((a, b) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(__tsover_add(__tsover_mul(b, 3), __tsover_mul(a, 2)), __tsover_mul(__tsover_mul(a, b), 4));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"a\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"b\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"b\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"4\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst ditherPeriodic = typegpu_default.fn([vec2f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord) =\u003e {\n\t\"use gpu\";\n\tconst tx = __tsover_sub(coord.x, __tsover_mul(8, floor(__tsover_div(coord.x, 8))));\n\tconst ty = __tsover_sub(coord.y, __tsover_mul(8, floor(__tsover_div(coord.y, 8))));\n\tconst x2 = __tsover_sub(tx, __tsover_mul(2, floor(__tsover_div(tx, 2))));\n\tconst y2 = __tsover_sub(ty, __tsover_mul(2, floor(__tsover_div(ty, 2))));\n\tconst x4 = __tsover_sub(tx, __tsover_mul(4, floor(__tsover_div(tx, 4))));\n\tconst y4 = __tsover_sub(ty, __tsover_mul(4, floor(__tsover_div(ty, 4))));\n\tconst x4h = floor(__tsover_div(x4, 2));\n\tconst y4h = floor(__tsover_div(y4, 2));\n\tconst x8h = floor(__tsover_div(tx, 4));\n\tconst y8h = floor(__tsover_div(ty, 4));\n\tconst b00 = ditherBayerQuad(x2, y2);\n\tconst b11 = ditherBayerQuad(x4h, y4h);\n\tconst b22 = ditherBayerQuad(x8h, y8h);\n\tconst bayer2 = __tsover_div(b00, 4);\n\tconst bayer4 = __tsover_div(__tsover_add(__tsover_mul(b00, 4), b11), 16);\n\tconst bayer8 = __tsover_div(__tsover_add(__tsover_add(__tsover_mul(b00, 16), __tsover_mul(b11, 4)), b22), 64);\n\tconst idx = __tsover_add(__tsover_mul(i32(y4), 4), i32(x4));\n\tlet cd = .75;\n\tcd = select(cd, .3125, idx === 1);\n\tcd = select(cd, .375, idx === 2);\n\tcd = select(cd, .8125, idx === 3);\n\tcd = select(cd, .25, idx === 4);\n\tcd = select(cd, f32(0), idx === 5);\n\tcd = select(cd, .0625, idx === 6);\n\tcd = select(cd, .4375, idx === 7);\n\tcd = select(cd, .6875, idx === 8);\n\tcd = select(cd, .1875, idx === 9);\n\tcd = select(cd, .125, idx === 10);\n\tcd = select(cd, .5, idx === 11);\n\tcd = select(cd, .9375, idx === 12);\n\tcd = select(cd, .625, idx === 13);\n\tcd = select(cd, .5625, idx === 14);\n\tcd = select(cd, .875, idx === 15);\n\treturn vec4f(bayer2, bayer4, bayer8, cd);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"coord\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ty\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"tx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ty\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x4\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"tx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y4\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ty\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x4h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"x4\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y4h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y4\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x8h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y8h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b00\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"ditherBayerQuad\",\n\t\t\t\t\t[\"x2\", \"y2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b11\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"ditherBayerQuad\",\n\t\t\t\t\t[\"x4h\", \"y4h\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b22\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"ditherBayerQuad\",\n\t\t\t\t\t[\"x8h\", \"y8h\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bayer2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b00\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bayer4\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"b00\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"b11\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"16\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bayer8\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b00\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"16\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b11\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"b22\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"64\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"idx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"y4\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"x4\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"cd\",\n\t\t\t\t[5, \"0.75\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.3125\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.375\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.8125\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.0625\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"6\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.4375\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.6875\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.1875\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"9\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.125\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"11\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.9375\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"12\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.625\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"13\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.5625\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"14\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"cd\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cd\",\n\t\t\t\t\t\t[5, \"0.875\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"15\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"bayer2\",\n\t\t\t\t\t\"bayer4\",\n\t\t\t\t\t\"bayer8\",\n\t\t\t\t\t\"cd\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"ditherBayerQuad\": () =\u003e ditherBayerQuad,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherBlueNoise = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord) =\u003e {\n\t\"use gpu\";\n\tconst c = coord.add(vec2f(.5, .5));\n\treturn fract(__tsover_mul(52.9829189, fract(__tsover_add(__tsover_mul(c.x, .06711056), __tsover_mul(c.y, .00583715)))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"coord\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"c\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"coord\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[5, \"52.9829189\"],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.06711056\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.00583715\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.fract\": () =\u003e fract\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherWhiteNoise = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord) =\u003e {\n\t\"use gpu\";\n\treturn hash12(coord);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"coord\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"noise.hash12\",\n\t\t\t[\"coord\"]\n\t\t]]]]\n\t},\n\texternals: { \"noise.hash12\": () =\u003e hash12 }\n}) \u0026\u0026 $.f)({}));\nconst ditherOrderedResult = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ditherValue, luminance, threshold, spread) =\u003e {\n\t\"use gpu\";\n\treturn step(__tsover_add(.5, __tsover_mul(__tsover_sub(ditherValue, .5), spread)), __tsover_add(luminance, __tsover_sub(threshold, .5)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ditherValue\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"luminance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"threshold\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spread\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"adjustedDither\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ditherValue\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"spread\"\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.step\",\n\t\t\t[\"adjustedDither\", [\n\t\t\t\t1,\n\t\t\t\t\"luminance\",\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.step\": () =\u003e step }\n}) \u0026\u0026 $.f)({}));\nconst ditherBlockOrigin = typegpu_default.fn([vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord) =\u003e {\n\t\"use gpu\";\n\treturn floor(coord.div(vec2f(8, 8))).mul(vec2f(8, 8));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"coord\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"8\"], [5, \"8\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"mul\"\n\t\t\t],\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[5, \"8\"], [5, \"8\"]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherLocalCellIndex = typegpu_default.fn([vec2f, vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord, blockOrigin) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_add(__tsover_mul(__tsover_sub(coord.y, blockOrigin.y), 8), __tsover_sub(coord.x, blockOrigin.x));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"coord\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"blockOrigin\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"blockOrigin\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"8\"]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"coord\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"blockOrigin\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst ditherCellUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((blockOrigin, lx, ly, pixelSize, gridRes) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_div(__tsover_mul(__tsover_add(__tsover_add(blockOrigin.x, lx), .5), pixelSize), gridRes.x), __tsover_div(__tsover_mul(__tsover_add(__tsover_add(blockOrigin.y, ly), .5), pixelSize), gridRes.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blockOrigin\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ly\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pixelSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gridRes\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"blockOrigin\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"lx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"pixelSize\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"gridRes\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"blockOrigin\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"ly\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"pixelSize\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"gridRes\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst ditherFloydSteinberg = typegpu_default.fn([\n\tarrayOf(f32, 64),\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lum, lic, threshold, spread) =\u003e {\n\t\"use gpu\";\n\tconst thr = __tsover_sub(.5, __tsover_sub(threshold, .5));\n\tconst ecur = arrayOf(f32, 8)();\n\tconst enext = arrayOf(f32, 8)();\n\tconst licInt = i32(lic);\n\tlet result = f32(0);\n\tfor (let y = 0; y \u003c 8; y++) {\n\t\tconst ltr = (y \u0026 1) === 0;\n\t\tfor (let xi = 0; xi \u003c 8; xi++) {\n\t\t\tconst x = select(__tsover_sub(7, xi), xi, ltr);\n\t\t\tconst idx = __tsover_add(__tsover_mul(y, 8), x);\n\t\t\tconst val = __tsover_add(lum[idx], ecur[x]);\n\t\t\tconst qv = step(thr, val);\n\t\t\tresult = select(result, qv, idx === licInt);\n\t\t\tconst e = __tsover_mul(__tsover_sub(val, qv), spread);\n\t\t\tconst dir = select(-1, 1, ltr);\n\t\t\tconst xr = __tsover_add(x, dir);\n\t\t\tif (xr \u003e= 0) {\n\t\t\t\tif (xr \u003c 8) ecur[xr] = __tsover_add(ecur[xr], __tsover_mul(e, .4375));\n\t\t\t}\n\t\t\tif (y \u003c 7) {\n\t\t\t\tconst xbl = __tsover_sub(x, dir);\n\t\t\t\tconst xbr = __tsover_add(x, dir);\n\t\t\t\tif (xbl \u003e= 0) {\n\t\t\t\t\tif (xbl \u003c 8) enext[xbl] = __tsover_add(enext[xbl], __tsover_mul(e, .1875));\n\t\t\t\t}\n\t\t\t\tenext[x] = __tsover_add(enext[x], __tsover_mul(e, .3125));\n\t\t\t\tif (xbr \u003e= 0) {\n\t\t\t\t\tif (xbr \u003c 8) enext[xbr] = __tsover_add(enext[xbr], __tsover_mul(e, .0625));\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfor (let k = 0; k \u003c 8; k++) {\n\t\t\tecur[k] = enext[k];\n\t\t\tenext[k] = f32(0);\n\t\t}\n\t}\n\treturn result;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lum\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lic\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"threshold\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spread\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thr\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ecur\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.arrayOf\",\n\t\t\t\t\t\t[\"d.f32\", [5, \"8\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"enext\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.arrayOf\",\n\t\t\t\t\t\t[\"d.f32\", [5, \"8\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"licInt\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[\"lic\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"y\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"y\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"8\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ltr\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\"\u0026\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"xi\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"xi\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"xi\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"7\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"xi\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"xi\",\n\t\t\t\t\t\t\t\t\t\t\"ltr\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\"lum\",\n\t\t\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\"ecur\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"qv\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t\t[\"thr\", \"val\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\t\t\t\t\"qv\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t\"licInt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"qv\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"spread\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"ltr\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"xr\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"dir\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"xr\",\n\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"xr\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\"ecur\",\n\t\t\t\t\t\t\t\t\t\t\t\"xr\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ecur\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"xr\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4375\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"xbl\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"dir\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"xbr\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"x\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"dir\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"xbl\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"xbl\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"xbl\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xbl\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.1875\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.3125\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"xbr\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"xbr\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"xbr\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xbr\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.0625\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"ecur\",\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\"enext\",\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, \"result\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.arrayOf\": () =\u003e arrayOf,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.step\": () =\u003e step\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherComposeCustom = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colorA, colorB, ditherResult) =\u003e {\n\t\"use gpu\";\n\tconst rgb = mix(vec3f(colorA.x, colorA.y, colorA.z), vec3f(colorB.x, colorB.y, colorB.z), vec3f(ditherResult));\n\tconst a = mix(colorA.w, colorB.w, ditherResult);\n\treturn vec4f(rgb.x, rgb.y, rgb.z, a);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ditherResult\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"ditherResult\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorA\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"colorB\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"ditherResult\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ditherComposeSource = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sourceColor, ditherResult) =\u003e {\n\t\"use gpu\";\n\tconst rgb = vec3f(sourceColor.x, sourceColor.y, sourceColor.z);\n\tconst out = mix(rgb.mul(.3), min(rgb.mul(1.3), vec3f(1, 1, 1)), vec3f(ditherResult));\n\treturn vec4f(out.x, out.y, out.z, sourceColor.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"sourceColor\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"ditherResult\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sourceColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sourceColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sourceColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dark\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.3\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bright\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"1.3\"]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"out\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"dark\",\n\t\t\t\t\t\t\"bright\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"ditherResult\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"out\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"out\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"out\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sourceColor\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction resolveSlot(slot, params) {\n\treturn typeof slot === \"function\" ? slot(params) : uniformOf(slot, params);\n}\nfunction shared(build) {\n\tconst cache = /* @__PURE__ */ new WeakMap();\n\treturn (params) =\u003e {\n\t\tconst hit = cache.get(params);\n\t\tif (hit) return hit;\n\t\tconst e = build(params);\n\t\tcache.set(params, e);\n\t\treturn e;\n\t};\n}\nvar FRAME_BODIES = {\n\tflippedY: {\n\t\tfn: () =\u003e latticeFrameFlipY,\n\t\thint: \"latticeFrameFlipY\"\n\t},\n\tclockwise: {\n\t\tfn: () =\u003e latticeFrameCW,\n\t\thint: \"latticeFrameCW\"\n\t},\n\tplain: {\n\t\tfn: () =\u003e latticeFrame,\n\t\thint: \"latticeFrame\"\n\t}\n};\nfunction cellFrame(slots) {\n\tconst body = FRAME_BODIES[slots.convention];\n\treturn shared((params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(body.fn(), body.hint, [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.cells, params),\n\t\t\tuniformOf(slots.rotation, params)\n\t\t]);\n\t});\n}\nfunction vary(color, factor) {\n\treturn (params) =\u003e {\n\t\tconst c = resolveSlot(color, params);\n\t\treturn vec4(c.member(\"rgb\").mul(resolveSlot(factor, params)), c.member(\"a\"));\n\t};\n}\nfunction strokeOver(layers) {\n\treturn shared((params) =\u003e call(mixColorsIn(layers.space, params), \"mixColors\", [\n\t\tresolveSlot(layers.fill, params),\n\t\tresolveSlot(layers.stroke, params),\n\t\tresolveSlot(layers.mask, params)\n\t]));\n}\nfunction sampleMapsAtCellCentres(slots) {\n\treturn ({ uniforms, ctx }) =\u003e {\n\t\tconst params = { uniforms };\n\t\tconst cellCenter = slots.rotation ? call(gridCellCenterUV, \"gridCellCenterUV\", [\n\t\t\tctx.uv,\n\t\t\tctx.viewportSize,\n\t\t\tuniformOf(slots.cells, params),\n\t\t\tuniformOf(slots.rotation, params)\n\t\t]) : call(cellCentreUV, \"cellCentreUV\", [\n\t\t\tctx.uv,\n\t\t\tctx.viewportSize,\n\t\t\tuniformOf(slots.cells, params)\n\t\t]);\n\t\tconst out = {};\n\t\tfor (const prop of slots.props) out[prop] = cellCenter;\n\t\treturn out;\n\t};\n}\nfunction withAlpha(color, alpha) {\n\treturn (params) =\u003e {\n\t\treturn vec4(resolveSlot(color, params).member(\"rgb\"), resolveSlot(alpha, params));\n\t};\n}\nfunction alphaOf(color) {\n\treturn (params) =\u003e resolveSlot(color, params).member(\"a\");\n}\nfunction rgbOf(color) {\n\treturn (params) =\u003e resolveSlot(color, params).member(\"rgb\");\n}\nfunction times(a, b) {\n\treturn (params) =\u003e resolveSlot(a, params).mul(resolveSlot(b, params));\n}\nfunction mixOf(from, to, amount) {\n\treturn (params) =\u003e mixExpr(resolveSlot(from, params), resolveSlot(to, params), resolveSlot(amount, params));\n}\nfunction opaque(rgb) {\n\treturn (params) =\u003e vec4(resolveSlot(rgb, params), 1);\n}\nfunction checkerCells(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(checkerBlend, \"checkerBlend\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.cells, params),\n\t\t\tuniformOf(slots.softness, params)\n\t\t]);\n\t};\n}\nfunction stripeBands(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(stripesMask, \"stripesMask\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.angle, params),\n\t\t\tuniformOf(slots.density, params),\n\t\t\tanimatedTime(params),\n\t\t\tuniformOf(slots.offset, params),\n\t\t\tuniformOf(slots.balance, params),\n\t\t\tuniformOf(slots.softness, params)\n\t\t]);\n\t};\n}\nfunction zigzagBands(slots) {\n\treturn shared((params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(chevronMask, \"chevronMask\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.count, params),\n\t\t\tuniformOf(slots.angle, params),\n\t\t\tuniformOf(slots.balance, params),\n\t\t\tuniformOf(slots.softness, params),\n\t\t\tuniformOf(slots.offset, params),\n\t\t\tanimatedTime(params)\n\t\t]);\n\t});\n}\nfunction ringWaves(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(ripplesMask, \"ripplesMask\", [\n\t\t\tuniformOf(slots.center, params),\n\t\t\tuniformOf(slots.frequency, params),\n\t\t\tuniformOf(slots.softness, params),\n\t\t\tuniformOf(slots.thickness, params),\n\t\t\tuniformOf(slots.phase, params),\n\t\t\tanimatedTime(params),\n\t\t\tuv,\n\t\t\tviewport\n\t\t]);\n\t};\n}\nfunction fallingStreaks(slots) {\n\tconst field = shared((params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn local(call(fallingLinesField, \"fallingLinesField\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.angle, params),\n\t\t\tuniformOf(slots.density, params),\n\t\t\tuniformOf(slots.speedVariance, params),\n\t\t\tuniformOf(slots.trailLength, params),\n\t\t\tuniformOf(slots.strokeWidth, params),\n\t\t\tuniformOf(slots.rounding, params),\n\t\t\tuniformOf(slots.balance, params),\n\t\t\tanimatedTime(params)\n\t\t]), \"fallingField\");\n\t});\n\treturn {\n\t\tmask: (params) =\u003e field(params).member(\"x\"),\n\t\tfade: (params) =\u003e field(params).member(\"y\")\n\t};\n}\nfunction dotLattice(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(dotGridAlpha, \"dotGridAlpha\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.density, params),\n\t\t\tuniformOf(slots.dotSize, params),\n\t\t\tuniformOf(slots.offset, params),\n\t\t\tuniformOf(slots.speedVariance, params),\n\t\t\tuniformOf(slots.twinkle, params),\n\t\t\tanimatedTime(params),\n\t\t\tparams.ctx.time\n\t\t]);\n\t};\n}\nfunction gridLines(slots) {\n\tconst field = shared((params) =\u003e local(call(gridField, \"gridField\", [\n\t\tslots.frame(params),\n\t\tuniformOf(slots.thickness, params),\n\t\tuniformOf(slots.softness, params),\n\t\tuniformOf(slots.variation, params)\n\t]), \"gridField\"));\n\treturn {\n\t\tlines: (params) =\u003e field(params).member(\"x\"),\n\t\tshade: (params) =\u003e field(params).member(\"y\")\n\t};\n}\nfunction hexLines(slots) {\n\tconst field = shared((params) =\u003e local(call(hexGridField, \"hexGridField\", [\n\t\tslots.frame(params),\n\t\tuniformOf(slots.thickness, params),\n\t\tuniformOf(slots.softness, params),\n\t\tuniformOf(slots.variation, params)\n\t]), \"hexField\"));\n\treturn {\n\t\tlines: (params) =\u003e field(params).member(\"x\"),\n\t\tshade: (params) =\u003e field(params).member(\"y\")\n\t};\n}\nfunction triangleLines(slots) {\n\tconst field = shared((params) =\u003e local(call(triangularGridField, \"triangularGridField\", [\n\t\tslots.frame(params),\n\t\tuniformOf(slots.thickness, params),\n\t\tuniformOf(slots.softness, params),\n\t\tuniformOf(slots.variation, params),\n\t\tuniformOf(slots.speedVariance, params),\n\t\tanimatedTime(params)\n\t]), \"triField\"));\n\treturn {\n\t\tlines: (params) =\u003e field(params).member(\"x\"),\n\t\tshade: (params) =\u003e field(params).member(\"y\")\n\t};\n}\nfunction brickCourses(slots) {\n\tconst field = shared((params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn local(call(brickField, \"brickField\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.cellsX, params),\n\t\t\tuniformOf(slots.cellsY, params),\n\t\t\tuniformOf(slots.mortar, params),\n\t\t\tuniformOf(slots.softness, params),\n\t\t\tuniformOf(slots.variation, params),\n\t\t\tuniformOf(slots.rotation, params),\n\t\t\tuniformOf(slots.offset, params),\n\t\t\tuniformOf(slots.speedVariance, params),\n\t\t\tuniformOf(slots.seed, params),\n\t\t\tanimatedTime(params)\n\t\t]), \"brickField\");\n\t});\n\treturn {\n\t\tbricks: (params) =\u003e field(params).member(\"x\"),\n\t\tshade: (params) =\u003e field(params).member(\"y\")\n\t};\n}\nfunction truchetArcs(slots) {\n\treturn (params) =\u003e call(truchetField, \"truchetField\", [\n\t\tslots.frame(params),\n\t\tuniformOf(slots.thickness, params),\n\t\tuniformOf(slots.softness, params),\n\t\tuniformOf(slots.seed, params)\n\t]);\n}\nfunction weaveThreads(slots) {\n\treturn (params) =\u003e call(weaveColor, \"weaveColor\", [\n\t\tslots.frame(params),\n\t\tuniformOf(slots.gap, params),\n\t\tuniformOf(slots.colors[0], params),\n\t\tuniformOf(slots.colors[1], params)\n\t]);\n}\nfunction isoCubeFaces(slots) {\n\tconst field = shared((params) =\u003e local(call(isoCubeField, \"isoCubeField\", [\n\t\tslots.frame(params),\n\t\tuniformOf(slots.thickness, params),\n\t\tuniformOf(slots.softness, params)\n\t]), \"isoCubeField\"));\n\treturn {\n\t\trandom: (params) =\u003e field(params).member(\"x\"),\n\t\ttone: (params) =\u003e field(params).member(\"y\"),\n\t\twire: (params) =\u003e field(params).member(\"z\")\n\t};\n}\nfunction dotScreenMask(uv, aspect, angle, intensity, frequency) {\n\treturn call(halftonePlateGrid, \"halftonePlateGrid\", [\n\t\tuv,\n\t\taspect,\n\t\tangle,\n\t\tintensity,\n\t\tfrequency\n\t]);\n}\nfunction inkTransmission(inkColor, inkMask) {\n\treturn call(halftoneTransmission, \"halftoneTransmission\", [inkColor, inkMask]);\n}\nfunction dotScreen(slots) {\n\treturn gather({\n\t\tresultAlpha: \"straight\",\n\t\tbuild: ({ sampleStraight, ctx, uniforms }) =\u003e {\n\t\t\treturn call(halftoneClassic, \"halftoneClassic\", [\n\t\t\t\tsampleStraight(ctx.uv),\n\t\t\t\tctx.uv,\n\t\t\t\tctx.aspect,\n\t\t\t\tuniformOf(slots.angle, { uniforms }),\n\t\t\t\tuniformOf(slots.frequency, { uniforms })\n\t\t\t]);\n\t\t}\n\t});\n}\nfunction inkPlate(spec) {\n\treturn spec;\n}\nvar PLATE_CHANNELS = {\n\tcyan: {\n\t\tfn: () =\u003e halftoneChannelC,\n\t\thint: \"halftoneChannelC\"\n\t},\n\tmagenta: {\n\t\tfn: () =\u003e halftoneChannelM,\n\t\thint: \"halftoneChannelM\"\n\t},\n\tyellow: {\n\t\tfn: () =\u003e halftoneChannelY,\n\t\thint: \"halftoneChannelY\"\n\t},\n\tblack: {\n\t\tfn: () =\u003e halftoneChannelK,\n\t\thint: \"halftoneChannelK\"\n\t}\n};\nfunction cmykPress(slots) {\n\treturn gather({\n\t\tresultAlpha: \"straight\",\n\t\tbuild: ({ sampleStraight, ctx, uniforms }) =\u003e {\n\t\t\tconst u = (ref) =\u003e uniformOf(ref, { uniforms });\n\t\t\tlet printed = u(slots.paper).member(\"rgb\");\n\t\t\tslots.plates.forEach((plate, index) =\u003e {\n\t\t\t\tconst sample = sampleStraight(call(halftonePlateUV, \"halftonePlateUV\", [\n\t\t\t\t\tctx.uv,\n\t\t\t\t\tu(slots.misprintAngle),\n\t\t\t\t\tfloatE(index * 90),\n\t\t\t\t\tu(slots.misprint),\n\t\t\t\t\tctx.aspect\n\t\t\t\t]));\n\t\t\t\tconst channel = PLATE_CHANNELS[plate.channel];\n\t\t\t\tconst intensity = call(channel.fn(), channel.hint, [sample]);\n\t\t\t\tprinted = printed.mul(inkTransmission(u(plate.ink), dotScreenMask(ctx.uv, ctx.aspect, u(plate.screenAngle), intensity, u(slots.frequency))));\n\t\t\t});\n\t\t\treturn vec4(printed, sampleStraight(ctx.uv).member(\"a\"));\n\t\t}\n\t});\n}\nfunction chosenBy(prop, read, recipes) {\n\tconst cases = Object.values(recipes);\n\tconst resultAlpha = cases[0]?.resultAlpha;\n\tfor (const c of cases) if (c.resultAlpha !== resultAlpha || c.setup) throw new Error(\"std: chosenBy recipes must share resultAlpha and carry no setup hooks\");\n\treturn gather({\n\t\tresultAlpha,\n\t\tbuild: (params) =\u003e recipes[read(params.propValues[prop.name])].build(params)\n\t});\n}\nvar ditherPatternOf = (raw) =\u003e {\n\tif (typeof raw === \"number\") return raw;\n\treturn {\n\t\tbayer2: 0,\n\t\tbayer4: 1,\n\t\tbayer8: 2,\n\t\tclusteredDot: 3,\n\t\tblueNoise: 4,\n\t\twhiteNoise: 5,\n\t\tfloydSteinberg: 6\n\t}[raw] ?? 1;\n};\nvar ditherColorModeOf = (raw) =\u003e typeof raw === \"number\" ? raw : raw === \"source\" ? 1 : 0;\nfunction pixelGrid(slots) {\n\tconst coord = shared((params) =\u003e local(call(ditherCoord, \"ditherCoord\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.logicalViewportSize,\n\t\tuniformOf(slots.size, params)\n\t]), \"ditherCoord\"));\n\tconst source = shared((params) =\u003e local(params.sampleStraight(call(ditherPixUV, \"ditherPixUV\", [\n\t\tcoord(params),\n\t\tuniformOf(slots.size, params),\n\t\tparams.ctx.logicalViewportSize\n\t])), \"ditherSource\"));\n\treturn {\n\t\tsize: slots.size,\n\t\tcoord,\n\t\tsource\n\t};\n}\nfunction orderedThreshold(pattern, coord) {\n\tif (pattern === 4) return call(ditherBlueNoise, \"ditherBlueNoise\", [coord]);\n\tif (pattern === 5 || pattern \u003e 6 || pattern \u003c 0) return call(ditherWhiteNoise, \"ditherWhiteNoise\", [coord]);\n\tconst periodic = call(ditherPeriodic, \"ditherPeriodic\", [coord]);\n\tswitch (pattern) {\n\t\tcase 0: return periodic.member(\"x\");\n\t\tcase 1: return periodic.member(\"y\");\n\t\tcase 2: return periodic.member(\"z\");\n\t\tdefault: return periodic.member(\"w\");\n\t}\n}\nfunction quantise(slots) {\n\treturn (params) =\u003e {\n\t\tconst u = (ref) =\u003e uniformOf(ref, params);\n\t\tconst threshold = u(slots.threshold);\n\t\tconst spread = u(slots.spread);\n\t\tconst coord = slots.grid.coord(params);\n\t\tconst pattern = ditherPatternOf(params.propValues[slots.pattern.name]);\n\t\tif (pattern === 6) {\n\t\t\tconst gridRes = params.ctx.logicalViewportSize;\n\t\t\tconst pixelSize = u(slots.grid.size);\n\t\t\tconst blockOrigin = call(ditherBlockOrigin, \"ditherBlockOrigin\", [coord]);\n\t\t\tconst lic = call(ditherLocalCellIndex, \"ditherLocalCellIndex\", [coord, blockOrigin]);\n\t\t\tconst lums = [];\n\t\t\tfor (let ly = 0; ly \u003c 8; ly++) for (let lx = 0; lx \u003c 8; lx++) {\n\t\t\t\tconst cellUV = call(ditherCellUV, \"ditherCellUV\", [\n\t\t\t\t\tblockOrigin,\n\t\t\t\t\tfloatE(lx),\n\t\t\t\t\tfloatE(ly),\n\t\t\t\t\tpixelSize,\n\t\t\t\t\tgridRes\n\t\t\t\t]);\n\t\t\t\tlums.push(call(ditherLuma, \"ditherLuma\", [params.sampleStraight(cellUV)]));\n\t\t\t}\n\t\t\treturn call(ditherFloydSteinberg, \"ditherFloydSteinberg\", [\n\t\t\t\tarrayExpr(\"f32\", lums),\n\t\t\t\tlic,\n\t\t\t\tthreshold,\n\t\t\t\tspread\n\t\t\t]);\n\t\t}\n\t\tconst luminance = call(ditherLuma, \"ditherLuma\", [slots.grid.source(params)]);\n\t\treturn call(ditherOrderedResult, \"ditherOrderedResult\", [\n\t\t\torderedThreshold(pattern, coord),\n\t\t\tluminance,\n\t\t\tthreshold,\n\t\t\tspread\n\t\t]);\n\t};\n}\nfunction ditherInks(slots) {\n\treturn gather({\n\t\tresultAlpha: \"straight\",\n\t\tbuild: (params) =\u003e {\n\t\t\tconst u = (ref) =\u003e uniformOf(ref, params);\n\t\t\tconst levels = slots.levels(params);\n\t\t\tif (ditherColorModeOf(params.propValues[slots.mode.name]) === 0) return call(ditherComposeCustom, \"ditherComposeCustom\", [\n\t\t\t\tu(slots.colors[0]),\n\t\t\t\tu(slots.colors[1]),\n\t\t\t\tlevels\n\t\t\t]);\n\t\t\treturn call(ditherComposeSource, \"ditherComposeSource\", [slots.grid.source(params), levels]);\n\t\t}\n\t});\n}\nexport { zigzagBands as A, strokeOver as C, vary as D, truchetArcs as E, weaveThreads as O, stripeBands as S, triangleLines as T, pixelGrid as _, chosenBy as a, ringWaves as b, dotLattice as c, gridLines as d, hexLines as f, opaque as g, mixOf as h, checkerCells as i, withAlpha as k, dotScreen as l, isoCubeFaces as m, brickCourses as n, cmykPress as o, inkPlate as p, cellFrame as r, ditherInks as s, alphaOf as t, fallingStreaks as u, quantise as v, times as w, sampleMapsAtCellCentres as x, rgbOf as y };\n","import { Cr as sin, Gn as typegpu_default, Jr as i32, Ln as PI, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD, Sn as mxNoiseFloat2, Tn as paper12, Tr as sqrt, Yt as fbmGated, _r as mix, ar as clamp, cr as dot, er as select, fr as floor, gr as min, hr as max, in as aspectOf, jr as vec3f, lr as exp, mn as curl22z, mr as length, or as cos, pn as curl22, pr as fract, qr as f32, tr as abs, wr as smoothstep, xr as round, yr as pow, zn as TAU, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { a as toneRemap } from \"./tone-BKhfiOBn.js\";\nimport { Et as gradientStopsInSpace, wt as MAX_COLOR_STOPS } from \"./porters-OTkIMOyl.js\";\nconst cellHash2 = typegpu_default.fn([vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\treturn fract(sin(vec2f(dot(p, vec2f(127.1, 311.7)), dot(p, vec2f(269.5, 183.3)))).mul(43758.5453));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"h\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"127.1\"], [5, \"311.7\"]]\n\t\t\t\t\t]]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"269.5\"], [5, \"183.3\"]]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"h\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[5, \"43758.5453\"]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction nearest2Cells(options) {\n\tconst { distance, jitter, name = \"nearest2Cells\" } = options;\n\tconst key = `${name}|${distance}|${jitter}`;\n\tconst cached = nearest2Cache.get(key);\n\tif (cached) return cached;\n\tconst suffix = `${distance === \"length\" ? \"Len\" : \"Sel\"}${jitter === \"mix\" ? \"Jit\" : \"\"}`;\n\tlet built;\n\tif (distance === \"length\" \u0026\u0026 jitter === \"none\") built = typegpu_default.fn([\n\t\tvec2f,\n\t\tf32,\n\t\tf32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((scaledUV, animT, seed) =\u003e {\n\t\t\"use gpu\";\n\t\tconst cell = floor(scaledUV);\n\t\tconst localUV = fract(scaledUV);\n\t\tlet d1 = f32(10);\n\t\tlet d2 = f32(10);\n\t\tfor (let ny = -1; ny \u003c= 1; ny++) for (let nx = -1; nx \u003c= 1; nx++) {\n\t\t\tconst offset = vec2f(f32(nx), f32(ny));\n\t\t\tconst h = cellHash2(vec2f(__tsover_add(__tsover_add(cell.x, offset.x), seed), __tsover_add(__tsover_add(cell.y, offset.y), seed)));\n\t\t\tconst pointX = clamp(__tsover_add(h.x, __tsover_mul(sin(__tsover_add(animT, __tsover_mul(h.x, TAU))), .15)), .05, .95);\n\t\t\tconst pointY = clamp(__tsover_add(h.y, __tsover_mul(cos(__tsover_add(__tsover_mul(animT, .7), __tsover_mul(h.y, TAU))), .15)), .05, .95);\n\t\t\tconst dd = length(vec2f(__tsover_sub(localUV.x, __tsover_add(offset.x, pointX)), __tsover_sub(localUV.y, __tsover_add(offset.y, pointY))));\n\t\t\td2 = min(d2, max(dd, d1));\n\t\t\td1 = min(d1, dd);\n\t\t}\n\t\treturn vec2f(d1, d2);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"scaledUV\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"animT\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"seed\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"scaledUV\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"localUV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t[\"scaledUV\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"d1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"d2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"ny\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"nx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"nx\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"ny\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"cellHash2\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"pointX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"animT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"pointY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"animT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"localUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"pointX\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"localUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"pointY\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[\"d2\", [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"dd\", \"d1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[\"d1\", \"dd\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"d1\", \"d2\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"std.fract\": () =\u003e fract,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"cellHash2\": () =\u003e cellHash2,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.max\": () =\u003e max\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${name}${suffix}`);\n\telse built = typegpu_default.fn([\n\t\tvec2f,\n\t\tf32,\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((scaledUV, animT, seed, jitterAmount, metric) =\u003e {\n\t\t\"use gpu\";\n\t\tconst animTSlow = __tsover_mul(animT, .7);\n\t\tconst cell = floor(scaledUV);\n\t\tconst localUV = fract(scaledUV);\n\t\tlet d1 = f32(10);\n\t\tlet d2 = f32(10);\n\t\tfor (let ny = -1; ny \u003c= 1; ny++) for (let nx = -1; nx \u003c= 1; nx++) {\n\t\t\tconst offset = vec2f(f32(nx), f32(ny));\n\t\t\tconst h = cellHash2(vec2f(__tsover_add(__tsover_add(cell.x, offset.x), seed), __tsover_add(__tsover_add(cell.y, offset.y), seed)));\n\t\t\tconst px = __tsover_add(h.x, __tsover_mul(sin(__tsover_add(animT, __tsover_mul(h.x, TAU))), .15));\n\t\t\tconst py = __tsover_add(h.y, __tsover_mul(cos(__tsover_add(animTSlow, __tsover_mul(h.y, TAU))), .15));\n\t\t\tconst jx = mix(.5, clamp(px, .05, .95), jitterAmount);\n\t\t\tconst jy = mix(.5, clamp(py, .05, .95), jitterAmount);\n\t\t\tconst deltaX = __tsover_sub(localUV.x, __tsover_add(offset.x, jx));\n\t\t\tconst deltaY = __tsover_sub(localUV.y, __tsover_add(offset.y, jy));\n\t\t\tconst dEuclid = __tsover_add(__tsover_mul(deltaX, deltaX), __tsover_mul(deltaY, deltaY));\n\t\t\tconst dManhattan = __tsover_add(abs(deltaX), abs(deltaY));\n\t\t\tconst dChebyshev = max(abs(deltaX), abs(deltaY));\n\t\t\tlet dd = dEuclid;\n\t\t\tdd = select(dd, dManhattan, metric === 1);\n\t\t\tdd = select(dd, dChebyshev, metric === 2);\n\t\t\td2 = min(d2, max(dd, d1));\n\t\t\td1 = min(d1, dd);\n\t\t}\n\t\treturn vec2f(d1, d2);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"scaledUV\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"animT\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"seed\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"jitterAmount\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"metric\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"animTSlow\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animT\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"scaledUV\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"localUV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t[\"scaledUV\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"d1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"d2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"10\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"ny\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"nx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"nx\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"ny\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"cellHash2\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"seed\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"animT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"animTSlow\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"jx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"px\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"jitterAmount\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"jy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"py\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"jitterAmount\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"deltaX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"localUV\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"jx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"deltaY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"localUV\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"jy\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dEuclid\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"deltaX\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"deltaX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"deltaY\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"deltaY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dManhattan\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"deltaX\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"deltaY\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dChebyshev\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"deltaX\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"deltaY\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"dEuclid\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\"dManhattan\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"metric\",\n\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\"dChebyshev\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"metric\",\n\t\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[\"d2\", [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"dd\", \"d1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[\"d1\", \"dd\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"d1\", \"d2\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"std.fract\": () =\u003e fract,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"cellHash2\": () =\u003e cellHash2,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.min\": () =\u003e min\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${name}${suffix}`);\n\tnearest2Cache.set(key, built);\n\treturn built;\n}\nvar nearest2Cache = /* @__PURE__ */ new Map();\nconst CELL_MODES = {\n\tf1: 0,\n\tf2: 1,\n\tf2MinusF1: 2,\n\tf1PlusF2: 3,\n\tf1TimesF2: 4\n};\nconst CELL_METRICS = {\n\teuclidean: 0,\n\tmanhattan: 1,\n\tchebyshev: 2\n};\nconst cellReduceSelectable = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((d1, d2, metric, mode) =\u003e {\n\t\"use gpu\";\n\tconst isEuclid = metric === 0;\n\tconst sd1 = select(d1, sqrt(d1), isEuclid);\n\tconst sd2 = select(d2, sqrt(d2), isEuclid);\n\tlet raw = sd1;\n\traw = select(raw, sd2, mode === 1);\n\traw = select(raw, __tsover_sub(sd2, sd1), mode === 2);\n\traw = select(raw, __tsover_add(sd1, sd2), mode === 3);\n\traw = select(raw, __tsover_mul(sd1, sd2), mode === 4);\n\treturn raw;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"d1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"d2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"metric\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mode\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isEuclid\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"metric\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sd1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[\"d1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"isEuclid\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sd2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[\"d2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"isEuclid\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"raw\",\n\t\t\t\t\"sd1\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"raw\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"raw\",\n\t\t\t\t\t\t\"sd2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"raw\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"raw\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sd2\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sd1\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"raw\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"raw\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sd1\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"sd2\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"raw\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"raw\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sd1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sd2\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, \"raw\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellRatio = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((d1, d2, power) =\u003e {\n\t\"use gpu\";\n\tconst safeSum = max(__tsover_add(d1, d2), 1e-4);\n\treturn clamp(pow(clamp(__tsover_div(__tsover_mul(d1, 2), safeSum), 0, 1), power), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"d1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"d2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"power\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeSum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"d2\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"safeSum\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[\"normalizedDist\", \"power\"]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.pow\": () =\u003e pow\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellEdgeMask = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((d1, d2, softness) =\u003e {\n\t\"use gpu\";\n\tconst safeSum = max(__tsover_add(d1, d2), 1e-4);\n\tconst edgeMetric = __tsover_div(__tsover_sub(d2, d1), safeSum);\n\treturn smoothstep(0, __tsover_add(softness, .001), edgeMetric);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"d1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"d2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeSum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"d2\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeMetric\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"d1\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safeSum\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"edgeMetric\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst aspectPlane = typegpu_default.fn([vec2f, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\treturn vec2f(__tsover_mul(uv.x, aspect), uv.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"viewport\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"aspect\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"aspectOf\",\n\t\t\t\t[\"viewport\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"aspect\"\n\t\t\t], [\n\t\t\t\t7,\n\t\t\t\t\"uv\",\n\t\t\t\t\"y\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rawAspectScaledDomain = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, scale, seed) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, viewport.y);\n\treturn vec2f(__tsover_mul(uv.x, aspect), uv.y).mul(exp(scale)).add(seed);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t[\"scale\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"seed\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.exp\": () =\u003e exp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rotatedCenteredDomain = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, angle) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst au = __tsover_sub(__tsover_mul(uv.x, aspect), __tsover_mul(aspect, .5));\n\tconst av = __tsover_sub(uv.y, .5);\n\treturn vec2f(__tsover_add(__tsover_mul(au, cosA), __tsover_mul(av, sinA)), __tsover_add(__tsover_mul(au, -sinA), __tsover_mul(av, cosA)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"au\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"av\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ru\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"au\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"av\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rv\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"au\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"av\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"ru\", \"rv\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"aspectOf\": () =\u003e aspectOf,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst curlMagnitude = typegpu_default.fn([vec2f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, z) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_div(length(curl22z(pos, z)), 1.414);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"pos\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"z\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.length\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"curl22z\",\n\t\t\t\t\t[\"pos\", \"z\"]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"/\",\n\t\t\t[5, \"1.414\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"curl22z\": () =\u003e curl22z\n\t}\n}) \u0026\u0026 $.f)({}));\nvar fractalOctaveSum = fbmGated(mxNoiseFloat2, {\n\tmaxOctaves: 8,\n\tdrift: \"goldenAngle\",\n\tname: \"fractalOctaveSum\"\n});\nconst fractalSum = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, detail, contrast, animTime, seed, octaveCount) =\u003e {\n\t\"use gpu\";\n\treturn fractalOctaveSum(pos, 2, detail, contrast, animTime, vec2f(seed, __tsover_mul(seed, .7)), octaveCount);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"detail\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"octaveCount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"fractalOctaveSum\",\n\t\t\t[\n\t\t\t\t\"pos\",\n\t\t\t\t[5, \"2\"],\n\t\t\t\t\"detail\",\n\t\t\t\t\"contrast\",\n\t\t\t\t\"animTime\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"seed\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"octaveCount\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"fractalOctaveSum\": () =\u003e fractalOctaveSum,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst fbmNormalize = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sum) =\u003e {\n\t\"use gpu\";\n\treturn clamp(__tsover_add(__tsover_mul(__tsover_div(sum.x, sum.y), .5), .5), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"sum\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"1\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp }\n}) \u0026\u0026 $.f)({}));\nconst worleyHash = cellHash2;\nvar worleyNearest2 = nearest2Cells({\n\tdistance: \"selectableSquared\",\n\tjitter: \"mix\",\n\tname: \"worleyNearest2\"\n});\nvar worleyOctaveSum = fbmGated(typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((oUV, animT, seedOff, jitter, distNum, modeNum) =\u003e {\n\t\"use gpu\";\n\tconst dd = worleyNearest2(oUV, animT, seedOff, jitter, distNum);\n\treturn cellReduceSelectable(dd.x, dd.y, distNum, modeNum);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animT\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seedOff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"jitter\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distNum\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"modeNum\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"dd\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"worleyNearest2\",\n\t\t\t\t[\n\t\t\t\t\t\"oUV\",\n\t\t\t\t\t\"animT\",\n\t\t\t\t\t\"seedOff\",\n\t\t\t\t\t\"jitter\",\n\t\t\t\t\t\"distNum\"\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"cellReduceSelectable\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"distNum\",\n\t\t\t\t\"modeNum\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"worleyNearest2\": () =\u003e worleyNearest2,\n\t\t\"cellReduceSelectable\": () =\u003e cellReduceSelectable\n\t}\n}) \u0026\u0026 $.f)({})), {\n\tmaxOctaves: 4,\n\tdrift: \"timeSeed\",\n\tname: \"worleyOctaveSum\"\n});\nconst worleyCells = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pos, scale, seed, jitter, lacunarity, persistence, animTime, octaves, distNum, modeNum) =\u003e {\n\t\"use gpu\";\n\treturn worleyOctaveSum(pos, scale, lacunarity, persistence, animTime, seed, vec3f(jitter, distNum, modeNum), octaves);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"jitter\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lacunarity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"persistence\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"octaves\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distNum\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"modeNum\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"worleyOctaveSum\",\n\t\t\t[\n\t\t\t\t\"pos\",\n\t\t\t\t\"scale\",\n\t\t\t\t\"lacunarity\",\n\t\t\t\t\"persistence\",\n\t\t\t\t\"animTime\",\n\t\t\t\t\"seed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"jitter\",\n\t\t\t\t\t\t\"distNum\",\n\t\t\t\t\t\t\"modeNum\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"octaves\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"worleyOctaveSum\": () =\u003e worleyOctaveSum,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst worleyNormalize = typegpu_default.fn([vec2f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sum, modeScale) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(__tsover_div(sum.x, max(sum.y, 1e-4)), modeScale);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"sum\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"modeScale\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sum\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t\"modeScale\"\n\t\t]]]]\n\t},\n\texternals: { \"std.max\": () =\u003e max }\n}) \u0026\u0026 $.f)({}));\nconst worleyTone = toneRemap({\n\tdomain: \"unit\",\n\tcontrastMode: \"multiplicative\",\n\tinvert: false\n});\nconst transformWorleyMode = (value) =\u003e CELL_MODES[value] ?? 0;\nconst transformWorleyDistance = (value) =\u003e CELL_METRICS[value] ?? 0;\nfunction worleyModeNum(raw) {\n\treturn typeof raw === \"number\" ? raw : transformWorleyMode(raw);\n}\nfunction worleyDistNum(raw) {\n\treturn typeof raw === \"number\" ? raw : transformWorleyDistance(raw);\n}\nfunction worleyModeScale(modeNum, distNum) {\n\tlet modeScale = 1.5;\n\tif (modeNum === 1) modeScale = 1;\n\telse if (modeNum === 2) modeScale = 2.5;\n\telse if (modeNum === 3) modeScale = .6;\n\telse if (modeNum === 4) modeScale = 2;\n\tif (distNum === 1) modeScale *= .7;\n\telse if (distNum === 2) modeScale *= 1.4;\n\treturn modeScale;\n}\nconst voronoiCells = nearest2Cells({\n\tdistance: \"length\",\n\tjitter: \"none\",\n\tname: \"voronoiNearest2\"\n});\nconst cellFill = typegpu_default.fn([vec2f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dd, edgeIntensity) =\u003e {\n\t\"use gpu\";\n\tconst gradientPower = __tsover_sub(4, __tsover_mul(edgeIntensity, 3));\n\treturn cellRatio(dd.x, dd.y, gradientPower);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dd\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"edgeIntensity\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"gradientPower\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[5, \"4\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"edgeIntensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"cellRatio\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"gradientPower\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"cellRatio\": () =\u003e cellRatio }\n}) \u0026\u0026 $.f)({}));\nconst cellBorders = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dd, softness, scale) =\u003e {\n\t\"use gpu\";\n\tconst scaledEdgeSoftness = __tsover_div(__tsover_mul(softness, scale), 6);\n\treturn cellEdgeMask(dd.x, dd.y, scaledEdgeSoftness);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dd\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"scaledEdgeSoftness\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"softness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t[5, \"6\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"cellEdgeMask\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"dd\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"scaledEdgeSoftness\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"cellEdgeMask\": () =\u003e cellEdgeMask }\n}) \u0026\u0026 $.f)({}));\nconst toneLift = typegpu_default.fn([vec3f], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb) =\u003e {\n\t\"use gpu\";\n\treturn pow(rgb, vec3f(.85, .85, .85));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"rgb\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.pow\",\n\t\t\t[\"rgb\", [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0.85\"],\n\t\t\t\t\t[5, \"0.85\"],\n\t\t\t\t\t[5, \"0.85\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar MAX = 8;\nif (8 !== MAX) throw new Error(`noisePaints: MAX (${MAX}) out of sync with MAX_COLOR_STOPS (8)`);\nconst ribbonPathFrame = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, start, end, pinFlag) =\u003e {\n\t\"use gpu\";\n\tconst aspectRatio = __tsover_div(viewport.x, max(viewport.y, 1e-6));\n\tconst startPos = vec2f(__tsover_mul(start.x, aspectRatio), __tsover_sub(1, start.y));\n\tconst endPos = vec2f(__tsover_mul(end.x, aspectRatio), __tsover_sub(1, end.y));\n\tconst aspectUV = vec2f(__tsover_mul(uv.x, aspectRatio), uv.y);\n\tconst direction = vec2f(__tsover_sub(endPos.x, startPos.x), __tsover_sub(endPos.y, startPos.y));\n\tconst len = max(length(direction), 1e-6);\n\tconst normalizedDir = vec2f(__tsover_div(direction.x, len), __tsover_div(direction.y, len));\n\tconst perpDir = vec2f(-normalizedDir.y, normalizedDir.x);\n\tconst relativePos = vec2f(__tsover_sub(aspectUV.x, startPos.x), __tsover_sub(aspectUV.y, startPos.y));\n\tconst progress = __tsover_div(dot(relativePos, normalizedDir), len);\n\tconst perpDist = dot(relativePos, perpDir);\n\tconst pinOn = pinFlag \u003e 0;\n\tconst clampedProg = clamp(progress, 0, 1);\n\tconst pinch = select(f32(1), sin(__tsover_mul(clampedProg, PI)), pinOn);\n\tconst fade = __tsover_mul(smoothstep(0, .06, progress), __tsover_sub(1, smoothstep(.94, 1, progress)));\n\treturn vec4f(progress, perpDist, pinch, select(f32(1), fade, pinOn));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"start\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"end\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pinFlag\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectRatio\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"startPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"start\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"start\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"endPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"end\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"end\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspectRatio\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"direction\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"endPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"startPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"endPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"startPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"direction\"]\n\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"direction\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"len\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"direction\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"len\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perpDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"normalizedDir\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"normalizedDir\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"relativePos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"startPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"startPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"progress\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"relativePos\", \"normalizedDir\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"len\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perpDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"relativePos\", \"perpDir\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pinOn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"pinFlag\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clampedProg\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"progress\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pinch\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"clampedProg\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"PI\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"pinOn\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fade\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0.06\"],\n\t\t\t\t\t\t\t\"progress\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0.94\"],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"progress\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeFade\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"fade\",\n\t\t\t\t\t\t\"pinOn\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"progress\",\n\t\t\t\t\t\"perpDist\",\n\t\t\t\t\t\"pinch\",\n\t\t\t\t\t\"edgeFade\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"PI\": () =\u003e PI,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst ribbonsField = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tarrayOf(vec4f, MAX),\n\tarrayOf(vec4f, MAX / 4),\n\tarrayOf(vec3f, MAX)\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, start, end, packed1, packed2, packed3, colors, positions, converted) =\u003e {\n\t\"use gpu\";\n\tconst amplitude = packed1.x;\n\tconst frequency = packed1.y;\n\tconst lineCount = packed1.z;\n\tconst lineWidth = packed1.w;\n\tconst softnessP = packed2.x;\n\tconst spread = packed2.y;\n\tconst colorScale = packed2.z;\n\tconst colorVariance = packed2.w;\n\tconst waveT = packed3.y;\n\tconst colorT = packed3.z;\n\tconst stopCount = packed3.w;\n\tconst frame = ribbonPathFrame(uv, viewport, start, end, packed3.x);\n\tconst progress = frame.x;\n\tconst perpDist = frame.y;\n\tconst pinch = frame.z;\n\tconst edgeFade = frame.w;\n\tconst thickness = __tsover_mul(lineWidth, .07);\n\tconst softness = __tsover_add(__tsover_mul(softnessP, .08), 8e-4);\n\tconst denom = max(__tsover_sub(lineCount, 1), 1);\n\tlet accumColor = vec3f(0, 0, 0);\n\tlet accumWeight = f32(0);\n\tconst waveBase = __tsover_mul(__tsover_mul(progress, TAU), frequency);\n\tconst shimmerBase = __tsover_add(__tsover_mul(progress, 8), __tsover_mul(waveT, 2));\n\tconst colorBase = __tsover_add(__tsover_mul(progress, colorScale), colorT);\n\tconst n = i32(round(lineCount));\n\tfor (let idx = 0; idx \u003c n; idx++) {\n\t\tconst fi = f32(idx);\n\t\tconst norm = __tsover_div(fi, denom);\n\t\tconst phase = __tsover_mul(fi, .9);\n\t\tconst strandT = __tsover_mul(waveT, __tsover_add(__tsover_mul(norm, .6), .7));\n\t\tconst wave = __tsover_add(sin(__tsover_add(__tsover_add(waveBase, strandT), phase)), __tsover_mul(sin(__tsover_add(__tsover_sub(__tsover_mul(waveBase, 2.1), __tsover_mul(strandT, .7)), phase)), .5));\n\t\tconst displacement = __tsover_mul(__tsover_mul(wave, amplitude), .06);\n\t\tconst baseline = __tsover_mul(__tsover_sub(norm, .5), spread);\n\t\tconst centre = __tsover_mul(__tsover_add(baseline, displacement), pinch);\n\t\tconst dd = abs(__tsover_sub(perpDist, centre));\n\t\tconst line = __tsover_sub(1, smoothstep(thickness, __tsover_add(thickness, softness), dd));\n\t\tconst shimmer = __tsover_add(__tsover_mul(sin(__tsover_add(shimmerBase, fi)), .15), .85);\n\t\tconst cc = __tsover_add(colorBase, __tsover_mul(norm, colorVariance));\n\t\tconst strandColor = gradientStopsInSpace(__tsover_sub(1, abs(__tsover_sub(__tsover_mul(fract(__tsover_mul(cc, .5)), 2), 1))), colors, positions, converted, stopCount).conv;\n\t\tconst weight = __tsover_mul(line, shimmer);\n\t\taccumColor = accumColor.add(strandColor.mul(weight));\n\t\taccumWeight = __tsover_add(accumWeight, weight);\n\t}\n\treturn vec4f(accumColor.div(max(accumWeight, 1e-4)), clamp(__tsover_mul(accumWeight, edgeFade), 0, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"start\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"end\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"packed1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"packed2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"packed3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colors\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"positions\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"converted\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"amplitude\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed1\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"frequency\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed1\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineCount\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed1\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineWidth\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed1\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softnessP\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed2\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spread\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed2\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorScale\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed2\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorVariance\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed2\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"waveT\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed3\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorT\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed3\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stopCount\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"packed3\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"frame\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"ribbonPathFrame\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"start\",\n\t\t\t\t\t\t\"end\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"packed3\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"progress\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perpDist\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pinch\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeFade\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.07\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"softnessP\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.08\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.0008\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"denom\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lineCount\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"accumColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"accumWeight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"waveBase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"progress\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"frequency\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shimmerBase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"progress\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"waveT\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorBase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"progress\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"colorScale\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"colorT\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t[\"lineCount\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"n\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"idx\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"idx\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"norm\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"denom\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fi\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"strandT\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"waveT\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"norm\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"wave\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"waveBase\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"strandT\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"waveBase\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.1\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"strandT\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"displacement\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wave\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"amplitude\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"baseline\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"norm\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"spread\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"centre\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"baseline\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"displacement\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"pinch\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"perpDist\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"centre\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"line\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"shimmer\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"shimmerBase\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"fi\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.85\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"colorBase\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"norm\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"colorVariance\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"colorCoord\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"stepRes\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"gradientStopsInSpace\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"colorCoord\",\n\t\t\t\t\t\t\t\t\"colors\",\n\t\t\t\t\t\t\t\t\"positions\",\n\t\t\t\t\t\t\t\t\"converted\",\n\t\t\t\t\t\t\t\t\"stopCount\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"strandColor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"stepRes\",\n\t\t\t\t\t\t\t\"conv\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"weight\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"line\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"shimmer\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"accumColor\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"accumColor\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"strandColor\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"weight\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"accumWeight\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"accumWeight\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"weight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"workingColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"accumColor\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"accumWeight\", [5, \"0.0001\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"accumWeight\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"edgeFade\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"workingColor\", \"alpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"ribbonPathFrame\": () =\u003e ribbonPathFrame,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.round\": () =\u003e round,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"gradientStopsInSpace\": () =\u003e gradientStopsInSpace,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst paperSurface = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, grainScale, seed, displacement, roughness) =\u003e {\n\t\"use gpu\";\n\tconst aspectUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst grainFreq = __tsover_mul(grainScale, 6);\n\tconst grainUV = aspectUV.mul(grainFreq).add(seed);\n\tconst disp = curl22(grainUV).mul(displacement).mul(.0025);\n\tconst displacedUV = uv.add(disp);\n\tconst grain = paper12(grainUV, i32(6));\n\tconst brightness = clamp(__tsover_add(1, __tsover_mul(__tsover_sub(grain, .7), __tsover_mul(roughness, 1.2))), 0, 1.5);\n\treturn vec3f(displacedUV.x, displacedUV.y, brightness);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"grainScale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"displacement\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"roughness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grainFreq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"grainScale\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"6\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grainUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"grainFreq\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"seed\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"disp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"curl22\",\n\t\t\t\t\t\t\t\t\t[\"grainUV\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"displacement\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.0025\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"disp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grain\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"paper12\",\n\t\t\t\t\t[\"grainUV\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[5, \"6\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brightness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"grain\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"roughness\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"brightness\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"curl22\": () =\u003e curl22,\n\t\t\"paper12\": () =\u003e paper12,\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nexport { worleyHash as _, fbmNormalize as a, worleyNormalize as b, rawAspectScaledDomain as c, toneLift as d, transformWorleyDistance as f, worleyDistNum as g, worleyCells as h, curlMagnitude as i, ribbonsField as l, voronoiCells as m, cellBorders as n, fractalSum as o, transformWorleyMode as p, cellFill as r, paperSurface as s, aspectPlane as t, rotatedCenteredDomain as u, worleyModeNum as v, worleyTone as x, worleyModeScale as y };\n","import { Cr as sin, Ct as linearToSrgb, Gn as typegpu_default, It as mixColorsLinear, Lt as mixColorsVariants, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD, Qn as fwidth, Rn as SQRT3, Tt as srgbToLinear, _r as mix, ar as clamp, at as ZERO, cr as dot, ct as call, dt as expr, er as select, fr as floor, ft as floatE, gt as formatFloat, hr as max, i as resolveArg, jr as vec3f, mt as vec4, o as uniformOf, or as cos, pr as fract, qr as f32, r as pointwiseOp, tr as abs, vn as hash12, wr as smoothstep, yr as pow, zn as TAU } from \"./lower-Bd2jez_2.js\";\nimport { n as luma709Dot } from \"./tone-BKhfiOBn.js\";\nvar TWO_PI = TAU;\nconst hueRotate$1 = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, shiftDeg) =\u003e {\n\t\"use gpu\";\n\tconst angle = __tsover_mul(shiftDeg, DEG_TO_RAD);\n\tconst cosA = cos(angle);\n\tconst sinA = sin(angle);\n\tconst k = __tsover_div(1, 3);\n\tconst oneMinusCos = __tsover_sub(1, cosA);\n\tconst kOneMinusCos = __tsover_mul(oneMinusCos, k);\n\tconst sinOverSqrt3 = __tsover_div(sinA, SQRT3);\n\tconst m00 = __tsover_add(cosA, kOneMinusCos);\n\tconst m01 = __tsover_sub(kOneMinusCos, sinOverSqrt3);\n\tconst m02 = __tsover_add(kOneMinusCos, sinOverSqrt3);\n\tconst m10 = __tsover_add(kOneMinusCos, sinOverSqrt3);\n\tconst m11 = __tsover_add(cosA, kOneMinusCos);\n\tconst m12 = __tsover_sub(kOneMinusCos, sinOverSqrt3);\n\tconst m20 = __tsover_sub(kOneMinusCos, sinOverSqrt3);\n\tconst m21 = __tsover_add(kOneMinusCos, sinOverSqrt3);\n\tconst m22 = __tsover_add(cosA, kOneMinusCos);\n\tconst r = color.x;\n\tconst g = color.y;\n\tconst b = color.z;\n\treturn vec4f(__tsover_add(__tsover_add(__tsover_mul(r, m00), __tsover_mul(g, m01)), __tsover_mul(b, m02)), __tsover_add(__tsover_add(__tsover_mul(r, m10), __tsover_mul(g, m11)), __tsover_mul(b, m12)), __tsover_add(__tsover_add(__tsover_mul(r, m20), __tsover_mul(g, m21)), __tsover_mul(b, m22)), color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"shiftDeg\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"shiftDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oneMinusCos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cosA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kOneMinusCos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"oneMinusCos\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"k\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinOverSqrt3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sinA\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"SQRT3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m00\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cosA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"kOneMinusCos\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m01\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"kOneMinusCos\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"sinOverSqrt3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m02\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"kOneMinusCos\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"sinOverSqrt3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m10\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"kOneMinusCos\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"sinOverSqrt3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m11\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cosA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"kOneMinusCos\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m12\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"kOneMinusCos\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"sinOverSqrt3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m20\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"kOneMinusCos\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"sinOverSqrt3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m21\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"kOneMinusCos\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"sinOverSqrt3\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m22\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cosA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"kOneMinusCos\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"newR\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"m00\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"m01\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"m02\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"newG\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"m10\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"m11\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"m12\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"newB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"m20\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"m21\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"m22\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"newR\",\n\t\t\t\t\t\"newG\",\n\t\t\t\t\t\"newB\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"SQRT3\": () =\u003e SQRT3,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst saturate$1 = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, intensity) =\u003e {\n\t\"use gpu\";\n\tconst rgb = vec3f(color.x, color.y, color.z);\n\tconst luminance = dot(rgb, vec3f(.2126, .7152, .0722));\n\tconst saturated = mix(vec3f(luminance, luminance, luminance), rgb, vec3f(intensity));\n\treturn vec4f(saturated.x, saturated.y, saturated.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"intensity\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"luminance\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"rgb\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gray\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"luminance\",\n\t\t\t\t\t\t\"luminance\",\n\t\t\t\t\t\t\"luminance\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"saturated\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"gray\",\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"intensity\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"saturated\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"saturated\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"saturated\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst vibrance$1 = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, adjustment) =\u003e {\n\t\"use gpu\";\n\tconst r = color.x;\n\tconst g = color.y;\n\tconst b = color.z;\n\tconst average = __tsover_div(__tsover_add(__tsover_add(r, g), b), 3);\n\tconst mx = max(r, max(g, b));\n\tconst amt = __tsover_mul(__tsover_mul(__tsover_sub(mx, average), adjustment), -3);\n\tconst vibrant = mix(vec3f(r, g, b), vec3f(mx, mx, mx), vec3f(amt));\n\treturn vec4f(vibrant.x, vibrant.y, vibrant.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"adjustment\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"average\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"r\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"g\", \"b\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"amt\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"average\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"adjustment\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vibrant\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"mx\",\n\t\t\t\t\t\t\t\t\"mx\",\n\t\t\t\t\t\t\t\t\"mx\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"amt\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vibrant\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vibrant\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vibrant\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst brightnessContrast$1 = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, brightness, contrastRaw) =\u003e {\n\t\"use gpu\";\n\tconst contrast = __tsover_add(contrastRaw, 1);\n\tconst half = vec3f(.5, .5, .5);\n\treturn vec4f(color.xyz.sub(half).mul(contrast).add(half).add(vec3f(brightness, brightness, brightness)), color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"brightness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrastRaw\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"contrast\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"contrastRaw\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"half\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"contrasted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"half\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"contrast\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"half\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"contrasted\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"brightness\",\n\t\t\t\t\t\t\t\"brightness\",\n\t\t\t\t\t\t\t\"brightness\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"result\", [\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst exposure$1 = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, gain) =\u003e {\n\t\"use gpu\";\n\treturn vec4f(color.xyz.mul(gain), color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"gain\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"rgb\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"gain\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\"rgb\", [\n\t\t\t\t7,\n\t\t\t\t\"color\",\n\t\t\t\t\"w\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec4f\": () =\u003e vec4f }\n}) \u0026\u0026 $.f)({}));\nconst grayscale$1 = typegpu_default.fn([vec4f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color) =\u003e {\n\t\"use gpu\";\n\tconst luminance = dot(color.xyz, vec3f(.2126, .7152, .0722));\n\treturn vec4f(luminance, luminance, luminance, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"luminance\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\n\t\t\t\t\"luminance\",\n\t\t\t\t\"luminance\",\n\t\t\t\t\"luminance\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst invert$1 = typegpu_default.fn([vec4f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color) =\u003e {\n\t\"use gpu\";\n\treturn vec4f(__tsover_sub(1, color.x), __tsover_sub(1, color.y), __tsover_sub(1, color.z), color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec4f\": () =\u003e vec4f }\n}) \u0026\u0026 $.f)({}));\nconst solarize$1 = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, threshold, strength) =\u003e {\n\t\"use gpu\";\n\tconst rgb = vec3f(color.x, color.y, color.z);\n\tconst luminance = dot(rgb, vec3f(.299, .587, .114));\n\tconst result = mix(rgb, select(rgb, vec3f(__tsover_sub(1, color.x), __tsover_sub(1, color.y), __tsover_sub(1, color.z)), luminance \u003e threshold), vec3f(strength));\n\treturn vec4f(result.x, result.y, result.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"threshold\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"luminance\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"rgb\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inverted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"solarized\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"inverted\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"luminance\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"solarized\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"strength\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst posterize$1 = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, steps) =\u003e {\n\t\"use gpu\";\n\tconst s = clamp(steps, f32(2), f32(20));\n\treturn vec4f(__tsover_div(floor(__tsover_mul(color.x, s)), s), __tsover_div(floor(__tsover_mul(color.y, s)), s), __tsover_div(floor(__tsover_mul(color.z, s)), s), color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"steps\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"steps\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"20\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"s\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"s\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"s\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst tintPlain = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, tintColor, amount) =\u003e {\n\t\"use gpu\";\n\tconst tinted = mix(vec3f(color.x, color.y, color.z), vec3f(tintColor.x, tintColor.y, tintColor.z), vec3f(amount));\n\treturn vec4f(tinted.x, tinted.y, tinted.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tinted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"amount\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tinted\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tinted\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tinted\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst tintPreserveLuma = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, tintColor, amount) =\u003e {\n\t\"use gpu\";\n\tconst rgb = vec3f(color.x, color.y, color.z);\n\tconst tinted = mix(rgb, vec3f(tintColor.x, tintColor.y, tintColor.z), vec3f(amount));\n\tconst luminanceWeights = vec3f(.299, .587, .114);\n\tconst originalLum = dot(rgb, luminanceWeights);\n\tconst tintedLum = dot(tinted, luminanceWeights);\n\tconst result = tinted.mul(__tsover_div(originalLum, max(tintedLum, 1e-4)));\n\treturn vec4f(result.x, result.y, result.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tinted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"amount\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"luminanceWeights\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"originalLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"rgb\", \"luminanceWeights\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tintedLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"tinted\", \"luminanceWeights\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tinted\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"originalLum\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"tintedLum\", [5, \"0.0001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst duotoneT = typegpu_default.fn([vec4f, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, blend) =\u003e {\n\t\"use gpu\";\n\tconst luminance = dot(color.xyz, vec3f(.299, .587, .114));\n\treturn smoothstep(__tsover_sub(blend, .5), __tsover_add(blend, .5), luminance);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"blend\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"luminance\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.dot\",\n\t\t\t\t[[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"xyz\"\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.smoothstep\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"blend\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"blend\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t\"luminance\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst tritoneFactors = typegpu_default.fn([vec4f, f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, blendMid) =\u003e {\n\t\"use gpu\";\n\tconst luminance = dot(color.xyz, vec3f(.299, .587, .114));\n\treturn vec3f(smoothstep(__tsover_sub(blendMid, .25), blendMid, luminance), smoothstep(blendMid, __tsover_add(blendMid, .25), luminance), smoothstep(__tsover_sub(blendMid, .1), __tsover_add(blendMid, .1), luminance));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"blendMid\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"luminance\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shadowToMid\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blendMid\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"blendMid\",\n\t\t\t\t\t\t\"luminance\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"midToHighlight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"blendMid\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blendMid\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"luminance\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalT\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blendMid\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blendMid\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"luminance\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"shadowToMid\",\n\t\t\t\t\t\"midToHighlight\",\n\t\t\t\t\t\"finalT\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gradientMapT = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, black, white, contrast) =\u003e {\n\t\"use gpu\";\n\tconst luma = dot(color.xyz, vec3f(.2126, .7152, .0722));\n\tconst range = max(__tsover_sub(white, black), 1e-4);\n\tlet t = clamp(__tsover_div(__tsover_sub(luma, black), range), 0, 1);\n\tt = clamp(__tsover_add(__tsover_mul(__tsover_sub(t, .5), contrast), .5), 0, 1);\n\treturn t;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"black\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"white\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"luma\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"range\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"white\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"black\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"luma\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"black\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"range\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"t\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"contrast\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, \"t\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gradientMapCosine = typegpu_default.fn([\n\tf32,\n\tf32,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, phase, pa, pb, pc, pd) =\u003e {\n\t\"use gpu\";\n\tconst arg = pc.mul(t).add(pd).add(vec3f(phase, phase, phase)).mul(TWO_PI);\n\treturn clamp(pa.add(pb.mul(cos(arg))), vec3f(0, 0, 0), vec3f(1, 1, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pa\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pb\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pc\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pd\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"arg\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"pc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"pd\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t\t\t\t\"phase\",\n\t\t\t\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"TWO_PI\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mapped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pa\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pb\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"arg\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t\"mapped\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gradientMapCustomPhase = typegpu_default.fn([f32, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, phase) =\u003e {\n\t\"use gpu\";\n\tconst t01 = fract(__tsover_add(t, phase));\n\tconst t3 = __tsover_mul(t01, 3);\n\treturn vec2f(fract(t3), floor(t3));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t01\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"phase\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t01\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"t3\"]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"t3\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.floor\": () =\u003e floor\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gradientMapSelect = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((seg0, seg1, seg2, i) =\u003e {\n\t\"use gpu\";\n\treturn select(select(seg2, seg1, i \u003c 2), seg0, i \u003c 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seg0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seg1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seg2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"upper\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"seg2\",\n\t\t\t\t\t\"seg1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.select\",\n\t\t\t[\n\t\t\t\t\"upper\",\n\t\t\t\t\"seg0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"i\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.select\": () =\u003e select }\n}) \u0026\u0026 $.f)({}));\nconst gradientMapCompose = typegpu_default.fn([\n\tvec4f,\n\tvec3f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, mapped, strength) =\u003e {\n\t\"use gpu\";\n\treturn vec4f(mix(color.xyz, mapped, vec3f(strength, strength, strength)), color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mapped\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"outRgb\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t],\n\t\t\t\t\t\"mapped\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\"outRgb\", [\n\t\t\t\t7,\n\t\t\t\t\"color\",\n\t\t\t\t\"w\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst filmGrain$1 = typegpu_default.fn([\n\tvec4f,\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, uv, viewport, strength, bias, animTime) =\u003e {\n\t\"use gpu\";\n\tconst noiseVal = hash12(uv.mul(viewport).add(vec2f(animTime, __tsover_mul(animTime, 1.6180339))));\n\tconst grain = __tsover_sub(__tsover_mul(noiseVal, 2), 1);\n\tconst brightness = clamp(dot(color.xyz, vec3f(.2126, .7152, .0722)), 0, 1);\n\tconst darkness = __tsover_sub(1, brightness);\n\tconst darkFactor = pow(__tsover_add(darkness, 1e-6), bias);\n\tconst grainIntensity = __tsover_mul(__tsover_mul(grain, darkFactor), __tsover_mul(strength, .1));\n\treturn vec4f(color.xyz.add(grainIntensity), color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bias\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixelCoord\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"noiseVal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pixelCoord\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"animTime\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.6180339\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grain\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"noiseVal\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brightness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"darkness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"brightness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"darkFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"darkness\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.000001\"]\n\t\t\t\t\t], \"bias\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grainIntensity\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"grain\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"darkFactor\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grainedColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"grainIntensity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"grainedColor\", [\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hash12\": () =\u003e hash12,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst contourLineMask = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sourceValue, levels, lineWidth, softness, gamma, invert$2) =\u003e {\n\t\"use gpu\";\n\tconst sv = pow(select(sourceValue, __tsover_sub(1, sourceValue), invert$2 \u003e .5), gamma);\n\tconst scaledValue = __tsover_add(__tsover_mul(sv, levels), .5);\n\tconst fw = max(fwidth(scaledValue), 1e-4);\n\tconst distFromBoundary = abs(__tsover_sub(fract(__tsover_add(scaledValue, .5)), .5));\n\tconst normalizedDist = __tsover_div(distFromBoundary, fw);\n\tconst transitionFactor = __tsover_add(__tsover_mul(softness, .99), .01);\n\tconst innerEdge = __tsover_mul(lineWidth, __tsover_sub(1, transitionFactor));\n\treturn __tsover_sub(1, smoothstep(innerEdge, lineWidth, normalizedDist));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sourceValue\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"levels\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lineWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gamma\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"invert\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"invertedValue\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sourceValue\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"sourceValue\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"invert\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"invertedValue\", \"gamma\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledValue\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"levels\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fw\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fwidth\",\n\t\t\t\t\t\t[\"scaledValue\"]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distFromBoundary\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"scaledValue\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedDist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"distFromBoundary\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"fw\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"transitionFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.99\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerEdge\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"transitionFactor\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"innerEdge\",\n\t\t\t\t\t\t\"lineWidth\",\n\t\t\t\t\t\t\"normalizedDist\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.fwidth\": () =\u003e fwidth,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst isolinesFromLuma = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, levels, lineWidth, softness, gamma, invert$2) =\u003e {\n\t\"use gpu\";\n\treturn contourLineMask(luma709Dot(color.xyz), levels, lineWidth, softness, gamma, invert$2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"levels\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lineWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gamma\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"invert\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"contourLineMask\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"luma709Dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"levels\",\n\t\t\t\t\"lineWidth\",\n\t\t\t\t\"softness\",\n\t\t\t\t\"gamma\",\n\t\t\t\t\"invert\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"contourLineMask\": () =\u003e contourLineMask,\n\t\t\"luma709Dot\": () =\u003e luma709Dot\n\t}\n}) \u0026\u0026 $.f)({}));\nconst isolinesFromAlpha = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, levels, lineWidth, softness, gamma, invert$2) =\u003e {\n\t\"use gpu\";\n\treturn contourLineMask(color.w, levels, lineWidth, softness, gamma, invert$2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"levels\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lineWidth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gamma\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"invert\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"contourLineMask\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"w\"\n\t\t\t\t],\n\t\t\t\t\"levels\",\n\t\t\t\t\"lineWidth\",\n\t\t\t\t\"softness\",\n\t\t\t\t\"gamma\",\n\t\t\t\t\"invert\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"contourLineMask\": () =\u003e contourLineMask }\n}) \u0026\u0026 $.f)({}));\nconst contourCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((bg, line, mask) =\u003e {\n\t\"use gpu\";\n\tconst rgb = mix(vec3f(bg.x, bg.y, bg.z), vec3f(line.x, line.y, line.z), vec3f(mask));\n\tconst alpha = mix(bg.w, line.w, mask);\n\treturn vec4f(rgb.x, rgb.y, rgb.z, alpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"line\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mask\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bg\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bg\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bg\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"line\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"line\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"line\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"mask\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"bg\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"line\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mask\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"alpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction hueRotate(shift) {\n\treturn pointwiseOp(hueRotate$1, \"hueRotate\", [shift]);\n}\nfunction saturate(intensity) {\n\treturn pointwiseOp(saturate$1, \"saturate\", [intensity]);\n}\nfunction vibrance(intensity) {\n\treturn pointwiseOp(vibrance$1, \"vibrance\", [intensity]);\n}\nfunction brightnessContrast(slots) {\n\treturn pointwiseOp(brightnessContrast$1, \"brightnessContrast\", [slots.brightness, slots.contrast]);\n}\nfunction exposure(gain) {\n\treturn pointwiseOp(exposure$1, \"exposure\", [gain]);\n}\nfunction grayscale() {\n\treturn pointwiseOp(grayscale$1, \"grayscale\", []);\n}\nfunction invert() {\n\treturn pointwiseOp(invert$1, \"invert\", []);\n}\nfunction solarize(slots) {\n\treturn pointwiseOp(solarize$1, \"solarize\", [slots.threshold, slots.strength]);\n}\nfunction posterize(steps) {\n\treturn pointwiseOp(posterize$1, \"posterize\", [steps]);\n}\nfunction tint(slots) {\n\treturn {\n\t\tkind: \"pointwise\",\n\t\tbody: (propValues) =\u003e Number(propValues[slots.preserveLuminosity.name]) \u003e 0 ? {\n\t\t\tfn: tintPreserveLuma,\n\t\t\thint: \"tintPreserveLuma\"\n\t\t} : {\n\t\t\tfn: tintPlain,\n\t\t\thint: \"tintPlain\"\n\t\t},\n\t\targs: (params) =\u003e [resolveArg(slots.color, params), resolveArg(slots.amount, params)]\n\t};\n}\nfunction filmGrain(slots) {\n\treturn {\n\t\tkind: \"pointwise\",\n\t\tbody: {\n\t\t\tfn: filmGrain$1,\n\t\t\thint: \"filmGrain\"\n\t\t},\n\t\targs: (params) =\u003e [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.viewportSize,\n\t\t\tresolveArg(slots.strength, params),\n\t\t\tresolveArg(slots.bias, params),\n\t\t\tparams.uniforms.animTime\n\t\t],\n\t\tsetup: (params) =\u003e {\n\t\t\tlet animTimeAcc = 0;\n\t\t\tparams.onBeforeRender(({ deltaTime }) =\u003e {\n\t\t\t\tconst on = params.getCpuValue(slots.animated.name) \u003e 0 ? 1 : 0;\n\t\t\t\tanimTimeAcc += deltaTime * on * 10;\n\t\t\t\tparams.setExtraField(\"animTime\", animTimeAcc);\n\t\t\t});\n\t\t}\n\t};\n}\nvar sourceModeOf = (raw) =\u003e typeof raw === \"number\" ? raw : raw === \"alpha\" ? 1 : 0;\nvar colorModeOf = (raw) =\u003e typeof raw === \"number\" ? raw : raw === \"custom\" ? 1 : 0;\nfunction isolines(slots) {\n\treturn {\n\t\tkind: \"pointwise\",\n\t\tbody: (propValues) =\u003e sourceModeOf(propValues[slots.source.name]) === 1 ? {\n\t\t\tfn: isolinesFromAlpha,\n\t\t\thint: \"isolinesFromAlpha\"\n\t\t} : {\n\t\t\tfn: isolinesFromLuma,\n\t\t\thint: \"isolinesFromLuma\"\n\t\t},\n\t\targs: (params) =\u003e [\n\t\t\tslots.levels,\n\t\t\tslots.lineWidth,\n\t\t\tslots.softness,\n\t\t\tslots.gamma,\n\t\t\tslots.invert\n\t\t].map((s) =\u003e resolveArg(s, params)),\n\t\tcompose: (lineMask, params) =\u003e {\n\t\t\tconst custom = colorModeOf(params.propValues[slots.colorMode.name]) === 1;\n\t\t\treturn call(contourCompose, \"contourCompose\", [\n\t\t\t\tcustom ? uniformOf(slots.backgroundColor, params) : ZERO,\n\t\t\t\tcustom ? uniformOf(slots.lineColor, params) : vec4(params.childNode.member(\"rgb\"), floatE(1)),\n\t\t\t\tlineMask\n\t\t\t]);\n\t\t}\n\t};\n}\nfunction mixVariantFor(colorSpace, params) {\n\treturn mixColorsVariants[params.propValues[colorSpace.name] ?? 0] ?? mixColorsLinear;\n}\nfunction duotone(slots) {\n\treturn pointwiseOp(duotoneT, \"duotoneT\", [slots.blend], { compose: (t, params) =\u003e {\n\t\treturn vec4(call(mixVariantFor(slots.colorSpace, params), \"mixColors\", [\n\t\t\tuniformOf(slots.colorA, params),\n\t\t\tuniformOf(slots.colorB, params),\n\t\t\tt\n\t\t]).member(\"rgb\"), params.childNode.member(\"a\"));\n\t} });\n}\nfunction tritone(slots) {\n\treturn pointwiseOp(tritoneFactors, \"tritoneFactors\", [slots.blendMid], { compose: (factors, params) =\u003e {\n\t\tconst shadowToMid = factors.member(\"x\");\n\t\tconst midToHighlight = factors.member(\"y\");\n\t\tconst finalT = factors.member(\"z\");\n\t\tconst variant = mixVariantFor(slots.colorSpace, params);\n\t\tconst colorA = uniformOf(slots.colorA, params);\n\t\tconst colorB = uniformOf(slots.colorB, params);\n\t\tconst colorC = uniformOf(slots.colorC, params);\n\t\treturn vec4(call(variant, \"mixColors\", [\n\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\tcolorA,\n\t\t\t\tcolorB,\n\t\t\t\tshadowToMid\n\t\t\t]),\n\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\tcolorB,\n\t\t\t\tcolorC,\n\t\t\t\tmidToHighlight\n\t\t\t]),\n\t\t\tfinalT\n\t\t]).member(\"rgb\"), params.childNode.member(\"a\"));\n\t} });\n}\nvar PALETTES = {\n\t0: {\n\t\ta: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tb: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tc: [\n\t\t\t1,\n\t\t\t1,\n\t\t\t1\n\t\t],\n\t\td: [\n\t\t\t0,\n\t\t\t.333,\n\t\t\t.667\n\t\t]\n\t},\n\t1: {\n\t\ta: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tb: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tc: [\n\t\t\t1,\n\t\t\t1,\n\t\t\t1\n\t\t],\n\t\td: [\n\t\t\t0,\n\t\t\t.1,\n\t\t\t.2\n\t\t]\n\t},\n\t2: {\n\t\ta: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tb: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tc: [\n\t\t\t1,\n\t\t\t1,\n\t\t\t1\n\t\t],\n\t\td: [\n\t\t\t.3,\n\t\t\t.2,\n\t\t\t.2\n\t\t]\n\t},\n\t3: {\n\t\ta: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tb: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tc: [\n\t\t\t1,\n\t\t\t1,\n\t\t\t1\n\t\t],\n\t\td: [\n\t\t\t.8,\n\t\t\t.9,\n\t\t\t.3\n\t\t]\n\t},\n\t4: {\n\t\ta: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tb: [\n\t\t\t.25,\n\t\t\t.25,\n\t\t\t.25\n\t\t],\n\t\tc: [\n\t\t\t1,\n\t\t\t1,\n\t\t\t1\n\t\t],\n\t\td: [\n\t\t\t0,\n\t\t\t.25,\n\t\t\t.5\n\t\t]\n\t},\n\t5: {\n\t\ta: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tb: [\n\t\t\t.5,\n\t\t\t.5,\n\t\t\t.5\n\t\t],\n\t\tc: [\n\t\t\t2,\n\t\t\t1,\n\t\t\t1\n\t\t],\n\t\td: [\n\t\t\t.5,\n\t\t\t.2,\n\t\t\t.25\n\t\t]\n\t}\n};\nvar PALETTE_INDEX = {\n\trainbow: 0,\n\tsunset: 1,\n\tocean: 2,\n\tfire: 3,\n\tpastel: 4,\n\tneon: 5,\n\tcustom: 6\n};\nvar vec3E = (v) =\u003e expr(`vec3f(${formatFloat(v[0])}, ${formatFloat(v[1])}, ${formatFloat(v[2])})`);\nfunction gradientMap(slots) {\n\treturn pointwiseOp(gradientMapT, \"gradientMapT\", [\n\t\tslots.blackPoint,\n\t\tslots.whitePoint,\n\t\tslots.contrast\n\t], { compose: (t, params) =\u003e {\n\t\tconst { childNode, propValues, ctx } = params;\n\t\tconst strength = uniformOf(slots.strength, params);\n\t\tconst phase = uniformOf(slots.speed, params).mul(ctx.time);\n\t\tconst paletteIdx = PALETTE_INDEX[propValues[slots.palette.name] ?? \"rainbow\"] ?? 0;\n\t\tif (paletteIdx !== 6) {\n\t\t\tconst p = PALETTES[paletteIdx] ?? PALETTES[0];\n\t\t\treturn call(gradientMapCompose, \"gradientMapCompose\", [\n\t\t\t\tchildNode,\n\t\t\t\tcall(gradientMapCosine, \"gradientMapCosine\", [\n\t\t\t\t\tt,\n\t\t\t\t\tphase,\n\t\t\t\t\tvec3E(p.a),\n\t\t\t\t\tvec3E(p.b),\n\t\t\t\t\tvec3E(p.c),\n\t\t\t\t\tvec3E(p.d)\n\t\t\t\t]),\n\t\t\t\tstrength\n\t\t\t]);\n\t\t}\n\t\tconst variant = mixVariantFor(slots.colorSpace, params);\n\t\tconst phaseData = call(gradientMapCustomPhase, \"gradientMapCustomPhase\", [t, phase]);\n\t\tconst fr = phaseData.member(\"x\");\n\t\tconst i = phaseData.member(\"y\");\n\t\tconst colorLow = uniformOf(slots.colorLow, params);\n\t\tconst colorMid = uniformOf(slots.colorMid, params);\n\t\tconst colorHigh = uniformOf(slots.colorHigh, params);\n\t\treturn call(gradientMapCompose, \"gradientMapCompose\", [\n\t\t\tchildNode,\n\t\t\tcall(gradientMapSelect, \"gradientMapSelect\", [\n\t\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\t\tcolorLow,\n\t\t\t\t\tcolorMid,\n\t\t\t\t\tfr\n\t\t\t\t]),\n\t\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\t\tcolorMid,\n\t\t\t\t\tcolorHigh,\n\t\t\t\t\tfr\n\t\t\t\t]),\n\t\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\t\tcolorHigh,\n\t\t\t\t\tcolorLow,\n\t\t\t\t\tfr\n\t\t\t\t]),\n\t\t\t\ti\n\t\t\t]).member(\"rgb\"),\n\t\t\tstrength\n\t\t]);\n\t} });\n}\nfunction makeLutAtlasUvFn(size) {\n\tconst LUT_MAX = size - 1;\n\tconst INV_ATLAS_W = 1 / (size * size);\n\tconst INV_LUT_N = 1 / size;\n\treturn typegpu_default.fn([vec4f, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, hi) =\u003e {\n\t\t\"use gpu\";\n\t\tconst enc = linearToSrgb(clamp(color.xyz, vec3f(0, 0, 0), vec3f(1, 1, 1)));\n\t\tconst slice = __tsover_mul(enc.z, f32(LUT_MAX));\n\t\tconst s = clamp(__tsover_add(floor(slice), hi), f32(0), f32(LUT_MAX));\n\t\treturn vec2f(__tsover_mul(__tsover_add(__tsover_add(__tsover_mul(s, f32(size)), .5), __tsover_mul(enc.x, f32(LUT_MAX))), f32(INV_ATLAS_W)), __tsover_mul(__tsover_add(.5, __tsover_mul(enc.y, f32(LUT_MAX))), f32(INV_LUT_N)));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hi\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"enc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"tonemap.linearToSrgb\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"slice\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"enc\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"LUT_MAX\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t[\"slice\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"hi\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"LUT_MAX\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"size\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"enc\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"LUT_MAX\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"INV_ATLAS_W\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"enc\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"LUT_MAX\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"INV_LUT_N\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"u\", \"v\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"tonemap.linearToSrgb\": () =\u003e linearToSrgb,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"LUT_MAX\": () =\u003e LUT_MAX,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"size\": () =\u003e size,\n\t\t\t\"INV_ATLAS_W\": () =\u003e INV_ATLAS_W,\n\t\t\t\"INV_LUT_N\": () =\u003e INV_LUT_N,\n\t\t\t\"d.vec2f\": () =\u003e vec2f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"lutAtlasUv\");\n}\nfunction makeLutAtlasApplyFn(size) {\n\tconst LUT_MAX = size - 1;\n\treturn typegpu_default.fn([\n\t\tvec4f,\n\t\tvec4f,\n\t\tvec4f,\n\t\tf32\n\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, tapLo, tapHi, strength) =\u003e {\n\t\t\"use gpu\";\n\t\tconst enc = linearToSrgb(clamp(color.xyz, vec3f(0, 0, 0), vec3f(1, 1, 1)));\n\t\tconst slice = __tsover_mul(enc.z, f32(LUT_MAX));\n\t\tconst f = __tsover_sub(slice, floor(slice));\n\t\tconst graded = srgbToLinear(mix(tapLo.xyz, tapHi.xyz, vec3f(f, f, f)));\n\t\tconst rgb = mix(color.xyz, graded, vec3f(strength, strength, strength));\n\t\treturn vec4f(rgb.x, rgb.y, rgb.z, color.w);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"color\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"tapLo\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"tapHi\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"strength\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"enc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"tonemap.linearToSrgb\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"slice\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"enc\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"LUT_MAX\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"slice\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"slice\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"graded\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"tonemap.srgbToLinear\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tapLo\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"tapHi\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"graded\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\t\t\t\"strength\",\n\t\t\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"tonemap.linearToSrgb\": () =\u003e linearToSrgb,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"LUT_MAX\": () =\u003e LUT_MAX,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"tonemap.srgbToLinear\": () =\u003e srgbToLinear,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"lutAtlasApply\");\n}\nvar lutAtlasFnCache = /* @__PURE__ */ new Map();\nfunction lutAtlasFnsFor(size) {\n\tlet fns = lutAtlasFnCache.get(size);\n\tif (!fns) {\n\t\tfns = {\n\t\t\tuv: makeLutAtlasUvFn(size),\n\t\t\tapply: makeLutAtlasApplyFn(size)\n\t\t};\n\t\tlutAtlasFnCache.set(size, fns);\n\t}\n\treturn fns;\n}\nfunction lutAtlasGrade(slots) {\n\tconst fns = lutAtlasFnsFor(slots.size);\n\treturn (color, params) =\u003e {\n\t\tconst { propValues, uniforms, createDataTexture, registerMediaTexture, onCleanup } = params;\n\t\tconst key = propValues[slots.select.name] ?? slots.fallback;\n\t\tconst lutTex = createDataTexture({\n\t\t\twidth: slots.size * slots.size,\n\t\t\theight: slots.size,\n\t\t\tformat: \"rgba8unorm\",\n\t\t\tdata: slots.decode(key),\n\t\t\tlabel: `${slots.label}-${key}`\n\t\t});\n\t\tonCleanup(() =\u003e lutTex.destroy());\n\t\tconst lutKit = registerMediaTexture(() =\u003e lutTex.texture);\n\t\tconst tapLo = lutKit.sample(call(fns.uv, \"lutAtlasUvLo\", [color, floatE(0)]), \"linearClamp\");\n\t\tconst tapHi = lutKit.sample(call(fns.uv, \"lutAtlasUvHi\", [color, floatE(1)]), \"linearClamp\");\n\t\treturn call(fns.apply, \"lutAtlasApply\", [\n\t\t\tcolor,\n\t\t\ttapLo,\n\t\t\ttapHi,\n\t\t\tuniforms[slots.strength.name]\n\t\t]);\n\t};\n}\nexport { gradientMap as a, invert as c, posterize as d, saturate as f, vibrance as g, tritone as h, filmGrain as i, isolines as l, tint as m, duotone as n, grayscale as o, solarize as p, exposure as r, hueRotate as s, brightnessContrast as t, lutAtlasGrade as u };\n","import { $ as edgeTransparentMask, Bn as TWO_PI, Br as struct, Cn as mxNoiseFloat3, Cr as sin, Dr as tan, Er as step, Gn as typegpu_default, In as HALF_PI, Ln as PI, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD, Q as edgeMirrorUV, Sr as sign, Tr as sqrt, Z as edgeClampUV, _r as mix, ar as clamp, cr as dot, ct as call, er as select, et as edgeWrapUV, fr as floor, gr as min, hr as max, jr as vec3f, lr as exp, mr as length, mt as vec4, nr as asin, or as cos, pr as fract, qr as f32, rr as atan2, tr as abs, ur as exp2, vr as normalize, wr as smoothstep, yr as pow, zn as TAU } from \"./lower-Bd2jez_2.js\";\nimport { At as legacySinHash11 } from \"./porters-OTkIMOyl.js\";\nconst mirrorReflect = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, angle, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst delta = aspectCorrectedUV.sub(centerPos);\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst lineDirection = vec2f(cos(angleRad), sin(angleRad));\n\tconst lineNormal = vec2f(__tsover_mul(lineDirection.y, -1), lineDirection.x);\n\tconst signedDistance = dot(delta, lineNormal);\n\tconst reflectedDelta = delta.sub(lineNormal.mul(__tsover_mul(signedDistance, 2)));\n\tconst mirroredUV = centerPos.add(reflectedDelta);\n\tconst finalMirroredUV = vec2f(__tsover_div(mirroredUV.x, aspect), mirroredUV.y);\n\tconst shouldMirror = step(0, signedDistance);\n\treturn vec3f(finalMirroredUV.x, finalMirroredUV.y, shouldMirror);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineDirection\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lineNormal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineDirection\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"lineDirection\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"signedDistance\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"delta\", \"lineNormal\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"reflectedDelta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lineNormal\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"signedDistance\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mirroredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"reflectedDelta\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalMirroredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mirroredUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mirroredUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shouldMirror\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[[5, \"0\"], \"signedDistance\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalMirroredUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalMirroredUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"shouldMirror\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flipUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, flipX, flipY) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(select(uv.x, __tsover_sub(1, uv.x), flipX \u003e 0), select(uv.y, __tsover_sub(1, uv.y), flipY \u003e 0));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flipX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flipY\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"flipX\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"flipY\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"x\", \"y\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar CAMERA_D = 2;\nvar B_MAX = 1.2;\nconst bendRemap = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((strength, falloff, angle, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst dir = vec2f(cos(angleRad), sin(angleRad));\n\tconst perp = vec2f(__tsover_mul(dir.y, -1), dir.x);\n\tconst p = vec2f(__tsover_mul(__tsover_sub(uv.x, .5), aspect), __tsover_sub(uv.y, .5));\n\tconst sScreen = dot(p, dir);\n\tconst tScreen = dot(p, perp);\n\tconst sHalf = max(__tsover_mul(__tsover_add(__tsover_mul(abs(dir.x), aspect), abs(dir.y)), .5), .001);\n\tconst snScreen = __tsover_div(sScreen, sHalf);\n\tconst b = __tsover_mul(strength, B_MAX);\n\tconst f = __tsover_mul(clamp(falloff, 0, 1), .9);\n\tconst fSpan = __tsover_sub(1, f);\n\tconst m = abs(snScreen);\n\tconst sig = select(f32(-1), f32(1), snScreen \u003e= 0);\n\tconst a2 = __tsover_mul(b, m);\n\tconst disc = __tsover_add(__tsover_mul(__tsover_mul(__tsover_mul(CAMERA_D, CAMERA_D), fSpan), fSpan), __tsover_mul(__tsover_mul(__tsover_mul(4, a2), CAMERA_D), __tsover_sub(m, f)));\n\tconst nearZero = abs(a2) \u003c 1e-5;\n\tconst denom = select(__tsover_mul(a2, 2), f32(1), nearZero);\n\tconst uOn = select(__tsover_div(__tsover_sub(sqrt(max(disc, 0)), __tsover_mul(CAMERA_D, fSpan)), denom), __tsover_div(__tsover_sub(m, f), fSpan), nearZero);\n\tconst u = select(f32(6), max(uOn, 0), disc \u003e= 0);\n\tconst snBend = __tsover_mul(sig, __tsover_add(f, __tsover_mul(u, fSpan)));\n\tconst inFlat = m \u003c= f;\n\tconst sn = select(snBend, snScreen, inFlat);\n\tconst z = select(__tsover_mul(__tsover_mul(b, u), u), f32(0), inFlat);\n\tconst tSrc = __tsover_div(__tsover_mul(tScreen, __tsover_sub(CAMERA_D, z)), CAMERA_D);\n\tconst srcP = dir.mul(__tsover_mul(sn, sHalf)).add(perp.mul(tSrc));\n\treturn vec2f(__tsover_add(__tsover_div(srcP.x, aspect), .5), __tsover_add(srcP.y, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"falloff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sScreen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", \"dir\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tScreen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", \"perp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sHalf\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"snScreen\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sScreen\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"sHalf\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strength\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"B_MAX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"falloff\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fSpan\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"f\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"m\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"snScreen\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sig\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"snScreen\",\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"m\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"disc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"CAMERA_D\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"CAMERA_D\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fSpan\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fSpan\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"a2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"CAMERA_D\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nearZero\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"a2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"0.00001\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"denom\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"nearZero\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uQuad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"disc\", [5, \"0\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"CAMERA_D\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fSpan\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"denom\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uOn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uQuad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"m\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"fSpan\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"nearZero\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"6\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"uOn\", [5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"disc\",\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"snBend\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sig\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fSpan\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inFlat\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"m\",\n\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\"f\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"snBend\",\n\t\t\t\t\t\t\"snScreen\",\n\t\t\t\t\t\t\"inFlat\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"inFlat\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tSrc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tScreen\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"CAMERA_D\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"CAMERA_D\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"srcP\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sn\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"sHalf\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"perp\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"tSrc\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srcP\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"srcP\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"B_MAX\": () =\u003e B_MAX,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"CAMERA_D\": () =\u003e CAMERA_D,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst bulgeUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, strength, radius, falloff, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst delta = aspectCorrectedUV.sub(centerPos);\n\tconst distance = length(delta);\n\tconst effectRadius = __tsover_mul(radius, .5);\n\tconst innerRadius = __tsover_mul(effectRadius, max(__tsover_sub(__tsover_sub(1, falloff), .001), 0));\n\tconst smoothFalloff = __tsover_sub(1, smoothstep(innerRadius, effectRadius, distance));\n\tconst normalizedDist = __tsover_div(distance, effectRadius);\n\tconst distSq = __tsover_mul(normalizedDist, normalizedDist);\n\tconst quadraticFalloff = max(0, __tsover_sub(1, distSq));\n\tconst falloffTotal = __tsover_mul(smoothFalloff, quadraticFalloff);\n\tconst negStrength = __tsover_mul(strength, -1);\n\tconst displacementAmount = __tsover_mul(negStrength, falloffTotal);\n\tconst scaleFactor = __tsover_add(1, displacementAmount);\n\tconst bulgedDelta = delta.mul(scaleFactor);\n\tconst bulgedUV = centerPos.add(bulgedDelta);\n\treturn vec2f(__tsover_div(bulgedUV.x, aspect), bulgedUV.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"falloff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distance\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"delta\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"effectRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"effectRadius\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"smoothFalloff\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"innerRadius\",\n\t\t\t\t\t\t\t\"effectRadius\",\n\t\t\t\t\t\t\t\"distance\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedDist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"distance\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"effectRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distSq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"normalizedDist\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"normalizedDist\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"quadraticFalloff\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[5, \"0\"], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"distSq\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"falloffTotal\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"smoothFalloff\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"quadraticFalloff\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"negStrength\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strength\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacementAmount\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"negStrength\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"falloffTotal\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaleFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"displacementAmount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bulgedDelta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"scaleFactor\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bulgedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"bulgedDelta\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"bulgedUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t], [\n\t\t\t\t\t7,\n\t\t\t\t\t\"bulgedUV\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst twirlUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, intensity, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst delta = uv.sub(centerPos);\n\tconst acd = vec2f(__tsover_mul(delta.x, aspect), delta.y);\n\tconst angle = __tsover_mul(intensity, length(acd));\n\tconst cosA = cos(angle);\n\tconst sinA = sin(angle);\n\tconst rotatedX = __tsover_sub(__tsover_mul(cosA, acd.x), __tsover_mul(sinA, acd.y));\n\tconst rotatedY = __tsover_add(__tsover_mul(sinA, acd.x), __tsover_mul(cosA, acd.y));\n\treturn vec2f(__tsover_add(__tsover_div(rotatedX, aspect), centerPos.x), __tsover_add(rotatedY, centerPos.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"acd\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cosA\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"acd\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sinA\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"acd\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sinA\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"acd\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cosA\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"acd\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotatedX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotatedY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst kaleidoscopeUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, segments, angle, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst delta = aspectCorrectedUV.sub(centerPos);\n\tconst radius = length(delta);\n\tconst currentAngle = atan2(delta.y, delta.x);\n\tconst rotatedAngle = __tsover_add(currentAngle, __tsover_mul(angle, DEG_TO_RAD));\n\tconst segmentAngle = __tsover_div(TAU, segments);\n\tconst segTwo = __tsover_mul(segmentAngle, 2);\n\tconst wrappedAngle = __tsover_sub(rotatedAngle, __tsover_mul(segTwo, floor(__tsover_div(rotatedAngle, segTwo))));\n\tconst finalAngle = select(wrappedAngle, __tsover_sub(segTwo, wrappedAngle), wrappedAngle \u003e segmentAngle);\n\tconst kaleidoscopeX = __tsover_mul(cos(finalAngle), radius);\n\tconst kaleidoscopeY = __tsover_mul(sin(finalAngle), radius);\n\tconst kaleidoscopePos = centerPos.add(vec2f(kaleidoscopeX, kaleidoscopeY));\n\treturn vec2f(__tsover_div(kaleidoscopePos.x, aspect), kaleidoscopePos.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"segments\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"radius\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"delta\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"currentAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"currentAngle\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"segmentAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"TAU\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"segments\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"segTwo\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"segmentAngle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wrappedAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotatedAngle\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"segTwo\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rotatedAngle\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"segTwo\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"wrappedAngle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"segTwo\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"wrappedAngle\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"wrappedAngle\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\"segmentAngle\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kaleidoscopeX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"finalAngle\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kaleidoscopeY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"finalAngle\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kaleidoscopePos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"kaleidoscopeX\", \"kaleidoscopeY\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"kaleidoscopePos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t], [\n\t\t\t\t\t7,\n\t\t\t\t\t\"kaleidoscopePos\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst stretchUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, strength, angle, falloff, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst delta = aspectCorrectedUV.sub(centerPos);\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst directionVector = vec2f(cos(angleRad), sin(angleRad));\n\tconst projection = dot(delta, directionVector);\n\tconst parallel = directionVector.mul(projection);\n\tconst perpendicular = delta.sub(parallel);\n\tconst transitionWidth = mix(.001, 75, falloff);\n\tconst effectMask = clamp(__tsover_div(projection, transitionWidth), 0, 1);\n\tconst scaledStrength = __tsover_mul(strength, 100);\n\tconst stretchFactor = __tsover_add(1, __tsover_mul(scaledStrength, effectMask));\n\tconst finalProjection = __tsover_div(projection, stretchFactor);\n\tconst stretchedDelta = directionVector.mul(finalProjection).add(perpendicular);\n\tconst stretchedUV = centerPos.add(stretchedDelta);\n\treturn vec2f(__tsover_div(stretchedUV.x, aspect), stretchedUV.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"falloff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"directionVector\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"projection\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"delta\", \"directionVector\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"parallel\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"directionVector\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"projection\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perpendicular\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"parallel\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"transitionWidth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.001\"],\n\t\t\t\t\t\t[5, \"75\"],\n\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"effectMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"projection\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"transitionWidth\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledStrength\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strength\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"100\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stretchFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"scaledStrength\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"effectMask\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalProjection\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"projection\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"stretchFactor\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalParallel\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"directionVector\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"finalProjection\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stretchedDelta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalParallel\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"perpendicular\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stretchedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"stretchedDelta\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"stretchedUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t], [\n\t\t\t\t\t7,\n\t\t\t\t\t\"stretchedUV\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst wavePhase = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, frequency, t) =\u003e {\n\t\"use gpu\";\n\tconst centeredUV = uv.sub(vec2f(.5, .5));\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(centeredUV.x, aspect), centeredUV.y);\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst rotatedY = __tsover_add(__tsover_mul(aspectCorrectedUV.x, sinA), __tsover_mul(aspectCorrectedUV.y, cosA));\n\treturn __tsover_add(__tsover_mul(__tsover_mul(__tsover_add(rotatedY, .5), frequency), TAU), t);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rotatedY\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"frequency\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"TAU\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t\"t\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"TAU\": () =\u003e TAU\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveApply = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, strength, wave) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst displacement = __tsover_mul(__tsover_mul(wave, strength), .5);\n\tconst displacementX = __tsover_div(__tsover_mul(displacement, cosA), aspect);\n\tconst displacementY = __tsover_mul(displacement, sinA);\n\treturn vec2f(__tsover_add(uv.x, displacementX), __tsover_add(uv.y, displacementY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wave\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacement\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wave\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacementX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"displacement\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacementY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"displacement\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"sinA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"displacementX\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"displacementY\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveformSine = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((phase) =\u003e {\n\t\"use gpu\";\n\treturn sin(phase);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.sin\",\n\t\t\t[\"phase\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.sin\": () =\u003e sin }\n}) \u0026\u0026 $.f)({}));\nconst waveformTriangle = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((phase) =\u003e {\n\t\"use gpu\";\n\tconst normalizedPhase = fract(__tsover_div(phase, TAU));\n\treturn __tsover_sub(__tsover_mul(abs(__tsover_sub(__tsover_mul(normalizedPhase, 2), 1)), 2), 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"normalizedPhase\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"phase\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TAU\"\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"normalizedPhase\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"2\"]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t[5, \"1\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveformSquare = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((phase) =\u003e {\n\t\"use gpu\";\n\tconst normalizedPhase = fract(__tsover_div(phase, TAU));\n\treturn __tsover_sub(__tsover_mul(step(.5, normalizedPhase), 2), 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"normalizedPhase\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"phase\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TAU\"\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[[5, \"0.5\"], \"normalizedPhase\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"2\"]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t[5, \"1\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.step\": () =\u003e step\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveformSawtooth = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((phase) =\u003e {\n\t\"use gpu\";\n\tconst normalizedPhase = fract(__tsover_div(phase, TAU));\n\treturn __tsover_sub(__tsover_mul(normalizedPhase, 2), 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"normalizedPhase\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.fract\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"phase\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TAU\"\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"normalizedPhase\",\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"2\"]\n\t\t\t],\n\t\t\t\"-\",\n\t\t\t[5, \"1\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"TAU\": () =\u003e TAU\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveformBounce = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((phase) =\u003e {\n\t\"use gpu\";\n\treturn abs(sin(phase));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.abs\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.sin\",\n\t\t\t\t[\"phase\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveDistortSine = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, frequency, strength, t) =\u003e {\n\t\"use gpu\";\n\treturn waveApply(uv, aspect, angle, strength, waveformSine(wavePhase(uv, aspect, angle, frequency, t)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"wave\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"waveformSine\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"wavePhase\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"waveApply\",\n\t\t\t[\n\t\t\t\t\"uv\",\n\t\t\t\t\"aspect\",\n\t\t\t\t\"angle\",\n\t\t\t\t\"strength\",\n\t\t\t\t\"wave\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"waveformSine\": () =\u003e waveformSine,\n\t\t\"wavePhase\": () =\u003e wavePhase,\n\t\t\"waveApply\": () =\u003e waveApply\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveDistortTriangle = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, frequency, strength, t) =\u003e {\n\t\"use gpu\";\n\treturn waveApply(uv, aspect, angle, strength, waveformTriangle(wavePhase(uv, aspect, angle, frequency, t)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"wave\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"waveformTriangle\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"wavePhase\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"waveApply\",\n\t\t\t[\n\t\t\t\t\"uv\",\n\t\t\t\t\"aspect\",\n\t\t\t\t\"angle\",\n\t\t\t\t\"strength\",\n\t\t\t\t\"wave\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"waveformTriangle\": () =\u003e waveformTriangle,\n\t\t\"wavePhase\": () =\u003e wavePhase,\n\t\t\"waveApply\": () =\u003e waveApply\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveDistortSquare = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, frequency, strength, t) =\u003e {\n\t\"use gpu\";\n\treturn waveApply(uv, aspect, angle, strength, waveformSquare(wavePhase(uv, aspect, angle, frequency, t)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"wave\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"waveformSquare\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"wavePhase\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"waveApply\",\n\t\t\t[\n\t\t\t\t\"uv\",\n\t\t\t\t\"aspect\",\n\t\t\t\t\"angle\",\n\t\t\t\t\"strength\",\n\t\t\t\t\"wave\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"waveformSquare\": () =\u003e waveformSquare,\n\t\t\"wavePhase\": () =\u003e wavePhase,\n\t\t\"waveApply\": () =\u003e waveApply\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveDistortSawtooth = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, frequency, strength, t) =\u003e {\n\t\"use gpu\";\n\treturn waveApply(uv, aspect, angle, strength, waveformSawtooth(wavePhase(uv, aspect, angle, frequency, t)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"wave\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"waveformSawtooth\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"wavePhase\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"waveApply\",\n\t\t\t[\n\t\t\t\t\"uv\",\n\t\t\t\t\"aspect\",\n\t\t\t\t\"angle\",\n\t\t\t\t\"strength\",\n\t\t\t\t\"wave\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"waveformSawtooth\": () =\u003e waveformSawtooth,\n\t\t\"wavePhase\": () =\u003e wavePhase,\n\t\t\"waveApply\": () =\u003e waveApply\n\t}\n}) \u0026\u0026 $.f)({}));\nconst waveDistortBounce = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, frequency, strength, t) =\u003e {\n\t\"use gpu\";\n\treturn waveApply(uv, aspect, angle, strength, waveformBounce(wavePhase(uv, aspect, angle, frequency, t)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"wave\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"waveformBounce\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"wavePhase\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"angle\",\n\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"waveApply\",\n\t\t\t[\n\t\t\t\t\"uv\",\n\t\t\t\t\"aspect\",\n\t\t\t\t\"angle\",\n\t\t\t\t\"strength\",\n\t\t\t\t\"wave\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"waveformBounce\": () =\u003e waveformBounce,\n\t\t\"wavePhase\": () =\u003e wavePhase,\n\t\t\"waveApply\": () =\u003e waveApply\n\t}\n}) \u0026\u0026 $.f)({}));\nconst polarCoordsUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, wrap, radius, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst delta = aspectCorrectedUV.sub(centerPos);\n\tconst theta = atan2(delta.y, delta.x);\n\tconst normalizedAngle = __tsover_div(__tsover_add(theta, PI), TAU);\n\tconst r = length(delta);\n\treturn vec2f(__tsover_mul(normalizedAngle, wrap), __tsover_mul(r, radius));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wrap\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"delta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"theta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"delta\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"theta\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"PI\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TAU\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"delta\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"normalizedAngle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"wrap\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"u\", \"v\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"PI\": () =\u003e PI,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.length\": () =\u003e length\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rectCoordsUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, scale, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst theta = __tsover_sub(__tsover_mul(uv.x, TAU), PI);\n\tconst r = __tsover_mul(uv.y, scale);\n\tconst rectX = __tsover_mul(r, cos(theta));\n\tconst rectY = __tsover_mul(r, sin(theta));\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\treturn vec2f(__tsover_add(__tsover_div(rectX, aspect), centerPos.x), __tsover_add(rectY, centerPos.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"theta\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rectX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rectY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rectX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"rectY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"PI\": () =\u003e PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar EPS = 1e-8;\nconst cornerPinSafeDiv = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((n, dv) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_div(n, select(dv, EPS, abs(dv) \u003c EPS));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"n\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dv\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t\"n\",\n\t\t\t\"/\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"dv\",\n\t\t\t\t\t\"EPS\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"dv\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"EPS\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"EPS\": () =\u003e EPS,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cornerSideOf = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, a, b) =\u003e {\n\t\"use gpu\";\n\tconst bax = __tsover_sub(b.x, a.x);\n\tconst bay = __tsover_sub(b.y, a.y);\n\tconst pax = __tsover_sub(p.x, a.x);\n\tconst pay = __tsover_sub(p.y, a.y);\n\treturn __tsover_sub(__tsover_mul(bax, pay), __tsover_mul(bay, pax));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"bax\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"pay\"\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"bay\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"pax\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst cornerInsideTri = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, a, b, c) =\u003e {\n\t\"use gpu\";\n\tconst d1 = cornerSideOf(p, a, b);\n\tconst d2 = cornerSideOf(p, b, c);\n\tconst d3 = cornerSideOf(p, c, a);\n\tconst allPos = __tsover_mul(__tsover_mul(step(f32(0), d1), step(f32(0), d2)), step(f32(0), d3));\n\tconst allNeg = __tsover_mul(__tsover_mul(step(d1, f32(0)), step(d2, f32(0))), step(d3, f32(0)));\n\treturn __tsover_add(allPos, allNeg);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerSideOf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerSideOf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"c\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"d3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerSideOf\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\"a\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"allPos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t], \"d1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t], \"d2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t], \"d3\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"allNeg\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[\"d1\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[\"d2\", [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[\"d3\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"allPos\",\n\t\t\t\t\"+\",\n\t\t\t\t\"allNeg\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"cornerSideOf\": () =\u003e cornerSideOf,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cornerProjectToDiagonal = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, a, b, refSide) =\u003e {\n\t\"use gpu\";\n\tconst ab = b.sub(a);\n\tconst t = clamp(__tsover_div(dot(p.sub(a), ab), max(dot(ab, ab), EPS)), 0, 1);\n\tconst foot = a.add(ab.mul(t));\n\tconst perp = vec2f(__tsover_mul(ab.y, -1), ab.x).div(max(length(ab), EPS));\n\tconst nudge = __tsover_mul(__tsover_mul(sign(refSide), -1), .004);\n\treturn foot.add(perp.mul(nudge));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"refSide\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ab\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"a\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t\t\t\t], \"ab\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t[\"ab\", \"ab\"]\n\t\t\t\t\t\t\t\t], \"EPS\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"foot\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ab\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ab\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"ab\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t[\"ab\"]\n\t\t\t\t\t\t], \"EPS\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nudge\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t\t[\"refSide\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.004\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"foot\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"perp\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"nudge\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"EPS\": () =\u003e EPS,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.sign\": () =\u003e sign\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cornerConvexify = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, a, b, o) =\u003e {\n\t\"use gpu\";\n\tconst inside = cornerInsideTri(p, a, b, o) \u003e .5;\n\treturn select(p, cornerProjectToDiagonal(p, a, b, cornerSideOf(o, a, b)), inside);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"o\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inside\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"cornerInsideTri\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"proj\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerProjectToDiagonal\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"cornerSideOf\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"p\",\n\t\t\t\t\t\"proj\",\n\t\t\t\t\t\"inside\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"cornerInsideTri\": () =\u003e cornerInsideTri,\n\t\t\"cornerProjectToDiagonal\": () =\u003e cornerProjectToDiagonal,\n\t\t\"cornerSideOf\": () =\u003e cornerSideOf,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cornerPinSample = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord, amount, c0, c1, c2, c3) =\u003e {\n\t\"use gpu\";\n\tconst amt = vec2f(amount, amount);\n\tconst r0 = mix(vec2f(0, 0), vec2f(c0.x, __tsover_sub(1, c0.y)), amt);\n\tconst r1 = mix(vec2f(1, 0), vec2f(c1.x, __tsover_sub(1, c1.y)), amt);\n\tconst r2 = mix(vec2f(1, 1), vec2f(c2.x, __tsover_sub(1, c2.y)), amt);\n\tconst r3 = mix(vec2f(0, 1), vec2f(c3.x, __tsover_sub(1, c3.y)), amt);\n\tconst q0 = cornerConvexify(r0, r1, r3, r2);\n\tconst q1 = cornerConvexify(r1, r0, r2, r3);\n\tconst q2 = cornerConvexify(r2, r1, r3, r0);\n\tconst q3 = cornerConvexify(r3, r0, r2, r1);\n\tconst dx1 = __tsover_sub(q1.x, q2.x);\n\tconst dx2 = __tsover_sub(q3.x, q2.x);\n\tconst dx3 = __tsover_sub(__tsover_add(__tsover_sub(q0.x, q1.x), q2.x), q3.x);\n\tconst dy1 = __tsover_sub(q1.y, q2.y);\n\tconst dy2 = __tsover_sub(q3.y, q2.y);\n\tconst dy3 = __tsover_sub(__tsover_add(__tsover_sub(q0.y, q1.y), q2.y), q3.y);\n\tconst denA = __tsover_sub(__tsover_mul(dx1, dy2), __tsover_mul(dx2, dy1));\n\tconst a13 = cornerPinSafeDiv(__tsover_sub(__tsover_mul(dx3, dy2), __tsover_mul(dx2, dy3)), denA);\n\tconst a23 = cornerPinSafeDiv(__tsover_sub(__tsover_mul(dx1, dy3), __tsover_mul(dx3, dy1)), denA);\n\tconst a11 = __tsover_add(__tsover_sub(q1.x, q0.x), __tsover_mul(a13, q1.x));\n\tconst a21 = __tsover_add(__tsover_sub(q3.x, q0.x), __tsover_mul(a23, q3.x));\n\tconst a31 = q0.x;\n\tconst a12 = __tsover_add(__tsover_sub(q1.y, q0.y), __tsover_mul(a13, q1.y));\n\tconst a22 = __tsover_add(__tsover_sub(q3.y, q0.y), __tsover_mul(a23, q3.y));\n\tconst a32 = q0.y;\n\tconst c00 = __tsover_sub(a22, __tsover_mul(a32, a23));\n\tconst c10 = __tsover_mul(__tsover_sub(a21, __tsover_mul(a31, a23)), -1);\n\tconst c20 = __tsover_sub(__tsover_mul(a21, a32), __tsover_mul(a31, a22));\n\tconst c01 = __tsover_mul(__tsover_sub(a12, __tsover_mul(a32, a13)), -1);\n\tconst c11 = __tsover_sub(a11, __tsover_mul(a31, a13));\n\tconst c21 = __tsover_mul(__tsover_sub(__tsover_mul(a11, a32), __tsover_mul(a31, a12)), -1);\n\tconst c02 = __tsover_sub(__tsover_mul(a12, a23), __tsover_mul(a22, a13));\n\tconst c12 = __tsover_mul(__tsover_sub(__tsover_mul(a11, a23), __tsover_mul(a21, a13)), -1);\n\tconst c22 = __tsover_sub(__tsover_mul(a11, a22), __tsover_mul(a21, a12));\n\tconst px = coord.x;\n\tconst py = coord.y;\n\tconst den = __tsover_add(__tsover_add(__tsover_mul(c02, px), __tsover_mul(c12, py)), c22);\n\tconst su = cornerPinSafeDiv(__tsover_add(__tsover_add(__tsover_mul(c00, px), __tsover_mul(c10, py)), c20), den);\n\tconst sv = cornerPinSafeDiv(__tsover_add(__tsover_add(__tsover_mul(c01, px), __tsover_mul(c11, py)), c21), den);\n\tconst det = __tsover_add(__tsover_add(__tsover_mul(a11, c00), __tsover_mul(a21, c01)), __tsover_mul(a31, c02));\n\treturn vec3f(su, sv, step(f32(0), __tsover_mul(den, det)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"coord\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c3\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"amt\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"amount\", \"amount\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c0\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c0\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"amt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], [5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c1\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c1\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"amt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c2\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c2\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"amt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0\"], [5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c3\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c3\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"amt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerConvexify\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"r0\",\n\t\t\t\t\t\t\"r1\",\n\t\t\t\t\t\t\"r3\",\n\t\t\t\t\t\t\"r2\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerConvexify\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"r1\",\n\t\t\t\t\t\t\"r0\",\n\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\"r3\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerConvexify\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\"r1\",\n\t\t\t\t\t\t\"r3\",\n\t\t\t\t\t\t\"r0\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerConvexify\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"r3\",\n\t\t\t\t\t\t\"r0\",\n\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\"r1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q2\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q2\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q2\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q2\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q2\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q2\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"denA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dy2\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx2\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dy1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a13\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerPinSafeDiv\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx3\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy2\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy3\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"denA\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a23\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerPinSafeDiv\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy3\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx3\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy1\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"denA\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a11\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a13\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a21\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a23\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a31\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"q0\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a12\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a13\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q1\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a22\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q0\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a23\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q3\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a32\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"q0\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c00\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a22\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a32\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a23\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c10\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a21\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a31\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a23\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c20\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a21\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a32\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a31\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a22\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c01\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a12\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a32\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a13\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c11\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"a11\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a31\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a13\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c21\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a11\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a32\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a31\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a12\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c02\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a12\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a23\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a22\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a13\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c12\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a11\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a23\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a21\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"a13\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c22\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a11\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a22\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a21\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"a12\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"px\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"coord\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"py\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"coord\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"den\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"c02\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"c12\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"c22\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"su\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerPinSafeDiv\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"c00\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"c10\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"c20\"\n\t\t\t\t\t], \"den\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cornerPinSafeDiv\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"c01\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"px\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"c11\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"py\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"c21\"\n\t\t\t\t\t], \"den\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"det\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a11\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"c00\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"a21\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"c01\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"a31\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c02\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"front\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"den\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"det\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"su\",\n\t\t\t\t\t\"sv\",\n\t\t\t\t\t\"front\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"cornerConvexify\": () =\u003e cornerConvexify,\n\t\t\"cornerPinSafeDiv\": () =\u003e cornerPinSafeDiv,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst perspectiveUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, pan, tilt, fov, zoom, offset, uv) =\u003e {\n\t\"use gpu\";\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst x = __tsover_div(__tsover_sub(uv.x, centerPos.x), zoom);\n\tconst y = __tsover_div(__tsover_sub(uv.y, centerPos.y), zoom);\n\tconst panRad = __tsover_mul(pan, DEG_TO_RAD);\n\tconst tiltRad = __tsover_mul(tilt, DEG_TO_RAD);\n\tconst fovRad = __tsover_mul(fov, DEG_TO_RAD);\n\tconst cosPan = cos(panRad);\n\tconst sinPan = sin(panRad);\n\tconst cosTilt = cos(tiltRad);\n\tconst sinTilt = sin(tiltRad);\n\tconst perspectiveFactor = __tsover_mul(tan(__tsover_mul(fovRad, .5)), 2);\n\tconst safePanDivisor = max(__tsover_add(cosPan, __tsover_mul(__tsover_mul(sinPan, x), perspectiveFactor)), .001);\n\tconst afterPanX = __tsover_div(x, safePanDivisor);\n\tconst afterPanY = __tsover_div(__tsover_mul(y, cosPan), safePanDivisor);\n\tconst safeTiltDivisor = max(__tsover_add(cosTilt, __tsover_mul(__tsover_mul(sinTilt, afterPanY), perspectiveFactor)), .001);\n\tconst finalX = __tsover_div(__tsover_mul(afterPanX, cosTilt), safeTiltDivisor);\n\tconst finalY = __tsover_div(afterPanY, safeTiltDivisor);\n\tconst offsetPos = vec2f(offset.x, __tsover_sub(1, offset.y));\n\treturn vec2f(finalX, finalY).add(centerPos).sub(offsetPos).add(vec2f(.5, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pan\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tilt\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fov\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"zoom\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"zoom\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"zoom\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"panRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"pan\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tiltRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"tilt\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fovRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"fov\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosPan\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"panRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinPan\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"panRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosTilt\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"tiltRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinTilt\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"tiltRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perspectiveFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.tan\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fovRad\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"panDivisor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cosPan\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sinPan\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"perspectiveFactor\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safePanDivisor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"panDivisor\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"afterPanX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"x\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safePanDivisor\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"afterPanY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"y\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosPan\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safePanDivisor\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tiltDivisor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cosTilt\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sinTilt\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"afterPanY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"perspectiveFactor\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"safeTiltDivisor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"tiltDivisor\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"afterPanX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosTilt\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safeTiltDivisor\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"afterPanY\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"safeTiltDivisor\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offsetPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[\"finalX\", \"finalY\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"offsetPos\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.tan\": () =\u003e tan,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst csRotateUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, center, angle) =\u003e {\n\t\"use gpu\";\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst dx = __tsover_mul(__tsover_sub(uv.x, centerPos.x), aspect);\n\tconst dy = __tsover_sub(uv.y, centerPos.y);\n\tconst cosA = cos(angle);\n\tconst sinA = sin(angle);\n\tconst rotX = __tsover_sub(__tsover_mul(dx, cosA), __tsover_mul(dy, sinA));\n\tconst rotY = __tsover_add(__tsover_mul(dx, sinA), __tsover_mul(dy, cosA));\n\treturn vec2f(__tsover_add(__tsover_div(rotX, aspect), centerPos.x), __tsover_add(rotY, centerPos.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst concentricSpinUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, intensity, rings, smoothness, seed, speedRandomness, animTime, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst dist = length(vec2f(__tsover_mul(__tsover_sub(uv.x, centerPos.x), aspect), __tsover_sub(uv.y, centerPos.y)));\n\tconst ringCoord = __tsover_mul(dist, rings);\n\tconst ringIndex = floor(ringCoord);\n\tconst ringFrac = fract(ringCoord);\n\tconst maxAngle = __tsover_mul(intensity, DEG_TO_RAD);\n\tconst seedOffset = __tsover_mul(seed, .137);\n\tconst staticA = __tsover_mul(legacySinHash11(__tsover_add(ringIndex, seedOffset)), maxAngle);\n\tconst staticB = __tsover_mul(legacySinHash11(__tsover_add(__tsover_add(ringIndex, 1), seedOffset)), maxAngle);\n\tconst ringSpeedA = mix(1, legacySinHash11(__tsover_add(ringIndex, 42.7)), speedRandomness);\n\tconst ringSpeedB = mix(1, legacySinHash11(__tsover_add(__tsover_add(ringIndex, 1), 42.7)), speedRandomness);\n\tconst animA = __tsover_mul(__tsover_mul(animTime, .25), ringSpeedA);\n\tconst animB = __tsover_mul(__tsover_mul(animTime, .25), ringSpeedB);\n\tconst totalA = __tsover_add(staticA, animA);\n\tconst totalB = __tsover_add(staticB, animB);\n\tconst wrapArg = __tsover_add(__tsover_sub(totalB, totalA), PI);\n\tconst diff = __tsover_sub(__tsover_sub(wrapArg, __tsover_mul(TAU, floor(__tsover_div(wrapArg, TAU)))), PI);\n\tconst halfEdge = __tsover_add(__tsover_mul(smoothness, .5), .001);\n\tconst blend = smoothstep(__tsover_sub(.5, halfEdge), __tsover_add(.5, halfEdge), ringFrac);\n\treturn csRotateUV(uv, aspect, center, __tsover_add(totalA, __tsover_mul(diff, blend)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rings\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"smoothness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speedRandomness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"dx\", \"dy\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringCoord\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dist\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"rings\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringIndex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"ringCoord\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringFrac\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"ringCoord\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seedOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.137\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"staticA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"legacySinHash11\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ringIndex\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"seedOffset\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"maxAngle\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"staticB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"legacySinHash11\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ringIndex\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"seedOffset\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"maxAngle\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringSpeedA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"legacySinHash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ringIndex\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"42.7\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"speedRandomness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringSpeedB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"legacySinHash11\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ringIndex\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"42.7\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"speedRandomness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"animA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"ringSpeedA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"animB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"ringSpeedB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"staticA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"animA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"staticB\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"animB\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wrapArg\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"totalB\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"totalA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diff\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wrapArg\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"TAU\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"wrapArg\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfEdge\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"smoothness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blend\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"halfEdge\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"halfEdge\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"ringFrac\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"totalA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"diff\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"blend\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"csRotateUV\",\n\t\t\t\t[\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"center\",\n\t\t\t\t\t\"angle\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"legacySinHash11\": () =\u003e legacySinHash11,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"PI\": () =\u003e PI,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"csRotateUV\": () =\u003e csRotateUV\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flowFieldUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, scale, strength, time, evolutionTime) =\u003e {\n\t\"use gpu\";\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst drift1 = __tsover_mul(time, .7);\n\tconst evolve1 = __tsover_mul(evolutionTime, .2);\n\tconst angle1 = __tsover_mul(mxNoiseFloat3(vec3f(__tsover_add(__tsover_mul(aspectCorrectedUV.x, scale), __tsover_mul(drift1, .3)), __tsover_add(__tsover_mul(aspectCorrectedUV.y, scale), __tsover_mul(drift1, .5)), evolve1)), TWO_PI);\n\tconst flow1 = vec2f(cos(angle1), sin(angle1));\n\tconst drift2 = __tsover_mul(time, .5);\n\tconst evolve2 = __tsover_mul(evolutionTime, .15);\n\tconst angle2 = __tsover_mul(mxNoiseFloat3(vec3f(__tsover_add(__tsover_add(__tsover_mul(aspectCorrectedUV.x, __tsover_mul(scale, 2.3)), __tsover_mul(drift2, -.4)), 173.5), __tsover_add(__tsover_add(__tsover_mul(aspectCorrectedUV.y, __tsover_mul(scale, 2.3)), __tsover_mul(drift2, .3)), 291.7), __tsover_add(evolve2, 50))), TWO_PI);\n\tconst flow2 = vec2f(cos(angle2), sin(angle2));\n\tconst drift3 = __tsover_mul(time, .3);\n\tconst evolve3 = __tsover_mul(evolutionTime, .1);\n\tconst angle3 = __tsover_mul(mxNoiseFloat3(vec3f(__tsover_add(__tsover_add(__tsover_mul(aspectCorrectedUV.x, __tsover_mul(scale, 4.7)), __tsover_mul(drift3, .2)), 527.3), __tsover_add(__tsover_add(__tsover_mul(aspectCorrectedUV.y, __tsover_mul(scale, 4.7)), __tsover_mul(drift3, -.6)), 839.1), __tsover_add(evolve3, 100))), TWO_PI);\n\tconst flow3 = vec2f(cos(angle3), sin(angle3));\n\tconst combinedFlow = flow1.add(flow2.mul(.5)).add(flow3.mul(.25));\n\tconst flowLength = max(length(combinedFlow), .001);\n\tconst normalizedFlow = combinedFlow.div(flowLength);\n\tconst finalFlow = vec2f(__tsover_div(__tsover_mul(normalizedFlow.x, strength), aspect), __tsover_mul(normalizedFlow.y, strength));\n\treturn vec2f(__tsover_add(uv.x, finalFlow.x), __tsover_add(uv.y, finalFlow.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"evolutionTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"drift1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evolve1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"evolutionTime\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxNoiseFloat3\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"drift1\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"drift1\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"evolve1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flow1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angle1\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angle1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"drift2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evolve2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"evolutionTime\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxNoiseFloat3\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"drift2\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"173.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"drift2\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"291.7\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"evolve2\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"50\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flow2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angle2\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angle2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"drift3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"evolve3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"evolutionTime\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxNoiseFloat3\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"4.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"drift3\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"527.3\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"4.7\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"drift3\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"839.1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"evolve3\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"100\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flow3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angle3\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angle3\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"combinedFlow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"flow1\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"flow2\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"flow3\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"0.25\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowLength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"combinedFlow\"]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedFlow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"combinedFlow\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"flowLength\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalFlow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"normalizedFlow\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"normalizedFlow\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalFlow\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalFlow\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"mxNoiseFloat3\": () =\u003e mxNoiseFloat3,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sliceWipeUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angleDeg, sliceCount, progress) =\u003e {\n\t\"use gpu\";\n\tconst a = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst dir = vec2f(cos(a), sin(a));\n\tconst p = vec2f(__tsover_mul(__tsover_sub(uv.x, .5), aspect), __tsover_sub(uv.y, .5));\n\tconst grad = dot(p, dir);\n\tconst ext = __tsover_mul(.5, __tsover_add(__tsover_mul(aspect, abs(dir.x)), abs(dir.y)));\n\tconst t = __tsover_add(__tsover_div(grad, __tsover_mul(2, ext)), .5);\n\tconst idx = floor(__tsover_mul(t, max(sliceCount, 1)));\n\tconst sign$1 = __tsover_sub(__tsover_mul(fract(__tsover_mul(idx, .5)), 4), 1);\n\tconst perp = vec2f(-dir.y, dir.x);\n\tconst extPerp = __tsover_mul(.5, __tsover_add(__tsover_mul(aspect, abs(dir.y)), abs(dir.x)));\n\tconst slide = __tsover_mul(__tsover_mul(progress, __tsover_mul(2.02, extPerp)), sign$1);\n\tconst q = p.add(perp.mul(slide));\n\treturn vec2f(__tsover_add(__tsover_div(q.x, aspect), .5), __tsover_add(q.y, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sliceCount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"progress\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grad\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", \"dir\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ext\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"grad\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ext\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"idx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"sliceCount\", [5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sign\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"extPerp\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slide\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"progress\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2.02\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"extPerp\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"sign\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"q\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"perp\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"slide\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"q\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.fract\": () =\u003e fract\n\t}\n}) \u0026\u0026 $.f)({}));\nconst barSampleUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angle, offset) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst au = __tsover_mul(uv.x, aspect);\n\tconst av = uv.y;\n\tconst cu = __tsover_sub(au, __tsover_mul(aspect, .5));\n\tconst cv = __tsover_sub(av, .5);\n\tconst projectedU = __tsover_add(__tsover_mul(cu, cosA), __tsover_mul(cv, sinA));\n\tconst projectedV = __tsover_add(__tsover_mul(__tsover_mul(cu, sinA), -1), __tsover_mul(cv, cosA));\n\tconst distPV = __tsover_add(projectedV, offset);\n\tconst dcu = __tsover_sub(__tsover_mul(projectedU, cosA), __tsover_mul(distPV, sinA));\n\tconst dcv = __tsover_add(__tsover_mul(projectedU, sinA), __tsover_mul(distPV, cosA));\n\treturn vec2f(__tsover_add(__tsover_div(dcu, aspect), .5), __tsover_add(dcv, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"offset\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"au\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"av\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cu\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"au\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cv\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"av\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"projectedU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"projectedV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distPV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"projectedV\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"offset\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dcu\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"projectedU\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"distPV\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dcv\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"projectedU\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"distPV\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dcu\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"dcv\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst barShiftUV = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((count, angle, intensity, seed, animTime, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst cosA = cos(angleRad);\n\tconst sinA = sin(angleRad);\n\tconst longestAxis = max(aspect, 1);\n\tconst au = __tsover_mul(uv.x, aspect);\n\tconst av = uv.y;\n\tconst cu = __tsover_sub(au, __tsover_mul(aspect, .5));\n\tconst cv = __tsover_sub(av, .5);\n\tconst projectedU = __tsover_add(__tsover_mul(cu, cosA), __tsover_mul(cv, sinA));\n\tconst barIndex = floor(__tsover_div(__tsover_mul(projectedU, count), longestAxis));\n\tconst seedOffset = __tsover_mul(seed, .137);\n\tconst staticOffset = legacySinHash11(__tsover_add(barIndex, seedOffset));\n\tconst barSpeed = legacySinHash11(__tsover_add(__tsover_add(barIndex, seedOffset), 42.7));\n\tconst animOffset = __tsover_mul(__tsover_mul(animTime, barSpeed), .2);\n\treturn barSampleUV(uv, aspect, angle, __tsover_mul(__tsover_add(staticOffset, animOffset), intensity));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"count\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"longestAxis\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"aspect\", [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"au\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"av\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cu\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"au\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cv\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"av\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"projectedU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barCoord\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"projectedU\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"count\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"longestAxis\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barIndex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"barCoord\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seedOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"seed\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.137\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"staticOffset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"legacySinHash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"barIndex\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"seedOffset\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barSpeed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"legacySinHash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"barIndex\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"seedOffset\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"42.7\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"animOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"barSpeed\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"staticOffset\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"animOffset\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"intensity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"barSampleUV\",\n\t\t\t\t[\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"offset\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"legacySinHash11\": () =\u003e legacySinHash11,\n\t\t\"barSampleUV\": () =\u003e barSampleUV\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gridCellSnap = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, gridSize, aspect) =\u003e {\n\t\"use gpu\";\n\tconst isWide = aspect \u003e 1;\n\tconst cellsX = max(select(__tsover_mul(gridSize, aspect), gridSize, isWide), 1);\n\tconst cellsY = max(select(gridSize, __tsover_div(gridSize, aspect), isWide), 1);\n\tconst cellIndexX = floor(__tsover_mul(uv.x, cellsX));\n\tconst cellIndexY = floor(__tsover_mul(uv.y, cellsY));\n\treturn vec2f(__tsover_div(__tsover_add(cellIndexX, .5), cellsX), __tsover_div(__tsover_add(cellIndexY, .5), cellsY));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gridSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isWide\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellsX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gridSize\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"gridSize\",\n\t\t\t\t\t\t\t\"isWide\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellsY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"gridSize\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gridSize\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isWide\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellIndexX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cellsX\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellIndexY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cellsY\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellIndexX\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"cellsX\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cellIndexY\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"cellsY\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst gridDistortOffsetUV = typegpu_default.fn([vec2f, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, disp) =\u003e {\n\t\"use gpu\";\n\tconst maxDisp = .1;\n\tconst clamped = clamp(disp, vec2f(-maxDisp, -maxDisp), vec2f(maxDisp, maxDisp));\n\treturn uv.sub(clamped);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"disp\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxDisp\",\n\t\t\t\t[5, \"0.1\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"disp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"maxDisp\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"maxDisp\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"maxDisp\", \"maxDisp\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"sub\"\n\t\t\t\t],\n\t\t\t\t[\"clamped\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst liquifyOffsetUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, disp, intensity) =\u003e {\n\t\"use gpu\";\n\tconst scaled = disp.mul(__tsover_mul(intensity, .1));\n\tconst maxDisp = .15;\n\tconst clamped = clamp(scaled, vec2f(-maxDisp, -maxDisp), vec2f(maxDisp, maxDisp));\n\treturn uv.sub(clamped);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"disp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaled\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"disp\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxDisp\",\n\t\t\t\t[5, \"0.15\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"scaled\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"maxDisp\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"maxDisp\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"maxDisp\", \"maxDisp\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"sub\"\n\t\t\t\t],\n\t\t\t\t[\"clamped\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst dmDisplaceRG = typegpu_default.fn([\n\tvec2f,\n\tvec4f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, src, aspect, amount) =\u003e {\n\t\"use gpu\";\n\tconst a = max(src.w, 1e-4);\n\tconst dx = __tsover_div(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(__tsover_div(src.x, a), .5), 2), src.w), amount), aspect);\n\tconst dy = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(__tsover_div(src.y, a), .5), 2), src.w), amount);\n\treturn vec2f(__tsover_add(uv.x, dx), __tsover_add(uv.y, dy));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"src\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"amount\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"amount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"dx\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"dy\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst dmDisplaceLuminance = typegpu_default.fn([\n\tvec2f,\n\tvec4f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, src, aspect, amount, angleDeg) =\u003e {\n\t\"use gpu\";\n\tconst a = max(src.w, 1e-4);\n\tconst lum = dot(vec3f(__tsover_div(src.x, a), __tsover_div(src.y, a), __tsover_div(src.z, a)), vec3f(.2126, .7152, .0722));\n\tconst scalar = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(lum, .5), 2), src.w), amount);\n\tconst angleRad = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst dx = __tsover_div(__tsover_mul(scalar, cos(angleRad)), aspect);\n\tconst dy = __tsover_mul(scalar, sin(angleRad));\n\treturn vec2f(__tsover_add(uv.x, dx), __tsover_add(uv.y, dy));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"src\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scalar\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lum\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"src\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"amount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"scalar\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"scalar\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"dx\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"dy\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst FlutedGeom = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\trefractedUV: vec2f,\n\tchrOff: vec2f,\n\tslope: f32\n}), \"FlutedGeom\");\nconst flutedGlassGeom = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec3f\n], FlutedGeom)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, t, angleDeg, frequency, softness, waveAmp, waveFreq, refraction, aberration, shapeParams) =\u003e {\n\t\"use gpu\";\n\tconst expHi = shapeParams.x;\n\tconst expLo = shapeParams.y;\n\tconst wavesFlag = shapeParams.z;\n\tconst r = __tsover_div(__tsover_mul(angleDeg, PI), 180);\n\tconst cosA = cos(r);\n\tconst sinA = sin(r);\n\tconst aspCorr = vec2f(__tsover_mul(__tsover_sub(uv.x, .5), aspect), __tsover_sub(uv.y, .5));\n\tconst u = __tsover_add(__tsover_mul(aspCorr.x, cosA), __tsover_mul(aspCorr.y, sinA));\n\tconst v = __tsover_add(__tsover_mul(-aspCorr.x, sinA), __tsover_mul(aspCorr.y, cosA));\n\tconst waveTerm = __tsover_mul(sin(__tsover_add(__tsover_mul(__tsover_mul(v, waveFreq), __tsover_mul(PI, 2)), __tsover_mul(t, 2))), waveAmp);\n\tconst fluteU = __tsover_add(u, __tsover_mul(wavesFlag, waveTerm));\n\tconst flutePos = __tsover_add(__tsover_mul(fluteU, frequency), t);\n\tconst cellPos = __tsover_mul(__tsover_sub(fract(flutePos), .5), 2);\n\tconst absCell = max(abs(cellPos), 1e-4);\n\tconst exponent = mix(expHi, expLo, softness);\n\tconst slope = __tsover_mul(sign(cellPos), pow(absCell, exponent));\n\tconst halfCell = __tsover_div(.5, max(frequency, .001));\n\tconst refrU = -__tsover_mul(__tsover_mul(slope, refraction), halfCell);\n\tconst refractedUV = vec2f(__tsover_add(uv.x, __tsover_div(__tsover_mul(refrU, cosA), aspect)), __tsover_add(uv.y, __tsover_mul(refrU, sinA)));\n\tconst chrU = __tsover_mul(__tsover_mul(refrU, aberration), .5);\n\treturn FlutedGeom({\n\t\trefractedUV,\n\t\tchrOff: vec2f(__tsover_div(__tsover_mul(chrU, cosA), aspect), __tsover_mul(chrU, sinA)),\n\t\tslope\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"waveAmp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"waveFreq\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"refraction\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aberration\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shapeParams\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"expHi\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"shapeParams\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"expLo\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"shapeParams\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wavesFlag\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"shapeParams\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"PI\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"180\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"r\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"r\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspCorr\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspCorr\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspCorr\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"aspCorr\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspCorr\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"waveTerm\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"waveFreq\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"PI\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"waveAmp\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fluteU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wavesFlag\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"waveTerm\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flutePos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fluteU\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"frequency\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellPos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[\"flutePos\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"absCell\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"cellPos\"]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"exponent\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"expHi\",\n\t\t\t\t\t\t\"expLo\",\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slope\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sign\",\n\t\t\t\t\t\t[\"cellPos\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[\"absCell\", \"exponent\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfCell\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"frequency\", [5, \"0.001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"refrU\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"slope\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"refraction\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"halfCell\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"refractedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"refrU\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"refrU\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chrU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"refrU\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aberration\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chrOff\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"chrU\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"chrU\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"FlutedGeom\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"refractedUV\": \"refractedUV\",\n\t\t\t\t\t\"chrOff\": \"chrOff\",\n\t\t\t\t\t\"slope\": \"slope\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"PI\": () =\u003e PI,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.sign\": () =\u003e sign,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"FlutedGeom\": () =\u003e FlutedGeom\n\t}\n}) \u0026\u0026 $.f)({}));\nconst blinnHighlight = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((slope, lightAngleDeg, intensity, softness) =\u003e {\n\t\"use gpu\";\n\tconst slopeSq = min(__tsover_mul(slope, slope), 1);\n\tconst nz = sqrt(__tsover_sub(1, slopeSq));\n\tconst half = __tsover_div(__tsover_mul(lightAngleDeg, PI), 360);\n\tconst hx = sin(half);\n\tconst hy = cos(half);\n\tconst nDotH = max(__tsover_add(__tsover_mul(slope, hx), __tsover_mul(nz, hy)), 0);\n\tconst shininess = exp2(__tsover_sub(8, __tsover_mul(softness, 7)));\n\tconst fresnel = pow(__tsover_sub(1, nz), 5);\n\tconst fresnelMix = __tsover_add(.04, __tsover_mul(.96, fresnel));\n\treturn __tsover_mul(__tsover_mul(pow(nDotH, shininess), fresnelMix), intensity);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"slope\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slopeSq\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"slope\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"slope\"\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nz\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"slopeSq\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"half\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngleDeg\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"PI\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"360\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"half\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"half\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nDotH\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"slope\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"hx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nz\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"hy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shininess\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnel\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"nz\"\n\t\t\t\t\t], [5, \"5\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnelMix\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.04\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.96\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fresnel\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[\"nDotH\", \"shininess\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"fresnelMix\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"intensity\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"PI\": () =\u003e PI,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.exp2\": () =\u003e exp2,\n\t\t\"std.pow\": () =\u003e pow\n\t}\n}) \u0026\u0026 $.f)({}));\nconst PagePeelGeom = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcurlUV: vec2f,\n\ttheta: f32,\n\tdistPastCrease: f32,\n\tdistIntoPeel: f32,\n\tflatReach: f32,\n\tpeelReach: f32,\n\tfoldBlend: f32,\n\tshowCurl: f32\n}), \"PagePeelGeom\");\nconst pagePeelGeom = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], PagePeelGeom)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, cornerX, cornerY, oppX, oppY, amount, radius) =\u003e {\n\t\"use gpu\";\n\tconst pA = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst cornerA = vec2f(__tsover_mul(cornerX, aspect), cornerY);\n\tconst axisVec = vec2f(__tsover_mul(oppX, aspect), oppY).sub(cornerA);\n\tconst L = length(axisVec);\n\tconst axis = axisVec.mul(__tsover_div(1, L));\n\tconst t = dot(pA.sub(cornerA), axis);\n\tconst peel = __tsover_mul(amount, L);\n\tconst cFold = peel;\n\tconst R = max(__tsover_mul(radius, L), 1e-4);\n\tconst thetaMax = __tsover_div(peel, R);\n\tconst X = __tsover_div(__tsover_sub(t, cFold), R);\n\tconst theta = asin(clamp(X, 0, 1));\n\tconst inBand = __tsover_mul(step(0, X), step(X, 1));\n\tconst paper = step(theta, thetaMax);\n\tconst cCurl = __tsover_sub(peel, __tsover_mul(R, theta));\n\tconst sourceA = pA.add(axis.mul(__tsover_sub(cCurl, t)));\n\tconst curlUV = vec2f(__tsover_div(sourceA.x, aspect), sourceA.y);\n\tconst curlInBounds = __tsover_mul(__tsover_mul(__tsover_mul(step(0, curlUV.x), step(curlUV.x, 1)), step(0, curlUV.y)), step(curlUV.y, 1));\n\tconst liftFrac = __tsover_sub(1, cos(clamp(thetaMax, 0, HALF_PI)));\n\tconst lipHeight = __tsover_mul(R, liftFrac);\n\tconst flatReach = max(__tsover_add(R, __tsover_mul(lipHeight, .5)), 1e-4);\n\tconst distPastCrease = __tsover_sub(t, cFold);\n\tconst peelReach = max(__tsover_mul(lipHeight, 2.5), 1e-4);\n\treturn PagePeelGeom({\n\t\tcurlUV,\n\t\ttheta,\n\t\tdistPastCrease,\n\t\tdistIntoPeel: __tsover_sub(cFold, t),\n\t\tflatReach,\n\t\tpeelReach,\n\t\tfoldBlend: smoothstep(__tsover_sub(cFold, .0015), __tsover_add(cFold, .0015), t),\n\t\tshowCurl: __tsover_mul(__tsover_mul(inBand, paper), curlInBounds)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cornerX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cornerY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oppX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oppY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cornerA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cornerX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], \"cornerY\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oppA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"oppX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], \"oppY\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axisVec\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"oppA\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"cornerA\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"axisVec\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axis\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"axisVec\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"L\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pA\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"cornerA\"]\n\t\t\t\t\t], \"axis\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"peel\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"amount\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"L\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cFold\",\n\t\t\t\t\"peel\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"R\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"L\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thetaMax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"peel\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"R\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"X\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"cFold\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"R\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"Xc\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"X\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"theta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.asin\",\n\t\t\t\t\t[\"Xc\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inBand\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[5, \"0\"], \"X\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[\"X\", [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"paper\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[\"theta\", \"thetaMax\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cCurl\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"peel\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"R\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"theta\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sourceA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"pA\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cCurl\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"curlUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sourceA\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sourceA\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"curlInBounds\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t[[5, \"0\"], [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"curlUV\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"curlUV\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[[5, \"0\"], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"curlUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"curlUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"liftFrac\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"thetaMax\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"HALF_PI\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lipHeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"R\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"liftFrac\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flatReach\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"R\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lipHeight\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distPastCrease\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cFold\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"peelReach\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lipHeight\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distIntoPeel\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cFold\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"foldBlend\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cFold\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.0015\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cFold\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.0015\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"showCurl\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"inBand\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"paper\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"curlInBounds\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"PagePeelGeom\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"curlUV\": \"curlUV\",\n\t\t\t\t\t\"theta\": \"theta\",\n\t\t\t\t\t\"distPastCrease\": \"distPastCrease\",\n\t\t\t\t\t\"distIntoPeel\": \"distIntoPeel\",\n\t\t\t\t\t\"flatReach\": \"flatReach\",\n\t\t\t\t\t\"peelReach\": \"peelReach\",\n\t\t\t\t\t\"foldBlend\": \"foldBlend\",\n\t\t\t\t\t\"showCurl\": \"showCurl\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.asin\": () =\u003e asin,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"HALF_PI\": () =\u003e HALF_PI,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"PagePeelGeom\": () =\u003e PagePeelGeom\n\t}\n}) \u0026\u0026 $.f)({}));\nconst curlShade = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((theta, shading) =\u003e {\n\t\"use gpu\";\n\tconst facing = cos(theta);\n\treturn __tsover_sub(1, __tsover_mul(shading, facing));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"theta\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"shading\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"facing\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.cos\",\n\t\t\t\t[\"theta\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"shading\",\n\t\t\t\t\"*\",\n\t\t\t\t\"facing\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.cos\": () =\u003e cos }\n}) \u0026\u0026 $.f)({}));\nconst curlSheen = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((theta, intensity, softness) =\u003e {\n\t\"use gpu\";\n\tconst thetaN = __tsover_div(theta, HALF_PI);\n\tconst specSigma = mix(.05, .4, softness);\n\tconst specDelta = __tsover_div(__tsover_sub(thetaN, .65), specSigma);\n\treturn __tsover_mul(exp(__tsover_mul(__tsover_mul(specDelta, specDelta), -.5)), intensity);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"theta\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thetaN\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"theta\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"HALF_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"specSigma\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t[5, \"0.4\"],\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"specDelta\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thetaN\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.65\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"specSigma\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"specDelta\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"specDelta\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"intensity\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"HALF_PI\": () =\u003e HALF_PI,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.exp\": () =\u003e exp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst liftShadowStrength = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((amount) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(smoothstep(0, .04, amount), pow(__tsover_sub(1, amount), .7));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"amount\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"0.04\"],\n\t\t\t\t\t\"amount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.pow\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"amount\"\n\t\t\t\t], [5, \"0.7\"]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.pow\": () =\u003e pow\n\t}\n}) \u0026\u0026 $.f)({}));\nconst shadowFalloff = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, reach, exponent) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(pow(__tsover_sub(1, smoothstep(0, reach, dist)), exponent), step(0, dist));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"reach\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"exponent\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.pow\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t], \"exponent\"]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.step\",\n\t\t\t\t[[5, \"0\"], \"dist\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.step\": () =\u003e step\n\t}\n}) \u0026\u0026 $.f)({}));\nconst overhangShade = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, reach, amount, shadow) =\u003e {\n\t\"use gpu\";\n\tconst fall = __tsover_mul(shadowFalloff(dist, reach, 2), liftShadowStrength(amount));\n\treturn __tsover_sub(1, __tsover_mul(__tsover_mul(shadow, fall), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"reach\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shadow\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"fall\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"shadowFalloff\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"liftShadowStrength\",\n\t\t\t\t\t[\"amount\"]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"shadow\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"fall\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"shadowFalloff\": () =\u003e shadowFalloff,\n\t\t\"liftShadowStrength\": () =\u003e liftShadowStrength\n\t}\n}) \u0026\u0026 $.f)({}));\nconst revealShadow = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dist, reach, amount, shadow) =\u003e {\n\t\"use gpu\";\n\tconst fall = __tsover_mul(__tsover_mul(shadowFalloff(dist, reach, 1.5), liftShadowStrength(amount)), shadow);\n\treturn __tsover_mul(fall, .6);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"reach\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shadow\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"fall\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"shadowFalloff\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\"reach\",\n\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"liftShadowStrength\",\n\t\t\t\t\t\t[\"amount\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"shadow\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t\"fall\",\n\t\t\t\"*\",\n\t\t\t[5, \"0.6\"]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"shadowFalloff\": () =\u003e shadowFalloff,\n\t\t\"liftShadowStrength\": () =\u003e liftShadowStrength\n\t}\n}) \u0026\u0026 $.f)({}));\nconst pagePeelCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((curlSample, flatSample, curlBright, spec, flatShade, peelAlpha, foldBlend, showCurl) =\u003e {\n\t\"use gpu\";\n\tconst curlColor = vec4f(curlSample.xyz.mul(curlBright).add(__tsover_mul(spec, curlSample.w)), curlSample.w);\n\tconst flatColor = vec4f(flatSample.xyz.mul(flatShade), flatSample.w);\n\treturn select(mix(vec4f(0, 0, 0, peelAlpha), flatColor, vec4f(foldBlend)), curlColor, showCurl \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"curlSample\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flatSample\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"curlBright\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spec\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flatShade\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"peelAlpha\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"foldBlend\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"showCurl\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"litRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"curlSample\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"curlBright\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"spec\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"curlSample\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"curlColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\"litRgb\", [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"curlSample\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flatColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"flatSample\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"flatShade\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"flatSample\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"peeledColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\"peelAlpha\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"base\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"peeledColor\",\n\t\t\t\t\t\t\"flatColor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\"foldBlend\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"base\",\n\t\t\t\t\t\"curlColor\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"showCurl\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst SphereBulge = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tuv: vec2f,\n\tcoverage: f32,\n\tnormal: vec3f\n}), \"SphereBulge\");\nconst sphereBulge = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], SphereBulge)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, center, radius, depth) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(viewport.x, viewport.y);\n\tconst centerX = center.x;\n\tconst centerY = __tsover_sub(1, center.y);\n\tconst cuX = __tsover_mul(__tsover_sub(uv.x, centerX), aspect);\n\tconst cuY = __tsover_sub(uv.y, centerY);\n\tconst sphereX = __tsover_div(__tsover_mul(cuX, 2), radius);\n\tconst sphereY = __tsover_div(__tsover_mul(cuY, 2), radius);\n\tconst radiusSq = __tsover_add(__tsover_mul(sphereX, sphereX), __tsover_mul(sphereY, sphereY));\n\tconst sphereAlpha = __tsover_sub(1, smoothstep(.98, 1, radiusSq));\n\tconst z = sqrt(max(f32(0), __tsover_sub(1, radiusSq)));\n\tconst depthFactor = __tsover_add(1, __tsover_mul(z, depth));\n\tconst finalX = __tsover_div(__tsover_mul(__tsover_div(sphereX, depthFactor), radius), 2);\n\tconst finalY = __tsover_div(__tsover_mul(__tsover_div(sphereY, depthFactor), radius), 2);\n\tconst transformedX = __tsover_add(__tsover_div(finalX, aspect), centerX);\n\tconst transformedY = __tsover_add(finalY, centerY);\n\tconst normal = normalize(vec3f(sphereX, sphereY, z));\n\treturn SphereBulge({\n\t\tuv: vec2f(transformedX, transformedY),\n\t\tcoverage: sphereAlpha,\n\t\tnormal\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"radius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"depth\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerX\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"center\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cuX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cuY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sphereX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cuX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sphereY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cuY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"radius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"radiusSq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sphereX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sphereX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sphereY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sphereY\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sphereAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.98\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"radiusSq\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"z\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"radiusSq\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"depthFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"z\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"depth\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sphereX\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"depthFactor\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sphereY\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"depthFactor\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"transformedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"finalX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"transformedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"finalY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"sphereX\",\n\t\t\t\t\t\t\t\"sphereY\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"SphereBulge\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"uv\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"transformedX\", \"transformedY\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"coverage\": \"sphereAlpha\",\n\t\t\t\t\t\"normal\": \"normal\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"SphereBulge\": () =\u003e SphereBulge,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rimLight = typegpu_default.fn([\n\tvec3f,\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((normal, lightPos, intensity, softness) =\u003e {\n\t\"use gpu\";\n\tconst viewDir = vec3f(0, 0, 1);\n\tconst fresnelPower = __tsover_add(1, __tsover_mul(4, __tsover_sub(1, softness)));\n\tconst fresnel = pow(__tsover_sub(1, max(dot(normal, viewDir), f32(0))), fresnelPower);\n\tconst lightDir2Dx = __tsover_mul(__tsover_sub(lightPos.x, .5), 2);\n\tconst lightDir2Dy = __tsover_mul(__tsover_sub(__tsover_sub(1, lightPos.y), .5), 2);\n\tconst normalDir = normalize(vec2f(__tsover_add(normal.x, 1e-4), __tsover_add(normal.y, 1e-4)));\n\tconst lightDirNorm = normalize(vec2f(__tsover_add(lightDir2Dx, 1e-4), __tsover_add(lightDir2Dy, 1e-4)));\n\tconst directionalBias = pow(max(f32(0), dot(normalDir, lightDirNorm)), f32(2));\n\treturn __tsover_mul(__tsover_mul(__tsover_mul(fresnel, directionalBias), intensity), 2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightPos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"viewDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnelPower\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnel\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"normal\", \"viewDir\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"fresnelPower\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightDir2Dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightDir2Dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightDirNorm\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lightDir2Dx\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lightDir2Dy\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"directionality\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"normalDir\", \"lightDirNorm\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"directionalBias\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"directionality\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fresnel\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"directionalBias\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"intensity\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"2\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rimComposite = typegpu_default.fn([\n\tvec4f,\n\tvec3f,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((straight, lightColor, rim, coverage) =\u003e {\n\t\"use gpu\";\n\treturn vec4f(__tsover_add(straight.x, __tsover_mul(lightColor.x, rim)), __tsover_add(straight.y, __tsover_mul(lightColor.y, rim)), __tsover_add(straight.z, __tsover_mul(lightColor.z, rim)), __tsover_mul(straight.w, coverage));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"straight\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rim\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"coverage\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"straight\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"rim\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"straight\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"rim\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"straight\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"rim\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"straight\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"coverage\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"r\",\n\t\t\t\t\t\"g\",\n\t\t\t\t\t\"b\",\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec4f\": () =\u003e vec4f }\n}) \u0026\u0026 $.f)({}));\nfunction rgbSplitTaps(sample, uv, offset) {\n\tconst rS = sample(uv.add(offset));\n\tconst gS = sample(uv);\n\tconst bS = sample(uv.add(offset.mul(-1)));\n\treturn vec4(rS.member(\"r\"), gS.member(\"g\"), bS.member(\"b\"), gS.member(\"a\"));\n}\nfunction edgeClipSample(sample, uv, edgeMode) {\n\tif (edgeMode === 1) return sample(uv).mul(call(edgeTransparentMask, \"edgeTransparentMask\", [uv]));\n\tif (edgeMode === 2) return sample(call(edgeMirrorUV, \"edgeMirrorUV\", [uv]));\n\tif (edgeMode === 3) return sample(call(edgeWrapUV, \"edgeWrapUV\", [uv]));\n\treturn sample(call(edgeClampUV, \"edgeClampUV\", [uv]));\n}\nexport { sliceWipeUV as A, perspectiveUV as C, rgbSplitTaps as D, revealShadow as E, waveDistortSawtooth as F, waveDistortSine as I, waveDistortSquare as L, stretchUV as M, twirlUV as N, rimComposite as O, waveDistortBounce as P, waveDistortTriangle as R, pagePeelGeom as S, rectCoordsUV as T, kaleidoscopeUV as _, concentricSpinUV as a, overhangShade as b, curlSheen as c, edgeClipSample as d, flipUV as f, gridDistortOffsetUV as g, gridCellSnap as h, bulgeUV as i, sphereBulge as j, rimLight as k, dmDisplaceLuminance as l, flutedGlassGeom as m, bendRemap as n, cornerPinSample as o, flowFieldUV as p, blinnHighlight as r, curlShade as s, barShiftUV as t, dmDisplaceRG as u, liquifyOffsetUV as v, polarCoordsUV as w, pagePeelCompose as x, mirrorReflect as y };\n","import { Ar as vec2u, Br as struct, Cr as sin, Gn as typegpu_default, Jr as i32, Lr as texture2d, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Pn as DEG_TO_RAD$1, Rr as textureStorage2d, Yn as textureStore, Yr as u32, _r as mix, ar as clamp, at as ZERO, cr as dot, ct as call, hr as max, jr as vec3f, or as cos, pr as fract, q as createGuardedCompute, qn as textureLoad, qr as f32, tr as abs, wr as smoothstep, xr as round, yr as pow, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nvar DEFAULT_HALF_KERNEL = 24;\nconst DEFAULT_COMPUTE_WIDTH = 1024;\nconst DEFAULT_COMPUTE_HEIGHT = 640;\nvar PASSTHROUGH_THRESHOLD = .5;\nvar INTERMEDIATE_FORMAT = \"rgba16float\";\nvar OUTPUT_FORMAT = \"rgba16float\";\nconst BLUR_MAP_FORMAT = \"rgba32float\";\nfunction buildFixedWeights(halfKernel) {\n\tconst sigma = halfKernel / 3;\n\tconst size = halfKernel * 2 + 1;\n\tconst weights = [];\n\tlet sum = 0;\n\tfor (let i = -halfKernel; i \u003c= halfKernel; i++) {\n\t\tconst w = Math.exp(-(i * i) / (2 * sigma * sigma));\n\t\tweights.push(w);\n\t\tsum += w;\n\t}\n\tfor (let i = 0; i \u003c size; i++) weights[i] /= sum;\n\treturn weights;\n}\nfunction buildTruncatedWeights(halfKernel, sigma) {\n\tconst size = halfKernel * 2 + 1;\n\tconst activeHalf = Math.max(1, Math.min(halfKernel, Math.ceil(sigma * 3)));\n\tconst weights = new Array(size).fill(0);\n\tlet total = 0;\n\tfor (let i = -halfKernel; i \u003c= halfKernel; i++) if (Math.abs(i) \u003c= activeHalf) {\n\t\tconst w = Math.exp(-(i * i) / (2 * sigma * sigma));\n\t\tweights[i + halfKernel] = w;\n\t\ttotal += w;\n\t}\n\tfor (let i = 0; i \u003c size; i++) weights[i] /= total;\n\treturn {\n\t\tweights,\n\t\tactiveHalf\n\t};\n}\nfunction fixedHParams() {\n\treturn struct({\n\t\tactiveHalf: i32,\n\t\tinputWidth: f32,\n\t\tinputHeight: f32\n\t});\n}\nfunction fixedVParams() {\n\treturn struct({ activeHalf: i32 });\n}\nfunction buildFixedBlurGraph(halfKernel, computeWidth, computeHeight) {\n\tconst KERNEL_SIZE = halfKernel * 2 + 1;\n\tconst HALF_KERNEL = halfKernel;\n\tconst HParams = fixedHParams();\n\tconst VParams = fixedVParams();\n\tconst hLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tinput: { texture: texture2d(f32) },\n\t\tintermediate: { storageTexture: textureStorage2d(INTERMEDIATE_FORMAT, \"write-only\") },\n\t\tweights: {\n\t\t\tstorage: arrayOf(f32, KERNEL_SIZE),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tparams: { uniform: HParams }\n\t}), \"hLayout\");\n\tconst vLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsrc: { storageTexture: textureStorage2d(INTERMEDIATE_FORMAT, \"read-only\") },\n\t\toutput: { storageTexture: textureStorage2d(OUTPUT_FORMAT, \"write-only\") },\n\t\tweights: {\n\t\t\tstorage: arrayOf(f32, KERNEL_SIZE),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tparams: { uniform: VParams }\n\t}), \"vLayout\");\n\treturn {\n\t\thLayout,\n\t\tvLayout,\n\t\tkernelH: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = hLayout.$.params;\n\t\t\tconst inputCx = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cx), .5), p.inputWidth), computeWidth), .5);\n\t\t\tconst inputCy = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cy), .5), p.inputHeight), computeHeight), .5);\n\t\t\tconst inputWm1 = i32(__tsover_sub(p.inputWidth, 1));\n\t\t\tconst inputHm1 = i32(__tsover_sub(p.inputHeight, 1));\n\t\t\tconst inputCxI = i32(round(inputCx));\n\t\t\tconst inputCyI = clamp(i32(round(inputCy)), 0, inputHm1);\n\t\t\tconst ah = p.activeHalf;\n\t\t\tconst count = __tsover_add(__tsover_mul(ah, 2), 1);\n\t\t\tlet sum = vec4f(0, 0, 0, 0);\n\t\t\tfor (let i = 0; i \u003c count; i++) {\n\t\t\t\tconst off = __tsover_sub(i, ah);\n\t\t\t\tconst sampleX = clamp(__tsover_add(inputCxI, off), 0, inputWm1);\n\t\t\t\tconst texel = textureLoad(hLayout.$.input, vec2u(u32(sampleX), u32(inputCyI)), 0);\n\t\t\t\tsum = sum.add(texel.mul(hLayout.$.weights[__tsover_add(off, HALF_KERNEL)]));\n\t\t\t}\n\t\t\ttextureStore(hLayout.$.intermediate, vec2u(cx, cy), sum);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputWm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputHm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCxI\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t[\"inputCx\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCyI\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[\"inputCy\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ah\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"activeHalf\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ah\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"ah\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sampleX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"inputCxI\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"off\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sampleX\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCyI\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"weights\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"intermediate\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sum\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"hLayout\": () =\u003e hLayout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"HALF_KERNEL\": () =\u003e HALF_KERNEL,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"gaussianBlurH\"),\n\t\tkernelV: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst av = vLayout.$.params.activeHalf;\n\t\t\tconst count = __tsover_add(__tsover_mul(av, 2), 1);\n\t\t\tconst cyi = i32(cy);\n\t\t\tlet sum = vec4f(0, 0, 0, 0);\n\t\t\tfor (let i = 0; i \u003c count; i++) {\n\t\t\t\tconst off = __tsover_sub(i, av);\n\t\t\t\tconst sampleY = clamp(__tsover_add(cyi, off), 0, __tsover_sub(computeHeight, 1));\n\t\t\t\tconst texel = textureLoad(vLayout.$.src, vec2u(cx, u32(sampleY)));\n\t\t\t\tsum = sum.add(texel.mul(vLayout.$.weights[__tsover_add(off, HALF_KERNEL)]));\n\t\t\t}\n\t\t\ttextureStore(vLayout.$.output, vec2u(cx, cy), sum);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"av\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"activeHalf\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"av\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cyi\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"av\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sampleY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cyi\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"off\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"computeHeight\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\", [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"sampleY\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"weights\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"output\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sum\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"vLayout\": () =\u003e vLayout,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"HALF_KERNEL\": () =\u003e HALF_KERNEL,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"gaussianBlurV\"),\n\t\tHParams,\n\t\tVParams,\n\t\tKERNEL_SIZE\n\t};\n}\nfunction createGaussianBlurCompute(root, inputTexture, inputWidth, inputHeight, onCleanup, halfKernel = DEFAULT_HALF_KERNEL, computeWidth = DEFAULT_COMPUTE_WIDTH, computeHeight = 640) {\n\tconst HALF_KERNEL = halfKernel;\n\tconst graph = buildFixedBlurGraph(halfKernel, computeWidth, computeHeight);\n\tconst { hLayout, vLayout, kernelH, kernelV, KERNEL_SIZE } = graph;\n\tconst intermediateTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [computeWidth, computeHeight],\n\t\tformat: INTERMEDIATE_FORMAT\n\t}).$usage(\"storage\"), \"intermediateTex\");\n\tconst outputTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [computeWidth, computeHeight],\n\t\tformat: OUTPUT_FORMAT\n\t}).$usage(\"storage\", \"sampled\"), \"outputTex\");\n\tconst weightsHBuf = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createBuffer(arrayOf(f32, KERNEL_SIZE)).$usage(\"storage\"), \"weightsHBuf\");\n\tconst weightsVBuf = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createBuffer(arrayOf(f32, KERNEL_SIZE)).$usage(\"storage\"), \"weightsVBuf\");\n\tconst paramsH = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph.HParams), \"paramsH\");\n\tconst paramsV = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph.VParams), \"paramsV\");\n\tonCleanup(() =\u003e {\n\t\tintermediateTex.destroy();\n\t\toutputTex.destroy();\n\t});\n\tconst vBindGroup = root.createBindGroup(vLayout, {\n\t\tsrc: intermediateTex,\n\t\toutput: outputTex,\n\t\tweights: weightsVBuf,\n\t\tparams: paramsV.buffer\n\t});\n\tconst hPipeline = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernelH(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernelH\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernelH\": () =\u003e kernelH }\n\t}) \u0026\u0026 $.f)({}), { size: [computeWidth, computeHeight] });\n\tconst computeSteps = [hPipeline, createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernelV(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernelV\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernelV\": () =\u003e kernelV }\n\t}) \u0026\u0026 $.f)({}), {\n\t\tsize: [computeWidth, computeHeight],\n\t\tbindGroup: vBindGroup\n\t})];\n\tfunction setInputTexture(input) {\n\t\tconst hBindGroup = root.createBindGroup(hLayout, {\n\t\t\tinput,\n\t\t\tintermediate: intermediateTex,\n\t\t\tweights: weightsHBuf,\n\t\t\tparams: paramsH.buffer\n\t\t});\n\t\tcomputeSteps[0] = hPipeline.with(hBindGroup);\n\t}\n\tif (inputTexture != null) setInputTexture(inputTexture);\n\tlet scaleY = inputHeight / computeHeight;\n\tlet curInputWidth = inputWidth;\n\tlet curInputHeight = inputHeight;\n\tlet lastRadius = -1;\n\tfunction updateWeights() {\n\t\tconst pixelRadius = lastRadius \u003c 0 ? 4 : lastRadius;\n\t\tconst sigmaH = Math.max(pixelRadius * .5, .001);\n\t\tconst sigmaV = Math.max(sigmaH / scaleY, .001);\n\t\tconst h = buildTruncatedWeights(HALF_KERNEL, sigmaH);\n\t\tconst v = buildTruncatedWeights(HALF_KERNEL, sigmaV);\n\t\tweightsHBuf.write(h.weights);\n\t\tweightsVBuf.write(v.weights);\n\t\tparamsH.write({\n\t\t\tactiveHalf: h.activeHalf,\n\t\t\tinputWidth: curInputWidth,\n\t\t\tinputHeight: curInputHeight\n\t\t});\n\t\tparamsV.write({ activeHalf: v.activeHalf });\n\t}\n\tfunction updateRadius(pixelRadius) {\n\t\tif (Math.abs(pixelRadius - lastRadius) \u003c .01) return;\n\t\tlastRadius = pixelRadius;\n\t\tupdateWeights();\n\t}\n\tupdateRadius(4);\n\treturn {\n\t\tcomputeSteps,\n\t\toutputTexture: outputTex,\n\t\tupdateRadius,\n\t\tcomputeWidth,\n\t\tcomputeHeight,\n\t\tsetInputTexture,\n\t\tsetInputDimensions: (newW, newH) =\u003e {\n\t\t\tcurInputWidth = newW;\n\t\t\tcurInputHeight = newH;\n\t\t\tparamsH.patch({\n\t\t\t\tinputWidth: newW,\n\t\t\t\tinputHeight: newH\n\t\t\t});\n\t\t\tconst newScaleY = newH / computeHeight;\n\t\t\tif (Math.abs(newScaleY - scaleY) \u003e .001) {\n\t\t\t\tscaleY = newScaleY;\n\t\t\t\tupdateWeights();\n\t\t\t}\n\t\t}\n\t};\n}\nfunction variableHParams() {\n\treturn struct({\n\t\tinputWidth: f32,\n\t\tinputHeight: f32\n\t});\n}\nfunction variableVParams() {\n\treturn struct({ scaleY: f32 });\n}\nfunction buildVariableBlurGraph(halfKernel, computeWidth, computeHeight, jitterTaps) {\n\tconst KERNEL_SIZE = halfKernel * 2 + 1;\n\tconst HALF_KERNEL = halfKernel;\n\tconst invHalf = 1 / HALF_KERNEL;\n\tconst HParams = variableHParams();\n\tconst VParams = variableVParams();\n\tconst hLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"read-only\") },\n\t\tinput: { texture: texture2d(f32) },\n\t\tintermediate: { storageTexture: textureStorage2d(INTERMEDIATE_FORMAT, \"write-only\") },\n\t\tweights: {\n\t\t\tstorage: arrayOf(f32, KERNEL_SIZE),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tparams: { uniform: HParams }\n\t}), \"hLayout\");\n\tconst vLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"read-only\") },\n\t\tsrc: { storageTexture: textureStorage2d(INTERMEDIATE_FORMAT, \"read-only\") },\n\t\toutput: { storageTexture: textureStorage2d(OUTPUT_FORMAT, \"write-only\") },\n\t\tweights: {\n\t\t\tstorage: arrayOf(f32, KERNEL_SIZE),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tparams: { uniform: VParams }\n\t}), \"vLayout\");\n\treturn {\n\t\thLayout,\n\t\tvLayout,\n\t\tkernelH: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = hLayout.$.params;\n\t\t\tconst blurRadius = textureLoad(hLayout.$.blurMap, vec2u(cx, cy)).r;\n\t\t\tconst inputCx = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cx), .5), p.inputWidth), computeWidth), .5);\n\t\t\tconst inputCy = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cy), .5), p.inputHeight), computeHeight), .5);\n\t\t\tconst inputWm1 = i32(__tsover_sub(p.inputWidth, 1));\n\t\t\tconst inputHm1 = i32(__tsover_sub(p.inputHeight, 1));\n\t\t\tconst inputCyI = clamp(i32(round(inputCy)), 0, inputHm1);\n\t\t\tif (blurRadius \u003c PASSTHROUGH_THRESHOLD) {\n\t\t\t\tconst cxClamp = clamp(i32(round(inputCx)), 0, inputWm1);\n\t\t\t\tconst texel = textureLoad(hLayout.$.input, vec2u(u32(cxClamp), u32(inputCyI)), 0);\n\t\t\t\ttextureStore(hLayout.$.intermediate, vec2u(cx, cy), texel);\n\t\t\t} else {\n\t\t\t\tconst jitterH = jitterTaps ? __tsover_sub(fract(__tsover_mul(52.9829189, fract(__tsover_add(__tsover_mul(f32(cx), .06711056), __tsover_mul(f32(cy), .00583715))))), .5) : f32(0);\n\t\t\t\tlet sum = vec4f(0, 0, 0, 0);\n\t\t\t\tfor (let i = -HALF_KERNEL; i \u003c= HALF_KERNEL; i++) {\n\t\t\t\t\tconst offset = __tsover_mul(__tsover_mul(__tsover_add(f32(i), jitterH), invHalf), blurRadius);\n\t\t\t\t\tconst sampleX = clamp(i32(round(__tsover_add(inputCx, offset))), 0, inputWm1);\n\t\t\t\t\tconst texel = textureLoad(hLayout.$.input, vec2u(u32(sampleX), u32(inputCyI)), 0);\n\t\t\t\t\tsum = sum.add(texel.mul(hLayout.$.weights[__tsover_add(i, HALF_KERNEL)]));\n\t\t\t\t}\n\t\t\t\ttextureStore(hLayout.$.intermediate, vec2u(cx, cy), sum);\n\t\t\t}\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"blurRadius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputWm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputHm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCyI\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[\"inputCy\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blurRadius\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"PASSTHROUGH_THRESHOLD\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"cxClamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCx\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"cxClamp\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCyI\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"intermediate\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"texel\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"jitterH\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t105,\n\t\t\t\t\t\t\t\t\t\"jitterTaps\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"52.9829189\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.06711056\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.00583715\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"jitterH\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"invHalf\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"blurRadius\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"sampleX\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offset\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sampleX\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCyI\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"weights\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"intermediate\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"sum\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"hLayout\": () =\u003e hLayout,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"PASSTHROUGH_THRESHOLD\": () =\u003e PASSTHROUGH_THRESHOLD,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"jitterTaps\": () =\u003e jitterTaps,\n\t\t\t\t\"std.fract\": () =\u003e fract,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"HALF_KERNEL\": () =\u003e HALF_KERNEL,\n\t\t\t\t\"invHalf\": () =\u003e invHalf\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"variableBlurH\"),\n\t\tkernelV: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst blurRadius = textureLoad(vLayout.$.blurMap, vec2u(cx, cy)).r;\n\t\t\tif (blurRadius \u003c PASSTHROUGH_THRESHOLD) {\n\t\t\t\tconst texel = textureLoad(vLayout.$.src, vec2u(cx, cy));\n\t\t\t\ttextureStore(vLayout.$.output, vec2u(cx, cy), texel);\n\t\t\t} else {\n\t\t\t\tconst yi = i32(cy);\n\t\t\t\tconst radiusComputeY = __tsover_div(blurRadius, vLayout.$.params.scaleY);\n\t\t\t\tconst jitterV = jitterTaps ? __tsover_sub(fract(__tsover_mul(52.9829189, fract(__tsover_add(__tsover_mul(f32(cx), .00583715), __tsover_mul(f32(cy), .06711056))))), .5) : f32(0);\n\t\t\t\tlet sum = vec4f(0, 0, 0, 0);\n\t\t\t\tfor (let i = -HALF_KERNEL; i \u003c= HALF_KERNEL; i++) {\n\t\t\t\t\tconst offset = __tsover_mul(__tsover_mul(__tsover_add(f32(i), jitterV), invHalf), radiusComputeY);\n\t\t\t\t\tconst sampleY = clamp(__tsover_add(yi, i32(round(offset))), 0, __tsover_sub(computeHeight, 1));\n\t\t\t\t\tconst texel = textureLoad(vLayout.$.src, vec2u(cx, u32(sampleY)));\n\t\t\t\t\tsum = sum.add(texel.mul(vLayout.$.weights[__tsover_add(i, HALF_KERNEL)]));\n\t\t\t\t}\n\t\t\t\ttextureStore(vLayout.$.output, vec2u(cx, cy), sum);\n\t\t\t}\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t13,\n\t\t\t\t\t\"blurRadius\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"r\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"blurRadius\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"PASSTHROUGH_THRESHOLD\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"output\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"texel\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"yi\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"radiusComputeY\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"blurRadius\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"scaleY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"jitterV\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t105,\n\t\t\t\t\t\t\t\t\"jitterTaps\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"52.9829189\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.00583715\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.06711056\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"jitterV\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"invHalf\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"radiusComputeY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sampleY\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"yi\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"offset\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"computeHeight\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx\", [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sampleY\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"weights\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"HALF_KERNEL\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"vLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"output\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sum\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"vLayout\": () =\u003e vLayout,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"PASSTHROUGH_THRESHOLD\": () =\u003e PASSTHROUGH_THRESHOLD,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"jitterTaps\": () =\u003e jitterTaps,\n\t\t\t\t\"std.fract\": () =\u003e fract,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\t\"HALF_KERNEL\": () =\u003e HALF_KERNEL,\n\t\t\t\t\"invHalf\": () =\u003e invHalf,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"d.u32\": () =\u003e u32\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"variableBlurV\"),\n\t\tHParams,\n\t\tVParams,\n\t\tKERNEL_SIZE\n\t};\n}\nfunction createVariableGaussianBlurCompute(root, inputTexture, inputWidth, inputHeight, onCleanup, halfKernel = DEFAULT_HALF_KERNEL, computeWidth = DEFAULT_COMPUTE_WIDTH, computeHeight = 640, options) {\n\tconst HALF_KERNEL = halfKernel;\n\tconst graph = buildVariableBlurGraph(halfKernel, computeWidth, computeHeight, options?.jitterTaps === true);\n\tconst { hLayout, vLayout, kernelH, kernelV, KERNEL_SIZE } = graph;\n\tconst blurMapTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [computeWidth, computeHeight],\n\t\tformat: BLUR_MAP_FORMAT\n\t}).$usage(\"storage\"), \"blurMapTex\");\n\tconst intermediateTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [computeWidth, computeHeight],\n\t\tformat: INTERMEDIATE_FORMAT\n\t}).$usage(\"storage\"), \"intermediateTex\");\n\tconst outputTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [computeWidth, computeHeight],\n\t\tformat: OUTPUT_FORMAT\n\t}).$usage(\"storage\", \"sampled\"), \"outputTex\");\n\tconst weightsBuf = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createBuffer(arrayOf(f32, KERNEL_SIZE)).$usage(\"storage\"), \"weightsBuf\");\n\tweightsBuf.write(buildFixedWeights(HALF_KERNEL));\n\tconst paramsH = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph.HParams), \"paramsH\");\n\tconst paramsV = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph.VParams), \"paramsV\");\n\tparamsH.write({\n\t\tinputWidth,\n\t\tinputHeight\n\t});\n\tparamsV.write({ scaleY: inputHeight / computeHeight });\n\tonCleanup(() =\u003e {\n\t\tblurMapTex.destroy();\n\t\tintermediateTex.destroy();\n\t\toutputTex.destroy();\n\t});\n\tconst vBindGroup = root.createBindGroup(vLayout, {\n\t\tblurMap: blurMapTex,\n\t\tsrc: intermediateTex,\n\t\toutput: outputTex,\n\t\tweights: weightsBuf,\n\t\tparams: paramsV.buffer\n\t});\n\tconst hPipeline = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernelH(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernelH\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernelH\": () =\u003e kernelH }\n\t}) \u0026\u0026 $.f)({}), { size: [computeWidth, computeHeight] });\n\tconst computeSteps = [hPipeline, createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernelV(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernelV\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernelV\": () =\u003e kernelV }\n\t}) \u0026\u0026 $.f)({}), {\n\t\tsize: [computeWidth, computeHeight],\n\t\tbindGroup: vBindGroup\n\t})];\n\tfunction setInputTexture(input) {\n\t\tconst hBindGroup = root.createBindGroup(hLayout, {\n\t\t\tblurMap: blurMapTex,\n\t\t\tinput,\n\t\t\tintermediate: intermediateTex,\n\t\t\tweights: weightsBuf,\n\t\t\tparams: paramsH.buffer\n\t\t});\n\t\tcomputeSteps[0] = hPipeline.with(hBindGroup);\n\t}\n\tif (inputTexture != null) setInputTexture(inputTexture);\n\treturn {\n\t\tcomputeSteps,\n\t\toutputTexture: outputTex,\n\t\tblurMapTexture: blurMapTex,\n\t\tcomputeWidth,\n\t\tcomputeHeight,\n\t\tsetInputTexture,\n\t\tsetInputDimensions: (newW, newH) =\u003e {\n\t\t\tparamsH.patch({\n\t\t\t\tinputWidth: newW,\n\t\t\t\tinputHeight: newH\n\t\t\t});\n\t\t\tparamsV.patch({ scaleY: newH / computeHeight });\n\t\t}\n\t};\n}\nfunction gaussianTapWeights(count, sigma) {\n\tconst variance = Number((sigma * sigma).toPrecision(15));\n\tconst last = count - 1;\n\tconst raw = Array.from({ length: count }, (_, i) =\u003e {\n\t\tconst t = (i / last - .5) * 2;\n\t\treturn Math.exp(-.5 * t * t / variance);\n\t});\n\tconst sum = raw.reduce((a, b) =\u003e a + b);\n\treturn raw.map((w) =\u003e w / sum);\n}\nfunction unrolledTapGather(config) {\n\tconst { weights, tapCoord, sample, component } = config;\n\tlet total;\n\tfor (let i = 0; i \u003c weights.length; i++) {\n\t\tconst raw = sample(tapCoord(i));\n\t\tconst weighted = (component ? raw.member(component) : raw).mul(weights[i]);\n\t\ttotal = total ? total.add(weighted) : weighted;\n\t}\n\treturn total;\n}\nconst MAP_SOURCE_DIM_FIELDS = {\n\tinputWidth: f32,\n\tinputHeight: f32\n};\nconst REMAP_WINDOW_FIELDS = {\n\tinputMin: f32,\n\tinputMax: f32,\n\toutputMin: f32,\n\toutputMax: f32,\n\tcurve: f32\n};\nvar mapSourceScalarCache = /* @__PURE__ */ new Map();\nfunction mapSourceScalar(channel) {\n\tconst cached = mapSourceScalarCache.get(channel);\n\tif (cached) return cached;\n\tconst fn = typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sample) =\u003e {\n\t\t\"use gpu\";\n\t\treturn channel === \"alpha\" ? sample.w : channel === \"alphaInverted\" ? __tsover_sub(1, sample.w) : channel === \"luminanceInverted\" ? __tsover_sub(1, dot(sample.xyz, vec3f(.2126, .7152, .0722))) : dot(sample.xyz, vec3f(.2126, .7152, .0722));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sample\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t105,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"channel\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[103, \"alpha\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sample\",\n\t\t\t\t\t\"w\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t105,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"channel\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[103, \"alphaInverted\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t105,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"channel\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[103, \"luminanceInverted\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"channel\": () =\u003e channel,\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`mapSourceScalar_${channel}`);\n\tmapSourceScalarCache.set(channel, fn);\n\treturn fn;\n}\nconst applyRemapWindow = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((raw, inputMin, inputMax, outputMin, outputMax, curve) =\u003e {\n\t\"use gpu\";\n\tconst inputRange = max(__tsover_sub(inputMax, inputMin), 1e-4);\n\treturn mix(outputMin, outputMax, pow(clamp(__tsover_div(__tsover_sub(raw, inputMin), inputRange), 0, 1), pow(2, __tsover_mul(-curve, 2))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"raw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"inputMin\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"inputMax\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"outputMin\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"outputMax\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"curve\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inputRange\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"inputMax\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"inputMin\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalised\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"raw\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"inputMin\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"inputRange\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"exponent\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[5, \"2\"], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"curve\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"eased\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"normalised\", \"exponent\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"outputMin\",\n\t\t\t\t\t\"outputMax\",\n\t\t\t\t\t\"eased\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"applyRemapWindow\");\nfunction remapWindowValues(window) {\n\treturn {\n\t\tinputMin: window.inputMin,\n\t\tinputMax: window.inputMax,\n\t\toutputMin: window.outputMin,\n\t\toutputMax: window.outputMax,\n\t\tcurve: window.curve\n\t};\n}\nconst bloomExtractSoftKnee = typegpu_default.fn([\n\ttexture2d(f32),\n\tu32,\n\tu32,\n\tvec2f,\n\tvec2f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((childTexture, cx, cy, inputSize, computeSize, threshold) =\u003e {\n\t\"use gpu\";\n\tconst iw = inputSize.x;\n\tconst ih = inputSize.y;\n\tconst inputWm1 = i32(__tsover_sub(iw, 1));\n\tconst inputHm1 = i32(__tsover_sub(ih, 1));\n\tlet sample = vec4f(0, 0, 0, 0);\n\tfor (let ty = 0; ty \u003c 4; ty++) for (let tx = 0; tx \u003c 4; tx++) {\n\t\tconst su = __tsover_div(__tsover_add(f32(cx), __tsover_div(__tsover_add(f32(tx), .5), 4)), computeSize.x);\n\t\tconst sv = __tsover_div(__tsover_add(f32(cy), __tsover_div(__tsover_add(f32(ty), .5), 4)), computeSize.y);\n\t\tconst sx = clamp(i32(__tsover_mul(su, iw)), 0, inputWm1);\n\t\tconst sy = clamp(i32(__tsover_mul(sv, ih)), 0, inputHm1);\n\t\tsample = sample.add(textureLoad(childTexture, vec2u(u32(sx), u32(sy)), 0));\n\t}\n\tsample = sample.mul(.0625);\n\tconst knee = __tsover_add(__tsover_mul(threshold, .5), 1e-4);\n\tconst lum = dot(sample.xyz, vec3f(.2126, .7152, .0722));\n\tconst soft = clamp(__tsover_add(__tsover_sub(lum, threshold), knee), 0, __tsover_mul(knee, 2));\n\tconst softCurve = __tsover_div(__tsover_mul(soft, soft), __tsover_mul(knee, 4));\n\tconst mask = __tsover_div(max(softCurve, __tsover_sub(lum, threshold)), max(lum, 1e-4));\n\treturn vec4f(sample.xyz.mul(mask), __tsover_mul(sample.w, mask));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"childTexture\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"inputSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"computeSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"threshold\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iw\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"inputSize\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ih\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"inputSize\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inputWm1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"iw\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inputHm1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ih\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"sample\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"ty\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ty\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"ty\"\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"tx\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"tx\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"computeSize\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"ty\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"computeSize\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"su\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"iw\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"sv\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"ih\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"childTexture\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"sample\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.0625\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"knee\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"soft\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lum\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"knee\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"knee\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softCurve\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"soft\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"soft\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"knee\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"softCurve\", [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lum\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"lum\", [5, \"0.0001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"mask\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"mask\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"bloomExtractSoftKnee\");\nvar BRIGHT_FORMAT = \"rgba16float\";\nfunction buildBloomExtractGraph(computeWidth, computeHeight, kernelName) {\n\tconst Params = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\t\tthreshold: f32,\n\t\tsize: f32,\n\t\t...MAP_SOURCE_DIM_FIELDS\n\t}), \"Params\");\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tchildTexture: { texture: texture2d(f32) },\n\t\tbrightMap: { storageTexture: textureStorage2d(BRIGHT_FORMAT, \"write-only\") },\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst bright = bloomExtractSoftKnee(layout.$.childTexture, cx, cy, vec2f(p.inputWidth, p.inputHeight), vec2f(computeWidth, computeHeight), p.threshold);\n\t\t\ttextureStore(layout.$.brightMap, vec2u(cx, cy), bright);\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(p.size, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bright\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"bloomExtractSoftKnee\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"childTexture\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"computeWidth\", \"computeHeight\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"brightMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"bright\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"size\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"bloomExtractSoftKnee\": () =\u003e bloomExtractSoftKnee,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(kernelName),\n\t\tParams\n\t};\n}\nfunction buildBloomExtractMapGraph(computeWidth, computeHeight, kernelName, channel) {\n\tconst Params = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\t\tthreshold: f32,\n\t\t...MAP_SOURCE_DIM_FIELDS,\n\t\t...REMAP_WINDOW_FIELDS\n\t}), \"Params\");\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tchildTexture: { texture: texture2d(f32) },\n\t\tsource: { texture: texture2d(f32) },\n\t\tbrightMap: { storageTexture: textureStorage2d(BRIGHT_FORMAT, \"write-only\") },\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\tconst channelScalar = mapSourceScalar(channel);\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst iw = p.inputWidth;\n\t\t\tconst ih = p.inputHeight;\n\t\t\tconst bright = bloomExtractSoftKnee(layout.$.childTexture, cx, cy, vec2f(iw, ih), vec2f(computeWidth, computeHeight), p.threshold);\n\t\t\ttextureStore(layout.$.brightMap, vec2u(cx, cy), bright);\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), computeWidth);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst srcX = clamp(i32(round(__tsover_mul(u, iw))), 0, i32(__tsover_sub(iw, 1)));\n\t\t\tconst srcY = clamp(i32(round(__tsover_mul(v, ih))), 0, i32(__tsover_sub(ih, 1)));\n\t\t\tconst radius = applyRemapWindow(channelScalar(textureLoad(layout.$.source, vec2u(u32(srcX), u32(srcY)), 0)), p.inputMin, p.inputMax, p.outputMin, p.outputMax, p.curve);\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(radius, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"iw\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ih\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bright\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"bloomExtractSoftKnee\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"childTexture\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"iw\", \"ih\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"computeWidth\", \"computeHeight\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"brightMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"bright\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"iw\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"iw\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"ih\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ih\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"mapSample\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"source\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"applyRemapWindow\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"channelScalar\",\n\t\t\t\t\t\t\t\t\t[\"mapSample\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"curve\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"bloomExtractSoftKnee\": () =\u003e bloomExtractSoftKnee,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"applyRemapWindow\": () =\u003e applyRemapWindow,\n\t\t\t\t\"channelScalar\": () =\u003e channelScalar,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(kernelName),\n\t\tParams\n\t};\n}\nfunction aspectAwareComputeRes(canvasWidth, canvasHeight) {\n\tconst LONG_EDGE = Math.max(DEFAULT_COMPUTE_WIDTH, 640);\n\tconst aspect = canvasHeight \u003e 0 ? canvasWidth / canvasHeight : 1;\n\treturn {\n\t\twidth: Math.max(8, aspect \u003e= 1 ? LONG_EDGE : Math.round(LONG_EDGE * aspect)),\n\t\theight: Math.max(8, aspect \u003e= 1 ? Math.round(LONG_EDGE / aspect) : LONG_EDGE)\n\t};\n}\nvar DEFAULT_BLURRED_KEY = \"blurredTexture\";\nfunction canvasPixels(dimensions) {\n\treturn {\n\t\twidth: Math.max(1, Math.round(dimensions.width)),\n\t\theight: Math.max(1, Math.round(dimensions.height))\n\t};\n}\nfunction withFixedBlurCompute(params, config) {\n\tconst { childNode, gpu, convertToTexture, registerComputeTexture, onCleanup, onResize, dimensions } = params;\n\tif (!childNode) return null;\n\tconst root = gpu?.root;\n\tif (!root) return null;\n\tconst outputKey = config.outputKey ?? DEFAULT_BLURRED_KEY;\n\tconst childTexture = convertToTexture(childNode);\n\tconst canvas = canvasPixels(dimensions);\n\tconst gaussian = createGaussianBlurCompute(root, null, canvas.width, canvas.height, onCleanup, config.halfKernel);\n\tconst blurredTexture = registerComputeTexture(gaussian.outputTexture);\n\tonResize(({ width, height }) =\u003e {\n\t\tconst next = canvasPixels({\n\t\t\twidth,\n\t\t\theight\n\t\t});\n\t\tgaussian.setInputDimensions(next.width, next.height);\n\t});\n\treturn {\n\t\toutputs: {\n\t\t\tchildTexture,\n\t\t\t[outputKey]: blurredTexture\n\t\t},\n\t\tbindInputs: (resolve) =\u003e {\n\t\t\tconst src = resolve(childTexture.key);\n\t\t\tif (src) gaussian.setInputTexture(src.texture);\n\t\t},\n\t\tgetComputeNodes: () =\u003e {\n\t\t\tgaussian.updateRadius(config.radius());\n\t\t\treturn gaussian.computeSteps;\n\t\t}\n\t};\n}\nfunction withVariableBlurCompute(params, config) {\n\tconst { childNode, gpu, convertToTexture, registerComputeTexture, onCleanup, onResize, dimensions } = params;\n\tif (!childNode) return null;\n\tconst root = gpu?.root;\n\tif (!root) return null;\n\tconst outputKey = config.outputKey ?? DEFAULT_BLURRED_KEY;\n\tconst source = config.source;\n\tconst childTexture = convertToTexture(childNode);\n\tlet canvas = canvasPixels(dimensions);\n\tconst variable = createVariableGaussianBlurCompute(root, null, canvas.width, canvas.height, onCleanup, config.halfKernel);\n\tconst blurredTexture = registerComputeTexture(variable.outputTexture);\n\tconst fill = config.buildFill(variable.computeWidth, variable.computeHeight);\n\tconst fillParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(fill.Params), \"fillParams\");\n\tconst blurMap = variable.blurMapTexture;\n\tconst fillStepOpts = { size: [variable.computeWidth, variable.computeHeight] };\n\tlet fillStep = source ? createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tfill.kernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"fill.kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"fill.kernel\": () =\u003e fill.kernel }\n\t}) \u0026\u0026 $.f)({}), fillStepOpts) : createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tfill.kernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"fill.kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"fill.kernel\": () =\u003e fill.kernel }\n\t}) \u0026\u0026 $.f)({}), {\n\t\t...fillStepOpts,\n\t\tbindGroup: root.createBindGroup(fill.layout, {\n\t\t\tblurMap,\n\t\t\tparams: fillParams.buffer\n\t\t})\n\t});\n\tonResize(({ width, height }) =\u003e {\n\t\tcanvas = canvasPixels({\n\t\t\twidth,\n\t\t\theight\n\t\t});\n\t\tvariable.setInputDimensions(canvas.width, canvas.height);\n\t});\n\treturn {\n\t\toutputs: {\n\t\t\tchildTexture,\n\t\t\t[outputKey]: blurredTexture\n\t\t},\n\t\tbindInputs: (resolve) =\u003e {\n\t\t\tconst src = resolve(childTexture.key);\n\t\t\tif (src) variable.setInputTexture(src.texture);\n\t\t\tif (!source) return;\n\t\t\tconst mapSrc = resolve(source.sourceTexture.key);\n\t\t\tif (mapSrc) {\n\t\t\t\tconst bg = root.createBindGroup(fill.layout, {\n\t\t\t\t\tsource: mapSrc.texture,\n\t\t\t\t\tblurMap,\n\t\t\t\t\tparams: fillParams.buffer\n\t\t\t\t});\n\t\t\t\tfillStep = fillStep.with(bg);\n\t\t\t}\n\t\t},\n\t\tgetComputeNodes: () =\u003e {\n\t\t\tfillParams.write(config.fillValues(canvas, source?.window()));\n\t\t\treturn [fillStep, ...variable.computeSteps];\n\t\t}\n\t};\n}\nfunction withBloomCompute(params, config) {\n\tconst { childNode, gpu, convertToTexture, registerComputeTexture, onCleanup, onResize, dimensions } = params;\n\tif (!childNode) return null;\n\tconst root = gpu?.root;\n\tif (!root) return null;\n\tconst outputKey = config.outputKey ?? DEFAULT_BLURRED_KEY;\n\tconst mapInfo = config.mapInfo ?? null;\n\tconst childTexture = convertToTexture(childNode);\n\tlet canvas = canvasPixels(dimensions);\n\tconst res = aspectAwareComputeRes(canvas.width, canvas.height);\n\tconst brightBuffer = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [res.width, res.height],\n\t\tformat: BRIGHT_FORMAT\n\t}).$usage(\"storage\", \"sampled\"), \"brightBuffer\");\n\tonCleanup(() =\u003e brightBuffer.destroy());\n\tconst variable = createVariableGaussianBlurCompute(root, brightBuffer, res.width, res.height, onCleanup, void 0, res.width, res.height, { jitterTaps: true });\n\tconst blurredTexture = registerComputeTexture(variable.outputTexture);\n\tonResize(({ width, height }) =\u003e {\n\t\tcanvas = canvasPixels({\n\t\t\twidth,\n\t\t\theight\n\t\t});\n\t});\n\tconst graph = mapInfo \u0026\u0026 config.buildExtractMap ? config.buildExtractMap(res.width, res.height, mapInfo.channel) : config.buildExtract(res.width, res.height);\n\tconst prepassParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph.Params), \"prepassParams\");\n\tlet prepassStep = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tgraph.kernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"graph.kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"graph.kernel\": () =\u003e graph.kernel }\n\t}) \u0026\u0026 $.f)({}), { size: [res.width, res.height] });\n\treturn {\n\t\toutputs: {\n\t\t\tchildTexture,\n\t\t\t[outputKey]: blurredTexture\n\t\t},\n\t\tbindInputs: (resolve) =\u003e {\n\t\t\tconst src = resolve(childTexture.key);\n\t\t\tif (!src) return;\n\t\t\tconst mapSrc = mapInfo ? resolve(mapInfo.sourceTexture.key) : void 0;\n\t\t\tif (mapInfo \u0026\u0026 !mapSrc) return;\n\t\t\tconst entries = {\n\t\t\t\tchildTexture: src.texture,\n\t\t\t\tbrightMap: brightBuffer,\n\t\t\t\tblurMap: variable.blurMapTexture,\n\t\t\t\tparams: prepassParams.buffer\n\t\t\t};\n\t\t\tif (mapSrc) entries.source = mapSrc.texture;\n\t\t\tprepassStep = prepassStep.with(root.createBindGroup(graph.layout, entries));\n\t\t},\n\t\tgetComputeNodes: () =\u003e {\n\t\t\tconst threshold = config.threshold();\n\t\t\tconst values = mapInfo ? {\n\t\t\t\tthreshold,\n\t\t\t\tinputWidth: canvas.width,\n\t\t\t\tinputHeight: canvas.height,\n\t\t\t\t...remapWindowValues(mapInfo.window())\n\t\t\t} : {\n\t\t\t\tthreshold,\n\t\t\t\tsize: config.radius(),\n\t\t\t\tinputWidth: canvas.width,\n\t\t\t\tinputHeight: canvas.height\n\t\t\t};\n\t\t\tprepassParams.write(values);\n\t\t\treturn [prepassStep, ...variable.computeSteps];\n\t\t}\n\t};\n}\nfunction composeBlurredOverSharp(params, compose, options) {\n\tconst { childNode, computeOutputs, ctx, convertToTexture } = params;\n\tif (!childNode) return ZERO;\n\tconst blurred = computeOutputs?.[options?.blurredKey ?? DEFAULT_BLURRED_KEY];\n\tconst sharp = computeOutputs?.[options?.sharpKey ?? \"childTexture\"];\n\tif (!blurred || !sharp) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [convertToTexture(childNode).sample(ctx.uv)]);\n\tconst sharpSample = sharp.sample(ctx.uv);\n\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [compose(blurred.sample(ctx.uv), sharpSample)]);\n}\nconst INTENSITY_TO_RADIUS = .36;\nconst intensityToRadius = (intensity) =\u003e intensity * INTENSITY_TO_RADIUS;\nconst CHANNEL_INTENSITY_TO_RADIUS = .1;\nfunction fillMapParams() {\n\treturn struct({\n\t\t...MAP_SOURCE_DIM_FIELDS,\n\t\t...REMAP_WINDOW_FIELDS\n\t});\n}\nfunction buildFillBlurMapGraph(computeWidth, computeHeight, channel) {\n\tconst Params = fillMapParams();\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsource: { texture: texture2d(f32) },\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\tconst channelScalar = mapSourceScalar(channel);\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), computeWidth);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst srcX = clamp(i32(round(__tsover_mul(u, p.inputWidth))), 0, i32(__tsover_sub(p.inputWidth, 1)));\n\t\t\tconst srcY = clamp(i32(round(__tsover_mul(v, p.inputHeight))), 0, i32(__tsover_sub(p.inputHeight, 1)));\n\t\t\tconst remapped = applyRemapWindow(channelScalar(textureLoad(layout.$.source, vec2u(u32(srcX), u32(srcY)), 0)), p.inputMin, p.inputMax, p.outputMin, p.outputMax, p.curve);\n\t\t\tconst radius = __tsover_mul(remapped, .36);\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(radius, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"source\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"applyRemapWindow\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"channelScalar\",\n\t\t\t\t\t\t\t\t\t[\"sample\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"curve\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.36\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"applyRemapWindow\": () =\u003e applyRemapWindow,\n\t\t\t\t\"channelScalar\": () =\u003e channelScalar,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"fillBlurMap\"),\n\t\tParams\n\t};\n}\nconst channelBlurCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sharp, blurred, redIntensity, greenIntensity, blueIntensity) =\u003e {\n\t\"use gpu\";\n\tconst redRadius = __tsover_mul(redIntensity, .1);\n\tconst greenRadius = __tsover_mul(greenIntensity, .1);\n\tconst blueRadius = __tsover_mul(blueIntensity, .1);\n\tconst maxRadius = max(max(max(redRadius, greenRadius), blueRadius), .01);\n\tconst rMix = __tsover_div(redRadius, maxRadius);\n\tconst gMix = __tsover_div(greenRadius, maxRadius);\n\tconst bMix = __tsover_div(blueRadius, maxRadius);\n\treturn vec4f(mix(sharp.x, blurred.x, rMix), mix(sharp.y, blurred.y, gMix), mix(sharp.z, blurred.z, bMix), sharp.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sharp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blurred\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"redIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"greenIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blueIntensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"redRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"redIntensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"greenRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"greenIntensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blueRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"blueIntensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxRadius\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"redRadius\", \"greenRadius\"]\n\t\t\t\t\t\t], \"blueRadius\"]\n\t\t\t\t\t], [5, \"0.01\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rMix\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"redRadius\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"maxRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gMix\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"greenRadius\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"maxRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bMix\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"blueRadius\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"maxRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sharp\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"blurred\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"rMix\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalG\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sharp\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"blurred\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"gMix\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sharp\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"blurred\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"bMix\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"finalR\",\n\t\t\t\t\t\"finalG\",\n\t\t\t\t\t\"finalB\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sharp\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"channelBlurCompose\");\nconst progressiveBlurAmount = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((angleDeg, centerX, centerY, falloff, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst direction = vec2f(__tsover_div(cos(angleRad), aspect), sin(angleRad));\n\tconst centerPos = vec2f(centerX, __tsover_sub(1, centerY));\n\treturn smoothstep(0, falloff, max(0, dot(uv.sub(centerPos), direction)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"centerY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"falloff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"direction\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"centerX\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"directionalDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[5, \"0\"], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"centeredUV\", \"direction\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\"falloff\",\n\t\t\t\t\t\"directionalDist\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"progressiveBlurAmount\");\nfunction progressiveFillParams() {\n\treturn struct({\n\t\tangle: f32,\n\t\tcenterX: f32,\n\t\tcenterY: f32,\n\t\tfalloff: f32,\n\t\taspect: f32,\n\t\tmaxRadius: f32\n\t});\n}\nfunction progressiveFillMapParams() {\n\treturn struct({\n\t\tangle: f32,\n\t\tcenterX: f32,\n\t\tcenterY: f32,\n\t\tfalloff: f32,\n\t\taspect: f32,\n\t\t...MAP_SOURCE_DIM_FIELDS,\n\t\t...REMAP_WINDOW_FIELDS\n\t});\n}\nfunction buildProgressiveBlurFillGraph(computeWidth, computeHeight) {\n\tconst Params = progressiveFillParams();\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), computeWidth);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst blurAmount = progressiveBlurAmount(p.angle, p.centerX, p.centerY, p.falloff, vec2f(u, v), p.aspect);\n\t\t\tconst radius = __tsover_mul(blurAmount, p.maxRadius);\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(radius, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"progressiveBlurAmount\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"angle\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"u\", \"v\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"maxRadius\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"progressiveBlurAmount\": () =\u003e progressiveBlurAmount,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"progressiveBlurFillBlurMap\"),\n\t\tParams\n\t};\n}\nfunction buildProgressiveBlurFillMapGraph(computeWidth, computeHeight, channel) {\n\tconst Params = progressiveFillMapParams();\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsource: { texture: texture2d(f32) },\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\tconst channelScalar = mapSourceScalar(channel);\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), computeWidth);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst blurAmount = progressiveBlurAmount(p.angle, p.centerX, p.centerY, p.falloff, vec2f(u, v), p.aspect);\n\t\t\tconst srcX = clamp(i32(round(__tsover_mul(u, p.inputWidth))), 0, i32(__tsover_sub(p.inputWidth, 1)));\n\t\t\tconst srcY = clamp(i32(round(__tsover_mul(v, p.inputHeight))), 0, i32(__tsover_sub(p.inputHeight, 1)));\n\t\t\tconst remapped = applyRemapWindow(channelScalar(textureLoad(layout.$.source, vec2u(u32(srcX), u32(srcY)), 0)), p.inputMin, p.inputMax, p.outputMin, p.outputMax, p.curve);\n\t\t\tconst radius = __tsover_mul(blurAmount, __tsover_mul(remapped, .36));\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(radius, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"progressiveBlurAmount\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"angle\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"u\", \"v\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"source\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"applyRemapWindow\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"channelScalar\",\n\t\t\t\t\t\t\t\t\t[\"sample\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"curve\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"INTENSITY_TO_RADIUS\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"progressiveBlurAmount\": () =\u003e progressiveBlurAmount,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"applyRemapWindow\": () =\u003e applyRemapWindow,\n\t\t\t\t\"channelScalar\": () =\u003e channelScalar,\n\t\t\t\t\"INTENSITY_TO_RADIUS\": () =\u003e .36,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"progressiveBlurFillBlurMapVariable\"),\n\t\tParams\n\t};\n}\nconst tiltShiftBlurAmount = typegpu_default.fn([\n\tf32,\n\tvec2f,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((angleDeg, center, width, falloff, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst perpVector = vec2f(__tsover_mul(sin(angleRad), -1), cos(angleRad));\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst centeredUV = uv.sub(centerPos);\n\tconst distFromLine = abs(dot(vec2f(__tsover_mul(centeredUV.x, aspect), centeredUV.y), perpVector));\n\tconst focusWidth = __tsover_mul(width, .5);\n\treturn smoothstep(focusWidth, __tsover_add(focusWidth, falloff), distFromLine);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"width\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"falloff\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perpVector\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"centerPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distFromLine\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"aspectCorrectedUV\", \"perpVector\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"focusWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"width\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t\"focusWidth\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"focusWidth\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t],\n\t\t\t\t\t\"distFromLine\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"tiltShiftBlurAmount\");\nfunction tiltShiftFillParams() {\n\treturn struct({\n\t\tangle: f32,\n\t\tcenterX: f32,\n\t\tcenterY: f32,\n\t\twidth: f32,\n\t\tfalloff: f32,\n\t\taspect: f32,\n\t\tmaxRadius: f32\n\t});\n}\nfunction tiltShiftFillMapParams() {\n\treturn struct({\n\t\tangle: f32,\n\t\tcenterX: f32,\n\t\tcenterY: f32,\n\t\twidth: f32,\n\t\tfalloff: f32,\n\t\taspect: f32,\n\t\t...MAP_SOURCE_DIM_FIELDS,\n\t\t...REMAP_WINDOW_FIELDS\n\t});\n}\nfunction buildTiltShiftFillGraph(computeWidth, computeHeight) {\n\tconst Params = tiltShiftFillParams();\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), computeWidth);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst blurAmount = tiltShiftBlurAmount(p.angle, vec2f(p.centerX, p.centerY), p.width, p.falloff, vec2f(u, v), p.aspect);\n\t\t\tconst radius = __tsover_mul(blurAmount, p.maxRadius);\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(radius, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"tiltShiftBlurAmount\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"angle\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"width\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"u\", \"v\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"maxRadius\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"tiltShiftBlurAmount\": () =\u003e tiltShiftBlurAmount,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"tiltShiftFillBlurMap\"),\n\t\tParams\n\t};\n}\nfunction buildTiltShiftFillMapGraph(computeWidth, computeHeight, channel) {\n\tconst Params = tiltShiftFillMapParams();\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tsource: { texture: texture2d(f32) },\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\tconst channelScalar = mapSourceScalar(channel);\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), computeWidth);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst blurAmount = tiltShiftBlurAmount(p.angle, vec2f(p.centerX, p.centerY), p.width, p.falloff, vec2f(u, v), p.aspect);\n\t\t\tconst srcX = clamp(i32(round(__tsover_mul(u, p.inputWidth))), 0, i32(__tsover_sub(p.inputWidth, 1)));\n\t\t\tconst srcY = clamp(i32(round(__tsover_mul(v, p.inputHeight))), 0, i32(__tsover_sub(p.inputHeight, 1)));\n\t\t\tconst remapped = applyRemapWindow(channelScalar(textureLoad(layout.$.source, vec2u(u32(srcX), u32(srcY)), 0)), p.inputMin, p.inputMax, p.outputMin, p.outputMax, p.curve);\n\t\t\tconst radius = __tsover_mul(blurAmount, __tsover_mul(remapped, .36));\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(radius, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"tiltShiftBlurAmount\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"angle\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"width\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"u\", \"v\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sample\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"source\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"applyRemapWindow\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"channelScalar\",\n\t\t\t\t\t\t\t\t\t[\"sample\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"curve\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blurAmount\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"INTENSITY_TO_RADIUS\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"tiltShiftBlurAmount\": () =\u003e tiltShiftBlurAmount,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"applyRemapWindow\": () =\u003e applyRemapWindow,\n\t\t\t\t\"channelScalar\": () =\u003e channelScalar,\n\t\t\t\t\"INTENSITY_TO_RADIUS\": () =\u003e .36,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"tiltShiftFillBlurMapVariable\"),\n\t\tParams\n\t};\n}\nconst glowCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((original, bloom, intensity) =\u003e {\n\t\"use gpu\";\n\tconst finalColor = original.xyz.add(bloom.xyz.mul(intensity));\n\tconst glowAlpha = clamp(__tsover_mul(bloom.w, intensity), 0, 1);\n\treturn vec4f(finalColor, __tsover_add(original.w, __tsover_mul(glowAlpha, __tsover_sub(1, original.w))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"original\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bloom\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"original\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bloom\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"intensity\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glowAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"bloom\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalAlpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"original\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"glowAlpha\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"original\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"finalColor\", \"finalAlpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"glowCompose\");\nconst buildGlowPrepassGraph = (computeWidth, computeHeight) =\u003e buildBloomExtractGraph(computeWidth, computeHeight, \"glowExtractAndFill\");\nconst buildGlowPrepassMapGraph = (computeWidth, computeHeight, channel) =\u003e buildBloomExtractMapGraph(computeWidth, computeHeight, \"glowExtractAndFillVariable\", channel);\nvar GOLDEN_ANGLE = Math.PI * (3 - Math.sqrt(5));\nvar BOKEH_TWO_PI = Math.PI * 2;\nconst BOKEH_RADIUS_SCALE = .8;\nconst bokehRadiusToPixels = (radius) =\u003e radius * BOKEH_RADIUS_SCALE;\nvar HIGHLIGHT_KNEE = .35;\nvar EDGE_BOOST = .6;\nvar EDGE_POWER = 8;\nvar RIM_BAND = .25;\nvar PASSTHROUGH_RADIUS = .5;\nvar BOKEH_OUTPUT_FORMAT = \"rgba16float\";\nconst BOKEH_TAP_COUNT = 100;\nvar resolvePoints = (bladeCount) =\u003e {\n\tconst n = Math.round(bladeCount);\n\treturn n \u003e= 3 ? n : 5;\n};\nconst bokehPolygonRadius = (theta, sides) =\u003e {\n\tif (sides \u003c 3) return 1;\n\tconst a = BOKEH_TWO_PI / sides;\n\tconst m = theta - a * Math.floor(theta / a + .5);\n\treturn Math.cos(a * .5) / Math.cos(m);\n};\nvar SQRT2_OVER_4 = Math.SQRT2 / 4;\nvar sdfHeart = (dx, dy) =\u003e {\n\tconst S = 1 / .75;\n\tconst px = Math.abs(dx) / S;\n\tconst py = -dy / S + .6;\n\tif (px + py \u003e 1) {\n\t\tconst ax = px - .25;\n\t\tconst ay = py - .75;\n\t\treturn (Math.hypot(ax, ay) - SQRT2_OVER_4) * S;\n\t}\n\tconst b1y = py - 1;\n\tconst dot1 = px * px + b1y * b1y;\n\tconst m = Math.max(px + py, 0) * .5;\n\tconst b2x = px - m;\n\tconst b2y = py - m;\n\treturn Math.sqrt(Math.min(dot1, b2x * b2x + b2y * b2y)) * Math.sign(px - py) * S;\n};\nvar sdfStar = (dx, dy, sides, innerRatio) =\u003e {\n\tconst len = Math.hypot(dx, dy);\n\tconst angle = Math.atan2(dy, dx);\n\tconst sector = BOKEH_TWO_PI / sides;\n\tconst bn = angle - Math.floor(angle / sector + .5) * sector;\n\tconst fpx = Math.abs(len * Math.sin(bn));\n\tconst fpy = len * Math.cos(bn);\n\tconst an = Math.PI / sides;\n\tconst ex = innerRatio * Math.sin(an);\n\tconst ey = innerRatio * Math.cos(an) - 1;\n\tconst qx = fpx;\n\tconst qy = fpy - 1;\n\tconst t = Math.min(Math.max((qx * ex + qy * ey) / (ex * ex + ey * ey), 0), 1);\n\tconst nx = fpx - ex * t;\n\tconst ny = fpy - (1 + ey * t);\n\treturn Math.hypot(nx, ny) * Math.sign(ex * qy - ey * qx);\n};\nvar sdfFlower = (dx, dy, sides, innerRatio) =\u003e {\n\tconst angle = Math.atan2(dy, dx);\n\tconst len = Math.hypot(dx, dy);\n\tconst tAngle = angle * sides / BOKEH_TWO_PI;\n\tconst tFrac = tAngle - Math.floor(tAngle);\n\tconst t = Math.abs(tFrac * 2 - 1);\n\treturn len - (innerRatio + (1 - innerRatio) * t);\n};\nvar CROSS_SIZE = .92;\nvar CROSS_THICKNESS = .3;\nvar CROSS_ROUNDING = .08;\nvar sdfCross = (dx, dy) =\u003e {\n\tconst px = Math.abs(dx);\n\tconst py = Math.abs(dy);\n\tconst dHoriz = Math.max(px - CROSS_SIZE, py - CROSS_THICKNESS);\n\tconst dVert = Math.max(py - CROSS_SIZE, px - CROSS_THICKNESS);\n\treturn Math.min(dHoriz, dVert) - CROSS_ROUNDING;\n};\nvar RING_CENTERLINE = .72;\nvar RING_HALF_WIDTH = .28;\nvar sdfRing = (dx, dy) =\u003e Math.abs(Math.hypot(dx, dy) - RING_CENTERLINE) - RING_HALF_WIDTH;\nvar halton = (index, base) =\u003e {\n\tlet f = 1;\n\tlet r = 0;\n\tlet i = index;\n\twhile (i \u003e 0) {\n\t\tf /= base;\n\t\tr += f * (i % base);\n\t\ti = Math.floor(i / base);\n\t}\n\treturn r;\n};\nvar toTipUp = (x, y) =\u003e [-y, x];\nvar APERTURE_SDF_SHAPES = {\n\tstar: (x, y, points) =\u003e {\n\t\tconst [rx, ry] = toTipUp(x, y);\n\t\treturn sdfStar(rx, ry, points, .5);\n\t},\n\tflower: (x, y, points) =\u003e {\n\t\tconst [rx, ry] = toTipUp(x, y);\n\t\treturn sdfFlower(rx, ry, points, .55);\n\t},\n\theart: (x, y) =\u003e sdfHeart(x, y),\n\tcross: (x, y) =\u003e sdfCross(x, y),\n\tring: (x, y) =\u003e sdfRing(x, y)\n};\nfunction generateBokehTaps(shape, bladeCount, tapCount) {\n\tconst taps = [];\n\tconst shapeSdf = APERTURE_SDF_SHAPES[shape];\n\tif (!shapeSdf) {\n\t\tconst sides = shape === \"circle\" ? 0 : bladeCount;\n\t\tfor (let i = 0; i \u003c tapCount; i++) {\n\t\t\tconst t = (i + .5) / tapCount;\n\t\t\tconst rNorm = Math.sqrt(t);\n\t\t\tconst theta = i * GOLDEN_ANGLE;\n\t\t\tconst r = rNorm * bokehPolygonRadius(theta, sides);\n\t\t\ttaps.push({\n\t\t\t\tx: -Math.cos(theta) * r,\n\t\t\t\ty: -Math.sin(theta) * r,\n\t\t\t\trim: 1 + EDGE_BOOST * Math.pow(rNorm, EDGE_POWER)\n\t\t\t});\n\t\t}\n\t\treturn taps;\n\t}\n\tconst points = resolvePoints(bladeCount);\n\tconst sdf = (x, y) =\u003e shapeSdf(x, y, points);\n\tconst MAX_CANDIDATES = 2e4;\n\tfor (let idx = 1; taps.length \u003c tapCount \u0026\u0026 idx \u003c= MAX_CANDIDATES; idx++) {\n\t\tconst x = halton(idx, 2) * 2 - 1;\n\t\tconst y = halton(idx, 3) * 2 - 1;\n\t\tconst dist = sdf(x, y);\n\t\tif (dist \u003e 0) continue;\n\t\tconst prox = Math.min(Math.max(1 + dist / RIM_BAND, 0), 1);\n\t\ttaps.push({\n\t\t\tx: -x,\n\t\t\ty: -y,\n\t\t\trim: 1 + EDGE_BOOST * prox * prox\n\t\t});\n\t}\n\tif (taps.length === 0) return generateBokehTaps(\"circle\", 0, tapCount);\n\tfor (let i = 0; taps.length \u003c tapCount; i++) taps.push(taps[i % taps.length]);\n\tconst maxLen = taps.reduce((max$1, tap) =\u003e Math.max(max$1, Math.hypot(tap.x, tap.y)), 0);\n\tif (maxLen \u003e 1) {\n\t\tconst inv = 1 / maxLen;\n\t\tfor (const tap of taps) {\n\t\t\ttap.x *= inv;\n\t\t\ttap.y *= inv;\n\t\t}\n\t}\n\treturn taps;\n}\nfunction bokehParams() {\n\treturn struct({\n\t\tradius: f32,\n\t\thighlightGain: f32,\n\t\thighlightThreshold: f32,\n\t\trotCos: f32,\n\t\trotSin: f32,\n\t\tchromaticFringe: f32,\n\t\tinputWidth: f32,\n\t\tinputHeight: f32\n\t});\n}\nfunction bokehMapParams() {\n\treturn struct({\n\t\thighlightGain: f32,\n\t\thighlightThreshold: f32,\n\t\trotCos: f32,\n\t\trotSin: f32,\n\t\tchromaticFringe: f32,\n\t\t...MAP_SOURCE_DIM_FIELDS,\n\t\t...REMAP_WINDOW_FIELDS\n\t});\n}\nconst bokehHighlightWeight = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, threshold, gain, rim) =\u003e {\n\t\"use gpu\";\n\tconst lum = dot(base.xyz, vec3f(.2126, .7152, .0722));\n\tconst hi = smoothstep(threshold, __tsover_add(threshold, HIGHLIGHT_KNEE), lum);\n\treturn __tsover_mul(__tsover_add(1, __tsover_mul(__tsover_mul(gain, hi), hi)), rim);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"threshold\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gain\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rim\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.2126\"],\n\t\t\t\t\t\t\t[5, \"0.7152\"],\n\t\t\t\t\t\t\t[5, \"0.0722\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hi\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"HIGHLIGHT_KNEE\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"lum\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gain\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"hi\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"hi\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"rim\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"HIGHLIGHT_KNEE\": () =\u003e HIGHLIGHT_KNEE\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"bokehHighlightWeight\");\nfunction buildBokehGraph(computeWidth, computeHeight, tapCount) {\n\tconst TAPS = tapCount;\n\tconst Params = bokehParams();\n\tconst TapArray = arrayOf(vec4f, TAPS);\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tinput: { texture: texture2d(f32) },\n\t\toutput: { storageTexture: textureStorage2d(BOKEH_OUTPUT_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params },\n\t\ttaps: { uniform: TapArray }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst radius = p.radius;\n\t\t\tconst inputCx = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cx), .5), p.inputWidth), computeWidth), .5);\n\t\t\tconst inputCy = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cy), .5), p.inputHeight), computeHeight), .5);\n\t\t\tconst inputWm1 = i32(__tsover_sub(p.inputWidth, 1));\n\t\t\tconst inputHm1 = i32(__tsover_sub(p.inputHeight, 1));\n\t\t\tif (radius \u003c PASSTHROUGH_RADIUS) {\n\t\t\t\tconst sx = clamp(i32(round(inputCx)), 0, inputWm1);\n\t\t\t\tconst sy = clamp(i32(round(inputCy)), 0, inputHm1);\n\t\t\t\tconst texel = textureLoad(layout.$.input, vec2u(u32(sx), u32(sy)), 0);\n\t\t\t\ttextureStore(layout.$.output, vec2u(cx, cy), texel);\n\t\t\t} else {\n\t\t\t\tconst gain = p.highlightGain;\n\t\t\t\tconst threshold = p.highlightThreshold;\n\t\t\t\tconst fringe = p.chromaticFringe;\n\t\t\t\tconst rotC = p.rotCos;\n\t\t\t\tconst rotS = p.rotSin;\n\t\t\t\tlet accum = vec3f(0, 0, 0);\n\t\t\t\tlet alphaAccum = f32(0);\n\t\t\t\tlet wSum = f32(0);\n\t\t\t\tfor (let i = 0; i \u003c TAPS; i++) {\n\t\t\t\t\tconst tap = layout.$.taps[i];\n\t\t\t\t\tconst ox = __tsover_sub(__tsover_mul(tap.x, rotC), __tsover_mul(tap.y, rotS));\n\t\t\t\t\tconst oy = __tsover_add(__tsover_mul(tap.x, rotS), __tsover_mul(tap.y, rotC));\n\t\t\t\t\tconst off = vec2f(__tsover_mul(ox, radius), __tsover_mul(oy, radius));\n\t\t\t\t\tconst sx = clamp(i32(round(__tsover_add(inputCx, off.x))), 0, inputWm1);\n\t\t\t\t\tconst sy = clamp(i32(round(__tsover_add(inputCy, off.y))), 0, inputHm1);\n\t\t\t\t\tconst base = textureLoad(layout.$.input, vec2u(u32(sx), u32(sy)), 0);\n\t\t\t\t\tlet colR = base.x;\n\t\t\t\t\tlet colB = base.z;\n\t\t\t\t\tif (fringe \u003e .001) {\n\t\t\t\t\t\tconst offR = off.mul(__tsover_add(1, __tsover_mul(fringe, .5)));\n\t\t\t\t\t\tconst rx = clamp(i32(round(__tsover_add(inputCx, offR.x))), 0, inputWm1);\n\t\t\t\t\t\tconst ry = clamp(i32(round(__tsover_add(inputCy, offR.y))), 0, inputHm1);\n\t\t\t\t\t\tcolR = textureLoad(layout.$.input, vec2u(u32(rx), u32(ry)), 0).x;\n\t\t\t\t\t\tconst offB = off.mul(__tsover_sub(1, __tsover_mul(fringe, .5)));\n\t\t\t\t\t\tconst bx = clamp(i32(round(__tsover_add(inputCx, offB.x))), 0, inputWm1);\n\t\t\t\t\t\tconst by = clamp(i32(round(__tsover_add(inputCy, offB.y))), 0, inputHm1);\n\t\t\t\t\t\tcolB = textureLoad(layout.$.input, vec2u(u32(bx), u32(by)), 0).z;\n\t\t\t\t\t}\n\t\t\t\t\tconst col = vec3f(colR, base.y, colB);\n\t\t\t\t\tconst w = bokehHighlightWeight(base, threshold, gain, tap.z);\n\t\t\t\t\taccum = accum.add(col.mul(w));\n\t\t\t\t\talphaAccum = __tsover_add(alphaAccum, __tsover_mul(base.w, w));\n\t\t\t\t\twSum = __tsover_add(wSum, w);\n\t\t\t\t}\n\t\t\t\tconst invW = __tsover_div(1, max(wSum, 1e-4));\n\t\t\t\ttextureStore(layout.$.output, vec2u(cx, cy), vec4f(accum.mul(invW), __tsover_mul(alphaAccum, invW)));\n\t\t\t}\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputWm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputHm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"PASSTHROUGH_RADIUS\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCx\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCy\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"output\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"texel\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"gain\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"highlightGain\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"highlightThreshold\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"chromaticFringe\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"rotC\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rotCos\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"rotS\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rotSin\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"TAPS\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"taps\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotC\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotS\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotS\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotC\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"colR\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"colB\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"offR\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"colR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"rx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"ry\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"colB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"bx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"by\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"colR\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"colB\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"bokehHighlightWeight\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"gain\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"w\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"invW\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"wSum\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"output\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"invW\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"invW\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"PASSTHROUGH_RADIUS\": () =\u003e PASSTHROUGH_RADIUS,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\t\"TAPS\": () =\u003e TAPS,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"bokehHighlightWeight\": () =\u003e bokehHighlightWeight,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"bokehGather\"),\n\t\tParams,\n\t\tTapArray\n\t};\n}\nfunction buildBokehMapGraph(computeWidth, computeHeight, tapCount, channel) {\n\tconst TAPS = tapCount;\n\tconst Params = bokehMapParams();\n\tconst TapArray = arrayOf(vec4f, TAPS);\n\tconst channelScalar = mapSourceScalar(channel);\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tinput: { texture: texture2d(f32) },\n\t\tsource: { texture: texture2d(f32) },\n\t\toutput: { storageTexture: textureStorage2d(BOKEH_OUTPUT_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params },\n\t\ttaps: { uniform: TapArray }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst inputCx = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cx), .5), p.inputWidth), computeWidth), .5);\n\t\t\tconst inputCy = __tsover_sub(__tsover_div(__tsover_mul(__tsover_add(f32(cy), .5), p.inputHeight), computeHeight), .5);\n\t\t\tconst inputWm1 = i32(__tsover_sub(p.inputWidth, 1));\n\t\t\tconst inputHm1 = i32(__tsover_sub(p.inputHeight, 1));\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), computeWidth);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst srcX = clamp(i32(round(__tsover_mul(u, p.inputWidth))), 0, inputWm1);\n\t\t\tconst srcY = clamp(i32(round(__tsover_mul(v, p.inputHeight))), 0, inputHm1);\n\t\t\tconst remapped = applyRemapWindow(channelScalar(textureLoad(layout.$.source, vec2u(u32(srcX), u32(srcY)), 0)), p.inputMin, p.inputMax, p.outputMin, p.outputMax, p.curve);\n\t\t\tconst radius = __tsover_mul(remapped, .8);\n\t\t\tif (radius \u003c PASSTHROUGH_RADIUS) {\n\t\t\t\tconst sx = clamp(i32(round(inputCx)), 0, inputWm1);\n\t\t\t\tconst sy = clamp(i32(round(inputCy)), 0, inputHm1);\n\t\t\t\tconst texel = textureLoad(layout.$.input, vec2u(u32(sx), u32(sy)), 0);\n\t\t\t\ttextureStore(layout.$.output, vec2u(cx, cy), texel);\n\t\t\t} else {\n\t\t\t\tconst gain = p.highlightGain;\n\t\t\t\tconst threshold = p.highlightThreshold;\n\t\t\t\tconst fringe = p.chromaticFringe;\n\t\t\t\tconst rotC = p.rotCos;\n\t\t\t\tconst rotS = p.rotSin;\n\t\t\t\tlet accum = vec3f(0, 0, 0);\n\t\t\t\tlet alphaAccum = f32(0);\n\t\t\t\tlet wSum = f32(0);\n\t\t\t\tfor (let i = 0; i \u003c TAPS; i++) {\n\t\t\t\t\tconst tap = layout.$.taps[i];\n\t\t\t\t\tconst ox = __tsover_sub(__tsover_mul(tap.x, rotC), __tsover_mul(tap.y, rotS));\n\t\t\t\t\tconst oy = __tsover_add(__tsover_mul(tap.x, rotS), __tsover_mul(tap.y, rotC));\n\t\t\t\t\tconst off = vec2f(__tsover_mul(ox, radius), __tsover_mul(oy, radius));\n\t\t\t\t\tconst sx = clamp(i32(round(__tsover_add(inputCx, off.x))), 0, inputWm1);\n\t\t\t\t\tconst sy = clamp(i32(round(__tsover_add(inputCy, off.y))), 0, inputHm1);\n\t\t\t\t\tconst base = textureLoad(layout.$.input, vec2u(u32(sx), u32(sy)), 0);\n\t\t\t\t\tlet colR = base.x;\n\t\t\t\t\tlet colB = base.z;\n\t\t\t\t\tif (fringe \u003e .001) {\n\t\t\t\t\t\tconst offR = off.mul(__tsover_add(1, __tsover_mul(fringe, .5)));\n\t\t\t\t\t\tconst rx = clamp(i32(round(__tsover_add(inputCx, offR.x))), 0, inputWm1);\n\t\t\t\t\t\tconst ry = clamp(i32(round(__tsover_add(inputCy, offR.y))), 0, inputHm1);\n\t\t\t\t\t\tcolR = textureLoad(layout.$.input, vec2u(u32(rx), u32(ry)), 0).x;\n\t\t\t\t\t\tconst offB = off.mul(__tsover_sub(1, __tsover_mul(fringe, .5)));\n\t\t\t\t\t\tconst bx = clamp(i32(round(__tsover_add(inputCx, offB.x))), 0, inputWm1);\n\t\t\t\t\t\tconst by = clamp(i32(round(__tsover_add(inputCy, offB.y))), 0, inputHm1);\n\t\t\t\t\t\tcolB = textureLoad(layout.$.input, vec2u(u32(bx), u32(by)), 0).z;\n\t\t\t\t\t}\n\t\t\t\t\tconst col = vec3f(colR, base.y, colB);\n\t\t\t\t\tconst w = bokehHighlightWeight(base, threshold, gain, tap.z);\n\t\t\t\t\taccum = accum.add(col.mul(w));\n\t\t\t\t\talphaAccum = __tsover_add(alphaAccum, __tsover_mul(base.w, w));\n\t\t\t\t\twSum = __tsover_add(wSum, w);\n\t\t\t\t}\n\t\t\t\tconst invW = __tsover_div(1, max(wSum, 1e-4));\n\t\t\t\ttextureStore(layout.$.output, vec2u(cx, cy), vec4f(accum.mul(invW), __tsover_mul(alphaAccum, invW)));\n\t\t\t}\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputWm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"inputHm1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeWidth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputWidth\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"srcY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputHeight\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"mapSample\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"source\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcX\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[\"srcY\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"applyRemapWindow\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"channelScalar\",\n\t\t\t\t\t\t\t\t\t[\"mapSample\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"inputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMin\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"outputMax\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"curve\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"remapped\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"BOKEH_RADIUS_SCALE\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"PASSTHROUGH_RADIUS\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCx\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"inputCy\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"output\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"texel\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"gain\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"highlightGain\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"highlightThreshold\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"chromaticFringe\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"rotC\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rotCos\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"rotS\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rotSin\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"TAPS\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"taps\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotC\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotS\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotS\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rotC\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"colR\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"colB\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"offR\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"colR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"rx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"ry\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"fringe\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputWm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.round\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputCy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"offB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"inputHm1\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"colB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"input\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"bx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"by\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"colR\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"colB\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"bokehHighlightWeight\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"gain\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tap\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"w\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"wSum\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"invW\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"wSum\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"output\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"accum\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"invW\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"alphaAccum\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"invW\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeWidth\": () =\u003e computeWidth,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\t\"std.round\": () =\u003e round,\n\t\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\t\"applyRemapWindow\": () =\u003e applyRemapWindow,\n\t\t\t\t\"channelScalar\": () =\u003e channelScalar,\n\t\t\t\t\"BOKEH_RADIUS_SCALE\": () =\u003e .8,\n\t\t\t\t\"PASSTHROUGH_RADIUS\": () =\u003e PASSTHROUGH_RADIUS,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\t\"TAPS\": () =\u003e TAPS,\n\t\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\t\"bokehHighlightWeight\": () =\u003e bokehHighlightWeight,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"bokehGatherVariable\"),\n\t\tParams,\n\t\tTapArray\n\t};\n}\nexport { intensityToRadius as C, withBloomCompute as D, unrolledTapGather as E, withFixedBlurCompute as O, glowCompose as S, tiltShiftBlurAmount as T, channelBlurCompose as _, DEFAULT_COMPUTE_WIDTH as a, gaussianTapWeights as b, buildBokehGraph as c, buildGlowPrepassGraph as d, buildGlowPrepassMapGraph as f, buildTiltShiftFillMapGraph as g, buildTiltShiftFillGraph as h, DEFAULT_COMPUTE_HEIGHT as i, withVariableBlurCompute as k, buildBokehMapGraph as l, buildProgressiveBlurFillMapGraph as m, BOKEH_TAP_COUNT as n, bokehRadiusToPixels as o, buildProgressiveBlurFillGraph as p, CHANNEL_INTENSITY_TO_RADIUS as r, buildBloomExtractGraph as s, BLUR_MAP_FORMAT as t, buildFillBlurMapGraph as u, composeBlurredOverSharp as v, remapWindowValues as w, generateBokehTaps as x, createGaussianBlurCompute as y };\n","import { Br as struct, Cr as sin, Er as step, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Pn as DEG_TO_RAD$1, Vr as mod, X as applyEdgeHandlingExpr, Z as edgeClampUV, _n as hash11$1, _r as mix, ar as clamp, bn as hash22, cr as dot, ct as call, er as select, fr as floor, ft as floatE, hr as max, jr as vec3f, mr as length, mt as vec4, or as cos, pr as fract, qr as f32, rt as sampleCatmullRomExpr, tr as abs, vn as hash12, wr as smoothstep } from \"./lower-Bd2jez_2.js\";\nimport { E as unrolledTapGather, b as gaussianTapWeights } from \"./blur-7yjVyMvI.js\";\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nconst MOTION_BLUR_WEIGHTS = gaussianTapWeights(32, .8);\nconst linearBlurTapCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, angleDeg, intensity, viewport, tapT) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst aspect = __tsover_div(viewport.x, viewport.y);\n\tconst dirX = __tsover_div(cos(angleRad), aspect);\n\tconst dirY = sin(angleRad);\n\tconst bvX = __tsover_mul(__tsover_div(__tsover_mul(dirX, intensity), viewport.x), 2);\n\tconst bvY = __tsover_mul(__tsover_div(__tsover_mul(dirY, intensity), viewport.y), 2);\n\treturn vec2f(__tsover_add(uv.x, __tsover_mul(bvX, tapT)), __tsover_add(uv.y, __tsover_mul(bvY, tapT)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tapT\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dirX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dirY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bvX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dirX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bvY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dirY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bvX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"tapT\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bvY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"tapT\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst angularBlurTapCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, intensity, uv, aspect, tapIndex) =\u003e {\n\t\"use gpu\";\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst angleStep = __tsover_div(__tsover_mul(intensity, .005), 31);\n\tconst angle = __tsover_mul(__tsover_sub(tapIndex, 15.5), angleStep);\n\tconst cosA = cos(angle);\n\tconst sinA = sin(angle);\n\tconst initX = __tsover_sub(uv.x, centerPos.x);\n\tconst initY = __tsover_sub(uv.y, centerPos.y);\n\tconst acX = __tsover_mul(initX, aspect);\n\tconst acY = initY;\n\tconst rotX = __tsover_sub(__tsover_mul(acX, cosA), __tsover_mul(acY, sinA));\n\tconst rotY = __tsover_add(__tsover_mul(acX, sinA), __tsover_mul(acY, cosA));\n\treturn vec2f(__tsover_add(__tsover_div(rotX, aspect), centerPos.x), __tsover_add(rotY, centerPos.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tapIndex\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleStep\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.005\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"31\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tapIndex\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"15.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"angleStep\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"initX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"initY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"initX\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acY\",\n\t\t\t\t\"initY\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"acX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"acY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"acX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"acY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rotX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst zoomBlurTapCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, intensity, uv, aspect, tapIndex) =\u003e {\n\t\"use gpu\";\n\tconst centerPos = vec2f(center.x, __tsover_sub(1, center.y));\n\tconst radius = __tsover_mul(intensity, .01);\n\tconst scale = __tsover_add(1, __tsover_mul(radius, __tsover_div(tapIndex, 31)));\n\tconst deltaX = __tsover_sub(uv.x, centerPos.x);\n\tconst deltaY = __tsover_sub(uv.y, centerPos.y);\n\tconst acdX = __tsover_mul(deltaX, aspect);\n\tconst acdY = deltaY;\n\tconst scaledDeltaX = __tsover_div(acdX, scale);\n\tconst scaledDeltaY = __tsover_div(acdY, scale);\n\treturn vec2f(__tsover_add(__tsover_div(scaledDeltaX, aspect), centerPos.x), __tsover_add(scaledDeltaY, centerPos.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tapIndex\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"radius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scale\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tapIndex\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[5, \"31\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"deltaX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"deltaY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acdX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"deltaX\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"acdY\",\n\t\t\t\t\"deltaY\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledDeltaX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"acdX\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledDeltaY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"acdY\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"scaledDeltaX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"scaledDeltaY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nfunction motionBlurGather(kind, args, sample) {\n\tconst { focus, amount, uv, aspect, viewportSize } = args;\n\treturn unrolledTapGather({\n\t\tweights: MOTION_BLUR_WEIGHTS,\n\t\ttapCoord: kind === \"linear\" ? (i) =\u003e call(linearBlurTapCoord, \"linearBlurTapCoord\", [\n\t\t\tuv,\n\t\t\tfocus,\n\t\t\tamount,\n\t\t\tviewportSize,\n\t\t\tfloatE(i / 31 - .5)\n\t\t]) : kind === \"orbit\" ? (i) =\u003e call(angularBlurTapCoord, \"angularBlurTapCoord\", [\n\t\t\tfocus,\n\t\t\tamount,\n\t\t\tuv,\n\t\t\taspect,\n\t\t\tfloatE(i)\n\t\t]) : (i) =\u003e call(zoomBlurTapCoord, \"zoomBlurTapCoord\", [\n\t\t\tfocus,\n\t\t\tamount,\n\t\t\tuv,\n\t\t\taspect,\n\t\t\tfloatE(i)\n\t\t]),\n\t\tsample\n\t});\n}\nconst diffuseBlurUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, intensity, viewport) =\u003e {\n\t\"use gpu\";\n\tconst offset = hash22(uv.mul(1e3)).mul(2).sub(vec2f(1, 1)).mul(intensity).div(viewport);\n\treturn uv.add(offset);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1000\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"randVec\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.hash22\",\n\t\t\t\t\t[\"seed\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"randVec\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"intensity\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"offset\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"noise.hash22\": () =\u003e hash22,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction scatterGather(args) {\n\treturn applyEdgeHandlingExpr(call(diffuseBlurUV, \"diffuseBlurUV\", [\n\t\targs.uv,\n\t\targs.amount,\n\t\targs.viewportSize\n\t]), args.sample, args.edgeMode);\n}\nvar WEIGHTS = [\n\t.056,\n\t.135,\n\t.278,\n\t.487,\n\t.726,\n\t.923,\n\t1,\n\t.923,\n\t.726,\n\t.487,\n\t.278,\n\t.135,\n\t.056\n];\nvar WEIGHT_SUM = 6.214;\nconst DROP_SHADOW_TAP_WEIGHTS = WEIGHTS.map((w) =\u003e w / WEIGHT_SUM);\nvar TAP_HALF = 6;\nconst dropShadowUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, angle, distance) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst dist = __tsover_mul(distance, .2);\n\tconst aspect = __tsover_div(viewport.x, viewport.y);\n\tconst ox = __tsover_div(__tsover_mul(sin(angleRad), dist), aspect);\n\tconst oy = __tsover_mul(__tsover_mul(cos(angleRad), -1), dist);\n\treturn vec2f(__tsover_sub(uv.x, ox), __tsover_sub(uv.y, oy));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distance\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"distance\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ox\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"dist\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"ox\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"oy\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst dropShadowTapUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, blurRadius, ox, oy) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_add(uv.x, __tsover_div(__tsover_mul(ox, blurRadius), viewport.x)), __tsover_add(uv.y, __tsover_div(__tsover_mul(oy, blurRadius), viewport.y)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blurRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"blurRadius\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"blurRadius\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst dropShadowComposite = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((originalColor, shadowColor, shadowAlpha, cutout) =\u003e {\n\t\"use gpu\";\n\tconst shadowRgb = vec3f(shadowColor.x, shadowColor.y, shadowColor.z);\n\tconst shadowA = __tsover_mul(shadowColor.w, shadowAlpha);\n\tconst cutoutA = clamp(__tsover_sub(shadowA, originalColor.w), 0, 1);\n\tconst cutoutRgb = shadowRgb.mul(shadowColor.w).mul(cutoutA);\n\tconst shadowPremulRgb = shadowRgb.mul(shadowColor.w).mul(shadowAlpha);\n\tconst oneMinusOrigA = __tsover_sub(1, originalColor.w);\n\tconst normalRgb = vec3f(originalColor.x, originalColor.y, originalColor.z).add(shadowPremulRgb.mul(oneMinusOrigA));\n\tconst normalA = max(__tsover_add(originalColor.w, __tsover_mul(shadowA, oneMinusOrigA)), originalColor.w);\n\tconst useCut = cutout \u003e .5;\n\tconst rgb = select(normalRgb, cutoutRgb, useCut);\n\tconst a = select(normalA, cutoutA, useCut);\n\treturn vec4f(rgb.x, rgb.y, rgb.z, a);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"originalColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shadowColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shadowAlpha\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cutout\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shadowRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"shadowColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"shadowColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"shadowColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shadowA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"shadowColor\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"shadowAlpha\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cutoutA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"shadowA\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"originalColor\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cutoutRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"shadowRgb\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"shadowColor\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"cutoutA\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shadowPremulRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"shadowRgb\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"shadowColor\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"shadowAlpha\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oneMinusOrigA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"originalColor\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"originalColor\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"originalColor\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"originalColor\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"shadowPremulRgb\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"oneMinusOrigA\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"originalColor\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"shadowA\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"oneMinusOrigA\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"originalColor\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"useCut\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cutout\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"normalRgb\",\n\t\t\t\t\t\t\"cutoutRgb\",\n\t\t\t\t\t\t\"useCut\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"normalA\",\n\t\t\t\t\t\t\"cutoutA\",\n\t\t\t\t\t\t\"useCut\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"a\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction silhouetteBlur(args) {\n\tconst { at, uv, viewportSize, blurRadius, sample, convertToTexture } = args;\n\tconst tapUV = (base, ox, oy) =\u003e call(dropShadowTapUV, \"dropShadowTapUV\", [\n\t\tbase,\n\t\tviewportSize,\n\t\tblurRadius,\n\t\tfloatE(ox),\n\t\tfloatE(oy)\n\t]);\n\tconst horizontalTexture = convertToTexture(vec4(unrolledTapGather({\n\t\tweights: DROP_SHADOW_TAP_WEIGHTS,\n\t\ttapCoord: (i) =\u003e tapUV(at, i - TAP_HALF, 0),\n\t\tsample,\n\t\tcomponent: \"a\"\n\t}), floatE(0), floatE(0), floatE(1)));\n\treturn unrolledTapGather({\n\t\tweights: DROP_SHADOW_TAP_WEIGHTS,\n\t\ttapCoord: (i) =\u003e tapUV(uv, 0, i - TAP_HALF),\n\t\tsample: (coord) =\u003e horizontalTexture.sample(coord),\n\t\tcomponent: \"r\"\n\t});\n}\nconst sharpnessTapUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, dirX, dirY) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_add(uv.x, __tsover_div(dirX, viewport.x)), __tsover_add(uv.y, __tsover_div(dirY, viewport.y)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dirX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dirY\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dirX\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dirY\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst sharpnessCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, top, bottom, left, right, amount) =\u003e {\n\t\"use gpu\";\n\tconst centerWeight = __tsover_add(1, __tsover_mul(amount, 4));\n\tconst neighborWeight = __tsover_mul(amount, -1);\n\tconst clamped = clamp(center.xyz.mul(centerWeight).add(top.xyz.mul(neighborWeight)).add(bottom.xyz.mul(neighborWeight)).add(left.xyz.mul(neighborWeight)).add(right.xyz.mul(neighborWeight)), vec3f(0, 0, 0), vec3f(1, 1, 1));\n\treturn vec4f(clamped.x, clamped.y, clamped.z, center.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"top\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bottom\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"left\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"right\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"amount\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"neighborWeight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"amount\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"centerWeight\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"top\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"neighborWeight\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bottom\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"neighborWeight\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"left\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"neighborWeight\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"right\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"neighborWeight\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction sharpenGather(args) {\n\tconst { uv, viewportSize, amount, sample } = args;\n\treturn call(sharpnessCompose, \"sharpnessCompose\", [\n\t\tsample(uv),\n\t\tsample(call(sharpnessTapUV, \"sharpnessTapUV\", [\n\t\t\tuv,\n\t\t\tviewportSize,\n\t\t\tfloatE(0),\n\t\t\tfloatE(1)\n\t\t])),\n\t\tsample(call(sharpnessTapUV, \"sharpnessTapUV\", [\n\t\t\tuv,\n\t\t\tviewportSize,\n\t\t\tfloatE(0),\n\t\t\tfloatE(-1)\n\t\t])),\n\t\tsample(call(sharpnessTapUV, \"sharpnessTapUV\", [\n\t\t\tuv,\n\t\t\tviewportSize,\n\t\t\tfloatE(-1),\n\t\t\tfloatE(0)\n\t\t])),\n\t\tsample(call(sharpnessTapUV, \"sharpnessTapUV\", [\n\t\t\tuv,\n\t\t\tviewportSize,\n\t\t\tfloatE(1),\n\t\t\tfloatE(0)\n\t\t])),\n\t\tamount\n\t]);\n}\nconst pixelateSample = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, scale, gap, roundness) =\u003e {\n\t\"use gpu\";\n\tconst isWide = aspect \u003e 1;\n\tconst pixelCountX = max(select(__tsover_mul(scale, aspect), scale, isWide), 1);\n\tconst pixelCountY = max(select(scale, __tsover_div(scale, aspect), isWide), 1);\n\tconst sampleUV = vec2f(__tsover_div(floor(__tsover_mul(uv.x, pixelCountX)), pixelCountX), __tsover_div(floor(__tsover_mul(uv.y, pixelCountY)), pixelCountY));\n\tconst localUV = vec2f(__tsover_sub(fract(__tsover_mul(uv.x, pixelCountX)), .5), __tsover_sub(fract(__tsover_mul(uv.y, pixelCountY)), .5));\n\tconst halfSize = __tsover_sub(.5, __tsover_mul(gap, .5));\n\tconst cornerRadius = __tsover_mul(roundness, halfSize);\n\tconst qx = max(__tsover_add(__tsover_sub(abs(localUV.x), halfSize), cornerRadius), 0);\n\tconst qy = max(__tsover_add(__tsover_sub(abs(localUV.y), halfSize), cornerRadius), 0);\n\tconst sdf = __tsover_sub(length(vec2f(qx, qy)), cornerRadius);\n\tconst mask = select(f32(0), f32(1), sdf \u003c= 0);\n\treturn vec3f(sampleUV.x, sampleUV.y, mask);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gap\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"roundness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isWide\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixelCountX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\"isWide\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixelCountY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isWide\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sampleUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"pixelCountX\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"pixelCountX\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"pixelCountY\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"pixelCountY\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"pixelCountX\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"pixelCountY\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfSize\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"gap\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cornerRadius\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"roundness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"halfSize\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"localUV\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"halfSize\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cornerRadius\"\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"localUV\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"halfSize\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cornerRadius\"\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdf\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"qx\", \"qy\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cornerRadius\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sampleUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sampleUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"mask\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction pixelateGather(args) {\n\tconst packed = call(pixelateSample, \"pixelateSample\", [\n\t\targs.uv,\n\t\targs.aspect,\n\t\targs.scale,\n\t\targs.gap,\n\t\targs.roundness\n\t]);\n\tconst sampled = args.sampleStraight(packed.member(\"xy\"));\n\treturn vec4(sampled.member(\"rgb\"), sampled.member(\"a\").mul(packed.member(\"z\")));\n}\nconst glassTilesUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, intensity, baseTileCount, rotationDegrees, roundnessAmount) =\u003e {\n\t\"use gpu\";\n\tconst isWide = aspect \u003e 1;\n\tconst tileCount = vec2f(select(__tsover_mul(baseTileCount, aspect), baseTileCount, isWide), select(baseTileCount, __tsover_div(baseTileCount, aspect), isWide));\n\tconst aspectCorrectedUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst rotationRadians = __tsover_mul(rotationDegrees, DEG_TO_RAD);\n\tconst cosA = cos(rotationRadians);\n\tconst sinA = sin(rotationRadians);\n\tconst centered = aspectCorrectedUV.sub(vec2f(__tsover_mul(.5, aspect), .5));\n\tconst rotatedUV = vec2f(__tsover_sub(__tsover_mul(centered.x, cosA), __tsover_mul(centered.y, sinA)), __tsover_add(__tsover_mul(centered.x, sinA), __tsover_mul(centered.y, cosA))).add(vec2f(__tsover_mul(.5, aspect), .5));\n\tconst gridUV = vec2f(__tsover_div(rotatedUV.x, aspect), rotatedUV.y);\n\tconst cellCoord = floor(gridUV.mul(tileCount)).div(tileCount);\n\tconst localUV = gridUV.sub(cellCoord);\n\tconst oneOverTile = vec2f(1, 1).div(tileCount);\n\tconst fromCenter = localUV.div(oneOverTile).sub(vec2f(.5, .5));\n\tconst distFromCenter = __tsover_add(__tsover_mul(fromCenter.x, fromCenter.x), __tsover_mul(fromCenter.y, fromCenter.y));\n\tconst clampedRoundness = max(__tsover_sub(1, __tsover_mul(distFromCenter, __tsover_mul(roundnessAmount, 4))), 0);\n\tconst distortionFactor = __tsover_mul(intensity, .025);\n\tconst scaleFactor = __tsover_mul(distortionFactor, clampedRoundness);\n\tconst distortion = vec2f(__tsover_div(__tsover_mul(fromCenter.x, scaleFactor), aspect), __tsover_mul(fromCenter.y, scaleFactor));\n\treturn uv.add(distortion);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"baseTileCount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotationDegrees\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"roundnessAmount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isWide\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tileCount\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"baseTileCount\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"baseTileCount\",\n\t\t\t\t\t\t\t\"isWide\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"baseTileCount\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"baseTileCount\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"isWide\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotationRadians\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotationDegrees\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotationRadians\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotationRadians\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centered\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centered\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centered\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centered\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinA\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centered\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"rotatedX\", \"rotatedY\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gridUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rotatedUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rotatedUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellCoord\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"gridUV\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"tileCount\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"tileCount\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"gridUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"cellCoord\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oneOverTile\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"tileCount\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalizedLocalUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"localUV\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"oneOverTile\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fromCenter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"normalizedLocalUV\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distFromCenter\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fromCenter\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fromCenter\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fromCenter\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fromCenter\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"roundnessFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"distFromCenter\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"roundnessAmount\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"clampedRoundness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"roundnessFactor\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distortionFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.025\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaleFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"distortionFactor\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"clampedRoundness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distortion\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"fromCenter\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scaleFactor\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fromCenter\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"scaleFactor\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"distortion\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction glassTilesDistortUV(args) {\n\treturn call(glassTilesUV, \"glassTilesUV\", [\n\t\targs.uv,\n\t\targs.aspect,\n\t\targs.intensity,\n\t\targs.tileCount,\n\t\targs.rotation,\n\t\targs.roundness\n\t]);\n}\nfunction glassTilesFragment(args) {\n\tconst distortedUV = glassTilesDistortUV(args);\n\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [sampleCatmullRomExpr(args.texture, distortedUV)]);\n}\nfunction glassTilesRemapUV(args) {\n\treturn call(edgeClampUV, \"edgeClampUV\", [glassTilesDistortUV(args)]);\n}\nconst crtSampleUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, colorShift, dir) =\u003e {\n\t\"use gpu\";\n\tconst scaledColorShift = __tsover_mul(colorShift, .002);\n\treturn vec2f(__tsover_add(uv.x, __tsover_mul(scaledColorShift, dir)), uv.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorShift\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dir\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"scaledColorShift\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"colorShift\",\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"0.002\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"scaledColorShift\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"dir\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t7,\n\t\t\t\t\"uv\",\n\t\t\t\t\"y\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst rgbSplitCombine = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((redSample, greenSample, blueSample) =\u003e {\n\t\"use gpu\";\n\treturn vec3f(redSample.x, greenSample.y, blueSample.z);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"redSample\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"greenSample\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blueSample\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"redSample\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"greenSample\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"blueSample\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f }\n}) \u0026\u0026 $.f)({}));\nconst adjustShade = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, contrast, brightness) =\u003e {\n\t\"use gpu\";\n\treturn color.sub(vec3f(.5)).mul(contrast).add(vec3f(.5)).mul(brightness);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"brightness\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"contrast\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t\"mul\"\n\t\t\t],\n\t\t\t[\"brightness\"]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec3f\": () =\u003e vec3f }\n}) \u0026\u0026 $.f)({}));\nconst scanlineShade = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, uvY, scanlineFrequency, scanlineIntensity) =\u003e {\n\t\"use gpu\";\n\tconst scanlinePosition = __tsover_mul(uvY, scanlineFrequency);\n\tconst scanlineWave = sin(__tsover_mul(scanlinePosition, __tsover_mul(3.14159, 2)));\n\tconst scanlineEffect = __tsover_sub(1, __tsover_mul(scanlineIntensity, __tsover_add(__tsover_mul(scanlineWave, .5), .5)));\n\treturn color.mul(scanlineEffect);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scanlineFrequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scanlineIntensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scanlinePosition\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scanlineFrequency\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scanlineWave\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"scanlinePosition\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"3.14159\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scanlineEffect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"scanlineIntensity\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"scanlineWave\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"scanlineEffect\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"std.sin\": () =\u003e sin }\n}) \u0026\u0026 $.f)({}));\nconst phosphorShade = typegpu_default.fn([\n\tvec3f,\n\tvec2f,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, uv, pixelSize) =\u003e {\n\t\"use gpu\";\n\tconst phosphorScale = __tsover_mul(pixelSize, .5);\n\tconst pixelPhase = fract(uv.mul(phosphorScale));\n\tconst redMask = __tsover_add(__tsover_mul(sin(__tsover_mul(pixelPhase.x, 6.28318)), .1), .95);\n\tconst greenMask = __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(pixelPhase.x, 6.28318), 2.09)), .1), .95);\n\tconst blueMask = __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(pixelPhase.x, 6.28318), 4.18)), .1), .95);\n\treturn vec3f(__tsover_mul(color.x, redMask), __tsover_mul(color.y, greenMask), __tsover_mul(color.z, blueMask));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pixelSize\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phosphorScale\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"pixelSize\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixelPhase\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"phosphorScale\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"redMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"pixelPhase\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"6.28318\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"greenMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pixelPhase\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"6.28318\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"2.09\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blueMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pixelPhase\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"6.28318\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"4.18\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"redMask\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"greenMask\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"blueMask\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst vignetteShade = typegpu_default.fn([\n\tvec3f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, uv, aspect, vignetteRadius, vignetteIntensity) =\u003e {\n\t\"use gpu\";\n\tconst centeredUV = uv.sub(vec2f(.5, .5));\n\tconst vignetteDistance = length(vec2f(__tsover_mul(centeredUV.x, aspect), centeredUV.y));\n\tconst innerEdge = __tsover_sub(1, __tsover_mul(vignetteRadius, .9));\n\tconst outerEdge = __tsover_add(innerEdge, .5);\n\tconst vignette = mix(1, __tsover_sub(1, smoothstep(innerEdge, outerEdge, vignetteDistance)), vignetteIntensity);\n\treturn color.mul(vignette);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vignetteRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"vignetteIntensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectCorrectedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vignetteDistance\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"aspectCorrectedUV\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerEdge\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"vignetteRadius\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outerEdge\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"innerEdge\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vignetteValue\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"innerEdge\",\n\t\t\t\t\t\t\t\"outerEdge\",\n\t\t\t\t\t\t\t\"vignetteDistance\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vignette\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"vignetteValue\",\n\t\t\t\t\t\t\"vignetteIntensity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"vignette\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nvar FIELD_LINES = 487;\nvar hash2D = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\treturn hash12(p);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"noise.hash12\",\n\t\t\t[\"p\"]\n\t\t]]]]\n\t},\n\texternals: { \"noise.hash12\": () =\u003e hash12 }\n}) \u0026\u0026 $.f)({}));\nvar smoothNoise2D = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(p);\n\tconst f = fract(p);\n\tconst u = f.mul(f).mul(vec2f(3, 3).sub(f.mul(2)));\n\tconst a = hash2D(i);\n\tconst b = hash2D(i.add(vec2f(1, 0)));\n\tconst c = hash2D(i.add(vec2f(0, 1)));\n\tconst dd = hash2D(i.add(vec2f(1, 1)));\n\treturn mix(mix(a, b, u.x), mix(c, dd, u.x), u.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[5, \"3\"], [5, \"3\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash2D\",\n\t\t\t\t\t[\"i\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash2D\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash2D\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0\"], [5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash2D\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"hash2D\": () =\u003e hash2D,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst burstGate = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\treturn smoothstep(.45, .8, smoothNoise2D(vec2f(__tsover_mul(t, .4), 0)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.smoothstep\",\n\t\t\t[\n\t\t\t\t[5, \"0.45\"],\n\t\t\t\t[5, \"0.8\"],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"smoothNoise2D\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"smoothNoise2D\": () =\u003e smoothNoise2D,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst rowJitter = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvY, t, scanlineNoise, burst) =\u003e {\n\t\"use gpu\";\n\tconst rowInt = floor(__tsover_mul(uvY, FIELD_LINES));\n\tconst h0 = __tsover_mul(__tsover_sub(hash12(vec2f(rowInt, t)), .5), 2);\n\tconst h1 = __tsover_mul(__tsover_sub(hash12(vec2f(rowInt, __tsover_add(t, 69.42))), .5), 2);\n\tconst fineGate = __tsover_add(.25, __tsover_mul(burst, .75));\n\tconst chromaRowOffset = __tsover_mul(__tsover_mul(__tsover_mul(h0, scanlineNoise), .008), fineGate);\n\treturn vec2f(__tsover_mul(__tsover_mul(__tsover_mul(h1, scanlineNoise), .004), fineGate), chromaRowOffset);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scanlineNoise\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"burst\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rowInt\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"FIELD_LINES\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash12\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[\"rowInt\", \"t\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash12\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[\"rowInt\", [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"69.42\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fineGate\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"burst\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chromaRowOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"h0\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scanlineNoise\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.008\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"fineGate\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lumaRowOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"h1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scanlineNoise\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.004\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"fineGate\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"lumaRowOffset\", \"chromaRowOffset\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"FIELD_LINES\": () =\u003e FIELD_LINES,\n\t\t\"noise.hash12\": () =\u003e hash12,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst tapeWave = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvY, t, wobble) =\u003e {\n\t\"use gpu\";\n\tconst wave1 = __tsover_sub(smoothNoise2D(vec2f(__tsover_mul(uvY, 3), __tsover_mul(t, .8))), .5);\n\tconst wave2 = __tsover_sub(smoothNoise2D(vec2f(__tsover_mul(uvY, 30), __tsover_mul(t, 6))), .5);\n\treturn __tsover_mul(__tsover_add(__tsover_mul(wave1, .008), __tsover_mul(wave2, .002)), wobble);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wobble\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wave1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"smoothNoise2D\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wave2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"smoothNoise2D\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"30\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"6\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wave1\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.008\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wave2\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.002\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"wobble\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"smoothNoise2D\": () =\u003e smoothNoise2D,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst creaseShift = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvY, t, wobble) =\u003e {\n\t\"use gpu\";\n\tconst creasePhase = smoothstep(.92, .99, sin(__tsover_sub(__tsover_mul(uvY, 8), __tsover_mul(t, 3.77))));\n\tconst creaseNoise = smoothstep(.3, 1, smoothNoise2D(vec2f(__tsover_mul(uvY, 4.77), t)));\n\treturn __tsover_mul(__tsover_mul(__tsover_mul(creasePhase, creaseNoise), wobble), -.018);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wobble\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"creasePhase\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.92\"],\n\t\t\t\t\t\t[5, \"0.99\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"3.77\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"creaseNoise\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.3\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"smoothNoise2D\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"4.77\"]\n\t\t\t\t\t\t\t\t], \"t\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"creasePhase\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"creaseNoise\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"wobble\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.018\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"smoothNoise2D\": () =\u003e smoothNoise2D,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst headSwitch = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvY, t, wobble, burst) =\u003e {\n\t\"use gpu\";\n\tconst switchPhase = __tsover_sub(1, smoothstep(0, .06, uvY));\n\tconst switchNoise = __tsover_sub(smoothNoise2D(vec2f(__tsover_mul(uvY, 60), __tsover_mul(t, 14))), .5);\n\treturn vec2f(__tsover_mul(__tsover_mul(__tsover_mul(switchPhase, switchNoise), wobble), .09), __tsover_mul(__tsover_mul(__tsover_mul(switchPhase, wobble), burst), .02));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wobble\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"burst\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"switchPhase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0.06\"],\n\t\t\t\t\t\t\t\"uvY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"switchNoise\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"smoothNoise2D\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"60\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"14\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"switchX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"switchPhase\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"switchNoise\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"wobble\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.09\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"switchY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"switchPhase\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"wobble\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"burst\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"switchX\", \"switchY\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"smoothNoise2D\": () =\u003e smoothNoise2D,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst vhsSampleUVs = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, time, speed, wobble, scanlineNoise) =\u003e {\n\t\"use gpu\";\n\tconst t = __tsover_mul(time, speed);\n\tconst burst = burstGate(t);\n\tconst jitter = rowJitter(uv.y, t, scanlineNoise, burst);\n\tconst sw = headSwitch(uv.y, t, wobble, burst);\n\tconst globalX = __tsover_add(__tsover_add(tapeWave(uv.y, t, wobble), creaseShift(uv.y, t, wobble)), sw.x);\n\tconst sy = __tsover_add(uv.y, sw.y);\n\treturn vec4f(__tsover_add(__tsover_add(uv.x, globalX), jitter.x), sy, __tsover_add(__tsover_add(uv.x, globalX), jitter.y), sy);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wobble\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scanlineNoise\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"speed\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"burst\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"burstGate\",\n\t\t\t\t\t[\"t\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"jitter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"rowJitter\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"scanlineNoise\",\n\t\t\t\t\t\t\"burst\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sw\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"headSwitch\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"wobble\",\n\t\t\t\t\t\t\"burst\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"globalX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"tapeWave\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"wobble\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"creaseShift\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"wobble\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sw\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sw\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"globalX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"jitter\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"sy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"globalX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"jitter\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"sy\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"burstGate\": () =\u003e burstGate,\n\t\t\"rowJitter\": () =\u003e rowJitter,\n\t\t\"headSwitch\": () =\u003e headSwitch,\n\t\t\"tapeWave\": () =\u003e tapeWave,\n\t\t\"creaseShift\": () =\u003e creaseShift,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst vhsAcBeat = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, time, speed, wobble) =\u003e {\n\t\"use gpu\";\n\tconst t = __tsover_mul(time, speed);\n\treturn __tsover_add(1, __tsover_mul(__tsover_mul(cos(__tsover_add(__tsover_mul(mod(t, 6.2831853), 2), __tsover_mul(uv.y, .5))), .015), wobble));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"wobble\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"t\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"time\",\n\t\t\t\t\"*\",\n\t\t\t\t\"speed\"\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mod\",\n\t\t\t\t\t\t\t\t\t[\"t\", [5, \"6.2831853\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.015\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"wobble\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.mod\": () =\u003e mod\n\t}\n}) \u0026\u0026 $.f)({}));\nconst vhsChromaTapUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((chromaUV, smearScale, i) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_add(chromaUV.x, __tsover_mul(__tsover_mul(i, -1), smearScale)), chromaUV.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"chromaUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"smearScale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"chromaUV\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"smearScale\"\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t7,\n\t\t\t\t\"chromaUV\",\n\t\t\t\t\"y\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst yiqRecombine = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((luma, c1, c2, c3, c4, c5) =\u003e {\n\t\"use gpu\";\n\tconst sharpY = dot(luma.xyz, vec3f(.299, .587, .114));\n\tconst iAxis = vec3f(.596, -.274, -.322);\n\tconst qAxis = vec3f(.211, -.523, .312);\n\tconst accI = __tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(dot(c1.xyz, iAxis), .06666666666666667), __tsover_mul(dot(c2.xyz, iAxis), .13333333333333333)), __tsover_mul(dot(c3.xyz, iAxis), .2)), __tsover_mul(dot(c4.xyz, iAxis), .26666666666666666)), __tsover_mul(dot(c5.xyz, iAxis), .3333333333333333));\n\tconst accQ = __tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(dot(c1.xyz, qAxis), .06666666666666667), __tsover_mul(dot(c2.xyz, qAxis), .13333333333333333)), __tsover_mul(dot(c3.xyz, qAxis), .2)), __tsover_mul(dot(c4.xyz, qAxis), .26666666666666666)), __tsover_mul(dot(c5.xyz, qAxis), .3333333333333333));\n\treturn vec3f(__tsover_add(__tsover_add(sharpY, __tsover_mul(accI, .956)), __tsover_mul(accQ, .621)), __tsover_sub(__tsover_sub(sharpY, __tsover_mul(accI, .272)), __tsover_mul(accQ, .647)), __tsover_add(__tsover_sub(sharpY, __tsover_mul(accI, 1.106)), __tsover_mul(accQ, 1.703)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"luma\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c4\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c5\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sharpY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"luma\",\n\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iAxis\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.596\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.274\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.322\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qAxis\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.211\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.523\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.312\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accI\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c1\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t], \"iAxis\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.06666666666666667\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c2\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t], \"iAxis\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.13333333333333333\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"c3\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t], \"iAxis\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c4\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t], \"iAxis\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.26666666666666666\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c5\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t], \"iAxis\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.3333333333333333\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accQ\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c1\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t], \"qAxis\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.06666666666666667\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c2\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t], \"qAxis\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.13333333333333333\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"c3\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t], \"qAxis\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"c4\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t], \"qAxis\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.26666666666666666\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c5\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t], \"qAxis\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.3333333333333333\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sharpY\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"accI\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.956\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"accQ\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.621\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sharpY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"accI\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.272\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"accQ\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.647\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sharpY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"accI\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"1.106\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"accQ\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.703\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst beatShade = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, acBeat) =\u003e {\n\t\"use gpu\";\n\tconst clamped = clamp(color.xyz.mul(acBeat), vec3f(0, 0, 0), vec3f(1, 1, 1));\n\treturn vec4f(clamped.x, clamped.y, clamped.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"acBeat\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"clamped\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"acBeat\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"clamped\",\n\t\t\t\t\t\"z\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar hash11 = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\treturn hash11$1(p);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"noise.hash11\",\n\t\t\t[\"p\"]\n\t\t]]]]\n\t},\n\texternals: { \"noise.hash11\": () =\u003e hash11$1 }\n}) \u0026\u0026 $.f)({}));\nconst burstPulse = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((slowFrame, fastFrame, intensity) =\u003e {\n\t\"use gpu\";\n\tconst slowHash = hash11(slowFrame);\n\tconst slowPulse = __tsover_mul(__tsover_mul(slowHash, slowHash), slowHash);\n\tconst fastHash = hash11(__tsover_add(fastFrame, 73));\n\tconst fastPulse = __tsover_mul(fastHash, fastHash);\n\tconst threshold = __tsover_sub(1, intensity);\n\tconst majorBurst = step(threshold, slowPulse);\n\tconst minorFlicker = step(__tsover_add(threshold, .15), fastPulse);\n\treturn __tsover_mul(clamp(__tsover_add(__tsover_mul(majorBurst, .8), __tsover_mul(minorFlicker, .4)), 0, 1), intensity);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"slowFrame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fastFrame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slowHash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[\"slowFrame\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slowPulse\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"slowHash\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"slowHash\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"slowHash\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fastHash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fastFrame\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"73\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fastPulse\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"fastHash\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"fastHash\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"threshold\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"intensity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"majorBurst\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[\"threshold\", \"slowPulse\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"minorFlicker\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t], \"fastPulse\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"majorBurst\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"minorFlicker\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"intensity\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst bandJitter = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((bandY, frame, seedScale, frameScale, gateFactor, hashOffset, amplitude, glitchStrength) =\u003e {\n\t\"use gpu\";\n\tconst seed = __tsover_add(__tsover_mul(bandY, seedScale), __tsover_mul(frame, frameScale));\n\tconst bandHash = hash11(seed);\n\tconst active = step(__tsover_sub(1, __tsover_mul(glitchStrength, gateFactor)), bandHash);\n\treturn vec3f(__tsover_mul(__tsover_mul(__tsover_sub(hash11(__tsover_add(seed, hashOffset)), .5), amplitude), active), active, seed);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bandY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seedScale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frameScale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gateFactor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hashOffset\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amplitude\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glitchStrength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bandY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"seedScale\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"frameScale\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bandHash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[\"seed\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"active\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"glitchStrength\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gateFactor\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"bandHash\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displace\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash11\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"hashOffset\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"amplitude\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"active\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"displace\",\n\t\t\t\t\t\"active\",\n\t\t\t\t\t\"seed\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst blockShift = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colX, bandY1, slowFrame, glitchStrength) =\u003e {\n\t\"use gpu\";\n\tconst blockSeed = __tsover_add(__tsover_add(__tsover_mul(colX, .41), __tsover_mul(bandY1, .67)), __tsover_mul(slowFrame, 2.31));\n\tconst blockHash = hash11(blockSeed);\n\tconst blockActive = step(__tsover_sub(1, __tsover_mul(glitchStrength, .35)), blockHash);\n\treturn vec2f(__tsover_mul(__tsover_mul(__tsover_sub(hash11(__tsover_add(blockSeed, 77)), .5), .18), blockActive), blockActive);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bandY1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"slowFrame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glitchStrength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blockSeed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"colX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.41\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.67\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2.31\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blockHash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[\"blockSeed\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blockActive\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"glitchStrength\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], \"blockHash\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displace\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash11\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"blockSeed\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"77\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.18\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"blockActive\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"displace\", \"blockActive\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst mirrorFlips = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((displacedUV, colX, bandY1, slowFrame, bandActive1, mirrorChance, glitchStrength) =\u003e {\n\t\"use gpu\";\n\tconst mirrorSeed = __tsover_add(__tsover_add(__tsover_mul(colX, .83), __tsover_mul(bandY1, 1.17)), __tsover_mul(slowFrame, 4.57));\n\tconst hMirrorHash = hash11(mirrorSeed);\n\tconst vMirrorHash = hash11(__tsover_add(mirrorSeed, 500));\n\tconst hMirrorActive = __tsover_mul(step(__tsover_sub(1, __tsover_mul(mirrorChance, glitchStrength)), hMirrorHash), bandActive1);\n\tconst vMirrorActive = __tsover_mul(step(__tsover_sub(1, __tsover_mul(__tsover_mul(mirrorChance, glitchStrength), .4)), vMirrorHash), bandActive1);\n\treturn vec2f(mix(displacedUV.x, __tsover_sub(1, displacedUV.x), hMirrorActive), mix(displacedUV.y, __tsover_sub(1, displacedUV.y), vMirrorActive));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"displacedUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bandY1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"slowFrame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bandActive1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mirrorChance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glitchStrength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mirrorSeed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"colX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.83\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.17\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"4.57\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hMirrorHash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[\"mirrorSeed\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vMirrorHash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"mirrorSeed\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"500\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hMirrorActive\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"mirrorChance\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"hMirrorHash\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"bandActive1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vMirrorActive\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"mirrorChance\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"vMirrorHash\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"bandActive1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hMirrorActive\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"vMirrorActive\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst GlitchGeom = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tmirroredUV: vec2f,\n\tspread: f32,\n\tstrength: f32,\n\tbandY1: f32,\n\tslowFrame: f32,\n\tbandGate: f32,\n\tblockGate: f32,\n\tdistortion: f32\n}), \"GlitchGeom\");\nconst glitchGeom = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], GlitchGeom)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, time, intensity, speed, blockDensity, mirrorChance) =\u003e {\n\t\"use gpu\";\n\tconst t = __tsover_mul(time, speed);\n\tconst slowFrame = floor(__tsover_mul(t, 2.5));\n\tconst fastFrame = floor(__tsover_mul(t, 10));\n\tconst glitchStrength = burstPulse(slowFrame, fastFrame, intensity);\n\tconst bandY1 = floor(__tsover_mul(uv.y, blockDensity));\n\tconst band1 = bandJitter(bandY1, slowFrame, .37, 7.13, .5, 42, .25, glitchStrength);\n\tconst band2 = bandJitter(floor(__tsover_mul(uv.y, __tsover_mul(blockDensity, 2))), fastFrame, .53, 3.37, .7, 99, .12, glitchStrength);\n\tconst band3 = bandJitter(floor(__tsover_mul(uv.y, __tsover_mul(blockDensity, 4))), fastFrame, .71, 11.71, .9, 173, .05, glitchStrength);\n\tconst colX = floor(__tsover_mul(uv.x, 4));\n\tconst block = blockShift(colX, bandY1, slowFrame, glitchStrength);\n\tconst totalDisplaceX = __tsover_add(__tsover_add(__tsover_add(band1.x, band2.x), band3.x), block.x);\n\tconst vertJitter = __tsover_mul(__tsover_mul(band1.y, __tsover_sub(hash11(__tsover_add(band1.z, 200)), .5)), .012);\n\tconst mirroredUV = mirrorFlips(vec2f(clamp(__tsover_add(uv.x, __tsover_mul(totalDisplaceX, glitchStrength)), 0, 1), clamp(__tsover_add(uv.y, __tsover_mul(vertJitter, glitchStrength)), 0, 1)), colX, bandY1, slowFrame, band1.y, mirrorChance, glitchStrength);\n\tconst spread = __tsover_add(glitchStrength, __tsover_mul(abs(totalDisplaceX), 2));\n\tconst anyDistortion = clamp(__tsover_add(__tsover_add(band1.y, band2.y), band3.y), 0, 1);\n\treturn GlitchGeom({\n\t\tmirroredUV,\n\t\tspread,\n\t\tstrength: glitchStrength,\n\t\tbandY1,\n\t\tslowFrame,\n\t\tbandGate: band1.y,\n\t\tblockGate: block.y,\n\t\tdistortion: anyDistortion\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"speed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blockDensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mirrorChance\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"speed\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slowFrame\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fastFrame\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glitchStrength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"burstPulse\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t\"fastFrame\",\n\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bandY1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"blockDensity\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"band1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"bandJitter\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t[5, \"0.37\"],\n\t\t\t\t\t\t[5, \"7.13\"],\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t[5, \"42\"],\n\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bandY2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blockDensity\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"band2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"bandJitter\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"bandY2\",\n\t\t\t\t\t\t\"fastFrame\",\n\t\t\t\t\t\t[5, \"0.53\"],\n\t\t\t\t\t\t[5, \"3.37\"],\n\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t[5, \"99\"],\n\t\t\t\t\t\t[5, \"0.12\"],\n\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bandY3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"blockDensity\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"band3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"bandJitter\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"bandY3\",\n\t\t\t\t\t\t\"fastFrame\",\n\t\t\t\t\t\t[5, \"0.71\"],\n\t\t\t\t\t\t[5, \"11.71\"],\n\t\t\t\t\t\t[5, \"0.9\"],\n\t\t\t\t\t\t[5, \"173\"],\n\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"block\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"blockShift\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"colX\",\n\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalDisplaceX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"band1\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"band2\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"band3\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vertJitter\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"band1\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash11\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"band1\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"200\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.012\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"totalDisplaceX\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"vertJitter\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mirroredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mirrorFlips\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\t\"colX\",\n\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"band1\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mirrorChance\",\n\t\t\t\t\t\t\"glitchStrength\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spread\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"glitchStrength\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[\"totalDisplaceX\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"anyDistortion\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"band1\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"band2\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"band3\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"GlitchGeom\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"mirroredUV\": \"mirroredUV\",\n\t\t\t\t\t\"spread\": \"spread\",\n\t\t\t\t\t\"strength\": \"glitchStrength\",\n\t\t\t\t\t\"bandY1\": \"bandY1\",\n\t\t\t\t\t\"slowFrame\": \"slowFrame\",\n\t\t\t\t\t\"bandGate\": [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"band1\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"blockGate\": [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"block\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"distortion\": \"anyDistortion\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"burstPulse\": () =\u003e burstPulse,\n\t\t\"bandJitter\": () =\u003e bandJitter,\n\t\t\"blockShift\": () =\u003e blockShift,\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"mirrorFlips\": () =\u003e mirrorFlips,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"GlitchGeom\": () =\u003e GlitchGeom\n\t}\n}) \u0026\u0026 $.f)({}));\nconst glitchSplitUVs = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((mirroredUV, rgbShift, spread) =\u003e {\n\t\"use gpu\";\n\tconst rgbOffset = __tsover_mul(__tsover_mul(rgbShift, .003), spread);\n\tconst redX = clamp(__tsover_add(mirroredUV.x, rgbOffset), 0, 1);\n\tconst blueX = clamp(__tsover_sub(mirroredUV.x, rgbOffset), 0, 1);\n\treturn vec4f(redX, mirroredUV.y, blueX, mirroredUV.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mirroredUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rgbShift\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spread\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgbOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rgbShift\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.003\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"spread\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"redX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mirroredUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"rgbOffset\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blueX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mirroredUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rgbOffset\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t\"redX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mirroredUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"blueX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"mirroredUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst fillBarsShade = typegpu_default.fn([\n\tvec4f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, uv, bandY1, slowFrame, colorBarMix, strength, bandGate, blockGate) =\u003e {\n\t\"use gpu\";\n\tconst colX = floor(__tsover_mul(uv.x, 4));\n\tconst blockSeed = __tsover_add(__tsover_add(__tsover_mul(colX, .41), __tsover_mul(bandY1, .67)), __tsover_mul(slowFrame, 2.31));\n\tconst fillStyleHash = hash11(__tsover_add(blockSeed, 555));\n\tconst barOffset = hash11(__tsover_add(__tsover_add(bandY1, __tsover_mul(slowFrame, 3.33)), 333));\n\tconst barX = fract(__tsover_add(__tsover_mul(uv.x, 3), __tsover_mul(barOffset, 7)));\n\tconst barIndex = floor(__tsover_mul(barX, 7));\n\tconst smpteColor = vec3f(__tsover_add(__tsover_sub(1, step(2, barIndex)), __tsover_mul(step(4, barIndex), __tsover_sub(1, step(6, barIndex)))), __tsover_sub(1, step(4, barIndex)), __tsover_sub(1, step(.5, fract(__tsover_mul(barIndex, .5)))));\n\tconst solidHue = fract(__tsover_add(__tsover_mul(hash11(__tsover_add(bandY1, 13)), .8), __tsover_mul(slowFrame, .07)));\n\tconst sh6 = __tsover_mul(solidHue, 6);\n\tconst fillColor = mix(vec3f(clamp(__tsover_sub(abs(__tsover_sub(sh6, 3)), 1), 0, 1), clamp(__tsover_sub(2, abs(__tsover_sub(sh6, 2))), 0, 1), clamp(__tsover_sub(2, abs(__tsover_sub(sh6, 4))), 0, 1)).mul(1.3), smpteColor, vec3f(step(.5, fillStyleHash)));\n\tconst colorBarStrength = __tsover_mul(__tsover_mul(__tsover_mul(bandGate, blockGate), colorBarMix), strength);\n\tconst withBars = mix(color.xyz, fillColor.mul(color.w), vec3f(colorBarStrength));\n\treturn vec4f(withBars.x, withBars.y, withBars.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bandY1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"slowFrame\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorBarMix\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bandGate\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blockGate\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blockSeed\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"colX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.41\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.67\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2.31\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fillStyleHash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"blockSeed\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"555\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barOffset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"hash11\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3.33\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"333\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barX\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"barOffset\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barIndex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"barX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barR\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[[5, \"2\"], \"barIndex\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[[5, \"4\"], \"barIndex\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t[[5, \"6\"], \"barIndex\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barG\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[5, \"4\"], \"barIndex\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"barB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[[5, \"0.5\"], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"barIndex\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"smpteColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"barR\",\n\t\t\t\t\t\t\"barG\",\n\t\t\t\t\t\t\"barB\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"solidHue\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hash11\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"bandY1\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"13\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"slowFrame\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.07\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sh6\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"solidHue\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"6\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"solidColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sh6\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sh6\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sh6\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"1.3\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fillColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"solidColor\",\n\t\t\t\t\t\t\"smpteColor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t[[5, \"0.5\"], \"fillStyleHash\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colorBarStrength\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bandGate\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"blockGate\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"colorBarMix\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"strength\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"withBars\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"fillColor\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"colorBarStrength\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"withBars\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"withBars\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"withBars\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"hash11\": () =\u003e hash11,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst distortScanShade = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, uvY, viewportY, scanlines, distortion) =\u003e {\n\t\"use gpu\";\n\tconst pixelY = __tsover_mul(uvY, viewportY);\n\tconst scanlineWave = __tsover_add(__tsover_mul(sin(__tsover_mul(pixelY, 3.14159265)), .5), .5);\n\tconst scanlineEffect = __tsover_sub(1, __tsover_mul(__tsover_mul(__tsover_mul(scanlines, scanlineWave), .3), distortion));\n\tconst shaded = color.xyz.mul(scanlineEffect);\n\treturn vec4f(shaded.x, shaded.y, shaded.z, color.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewportY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scanlines\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distortion\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pixelY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"viewportY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scanlineWave\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"pixelY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3.14159265\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scanlineEffect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"scanlines\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"scanlineWave\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"distortion\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shaded\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"scanlineEffect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"shaded\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"shaded\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"shaded\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nexport { vignetteShade as C, vhsSampleUVs as S, scatterGather as _, dropShadowComposite as a, vhsAcBeat as b, glassTilesFragment as c, glitchSplitUVs as d, motionBlurGather as f, scanlineShade as g, rgbSplitCombine as h, distortScanShade as i, glassTilesRemapUV as l, pixelateGather as m, beatShade as n, dropShadowUV as o, phosphorShade as p, crtSampleUV as r, fillBarsShade as s, adjustShade as t, glitchGeom as u, sharpenGather as v, yiqRecombine as w, vhsChromaTapUV as x, silhouetteBlur as y };\n","import { Br as struct, Cr as sin, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD, Tr as sqrt, _r as mix, ar as clamp, en as aspectCenteredDelta, er as select, fr as floor, gr as min, hr as max, in as aspectOf, jr as vec3f, ln as rotate2, lr as exp, mr as length, nn as aspectCorrectedUV, or as cos, qr as f32, rr as atan2, tn as aspectCentrePosition, tr as abs, wr as smoothstep, zn as TAU } from \"./lower-Bd2jez_2.js\";\nimport { t as luma601Dot } from \"./tone-BKhfiOBn.js\";\nimport { a as chromaticRingBand, l as radialGaussianFalloff, t as angularCosineSpikes } from \"./lightfields-DvrUaH_6.js\";\nvar EPS = 1e-5;\nconst segmentArcPerp = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, a, b) =\u003e {\n\t\"use gpu\";\n\tconst pax = __tsover_sub(p.x, a.x);\n\tconst pay = __tsover_sub(p.y, a.y);\n\tconst bax = __tsover_sub(b.x, a.x);\n\tconst bay = __tsover_sub(b.y, a.y);\n\tconst len = max(length(vec2f(bax, bay)), f32(EPS));\n\tconst t = __tsover_div(__tsover_add(__tsover_mul(pax, bax), __tsover_mul(pay, bay)), len);\n\tconst overshoot = max(max(-t, __tsover_sub(t, len)), f32(0));\n\tconst h = clamp(__tsover_div(t, len), f32(0), f32(1));\n\tconst dSeg = length(vec2f(__tsover_sub(pax, __tsover_mul(bax, h)), __tsover_sub(pay, __tsover_mul(bay, h))));\n\treturn vec3f(t, sqrt(max(__tsover_sub(__tsover_mul(dSeg, dSeg), __tsover_mul(overshoot, overshoot)), f32(0))), len);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"a\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"b\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bax\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bay\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[\"bax\", \"bay\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"EPS\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"pax\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"bax\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"pay\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"bay\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"len\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"overshoot\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"len\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"len\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dSeg\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"pax\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bax\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"pay\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bay\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dSeg\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dSeg\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"overshoot\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"overshoot\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"perp\",\n\t\t\t\t\t\"len\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"EPS\": () =\u003e EPS,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst lineMask = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, pointA, pointB, thickness, style, dashLength, gapLength, capStart, capEnd) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst seg = segmentArcPerp(aspectCorrectedUV(uv, viewport), aspectCentrePosition(pointA, aspect), aspectCentrePosition(pointB, aspect));\n\tconst t = seg.x;\n\tconst perp = seg.y;\n\tconst len = seg.z;\n\tconst halfT = __tsover_mul(thickness, .5);\n\tconst cSolid = __tsover_sub(t, __tsover_mul(len, .5));\n\tconst axSolid = __tsover_mul(len, .5);\n\tconst rawDash = max(dashLength, f32(EPS));\n\tconst rawPeriod = __tsover_add(rawDash, gapLength);\n\tconst nDash = max(floor(__tsover_add(__tsover_div(__tsover_add(len, gapLength), rawPeriod), .5)), f32(1));\n\tconst scale = __tsover_div(len, max(__tsover_add(__tsover_mul(nDash, rawDash), __tsover_mul(__tsover_sub(nDash, 1), gapLength)), f32(EPS)));\n\tconst dashL = __tsover_mul(rawDash, scale);\n\tconst period = __tsover_mul(rawPeriod, scale);\n\tconst kDash = clamp(floor(__tsover_div(t, period)), f32(0), __tsover_sub(nDash, 1));\n\tconst cDash = __tsover_sub(t, __tsover_add(__tsover_mul(kDash, period), __tsover_mul(dashL, .5)));\n\tconst axDashRound = max(__tsover_sub(__tsover_mul(dashL, .5), halfT), f32(0));\n\tconst axDashSquare = __tsover_mul(dashL, .5);\n\tconst rawDotPeriod = max(__tsover_add(thickness, gapLength), f32(EPS));\n\tconst nDot = max(floor(__tsover_add(__tsover_div(len, rawDotPeriod), .5)), f32(1));\n\tconst dotPeriod = __tsover_div(len, nDot);\n\tconst kDot = clamp(floor(__tsover_add(__tsover_div(t, dotPeriod), .5)), f32(0), nDot);\n\tconst cDot = __tsover_sub(t, __tsover_mul(kDot, dotPeriod));\n\tconst isPattern = style \u003e= .5;\n\tconst isDotted = style \u003e= 1.5;\n\tconst c = select(cSolid, select(cDash, cDot, isDotted), isPattern);\n\tconst axRound = select(axSolid, select(axDashRound, f32(0), isDotted), isPattern);\n\tconst axSquare = select(axSolid, select(axDashSquare, halfT, isDotted), isPattern);\n\tconst capHere = select(capStart, capEnd, c \u003e 0);\n\tconst sdRound = __tsover_sub(length(vec2f(max(__tsover_sub(abs(c), axRound), f32(0)), perp)), halfT);\n\tconst qx = __tsover_sub(abs(c), axSquare);\n\tconst qy = __tsover_sub(perp, halfT);\n\tconst sd = select(__tsover_add(length(vec2f(max(qx, f32(0)), max(qy, f32(0)))), min(max(qx, qy), f32(0))), sdRound, capHere \u003e= .5);\n\tconst feather = __tsover_div(1, viewport.y);\n\treturn __tsover_sub(1, smoothstep(-feather, feather, sd));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pointA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pointB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"style\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dashLength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gapLength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"capStart\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"capEnd\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectCorrectedUV\",\n\t\t\t\t\t[\"uv\", \"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectCentrePosition\",\n\t\t\t\t\t[\"pointA\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectCentrePosition\",\n\t\t\t\t\t[\"pointB\", \"aspect\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seg\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"segmentArcPerp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"seg\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"perp\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"seg\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"len\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"seg\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfT\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cSolid\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axSolid\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"len\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rawDash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"dashLength\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"EPS\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rawPeriod\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rawDash\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"gapLength\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nDash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"gapLength\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"rawPeriod\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scale\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"len\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"nDash\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rawDash\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"nDash\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gapLength\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"EPS\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dashL\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rawDash\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"period\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rawPeriod\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kDash\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"period\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nDash\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cDash\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"kDash\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"period\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dashL\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axDashRound\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dashL\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"halfT\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axDashSquare\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dashL\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rawDotPeriod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"gapLength\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"EPS\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nDot\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"len\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"rawDotPeriod\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dotPeriod\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"len\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"nDot\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"kDot\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"dotPeriod\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"nDot\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cDot\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"kDot\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dotPeriod\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isPattern\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"style\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isDotted\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"style\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"cSolid\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"cDash\",\n\t\t\t\t\t\t\t\t\"cDot\",\n\t\t\t\t\t\t\t\t\"isDotted\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"isPattern\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axRound\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"axSolid\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"axDashRound\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"isDotted\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"isPattern\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axSquare\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"axSolid\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"axDashSquare\",\n\t\t\t\t\t\t\t\t\"halfT\",\n\t\t\t\t\t\t\t\t\"isDotted\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"isPattern\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"capHere\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"capStart\",\n\t\t\t\t\t\t\"capEnd\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdRound\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"axRound\"\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], \"perp\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"halfT\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"axSquare\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"qy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"perp\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"halfT\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdSquare\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qx\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"qy\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"qx\", \"qy\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdSquare\",\n\t\t\t\t\t\t\"sdRound\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"capHere\",\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"feather\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"feather\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"feather\",\n\t\t\t\t\t\t\"sd\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"geom.aspectCorrectedUV\": () =\u003e aspectCorrectedUV,\n\t\t\"geom.aspectCentrePosition\": () =\u003e aspectCentrePosition,\n\t\t\"segmentArcPerp\": () =\u003e segmentArcPerp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"EPS\": () =\u003e EPS,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sineWaveMask = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, angle, position, frequency, amplitude, thickness, softness, animTime) =\u003e {\n\t\"use gpu\";\n\tconst centered = aspectCenteredDelta(uv, position, viewport);\n\tconst angleRad = __tsover_mul(angle, DEG_TO_RAD);\n\tconst rotated = rotate2(centered, cos(angleRad), sin(angleRad));\n\tconst waveInput = __tsover_add(__tsover_mul(__tsover_mul(rotated.x, frequency), TAU), animTime);\n\tconst sineWave = __tsover_mul(sin(waveInput), amplitude);\n\tconst distanceFromWave = abs(__tsover_sub(rotated.y, sineWave));\n\tconst halfThickness = __tsover_mul(thickness, .5);\n\tconst halfSoftness = __tsover_mul(softness, .5);\n\treturn __tsover_sub(1, smoothstep(__tsover_sub(halfThickness, halfSoftness), __tsover_add(halfThickness, halfSoftness), distanceFromWave));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"position\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amplitude\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centered\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectCenteredDelta\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"position\",\n\t\t\t\t\t\t\"viewport\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotated\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.rotate2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"centered\",\n\t\t\t\t\t\t\"cosAngle\",\n\t\t\t\t\t\t\"sinAngle\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"waveInput\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"frequency\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"TAU\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"animTime\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sineWave\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"waveInput\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"amplitude\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distanceFromWave\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rotated\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"sineWave\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfThickness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfSoftness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"softness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[5, \"1\"],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"halfThickness\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"halfSoftness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"halfThickness\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"halfSoftness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"distanceFromWave\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectCenteredDelta\": () =\u003e aspectCenteredDelta,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"geom.rotate2\": () =\u003e rotate2,\n\t\t\"TAU\": () =\u003e TAU,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nvar lensFlareSpectral = typegpu_default.fn([f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\treturn vec3f(__tsover_add(__tsover_mul(cos(__tsover_mul(TAU, t)), .5), .5), __tsover_add(__tsover_mul(cos(__tsover_mul(TAU, __tsover_sub(t, .333))), .5), .5), __tsover_add(__tsover_mul(cos(__tsover_mul(TAU, __tsover_sub(t, .666))), .5), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"TAU_FULL\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"TAU_FULL\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.333\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"TAU_FULL\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.666\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"TAU_FULL\": () =\u003e TAU\n\t}\n}) \u0026\u0026 $.f)({}));\nconst FlareFrame = struct({\n\taspect: f32,\n\tlightPos: vec2f,\n\tflareAxis: vec2f,\n\tmasterFade: f32,\n\tlightDist: f32,\n\tlightAngle: f32\n}).$name(\"FlareFrame\");\nconst flareFrame = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32\n], FlareFrame)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, t, lightPosRaw, intensity, edgeFade) =\u003e {\n\t\"use gpu\";\n\tconst aspect = aspectOf(viewport);\n\tconst lightPos = vec2f(lightPosRaw.x, __tsover_sub(1, lightPosRaw.y));\n\tconst flareAxis = vec2f(__tsover_sub(.5, lightPos.x), __tsover_sub(.5, lightPos.y));\n\tconst shimmer = __tsover_add(__tsover_add(__tsover_add(__tsover_mul(sin(__tsover_mul(t, 3.7)), .04), __tsover_mul(sin(__tsover_mul(t, 7.3)), .03)), __tsover_mul(sin(__tsover_mul(t, 13.1)), .02)), .97);\n\tconst edgeDist = max(__tsover_mul(abs(__tsover_sub(lightPos.x, .5)), 2), __tsover_mul(abs(__tsover_sub(lightPos.y, .5)), 2));\n\tconst fadeStart = __tsover_sub(1, __tsover_mul(edgeFade, .5));\n\tconst edgeFadeV = mix(1, __tsover_sub(1, smoothstep(fadeStart, 1, edgeDist)), edgeFade);\n\tconst masterFade = __tsover_mul(__tsover_mul(intensity, edgeFadeV), shimmer);\n\tconst toLightAR = vec2f(__tsover_mul(__tsover_sub(uv.x, lightPos.x), aspect), __tsover_sub(uv.y, lightPos.y));\n\treturn FlareFrame({\n\t\taspect,\n\t\tlightPos,\n\t\tflareAxis,\n\t\tmasterFade,\n\t\tlightDist: length(toLightAR),\n\t\tlightAngle: atan2(toLightAR.y, toLightAR.x)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightPosRaw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"edgeFade\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"geom.aspectOf\",\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"lightPosRaw\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPosRaw\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flareAxis\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shimmer\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3.7\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.04\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"7.3\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.03\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"13.1\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.97\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fadeStart\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"edgeFade\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeFadeV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"fadeStart\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"edgeDist\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"edgeFade\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"masterFade\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"edgeFadeV\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"shimmer\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toLightAR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"toLightAR\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"toLightAR\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"toLightAR\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"FlareFrame\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"aspect\": \"aspect\",\n\t\t\t\t\t\"lightPos\": \"lightPos\",\n\t\t\t\t\t\"flareAxis\": \"flareAxis\",\n\t\t\t\t\t\"masterFade\": \"masterFade\",\n\t\t\t\t\t\"lightDist\": \"lightDist\",\n\t\t\t\t\t\"lightAngle\": \"lightAngle\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"geom.aspectOf\": () =\u003e aspectOf,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"FlareFrame\": () =\u003e FlareFrame\n\t}\n}) \u0026\u0026 $.f)({}));\nconst lensFlareGhost = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec4f,\n\tvec4f\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, lightPos, flareAxis, t, ghostSpread, ghostChroma, ghostInt, disc, tint) =\u003e {\n\t\"use gpu\";\n\tconst offset = disc.x;\n\tconst size = disc.y;\n\tconst bright = disc.z;\n\tconst hollow = disc.w;\n\tconst r = tint.x;\n\tconst g = tint.y;\n\tconst b = tint.z;\n\tconst gPhase = tint.w;\n\tconst ghostPos = lightPos.add(flareAxis.mul(__tsover_mul(__tsover_mul(offset, ghostSpread), 2)));\n\tconst dist = length(vec2f(__tsover_mul(__tsover_sub(uv.x, ghostPos.x), aspect), __tsover_sub(uv.y, ghostPos.y)));\n\tconst sz = size;\n\tconst discShape = __tsover_sub(1, smoothstep(__tsover_mul(sz, .12), sz, dist));\n\tconst innerFade = __tsover_sub(1, smoothstep(__tsover_mul(sz, .05), __tsover_mul(sz, .45), dist));\n\tconst shape = __tsover_mul(discShape, __tsover_sub(1, __tsover_mul(innerFade, hollow)));\n\tconst gShimmer = __tsover_add(__tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(t, 4.3), gPhase)), .08), __tsover_mul(sin(__tsover_add(__tsover_mul(t, 9.1), __tsover_mul(gPhase, 1.7))), .05)), .95);\n\tconst ring = chromaticRingBand(dist, __tsover_mul(sz, .78), __tsover_mul(__tsover_mul(sz, ghostChroma), .14), __tsover_mul(sz, .1));\n\tconst rRing = ring.x;\n\tconst gRing = ring.y;\n\tconst bRing = ring.z;\n\tconst brightness = __tsover_mul(__tsover_mul(bright, ghostInt), gShimmer);\n\treturn vec3f(__tsover_mul(__tsover_add(__tsover_mul(shape, r), __tsover_mul(rRing, ghostChroma)), brightness), __tsover_mul(__tsover_add(__tsover_mul(shape, g), __tsover_mul(gRing, ghostChroma)), brightness), __tsover_mul(__tsover_add(__tsover_mul(shape, b), __tsover_mul(bRing, ghostChroma)), brightness));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightPos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flareAxis\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ghostSpread\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ghostChroma\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ghostInt\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"disc\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tint\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offset\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"disc\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"size\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"disc\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bright\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"disc\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hollow\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"disc\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"tint\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"tint\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"tint\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gPhase\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"tint\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ghostPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"flareAxis\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ghostSpread\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toGhost\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"ghostPos\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ghostPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"toGhost\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sz\",\n\t\t\t\t\"size\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"discShape\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.12\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerFade\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.45\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shape\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"discShape\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"innerFade\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"hollow\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gShimmer\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"4.3\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"gPhase\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.08\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"9.1\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gPhase\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringCenter\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sz\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.78\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chromaSpread\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ghostChroma\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.14\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ringWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sz\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ring\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.chromaticRingBand\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\"ringCenter\",\n\t\t\t\t\t\t\"chromaSpread\",\n\t\t\t\t\t\t\"ringWidth\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rRing\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"ring\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gRing\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"ring\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bRing\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"ring\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"brightness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bright\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ghostInt\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"gShimmer\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"shape\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rRing\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ghostChroma\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"brightness\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"shape\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gRing\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ghostChroma\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"brightness\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"shape\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bRing\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ghostChroma\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"brightness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"lightfields.chromaticRingBand\": () =\u003e chromaticRingBand,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flareHalo = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, lightPos, t, haloInt, haloRad, haloChroma, haloSoft) =\u003e {\n\t\"use gpu\";\n\tconst antiLight = vec2f(__tsover_sub(1, lightPos.x), __tsover_sub(1, lightPos.y));\n\tconst toAntiLight = vec2f(__tsover_mul(__tsover_sub(uv.x, antiLight.x), aspect), __tsover_sub(uv.y, antiLight.y));\n\tconst halo = chromaticRingBand(length(toAntiLight), haloRad, __tsover_mul(__tsover_mul(haloRad, haloChroma), .06), __tsover_add(__tsover_mul(haloSoft, .12), .005));\n\tconst haloAngle = atan2(toAntiLight.y, toAntiLight.x);\n\tconst haloAngVar = __tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(haloAngle, 3), __tsover_mul(t, .5))), .12), .88);\n\treturn halo.mul(haloInt).mul(haloAngVar);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightPos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"haloInt\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"haloRad\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"haloChroma\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"haloSoft\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"antiLight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toAntiLight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"antiLight\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"antiLight\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"antiLightDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"toAntiLight\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"haloChromaSpread\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"haloRad\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"haloChroma\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"haloWidth\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"haloSoft\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.12\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.005\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halo\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.chromaticRingBand\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"antiLightDist\",\n\t\t\t\t\t\t\"haloRad\",\n\t\t\t\t\t\t\"haloChromaSpread\",\n\t\t\t\t\t\t\"haloWidth\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"haloAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"toAntiLight\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"toAntiLight\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"haloAngVar\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"haloAngle\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.12\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.88\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"halo\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"haloInt\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"haloAngVar\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"lightfields.chromaticRingBand\": () =\u003e chromaticRingBand,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flareStarburst = typegpu_default.fn([\n\tf32,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lightAngle, flareAxis, aspect, t, lightDist, starburstPts, starburstInt) =\u003e {\n\t\"use gpu\";\n\tconst axisAng = atan2(flareAxis.y, __tsover_mul(flareAxis.x, aspect));\n\tconst rotation = __tsover_add(__tsover_mul(axisAng, .5), __tsover_mul(t, .06));\n\tconst spikeAngle = __tsover_add(lightAngle, rotation);\n\tconst primarySpikes = angularCosineSpikes(spikeAngle, __tsover_div(starburstPts, 2), 3.5);\n\tconst secondarySpikes = __tsover_mul(angularCosineSpikes(__tsover_add(spikeAngle, .25), __tsover_div(starburstPts, 2), 7), .4);\n\tconst radialFall = __tsover_div(1, __tsover_add(1, __tsover_mul(__tsover_mul(lightDist, lightDist), 60)));\n\tconst starSpectral = lensFlareSpectral(__tsover_add(__tsover_div(spikeAngle, TAU), .5));\n\treturn mix(vec3f(1, .97, .92), starSpectral, .12).mul(__tsover_mul(__tsover_mul(__tsover_add(primarySpikes, secondarySpikes), radialFall), starburstInt));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flareAxis\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightDist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"starburstPts\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"starburstInt\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"axisAng\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"flareAxis\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"flareAxis\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotation\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"axisAng\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spikeAngle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rotation\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"primarySpikes\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.angularCosineSpikes\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"spikeAngle\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"starburstPts\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"3.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"secondarySpikes\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"lightfields.angularCosineSpikes\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"spikeAngle\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"starburstPts\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"radialFall\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lightDist\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"lightDist\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"60\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"starSpectral\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lensFlareSpectral\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"spikeAngle\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"TAU_FULL\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"starTint\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"0.97\"],\n\t\t\t\t\t\t\t\t[5, \"0.92\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"starSpectral\",\n\t\t\t\t\t\t[5, \"0.12\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"starTint\",\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"primarySpikes\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"secondarySpikes\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"radialFall\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"starburstInt\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"lightfields.angularCosineSpikes\": () =\u003e angularCosineSpikes,\n\t\t\"lensFlareSpectral\": () =\u003e lensFlareSpectral,\n\t\t\"TAU_FULL\": () =\u003e TAU,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flareStreak = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, lightPos, streakLen, streakInt) =\u003e {\n\t\"use gpu\";\n\tconst dy = abs(__tsover_sub(uv.y, lightPos.y));\n\tconst dx = abs(__tsover_sub(uv.x, lightPos.x));\n\tconst vertFall = exp(__tsover_mul(__tsover_mul(-800, dy), dy));\n\tconst lenSq = __tsover_add(__tsover_mul(__tsover_mul(streakLen, streakLen), .25), .001);\n\tconst rStreak = exp(__tsover_div(__tsover_mul(__tsover_mul(-1, dx), dx), __tsover_mul(lenSq, .7)));\n\tconst gStreak = exp(__tsover_div(__tsover_mul(__tsover_mul(-1, dx), dx), lenSq));\n\tconst bStreak = exp(__tsover_div(__tsover_mul(__tsover_mul(-1, dx), dx), __tsover_mul(lenSq, 1.4)));\n\treturn vec3f(__tsover_mul(__tsover_mul(vertFall, rStreak), .5), __tsover_mul(__tsover_mul(vertFall, gStreak), .65), __tsover_mul(__tsover_mul(vertFall, bStreak), .9)).mul(streakInt);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightPos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"streakLen\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"streakInt\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightPos\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vertFall\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"800\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lenSq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"streakLen\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"streakLen\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rStreak\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lenSq\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gStreak\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"lenSq\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bStreak\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lenSq\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.4\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"vertFall\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"rStreak\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"vertFall\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gStreak\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.65\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"vertFall\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"bStreak\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[\"streakInt\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flareGlare = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lightDist, glareSz, glareInt) =\u003e {\n\t\"use gpu\";\n\tconst glareFalloff = radialGaussianFalloff(lightDist, __tsover_div(1, __tsover_add(__tsover_mul(glareSz, glareSz), .01)));\n\treturn vec3f(1, .98, .95).mul(__tsover_mul(glareFalloff, glareInt));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightDist\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glareSz\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glareInt\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glareSharpness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"glareSz\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"glareSz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glareFalloff\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"lightfields.radialGaussianFalloff\",\n\t\t\t\t\t[\"lightDist\", \"glareSharpness\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"0.98\"],\n\t\t\t\t\t\t\t[5, \"0.95\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"glareFalloff\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"glareInt\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"lightfields.radialGaussianFalloff\": () =\u003e radialGaussianFalloff,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flareCore = typegpu_default.fn([f32, f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lightDist, intensity) =\u003e {\n\t\"use gpu\";\n\tconst coreSoft = exp(__tsover_mul(__tsover_mul(-500, lightDist), lightDist));\n\tconst coreSharp = __tsover_sub(1, smoothstep(0, .025, lightDist));\n\treturn vec3f(1, .98, .96).mul(__tsover_mul(__tsover_add(coreSoft, __tsover_mul(coreSharp, 1.5)), intensity));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lightDist\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"intensity\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"coreSoft\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"500\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"lightDist\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"lightDist\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"coreSharp\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0.025\"],\n\t\t\t\t\t\t\t\"lightDist\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t[5, \"0.98\"],\n\t\t\t\t\t\t\t[5, \"0.96\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"coreSoft\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"coreSharp\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"intensity\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flareComposite = typegpu_default.fn([vec3f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((flareTotal, masterFade) =\u003e {\n\t\"use gpu\";\n\tconst finalColor = flareTotal.mul(masterFade);\n\treturn vec4f(finalColor, clamp(__tsover_mul(luma601Dot(finalColor), 2), 0, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"flareTotal\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"masterFade\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"flareTotal\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"masterFade\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flareAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"tone.luma601Dot\",\n\t\t\t\t\t\t\t\t[\"finalColor\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"finalColor\", \"flareAlpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"tone.luma601Dot\": () =\u003e luma601Dot,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nexport { flareHalo as a, lensFlareGhost as c, flareGlare as i, lineMask as l, flareCore as n, flareStarburst as o, flareFrame as r, flareStreak as s, flareComposite as t, sineWaveMask as u };\n","import { An as value12, Br as struct, Cr as sin, Er as step, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Pn as DEG_TO_RAD, Sn as mxNoiseFloat2, Tr as sqrt, _r as mix, ar as clamp, at as ZERO, cr as dot, ct as call, dt as expr, er as select, fr as floor, ft as floatE, gr as min, hr as max, jr as vec3f, mr as length, mt as vec4, o as uniformOf, or as cos, pr as fract, qr as f32, rr as atan2, st as asLocal, tr as abs, vn as hash12, wr as smoothstep, yr as pow, zn as TAU } from \"./lower-Bd2jez_2.js\";\nimport { n as gather } from \"./filter-BrhpSs3Z.js\";\nconst watercolorUvBase = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, bleed, time) =\u003e {\n\t\"use gpu\";\n\tconst t = __tsover_mul(time, .03);\n\tconst wob = vec2f(value12(uv.mul(5).add(vec2f(t, t))), value12(uv.mul(5).add(vec2f(31.4, 31.4)).add(vec2f(t, t)))).sub(vec2f(.5, .5));\n\tconst texel = vec2f(__tsover_div(1, viewport.x), __tsover_div(1, viewport.y));\n\treturn uv.add(wob.mul(bleed).mul(texel).mul(8));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bleed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.03\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wob\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"5\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[\"t\", \"t\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"5\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"31.4\"], [5, \"31.4\"]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t[\"t\", \"t\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"texel\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"wob\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"bleed\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"texel\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"noise.value12\": () =\u003e value12\n\t}\n}) \u0026\u0026 $.f)({}));\nconst watercolorTapUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uvBase, viewport, ox, oy) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_add(uvBase.x, __tsover_div(ox, viewport.x)), __tsover_add(uvBase.y, __tsover_div(oy, viewport.y)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvBase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uvBase\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ox\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uvBase\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"oy\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst watercolorGrain = typegpu_default.fn([vec2f, vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport) =\u003e {\n\t\"use gpu\";\n\treturn value12(uv.mul(viewport).mul(.5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"viewport\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"noise.value12\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"viewport\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"mul\"\n\t\t\t\t],\n\t\t\t\t[[5, \"0.5\"]]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"noise.value12\": () =\u003e value12 }\n}) \u0026\u0026 $.f)({}));\nconst watercolorCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tf32,\n\tvec4f,\n\tvec4f,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sum0, sum1, sum2, sum3, sq0, sq1, sq2, sq3, invN, originalBleed, paperColor, paper, strength, grain) =\u003e {\n\t\"use gpu\";\n\tconst mean0 = sum0.mul(invN);\n\tconst mean1 = sum1.mul(invN);\n\tconst mean2 = sum2.mul(invN);\n\tconst mean3 = sum3.mul(invN);\n\tconst rgb0 = vec3f(mean0.x, mean0.y, mean0.z);\n\tconst rgb1 = vec3f(mean1.x, mean1.y, mean1.z);\n\tconst rgb2 = vec3f(mean2.x, mean2.y, mean2.z);\n\tconst rgb3 = vec3f(mean3.x, mean3.y, mean3.z);\n\tconst var0 = sq0.mul(invN).sub(rgb0.mul(rgb0));\n\tconst var1 = sq1.mul(invN).sub(rgb1.mul(rgb1));\n\tconst var2 = sq2.mul(invN).sub(rgb2.mul(rgb2));\n\tconst var3 = sq3.mul(invN).sub(rgb3.mul(rgb3));\n\tconst sigma0 = __tsover_add(__tsover_add(var0.x, var0.y), var0.z);\n\tconst sigma1 = __tsover_add(__tsover_add(var1.x, var1.y), var1.z);\n\tconst sigma2 = __tsover_add(__tsover_add(var2.x, var2.y), var2.z);\n\tconst sigma3 = __tsover_add(__tsover_add(var3.x, var3.y), var3.z);\n\tlet picked = vec4f(mean0.x, mean0.y, mean0.z, mean0.w);\n\tlet best = sigma0;\n\tpicked = select(picked, mean1, sigma1 \u003c best);\n\tbest = min(best, sigma1);\n\tpicked = select(picked, mean2, sigma2 \u003c best);\n\tbest = min(best, sigma2);\n\tpicked = select(picked, mean3, sigma3 \u003c best);\n\tbest = min(best, sigma3);\n\tconst straight = unpremultiplyAlpha(picked);\n\tlet result = vec3f(straight.x, straight.y, straight.z);\n\tconst paperMul = mix(1, grain, paper);\n\tconst paperTint = vec3f(paperColor.x, paperColor.y, paperColor.z);\n\tresult = mix(result.mul(paperMul), result.mul(paperTint), vec3f(__tsover_mul(paper, .4)));\n\treturn mix(vec3f(originalBleed.x, originalBleed.y, originalBleed.z), result, vec3f(strength));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sum0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sum1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sum2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sum3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sq0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sq1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sq2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sq3\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"invN\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"originalBleed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"paperColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"paper\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"grain\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mean0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sum0\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"invN\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mean1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sum1\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"invN\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mean2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sum2\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"invN\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mean3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sum3\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"invN\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean0\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean0\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean0\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean1\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean1\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean1\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean2\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean2\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean2\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean3\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean3\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean3\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"var0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sq0\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"invN\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb0\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"rgb0\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"var1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sq1\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"invN\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb1\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"rgb1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"var2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sq2\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"invN\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb2\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"rgb2\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"var3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sq3\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"invN\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb3\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"rgb3\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sigma0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var0\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var0\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"var0\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sigma1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var1\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var1\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"var1\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sigma2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var2\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var2\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"var2\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sigma3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var3\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"var3\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"var3\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"picked\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean0\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean0\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean0\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mean0\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"best\",\n\t\t\t\t\"sigma0\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"picked\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"picked\",\n\t\t\t\t\t\t\"mean1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sigma1\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"best\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"best\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"best\", \"sigma1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"picked\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"picked\",\n\t\t\t\t\t\t\"mean2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sigma2\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"best\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"best\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"best\", \"sigma2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"picked\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"picked\",\n\t\t\t\t\t\t\"mean3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sigma3\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"best\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"best\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"best\", \"sigma3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"straight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"blend.unpremultiplyAlpha\",\n\t\t\t\t\t[\"picked\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"straight\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"straight\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"straight\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"paperMul\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"grain\",\n\t\t\t\t\t\t\"paper\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"paperTint\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"paperColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"paperColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"paperColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"result\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"paperMul\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"paperTint\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"paper\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"origRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"originalBleed\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"originalBleed\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"originalBleed\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalRGB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"origRgb\",\n\t\t\t\t\t\t\"result\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"strength\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, \"finalRGB\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"blend.unpremultiplyAlpha\": () =\u003e unpremultiplyAlpha,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nvar SIN_045 = Math.sin(.785);\nvar COS_045 = Math.cos(.785);\nvar SIN_N45 = Math.sin(-.785);\nvar COS_N45 = Math.cos(-.785);\nvar chalkHash21 = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\treturn hash12(p);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"noise.hash12\",\n\t\t\t[\"p\"]\n\t\t]]]]\n\t},\n\texternals: { \"noise.hash12\": () =\u003e hash12 }\n}) \u0026\u0026 $.f)({}));\nvar chalkVnoise = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\tconst i = floor(p);\n\tconst f = fract(p);\n\tconst u = f.mul(f).mul(f.mul(-2).add(3));\n\tconst a = chalkHash21(i);\n\tconst b = chalkHash21(vec2f(__tsover_add(i.x, 1), i.y));\n\tconst c = chalkHash21(vec2f(i.x, __tsover_add(i.y, 1)));\n\tconst dd = chalkHash21(vec2f(__tsover_add(i.x, 1), __tsover_add(i.y, 1)));\n\treturn mix(mix(a, b, u.x), mix(c, dd, u.x), u.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"i\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"f\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"f\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"3\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"chalkHash21\",\n\t\t\t\t\t[\"i\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"chalkHash21\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"chalkHash21\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"chalkHash21\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"chalkHash21\": () =\u003e chalkHash21,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst chalkLuma = typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color) =\u003e {\n\t\"use gpu\";\n\treturn dot(vec3f(color.x, color.y, color.z), vec3f(.299, .587, .114));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.dot\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst chalkOffsetUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, edgeThickness, ox, oy) =\u003e {\n\t\"use gpu\";\n\tconst texelX = __tsover_div(1, viewport.x);\n\tconst texelY = __tsover_div(1, viewport.y);\n\treturn vec2f(__tsover_add(uv.x, __tsover_mul(__tsover_mul(texelX, edgeThickness), ox)), __tsover_add(uv.y, __tsover_mul(__tsover_mul(texelY, edgeThickness), oy)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"edgeThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"texelX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"texelY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"texelX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"edgeThickness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ox\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"texelY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"edgeThickness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"oy\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nvar chalkHatchLine = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((P, hatchScale, shade, sa, ca, thr) =\u003e {\n\t\"use gpu\";\n\tconst ry = __tsover_add(__tsover_mul(P.x, sa), __tsover_mul(P.y, ca));\n\tconst hl = __tsover_mul(abs(__tsover_sub(fract(__tsover_div(ry, hatchScale)), .5)), 2);\n\tconst line = __tsover_sub(1, smoothstep(0, .35, hl));\n\treturn __tsover_mul(line, step(thr, shade));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"P\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hatchScale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shade\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sa\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ca\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thr\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ry\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sa\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ca\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hl\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"hatchScale\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"line\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0.35\"],\n\t\t\t\t\t\t\t\"hl\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"line\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[\"thr\", \"shade\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.step\": () =\u003e step\n\t}\n}) \u0026\u0026 $.f)({}));\nconst chalkboardCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec2f,\n\tvec2f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sobelA, sobelB, uv, viewport, misc, params, boardColor, chalkColor) =\u003e {\n\t\"use gpu\";\n\tconst tl = sobelA.x;\n\tconst t = sobelA.y;\n\tconst tr = sobelA.z;\n\tconst l = sobelA.w;\n\tconst r = sobelB.x;\n\tconst bl = sobelB.y;\n\tconst bo = sobelB.z;\n\tconst br = sobelB.w;\n\tconst centerLum = misc.x;\n\tconst centerAlpha = misc.y;\n\tconst edgeSensitivity = params.x;\n\tconst hatchScale = params.y;\n\tconst shading = params.z;\n\tconst grain = params.w;\n\tconst gx = __tsover_add(__tsover_add(__tsover_add(__tsover_sub(__tsover_sub(-tl, __tsover_mul(l, 2)), bl), tr), __tsover_mul(r, 2)), br);\n\tconst gy = __tsover_add(__tsover_add(__tsover_add(__tsover_sub(__tsover_sub(-tl, __tsover_mul(t, 2)), tr), bl), __tsover_mul(bo, 2)), br);\n\tconst edgeMag = sqrt(__tsover_add(__tsover_mul(gx, gx), __tsover_mul(gy, gy)));\n\tconst edgeHigh = mix(f32(1), .08, edgeSensitivity);\n\tconst edge = smoothstep(__tsover_mul(edgeHigh, .4), edgeHigh, edgeMag);\n\tconst shade = __tsover_sub(1, centerLum);\n\tconst P = uv.mul(viewport);\n\tconst hatch = __tsover_mul(max(max(chalkHatchLine(P, hatchScale, shade, SIN_045, COS_045, .22), chalkHatchLine(P, hatchScale, shade, SIN_N45, COS_N45, .5)), chalkHatchLine(P, hatchScale, shade, 0, 1, .78)), shading);\n\tconst dust = mix(__tsover_sub(1, grain), f32(1), chalkVnoise(P.mul(.5)));\n\tconst chalkMask = clamp(__tsover_mul(max(edge, hatch), dust), 0, 1);\n\tconst boardGrain = __tsover_mul(__tsover_sub(chalkVnoise(P.mul(.9)), .5), .04);\n\treturn vec4f(mix(boardColor.xyz.add(boardGrain), chalkColor.xyz, vec3f(chalkMask)), centerAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sobelA\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sobelB\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"misc\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"params\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"boardColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"chalkColor\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tl\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelA\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelA\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tr\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelA\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"l\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelA\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelB\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bl\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelB\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bo\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelB\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"br\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sobelB\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerLum\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"misc\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerAlpha\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"misc\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeSensitivity\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"params\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hatchScale\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"params\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shading\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"params\",\n\t\t\t\t\t\"z\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grain\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"params\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"tl\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"bl\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"tr\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"br\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"tl\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"tr\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"bl\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"bo\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"br\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeMag\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeHigh\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.08\"],\n\t\t\t\t\t\t\"edgeSensitivity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edge\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"edgeHigh\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"edgeHigh\",\n\t\t\t\t\t\t\"edgeMag\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shade\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerLum\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"P\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"viewport\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hatch\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"chalkHatchLine\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"hatchScale\",\n\t\t\t\t\t\t\t\t\t\"shade\",\n\t\t\t\t\t\t\t\t\t\"SIN_045\",\n\t\t\t\t\t\t\t\t\t\"COS_045\",\n\t\t\t\t\t\t\t\t\t[5, \"0.22\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"chalkHatchLine\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"hatchScale\",\n\t\t\t\t\t\t\t\t\t\"shade\",\n\t\t\t\t\t\t\t\t\t\"SIN_N45\",\n\t\t\t\t\t\t\t\t\t\"COS_N45\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"chalkHatchLine\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"hatchScale\",\n\t\t\t\t\t\t\t\t\"shade\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"0.78\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"shading\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dust\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"grain\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"chalkVnoise\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chalkMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"edge\", \"hatch\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dust\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"boardGrain\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"chalkVnoise\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"0.9\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.04\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"boardRGB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"boardColor\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"boardGrain\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"col\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"boardRGB\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"chalkColor\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"chalkMask\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"col\", \"centerAlpha\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"chalkHatchLine\": () =\u003e chalkHatchLine,\n\t\t\"SIN_045\": () =\u003e SIN_045,\n\t\t\"COS_045\": () =\u003e COS_045,\n\t\t\"SIN_N45\": () =\u003e SIN_N45,\n\t\t\"COS_N45\": () =\u003e COS_N45,\n\t\t\"chalkVnoise\": () =\u003e chalkVnoise,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar REFERENCE_HEIGHT = 1080;\nvar AsciiGrid = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcellCenter: vec2f,\n\tcellUV: vec2f,\n\tisOutside: f32\n}), \"AsciiGrid\");\nconst asciiGrid = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], AsciiGrid)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewport, cellSize, spacing) =\u003e {\n\t\"use gpu\";\n\tconst scaleFactor = __tsover_div(viewport.y, REFERENCE_HEIGHT);\n\tconst effectiveCellSize = __tsover_mul(cellSize, scaleFactor);\n\tconst mainGridSize = vec2f(__tsover_div(viewport.x, effectiveCellSize), __tsover_div(viewport.y, effectiveCellSize));\n\tconst gridCoords = vec2f(__tsover_mul(uv.x, mainGridSize.x), __tsover_mul(uv.y, mainGridSize.y));\n\tconst cellCoords = floor(gridCoords);\n\tconst rawCellUV = fract(gridCoords);\n\tconst centeredU = __tsover_sub(rawCellUV.x, .5);\n\tconst centeredV = __tsover_sub(rawCellUV.y, .5);\n\tconst cellUV = vec2f(__tsover_add(__tsover_div(centeredU, spacing), .5), __tsover_add(__tsover_div(centeredV, spacing), .5));\n\tconst half = __tsover_mul(spacing, .5);\n\tconst isOutside = select(f32(0), f32(1), abs(centeredU) \u003e half || abs(centeredV) \u003e half);\n\treturn AsciiGrid({\n\t\tcellCenter: vec2f(__tsover_div(__tsover_add(cellCoords.x, .5), mainGridSize.x), __tsover_div(__tsover_add(cellCoords.y, .5), mainGridSize.y)),\n\t\tcellUV,\n\t\tisOutside\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spacing\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaleFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"REFERENCE_HEIGHT\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"effectiveCellSize\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cellSize\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scaleFactor\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mainGridSize\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"effectiveCellSize\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"effectiveCellSize\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gridCoords\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mainGridSize\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mainGridSize\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellCoords\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"gridCoords\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rawCellUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"gridCoords\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rawCellUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rawCellUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"centeredU\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"spacing\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"centeredV\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"spacing\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"half\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"spacing\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isOutside\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[\"centeredU\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\"half\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[\"centeredV\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\"half\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cellCenter\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"cellCoords\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mainGridSize\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"cellCoords\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mainGridSize\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"AsciiGrid\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"cellCenter\": \"cellCenter\",\n\t\t\t\t\t\"cellUV\": \"cellUV\",\n\t\t\t\t\t\"isOutside\": \"isOutside\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"REFERENCE_HEIGHT\": () =\u003e REFERENCE_HEIGHT,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"AsciiGrid\": () =\u003e AsciiGrid\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"asciiGrid\");\nconst asciiAtlasUV = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cellRgb, gamma, charCount, atlasSize, atlasScale, cellUV) =\u003e {\n\t\"use gpu\";\n\tconst adjustedBrightness = pow(dot(cellRgb, vec3f(.299, .587, .114)), gamma);\n\tconst invertedBrightness = __tsover_sub(1, adjustedBrightness);\n\tconst charIndex = clamp(floor(__tsover_mul(invertedBrightness, charCount)), 0, __tsover_sub(charCount, 1));\n\tconst atlasCol = __tsover_sub(charIndex, __tsover_mul(atlasSize, floor(__tsover_div(charIndex, atlasSize))));\n\tconst atlasRow = floor(__tsover_div(charIndex, atlasSize));\n\tconst atlasCellSize = __tsover_mul(__tsover_div(1, atlasSize), atlasScale);\n\tconst baseU = __tsover_mul(atlasCol, atlasCellSize);\n\tconst baseV = __tsover_mul(atlasRow, atlasCellSize);\n\treturn vec2f(__tsover_add(baseU, __tsover_mul(cellUV.x, atlasCellSize)), __tsover_add(baseV, __tsover_mul(cellUV.y, atlasCellSize)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellRgb\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gamma\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"charCount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"atlasSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"atlasScale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellUV\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rawBrightness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"cellRgb\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"adjustedBrightness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[\"rawBrightness\", \"gamma\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"invertedBrightness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"adjustedBrightness\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledBrightness\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"invertedBrightness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"charCount\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"charIndex\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"scaledBrightness\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"charCount\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"atlasCol\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"charIndex\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"atlasSize\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"charIndex\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"atlasSize\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"atlasRow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"charIndex\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"atlasSize\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"atlasCellSize\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"atlasSize\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"atlasScale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"atlasCol\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"atlasCellSize\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"atlasRow\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"atlasCellSize\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"baseU\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cellUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"atlasCellSize\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"baseV\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cellUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"atlasCellSize\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"asciiAtlasUV\");\nconst asciiCompose = typegpu_default.fn([\n\tvec3f,\n\tvec4f,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((asciiRgb, cellColor, isOutside, alphaThreshold, preserveAlpha) =\u003e {\n\t\"use gpu\";\n\tconst isBackground = dot(asciiRgb, vec3f(.299, .587, .114)) \u003c .1;\n\tconst sourceAlpha = cellColor.w;\n\tconst isBelowThreshold = sourceAlpha \u003c alphaThreshold;\n\tconst outputAlpha = select(f32(1), sourceAlpha, preserveAlpha \u003e .5);\n\tconst hide = isBackground || isOutside \u003e .5 || isBelowThreshold;\n\tconst finalAlpha = select(outputAlpha, f32(0), hide);\n\treturn vec4f(__tsover_mul(asciiRgb.x, cellColor.x), __tsover_mul(asciiRgb.y, cellColor.y), __tsover_mul(asciiRgb.z, cellColor.z), finalAlpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"asciiRgb\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cellColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"isOutside\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"alphaThreshold\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"preserveAlpha\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"charBrightness\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"asciiRgb\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isBackground\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"charBrightness\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sourceAlpha\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"cellColor\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isBelowThreshold\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sourceAlpha\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\"alphaThreshold\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outputAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sourceAlpha\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"preserveAlpha\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hide\",\n\t\t\t\t[\n\t\t\t\t\t3,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t\"isBackground\",\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"isOutside\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"||\",\n\t\t\t\t\t\"isBelowThreshold\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"outputAlpha\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"hide\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"asciiRgb\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cellColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"asciiRgb\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cellColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"asciiRgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cellColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"finalAlpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"asciiCompose\");\nfunction shared(build) {\n\tconst cache = /* @__PURE__ */ new WeakMap();\n\treturn (params) =\u003e {\n\t\tconst hit = cache.get(params);\n\t\tif (hit !== void 0) return hit;\n\t\tconst v = build(params);\n\t\tcache.set(params, v);\n\t\treturn v;\n\t};\n}\nfunction bleedWarp(slots) {\n\treturn shared((params) =\u003e {\n\t\tif ((params.propValues[slots.amount.name] ?? 0) === 0) return params.ctx.uv;\n\t\treturn asLocal(call(watercolorUvBase, \"watercolorUvBase\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.logicalViewportSize,\n\t\t\tuniformOf(slots.amount, params),\n\t\t\tparams.ctx.time\n\t\t]), \"wcUvBase\");\n\t});\n}\nfunction kuwahara(slots) {\n\treturn shared((params) =\u003e {\n\t\tconst R = Math.max(1, Math.min(8, Math.round(params.propValues[slots.radius.name] ?? 4)));\n\t\tconst taps = Math.max(2, Math.ceil((R + 1) / 2));\n\t\tconst invN = 1 / (taps * taps);\n\t\tconst uvBase = slots.at(params);\n\t\tconst lvp = params.ctx.logicalViewportSize;\n\t\tconst quadrant = (dx, dy) =\u003e {\n\t\t\tlet sum = expr(\"vec4f(0.0, 0.0, 0.0, 0.0)\");\n\t\t\tlet sq = expr(\"vec3f(0.0, 0.0, 0.0)\");\n\t\t\tfor (let j = 0; j \u003c taps; j++) for (let i = 0; i \u003c taps; i++) {\n\t\t\t\tconst uv = call(watercolorTapUV, \"watercolorTapUV\", [\n\t\t\t\t\tuvBase,\n\t\t\t\t\tlvp,\n\t\t\t\t\tfloatE((2 * i + .5) * dx),\n\t\t\t\t\tfloatE((2 * j + .5) * dy)\n\t\t\t\t]);\n\t\t\t\tconst c = asLocal(params.texture.sample(uv), \"wcTap\");\n\t\t\t\tconst rgb = c.member(\"rgb\");\n\t\t\t\tsum = sum.add(c);\n\t\t\t\tsq = sq.add(rgb.mul(rgb));\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tsum,\n\t\t\t\tsq\n\t\t\t};\n\t\t};\n\t\treturn {\n\t\t\tquadrants: [\n\t\t\t\tquadrant(-1, -1),\n\t\t\t\tquadrant(1, -1),\n\t\t\t\tquadrant(-1, 1),\n\t\t\t\tquadrant(1, 1)\n\t\t\t],\n\t\t\tinvN\n\t\t};\n\t});\n}\nfunction paperGrain(slots) {\n\treturn (params) =\u003e {\n\t\treturn (params.propValues[slots.amount.name] ?? 0) === 0 ? floatE(0) : call(watercolorGrain, \"watercolorGrain\", [params.ctx.uv, params.ctx.viewportSize]);\n\t};\n}\nfunction wash(slots) {\n\treturn gather({\n\t\tresultAlpha: \"straight\",\n\t\tbuild: (params) =\u003e {\n\t\t\tconst u = (ref) =\u003e uniformOf(ref, params);\n\t\t\tconst original = asLocal(params.sampleStraight(slots.at(params)), \"wcOriginal\");\n\t\t\tif ((params.propValues[slots.strength.name] ?? 1) === 0) return original;\n\t\t\tconst { quadrants: [q0, q1, q2, q3], invN } = slots.brush(params);\n\t\t\tconst grain = slots.grain(params);\n\t\t\treturn vec4(call(watercolorCompose, \"watercolorCompose\", [\n\t\t\t\tq0.sum,\n\t\t\t\tq1.sum,\n\t\t\t\tq2.sum,\n\t\t\t\tq3.sum,\n\t\t\t\tq0.sq,\n\t\t\t\tq1.sq,\n\t\t\t\tq2.sq,\n\t\t\t\tq3.sq,\n\t\t\t\tfloatE(invN),\n\t\t\t\toriginal,\n\t\t\t\tu(slots.paperColor),\n\t\t\t\tu(slots.paper),\n\t\t\t\tu(slots.strength),\n\t\t\t\tgrain\n\t\t\t]), original.member(\"a\"));\n\t\t}\n\t});\n}\nfunction sobelTaps(slots) {\n\treturn shared((params) =\u003e {\n\t\tconst { sampleStraight, ctx } = params;\n\t\tconst viewport = ctx.viewportSize;\n\t\tconst lumAt = (ox, oy) =\u003e {\n\t\t\treturn call(chalkLuma, \"chalkLuma\", [sampleStraight(call(chalkOffsetUV, \"chalkOffsetUV\", [\n\t\t\t\tctx.uv,\n\t\t\t\tviewport,\n\t\t\t\tuniformOf(slots.spacing, params),\n\t\t\t\tfloatE(ox),\n\t\t\t\tfloatE(oy)\n\t\t\t]))]);\n\t\t};\n\t\tconst tl = lumAt(-1, -1);\n\t\tconst t = lumAt(0, -1);\n\t\tconst tr = lumAt(1, -1);\n\t\tconst l = lumAt(-1, 0);\n\t\tconst r = lumAt(1, 0);\n\t\tconst bl = lumAt(-1, 1);\n\t\tconst bo = lumAt(0, 1);\n\t\tconst br = lumAt(1, 1);\n\t\tconst centre = sampleStraight(ctx.uv);\n\t\tconst centreLum = call(chalkLuma, \"chalkLuma\", [centre]);\n\t\treturn {\n\t\t\tsobelA: vec4(tl, t, tr, l),\n\t\t\tsobelB: vec4(r, bl, bo, br),\n\t\t\tcentre,\n\t\t\tcentreLum\n\t\t};\n\t});\n}\nfunction chalkSketch(slots) {\n\treturn gather({\n\t\tresultAlpha: \"straight\",\n\t\tbuild: (params) =\u003e {\n\t\t\tconst u = (ref) =\u003e uniformOf(ref, params);\n\t\t\tconst { sobelA, sobelB, centre, centreLum } = slots.edges(params);\n\t\t\tconst misc = vec4(centreLum, centre.member(\"a\"), 0, 0);\n\t\t\tconst tuning = vec4(u(slots.sensitivity), u(slots.hatchScale), u(slots.shading), u(slots.grain));\n\t\t\treturn call(chalkboardCompose, \"chalkboardCompose\", [\n\t\t\t\tsobelA,\n\t\t\t\tsobelB,\n\t\t\t\tparams.ctx.uv,\n\t\t\t\tparams.ctx.viewportSize,\n\t\t\t\tmisc,\n\t\t\t\ttuning,\n\t\t\t\tu(slots.board),\n\t\t\t\tu(slots.chalk)\n\t\t\t]);\n\t\t}\n\t});\n}\nfunction charGrid(slots) {\n\treturn shared((params) =\u003e call(asciiGrid, \"asciiGrid\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.viewportSize,\n\t\tuniformOf(slots.cellSize, params),\n\t\tuniformOf(slots.spacing, params)\n\t]));\n}\nfunction cellSample(slots) {\n\treturn shared((params) =\u003e {\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [params.convertToTexture(params.childNode).sample(slots.grid(params).member(\"cellCenter\"))]);\n\t});\n}\nfunction glyphFor(slots) {\n\treturn (params) =\u003e {\n\t\tconst atlasKit = slots.atlas(params);\n\t\tconst atlasUV = call(asciiAtlasUV, \"asciiAtlasUV\", [\n\t\t\tslots.cell(params).member(\"rgb\"),\n\t\t\tuniformOf(slots.gamma, params),\n\t\t\tparams.uniforms._charCount,\n\t\t\tparams.uniforms._atlasSize,\n\t\t\tparams.uniforms._atlasScale,\n\t\t\tslots.grid(params).member(\"cellUV\")\n\t\t]);\n\t\treturn atlasKit.sample(atlasUV, \"nearestClamp\");\n\t};\n}\nfunction glyphTint(slots) {\n\treturn (params) =\u003e {\n\t\tif (!params.childNode) return ZERO;\n\t\tconst cellColor = slots.cell(params);\n\t\treturn call(asciiCompose, \"asciiCompose\", [\n\t\t\tslots.glyph(params).member(\"rgb\"),\n\t\t\tcellColor,\n\t\t\tslots.grid(params).member(\"isOutside\"),\n\t\t\tuniformOf(slots.alphaThreshold, params),\n\t\t\tuniformOf(slots.preserveAlpha, params)\n\t\t]);\n\t};\n}\nvar OBF_DEG_TO_RAD = DEG_TO_RAD;\nconst orientedBoxField = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, center, rotationDeg, halfW, halfH) =\u003e {\n\t\"use gpu\";\n\tconst aspectUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst centerPos = vec2f(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y));\n\tconst dx = __tsover_sub(aspectUV.x, centerPos.x);\n\tconst dy = __tsover_sub(aspectUV.y, centerPos.y);\n\tconst rotRad = __tsover_mul(rotationDeg, OBF_DEG_TO_RAD);\n\tconst cosR = cos(rotRad);\n\tconst sinR = sin(rotRad);\n\tconst rdx = __tsover_add(__tsover_mul(dx, cosR), __tsover_mul(dy, sinR));\n\tconst rdy = __tsover_sub(__tsover_mul(dy, cosR), __tsover_mul(dx, sinR));\n\tconst localU = __tsover_add(__tsover_div(rdx, __tsover_mul(halfW, 2)), .5);\n\tconst localV = __tsover_add(__tsover_div(rdy, __tsover_mul(halfH, 2)), .5);\n\treturn vec3f(localU, localV, __tsover_mul(__tsover_mul(__tsover_mul(step(0, localU), step(localU, 1)), step(0, localV)), step(localV, 1)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotationDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfW\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"halfH\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"centerPos\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotationDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"OBF_DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localU\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"halfW\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"localV\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"halfH\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"insideMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t[[5, \"0\"], \"localU\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t[\"localU\", [5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t[[5, \"0\"], \"localV\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t[\"localV\", [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"localU\",\n\t\t\t\t\t\"localV\",\n\t\t\t\t\t\"insideMask\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"OBF_DEG_TO_RAD\": () =\u003e OBF_DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar HP_TAU = TAU;\nvar HP_DEG_TO_RAD = DEG_TO_RAD;\nconst hatchPlate = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, angleDeg, frequency, reliefPhase, level, aa) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = __tsover_mul(angleDeg, HP_DEG_TO_RAD);\n\tconst c = cos(angleRad);\n\tconst s = sin(angleRad);\n\tconst w = __tsover_add(__tsover_mul(p.x, __tsover_mul(s, -1)), __tsover_mul(p.y, c));\n\tconst v = cos(__tsover_add(__tsover_mul(__tsover_mul(w, frequency), HP_TAU), reliefPhase));\n\tconst thr = mix(-1.15, 1.15, clamp(level, 0, 1));\n\treturn smoothstep(__tsover_sub(thr, aa), __tsover_add(thr, aa), v);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"reliefPhase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"level\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aa\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"HP_DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"frequency\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"HP_TAU\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"reliefPhase\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"phase\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thr\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1.15\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"1.15\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"level\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thr\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thr\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t],\n\t\t\t\t\t\"v\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"HP_DEG_TO_RAD\": () =\u003e HP_DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"HP_TAU\": () =\u003e HP_TAU,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst spiralPlate = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p, c, frequency, reliefPhase, level, aa) =\u003e {\n\t\"use gpu\";\n\tconst dv = p.sub(c);\n\tconst r = length(dv);\n\tconst theta = atan2(dv.y, dv.x);\n\tconst v = cos(__tsover_add(__tsover_mul(__tsover_sub(__tsover_mul(r, frequency), __tsover_mul(theta, __tsover_div(1, HP_TAU))), HP_TAU), reliefPhase));\n\tconst thr = mix(-1.15, 1.15, clamp(level, 0, 1));\n\treturn smoothstep(__tsover_sub(thr, aa), __tsover_add(thr, aa), v);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frequency\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"reliefPhase\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"level\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aa\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"dv\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"theta\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"frequency\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"theta\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"HP_TAU\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"HP_TAU\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"reliefPhase\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"phase\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thr\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1.15\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"1.15\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"level\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thr\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thr\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t],\n\t\t\t\t\t\"v\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"HP_TAU\": () =\u003e HP_TAU,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction makeLineworkComposite(style) {\n\treturn typegpu_default.fn([\n\t\tvec4f,\n\t\tvec2f,\n\t\tf32,\n\t\tvec4f,\n\t\tvec4f,\n\t\tvec2f,\n\t\tvec4f,\n\t\tvec4f\n\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((childColor, uv, aspect, paper, ink, center, p0, p1) =\u003e {\n\t\t\"use gpu\";\n\t\tconst angleDeg = p0.x;\n\t\tconst frequency = p0.y;\n\t\tconst relief = p0.z;\n\t\tconst waviness = p0.w;\n\t\tconst contrast = p1.x;\n\t\tconst viewportY = p1.y;\n\t\tconst lum = dot(vec3f(childColor.x, childColor.y, childColor.z), vec3f(.299, .587, .114));\n\t\tconst level = clamp(__tsover_add(.5, __tsover_mul(__tsover_sub(lum, .5), contrast)), 0, 1);\n\t\tconst pa = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\t\tconst nx = mxNoiseFloat2(pa.mul(3.1));\n\t\tconst ny = mxNoiseFloat2(pa.mul(3.1).add(vec2f(7.31, 3.77)));\n\t\tconst p = pa.add(vec2f(nx, ny).mul(__tsover_mul(waviness, .06)));\n\t\tconst aa = clamp(__tsover_div(__tsover_mul(frequency, HP_TAU), max(viewportY, 1)), .02, 1);\n\t\tconst reliefPhase = __tsover_mul(__tsover_mul(relief, level), 9.42);\n\t\tlet cover = f32(0);\n\t\tif (style === 2) cover = spiralPlate(p, vec2f(__tsover_mul(center.x, aspect), __tsover_sub(1, center.y)), frequency, reliefPhase, level, aa);\n\t\telse if (style === 1) {\n\t\t\tconst ink1 = hatchPlate(p, angleDeg, frequency, reliefPhase, level, aa);\n\t\t\tconst level2 = clamp(__tsover_div(level, .55), 0, 1);\n\t\t\tconst ink2 = hatchPlate(p, __tsover_add(angleDeg, 72), __tsover_mul(frequency, .92), __tsover_mul(reliefPhase, .7), level2, aa);\n\t\t\tconst level3 = clamp(__tsover_div(level, .28), 0, 1);\n\t\t\tcover = max(ink1, max(ink2, hatchPlate(p, __tsover_sub(angleDeg, 38), __tsover_mul(frequency, 1.13), __tsover_mul(reliefPhase, .5), level3, aa)));\n\t\t} else cover = hatchPlate(p, angleDeg, frequency, reliefPhase, level, aa);\n\t\tconst rgb = mix(vec3f(paper.x, paper.y, paper.z), vec3f(ink.x, ink.y, ink.z), vec3f(cover));\n\t\tconst alpha = __tsover_mul(childColor.w, mix(paper.w, ink.w, cover));\n\t\treturn vec4f(rgb.x, rgb.y, rgb.z, alpha);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"childColor\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aspect\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"paper\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ink\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"center\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"p0\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"p1\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"frequency\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"relief\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"waviness\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"contrast\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p1\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"viewportY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p1\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lum\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"level\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"lum\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"contrast\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"pa\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.mxNoiseFloat2\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"pa\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[5, \"3.1\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ny\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"noise.mxNoiseFloat2\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"pa\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[5, \"3.1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[5, \"7.31\"], [5, \"3.77\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pa\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"nx\", \"ny\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"waviness\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"aa\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"HP_TAU\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"viewportY\", [5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0.02\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"reliefPhase\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"relief\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"level\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"9.42\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"cover\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"style\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sc\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"cover\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"spiralPlate\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"sc\",\n\t\t\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\t\t\"reliefPhase\",\n\t\t\t\t\t\t\t\t\"level\",\n\t\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"style\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ink1\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hatchPlate\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\t\t\t\t\"reliefPhase\",\n\t\t\t\t\t\t\t\t\t\t\"level\",\n\t\t\t\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"level2\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"level\",\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ink2\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hatchPlate\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"72\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.92\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"reliefPhase\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"level2\",\n\t\t\t\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"level3\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"level\",\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.28\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ink3\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"hatchPlate\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"38\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.13\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"reliefPhase\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"level3\",\n\t\t\t\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"cover\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"ink1\", [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"ink2\", \"ink3\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]],\n\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"cover\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"hatchPlate\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\t\t\t\t\"frequency\",\n\t\t\t\t\t\t\t\t\t\"reliefPhase\",\n\t\t\t\t\t\t\t\t\t\"level\",\n\t\t\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rgb\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"paper\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"paper\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"paper\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ink\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ink\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ink\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\"cover\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"alpha\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"paper\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ink\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"cover\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"alpha\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.dot\": () =\u003e dot,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"noise.mxNoiseFloat2\": () =\u003e mxNoiseFloat2,\n\t\t\t\"HP_TAU\": () =\u003e HP_TAU,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"style\": () =\u003e style,\n\t\t\t\"spiralPlate\": () =\u003e spiralPlate,\n\t\t\t\"hatchPlate\": () =\u003e hatchPlate,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`lineworkComposite_${style}`);\n}\nvar LINEWORK_MODES = {\n\tline: 0,\n\tcrosshatch: 1,\n\tspiral: 2\n};\nfunction linework(slots) {\n\treturn gather({\n\t\tresultAlpha: \"straight\",\n\t\tbuild: ({ sampleStraight, ctx, uniforms, propValues }) =\u003e {\n\t\t\tconst childColor = sampleStraight(ctx.uv);\n\t\t\tconst raw = propValues[slots.style.name];\n\t\t\tconst style = typeof raw === \"number\" ? raw : LINEWORK_MODES[String(raw)] ?? 1;\n\t\t\tconst composite = makeLineworkComposite(style);\n\t\t\tconst p0 = vec4(uniforms[slots.angle.name], uniforms[slots.frequency.name], uniforms[slots.relief.name], uniforms[slots.waviness.name]);\n\t\t\tconst p1 = vec4(uniforms[slots.contrast.name], ctx.viewportSize.member(\"y\"), floatE(0), floatE(0));\n\t\t\treturn call(composite, `lineworkComposite_${style}`, [\n\t\t\t\tchildColor,\n\t\t\t\tctx.uv,\n\t\t\t\tctx.aspect,\n\t\t\t\tuniforms[slots.paper.name],\n\t\t\t\tuniforms[slots.ink.name],\n\t\t\t\tuniforms[slots.center.name],\n\t\t\t\tp0,\n\t\t\t\tp1\n\t\t\t]);\n\t\t}\n\t});\n}\nexport { glyphFor as a, linework as c, sobelTaps as d, wash as f, charGrid as i, orientedBoxField as l, cellSample as n, glyphTint as o, chalkSketch as r, kuwahara as s, bleedWarp as t, paperGrain as u };\n","import { Br as struct, Cr as sin, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Tr as sqrt, _r as mix, ar as clamp, cr as dot, ct as call, er as select, ft as floatE, gr as min, hr as max, jr as vec3f, mt as vec4, or as cos, qr as f32, st as asLocal, ti as __export, ur as exp2, wr as smoothstep, yr as pow } from \"./lower-Bd2jez_2.js\";\nvar glass_exports = /* @__PURE__ */ __export({\n\tBLUR_DISK: () =\u003e BLUR_DISK,\n\tGlassLensUVs: () =\u003e GlassLensUVs,\n\tapplyGlassEffect: () =\u003e applyGlassEffect,\n\tglassBlurOffset: () =\u003e glassBlurOffset,\n\tglassBorderHighlight: () =\u003e glassBorderHighlight,\n\tglassComposite: () =\u003e glassComposite,\n\tglassFresnelRim: () =\u003e glassFresnelRim,\n\tglassGradient: () =\u003e glassGradient,\n\tglassLensUVs: () =\u003e glassLensUVs,\n\tglassRefrStrength: () =\u003e glassRefrStrength,\n\tglassSpecular: () =\u003e glassSpecular,\n\tglassTint: () =\u003e glassTint,\n\toffsetUV: () =\u003e offsetUV,\n\tsdfSpaceUV: () =\u003e sdfSpaceUV\n});\nvar DEG_TO_RAD = .017453292519943295;\nvar INV_HLEN_GLASS = .4472135954999579;\nvar GOLDEN_ANGLE = 2.3999632297286535;\nvar BLUR_SAMPLE_COUNT = 9;\nconst BLUR_DISK = [];\nfor (let i = 0; i \u003c BLUR_SAMPLE_COUNT; i++) {\n\tconst angle = i * GOLDEN_ANGLE;\n\tconst r = Math.sqrt(i / BLUR_SAMPLE_COUNT);\n\tBLUR_DISK.push([Math.cos(angle) * r, Math.sin(angle) * r]);\n}\nconst sdfSpaceUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((center, scale, rotation, uv, aspect) =\u003e {\n\t\"use gpu\";\n\tconst centerX = center.x;\n\tconst centerY = __tsover_sub(1, center.y);\n\tconst dxAc = __tsover_mul(__tsover_sub(uv.x, centerX), aspect);\n\tconst dy = __tsover_sub(uv.y, centerY);\n\tconst rotRad = __tsover_mul(rotation, DEG_TO_RAD);\n\tconst cosR = cos(rotRad);\n\tconst sinR = sin(rotRad);\n\tconst rdx = __tsover_add(__tsover_mul(dxAc, cosR), __tsover_mul(dy, sinR));\n\tconst rdy = __tsover_sub(__tsover_mul(dy, cosR), __tsover_mul(dxAc, sinR));\n\treturn vec2f(__tsover_add(__tsover_div(rdx, scale), .5), __tsover_add(__tsover_div(rdy, scale), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rotation\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerX\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"center\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dxAc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"centerY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rotation\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sinR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"rotRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dxAc\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rdy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cosR\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dxAc\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sinR\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rdx\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rdy\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst offsetUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, ox, oy) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_add(uv.x, ox), __tsover_add(uv.y, oy));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t\"ox\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t\"oy\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst glassGradient = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdfRaw, sdfX, sdfY) =\u003e {\n\t\"use gpu\";\n\tconst eps = .01;\n\treturn vec2f(__tsover_div(__tsover_sub(sdfX, sdfRaw), eps), __tsover_div(__tsover_sub(sdfY, sdfRaw), eps));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfRaw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfY\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"eps\",\n\t\t\t[5, \"0.01\"]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sdfX\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"sdfRaw\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"eps\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sdfY\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"sdfRaw\"\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"eps\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst glassRefrStrength = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, thickness, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst thicknessRange = max(__tsover_mul(thickness, .3), .005);\n\tconst depthNorm = clamp(__tsover_div(__tsover_mul(sdf, -1), thicknessRange), 0, 1);\n\tconst vol = smoothstep(0, 1, depthNorm);\n\treturn select(__tsover_mul(__tsover_sub(1, depthNorm), __tsover_sub(1, depthNorm)), vol, volumetric \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdf\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thicknessRange\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t], [5, \"0.005\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"depthNorm\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"thicknessRange\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vol\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"depthNorm\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flat\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"depthNorm\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"depthNorm\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"flat\",\n\t\t\t\t\t\"vol\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst GlassLensUVs = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tlensUV: vec2f,\n\trUV: vec2f,\n\tbUV: vec2f\n}), \"GlassLensUVs\");\nconst glassLensUVs = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], GlassLensUVs)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, center, sdfRaw, scale, gradX, gradY, refraction, innerZoom, thickness, aberration, aspect, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst refrStrength = glassRefrStrength(__tsover_div(sdfRaw, scale), thickness, volumetric);\n\tconst refrScale = __tsover_mul(refraction, .15);\n\tconst slopeLen = max(sqrt(__tsover_add(__tsover_mul(gradX, gradX), __tsover_mul(gradY, gradY))), 1e-4);\n\tconst slopeScale = min(f32(1), __tsover_div(12, slopeLen));\n\tconst offsetX = __tsover_div(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(gradX, slopeScale), -1), refrScale), refrStrength), aspect);\n\tconst offsetY = __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(gradY, slopeScale), -1), refrScale), refrStrength);\n\tconst centerX = center.x;\n\tconst centerY = __tsover_sub(1, center.y);\n\tconst zoomedX = __tsover_add(centerX, __tsover_div(__tsover_sub(uv.x, centerX), innerZoom));\n\tconst zoomedY = __tsover_add(centerY, __tsover_div(__tsover_sub(uv.y, centerY), innerZoom));\n\tconst lensX = __tsover_add(zoomedX, offsetX);\n\tconst lensY = __tsover_add(zoomedY, offsetY);\n\tconst chrScale = __tsover_mul(aberration, .06);\n\tconst chrOffX = __tsover_mul(offsetX, chrScale);\n\tconst chrOffY = __tsover_mul(offsetY, chrScale);\n\treturn GlassLensUVs({\n\t\tlensUV: vec2f(lensX, lensY),\n\t\trUV: vec2f(__tsover_add(lensX, chrOffX), __tsover_add(lensY, chrOffY)),\n\t\tbUV: vec2f(__tsover_sub(lensX, chrOffX), __tsover_sub(lensY, chrOffY))\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfRaw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"refraction\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"innerZoom\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aberration\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdf\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sdfRaw\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"refrStrength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"glassRefrStrength\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"refrScale\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"refraction\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slopeLen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gradX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gradY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slopeScale\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"12\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"slopeLen\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offsetX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"slopeScale\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"refrScale\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"refrStrength\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offsetY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"slopeScale\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"refrScale\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"refrStrength\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerX\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"center\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"zoomedX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"centerX\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"innerZoom\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"zoomedY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"centerY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"innerZoom\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lensX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"zoomedX\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"offsetX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lensY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"zoomedY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"offsetY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chrScale\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"aberration\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chrOffX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"offsetX\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"chrScale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chrOffY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"offsetY\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"chrScale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"GlassLensUVs\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"lensUV\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"lensX\", \"lensY\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"rUV\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lensX\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"chrOffX\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lensY\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"chrOffY\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"bUV\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lensX\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"chrOffX\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lensY\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"chrOffY\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"glassRefrStrength\": () =\u003e glassRefrStrength,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"GlassLensUVs\": () =\u003e GlassLensUVs,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst glassBlurOffset = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((viewportSize, blur, ox, oy) =\u003e {\n\t\"use gpu\";\n\tconst m = __tsover_mul(blur, 2);\n\treturn vec2f(__tsover_mul(__tsover_div(ox, viewportSize.x), m), __tsover_mul(__tsover_div(oy, viewportSize.y), m));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewportSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blur\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ox\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"oy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"m\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"blur\",\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"2\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ox\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewportSize\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"m\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"oy\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewportSize\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"m\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst glassTint = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rgb, tintColor, tintIntensity, preserveLum) =\u003e {\n\t\"use gpu\";\n\tconst lumWeights = vec3f(.299, .587, .114);\n\tconst origLum = dot(rgb, lumWeights);\n\tconst tinted = mix(rgb, tintColor, tintIntensity);\n\tconst tintedLum = dot(tinted, lumWeights);\n\treturn mix(tinted, tinted.mul(__tsover_div(origLum, max(tintedLum, 1e-4))), select(f32(0), f32(1), preserveLum \u003e .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rgb\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"preserveLum\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lumWeights\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.299\"],\n\t\t\t\t\t\t[5, \"0.587\"],\n\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"origLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"rgb\", \"lumWeights\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tinted\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\"tintIntensity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tintedLum\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"tinted\", \"lumWeights\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lumPreserved\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tinted\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"origLum\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"tintedLum\", [5, \"0.0001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"preserveFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"preserveLum\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"tinted\",\n\t\t\t\t\t\"lumPreserved\",\n\t\t\t\t\t\"preserveFactor\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nconst glassBorderHighlight = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, edgeSoftness, pxH, gradX, gradY, lightAngle, highlight) =\u003e {\n\t\"use gpu\";\n\tconst sharp = max(__tsover_mul(edgeSoftness, .5), .001);\n\tconst w2 = max(__tsover_mul(sharp, .0625), __tsover_mul(pxH, 1.5));\n\tconst sdfOuter = __tsover_sub(sdf, pxH);\n\tconst rb2base = __tsover_sub(clamp(__tsover_div(__tsover_mul(sdfOuter, -1), w2), 0, 1), clamp(__tsover_div(__tsover_mul(sdf, -1), w2), 0, 1));\n\tconst lx = cos(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst ly = sin(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst normalDotLight = __tsover_add(__tsover_mul(gradX, lx), __tsover_mul(gradY, ly));\n\tconst lightFacing = clamp(__tsover_add(__tsover_mul(normalDotLight, .5), .5), 0, 1);\n\treturn __tsover_mul(__tsover_mul(rb2base, lightFacing), highlight);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdf\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"edgeSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pxH\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"highlight\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sharp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"edgeSoftness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sharp\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.0625\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"pxH\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdfOuter\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"pxH\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rb2base\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sdfOuter\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"w2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"w2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ly\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalDotLight\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"lx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ly\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightFacing\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"normalDotLight\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rb2base\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"lightFacing\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"highlight\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nconst glassSpecular = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((gradX, gradY, lightAngle, highlight, highlightSoftness, refrStrength) =\u003e {\n\t\"use gpu\";\n\tconst lx = cos(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst ly = sin(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst nz = f32(2);\n\tconst nLen = sqrt(__tsover_add(__tsover_add(__tsover_mul(gradX, gradX), __tsover_mul(gradY, gradY)), __tsover_mul(nz, nz)));\n\tconst nx = __tsover_div(gradX, nLen);\n\tconst ny = __tsover_div(gradY, nLen);\n\tconst nnz = __tsover_div(nz, nLen);\n\tconst nDotH = __tsover_add(__tsover_add(__tsover_mul(nx, __tsover_mul(lx, INV_HLEN_GLASS)), __tsover_mul(ny, __tsover_mul(ly, INV_HLEN_GLASS))), __tsover_mul(nnz, __tsover_mul(2, INV_HLEN_GLASS)));\n\tconst shininess = exp2(__tsover_sub(8, __tsover_mul(highlightSoftness, 7)));\n\treturn __tsover_mul(__tsover_mul(pow(clamp(nDotH, 0, 1), shininess), highlight), refrStrength);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"highlight\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"highlightSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"refrStrength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ly\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nz\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nLen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gradX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gradY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nz\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"nz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"nLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"nLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nnz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"nz\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"nLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nDotH\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"INV_HLEN_GLASS\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"ly\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"INV_HLEN_GLASS\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nnz\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"INV_HLEN_GLASS\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shininess\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"highlightSoftness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"nDotH\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"shininess\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"highlight\"\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t\"refrStrength\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"INV_HLEN_GLASS\": () =\u003e INV_HLEN_GLASS,\n\t\t\"std.exp2\": () =\u003e exp2,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst glassFresnelRim = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, gradX, gradY, fresnel, fresnelSoftness, rb1, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst slopeSq = __tsover_add(__tsover_mul(gradX, gradX), __tsover_mul(gradY, gradY));\n\tconst cosView = __tsover_div(1, sqrt(__tsover_add(slopeSq, 1)));\n\tconst exponent = mix(6, 1.5, clamp(fresnelSoftness, 0, 1));\n\tconst volRim = __tsover_mul(__tsover_mul(__tsover_mul(pow(__tsover_sub(1, cosView), exponent), fresnel), 2), rb1);\n\tconst fresnelWidth = max(__tsover_mul(fresnelSoftness, .06), .001);\n\tconst fresnelDepth = clamp(__tsover_div(__tsover_mul(sdf, -1), fresnelWidth), 0, 1);\n\treturn select(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(1, fresnelDepth), __tsover_sub(1, fresnelDepth)), fresnel), rb1), volRim, volumetric \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdf\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fresnel\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fresnelSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rb1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slopeSq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"gradX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"gradY\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosView\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"slopeSq\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"exponent\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"6\"],\n\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"fresnelSoftness\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"volRim\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"cosView\"\n\t\t\t\t\t\t\t\t], \"exponent\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"fresnel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"rb1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnelWidth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fresnelSoftness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnelDepth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"fresnelWidth\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flatRim\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"fresnelDepth\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"fresnelDepth\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fresnel\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"rb1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"flatRim\",\n\t\t\t\t\t\"volRim\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst glassComposite = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tvec3f,\n\tf32,\n\tf32,\n\tvec3f,\n\tf32,\n\tf32,\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((baseColor, blurred, sdfRaw, scale, gradX, gradY, viewportSize, edgeSoftness, lightAngle, highlight, highlightColor, highlightSoftness, fresnel, fresnelColor, fresnelSoftness, thickness, tintColor, tintIntensity, tintPreserveLuminosity, cutout, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst sharp = max(__tsover_mul(edgeSoftness, .5), .001);\n\tconst pxH = __tsover_div(1, viewportSize.y);\n\tconst sdf = __tsover_div(sdfRaw, scale);\n\tconst w1 = max(__tsover_mul(sharp, .03125), __tsover_mul(pxH, 1.5));\n\tconst rb1 = clamp(__tsover_div(__tsover_mul(sdf, -1), w1), 0, 1);\n\tconst refrStrength = glassRefrStrength(sdf, thickness, volumetric);\n\tconst rb2 = glassBorderHighlight(sdf, edgeSoftness, pxH, gradX, gradY, lightAngle, highlight);\n\tconst tintedRgb = glassTint(vec3f(blurred.x, blurred.y, blurred.z), tintColor, tintIntensity, tintPreserveLuminosity);\n\tconst specGlint = glassSpecular(gradX, gradY, lightAngle, highlight, highlightSoftness, refrStrength);\n\tconst fresnelRim = glassFresnelRim(sdf, gradX, gradY, fresnel, fresnelSoftness, rb1, volumetric);\n\tconst lighting = vec4f(__tsover_add(__tsover_add(__tsover_add(tintedRgb.x, __tsover_mul(highlightColor.x, rb2)), __tsover_mul(highlightColor.x, specGlint)), __tsover_mul(fresnelColor.x, fresnelRim)), __tsover_add(__tsover_add(__tsover_add(tintedRgb.y, __tsover_mul(highlightColor.y, rb2)), __tsover_mul(highlightColor.y, specGlint)), __tsover_mul(fresnelColor.y, fresnelRim)), __tsover_add(__tsover_add(__tsover_add(tintedRgb.z, __tsover_mul(highlightColor.z, rb2)), __tsover_mul(highlightColor.z, specGlint)), __tsover_mul(fresnelColor.z, fresnelRim)), __tsover_add(blurred.w, rb2));\n\tconst transition = smoothstep(0, 1, rb1);\n\tconst composited = mix(baseColor, lighting, transition);\n\tconst cutoutAlpha = select(f32(1), transition, cutout \u003e .5);\n\treturn vec4f(composited.x, composited.y, composited.z, __tsover_mul(composited.w, cutoutAlpha));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"baseColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"blurred\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfRaw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewportSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"edgeSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"highlight\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"highlightColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"highlightSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fresnel\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fresnelColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fresnelSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintPreserveLuminosity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cutout\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sharp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"edgeSoftness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pxH\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewportSize\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdf\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sdfRaw\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sharp\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.03125\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"pxH\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rb1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"w1\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"refrStrength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"glassRefrStrength\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rb2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"glassBorderHighlight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\"edgeSoftness\",\n\t\t\t\t\t\t\"pxH\",\n\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"highlight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blurredRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"blurred\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"blurred\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"blurred\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tintedRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"glassTint\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"blurredRgb\",\n\t\t\t\t\t\t\"tintColor\",\n\t\t\t\t\t\t\"tintIntensity\",\n\t\t\t\t\t\t\"tintPreserveLuminosity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"specGlint\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"glassSpecular\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"highlight\",\n\t\t\t\t\t\t\"highlightSoftness\",\n\t\t\t\t\t\t\"refrStrength\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnelRim\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"glassFresnelRim\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\"fresnel\",\n\t\t\t\t\t\t\"fresnelSoftness\",\n\t\t\t\t\t\t\"rb1\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"litR\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tintedRgb\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"highlightColor\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rb2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"highlightColor\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"specGlint\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fresnelColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fresnelRim\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"litG\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tintedRgb\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"highlightColor\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rb2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"highlightColor\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"specGlint\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fresnelColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fresnelRim\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"litB\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"tintedRgb\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"highlightColor\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rb2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"highlightColor\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"specGlint\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"fresnelColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fresnelRim\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"litA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"blurred\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"rb2\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lighting\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"litR\",\n\t\t\t\t\t\t\"litG\",\n\t\t\t\t\t\t\"litB\",\n\t\t\t\t\t\t\"litA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"transition\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"rb1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"composited\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"baseColor\",\n\t\t\t\t\t\t\"lighting\",\n\t\t\t\t\t\t\"transition\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cutoutAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"transition\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cutout\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"composited\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"composited\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"composited\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"composited\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"cutoutAlpha\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"glassRefrStrength\": () =\u003e glassRefrStrength,\n\t\t\"glassBorderHighlight\": () =\u003e glassBorderHighlight,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"glassTint\": () =\u003e glassTint,\n\t\t\"glassSpecular\": () =\u003e glassSpecular,\n\t\t\"glassFresnelRim\": () =\u003e glassFresnelRim,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction applyGlassEffect(params, sdfSampler, childTexture, blurredTexture, options) {\n\tconst { uniforms, propValues, ctx } = params;\n\tconst volumetric = options?.volumetric ?? false;\n\tconst bakedGradients = options?.bakedGradients ?? false;\n\tconst volFlag = floatE(volumetric ? 1 : 0);\n\tconst sdfUV = asLocal(call(sdfSpaceUV, \"sdfSpaceUV\", [\n\t\tuniforms.center,\n\t\tuniforms.scale,\n\t\tuniforms.rotation,\n\t\tctx.uv,\n\t\tctx.aspect\n\t]), \"glassSdfUV\");\n\tconst surf0 = asLocal(sdfSampler(sdfUV), \"glassSurf\");\n\tconst sdfRaw = surf0.member(\"r\");\n\tlet gradX;\n\tlet gradY;\n\tif (bakedGradients) {\n\t\tgradX = surf0.member(\"g\");\n\t\tgradY = surf0.member(\"b\");\n\t} else {\n\t\tconst surfX = sdfSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tfloatE(.01),\n\t\t\tfloatE(0)\n\t\t]));\n\t\tconst surfY = sdfSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tfloatE(0),\n\t\t\tfloatE(.01)\n\t\t]));\n\t\tconst grad = asLocal(call(glassGradient, \"glassGradient\", [\n\t\t\tsdfRaw,\n\t\t\tsurfX.member(\"r\"),\n\t\t\tsurfY.member(\"r\")\n\t\t]), \"glassGrad\");\n\t\tgradX = grad.member(\"x\");\n\t\tgradY = grad.member(\"y\");\n\t}\n\tconst lens = asLocal(call(glassLensUVs, \"glassLensUVs\", [\n\t\tctx.uv,\n\t\tuniforms.center,\n\t\tsdfRaw,\n\t\tuniforms.scale,\n\t\tgradX,\n\t\tgradY,\n\t\tuniforms.refraction,\n\t\tuniforms.innerZoom,\n\t\tuniforms.thickness,\n\t\tuniforms.aberration,\n\t\tctx.aspect,\n\t\tvolFlag\n\t]), \"glassLens\");\n\tconst lensUV = lens.member(\"lensUV\");\n\tconst rUV = lens.member(\"rUV\");\n\tconst bUV = lens.member(\"bUV\");\n\tconst blurVal = propValues.blur;\n\tconst blurEnabled = typeof blurVal === \"number\" ? blurVal \u003e 0 : true;\n\tconst abVal = propValues.aberration;\n\tconst aberrationEnabled = typeof abVal === \"number\" ? abVal \u003e 0 : true;\n\tconst blurTap = (tex, uv, offOx, offOy) =\u003e tex.sample(uv.add(call(glassBlurOffset, \"glassBlurOffset\", [\n\t\tctx.viewportSize,\n\t\tuniforms.blur,\n\t\tfloatE(offOx),\n\t\tfloatE(offOy)\n\t])));\n\tconst vogelAccum = (tex, uv) =\u003e {\n\t\tlet acc = blurTap(tex, uv, BLUR_DISK[0][0], BLUR_DISK[0][1]);\n\t\tfor (let i = 1; i \u003c BLUR_DISK.length; i++) acc = acc.add(blurTap(tex, uv, BLUR_DISK[i][0], BLUR_DISK[i][1]));\n\t\treturn acc.mul(1 / BLUR_SAMPLE_COUNT);\n\t};\n\tlet blurred;\n\tif (blurredTexture \u0026\u0026 blurEnabled) blurred = aberrationEnabled ? vec4(blurredTexture.sample(rUV).member(\"r\"), blurredTexture.sample(lensUV).member(\"g\"), blurredTexture.sample(bUV).member(\"b\"), blurredTexture.sample(lensUV).member(\"a\")) : blurredTexture.sample(lensUV);\n\telse if (!blurEnabled \u0026\u0026 !aberrationEnabled) blurred = childTexture.sample(lensUV);\n\telse if (!blurEnabled \u0026\u0026 aberrationEnabled) blurred = vec4(childTexture.sample(rUV).member(\"r\"), childTexture.sample(lensUV).member(\"g\"), childTexture.sample(bUV).member(\"b\"), childTexture.sample(lensUV).member(\"a\"));\n\telse if (blurEnabled \u0026\u0026 !aberrationEnabled) blurred = vogelAccum(childTexture, lensUV);\n\telse {\n\t\tconst accR = vogelAccum(childTexture, rUV);\n\t\tconst accG = vogelAccum(childTexture, lensUV);\n\t\tconst accB = vogelAccum(childTexture, bUV);\n\t\tblurred = vec4(accR.member(\"r\"), accG.member(\"g\"), accB.member(\"b\"), accG.member(\"a\"));\n\t}\n\tconst blurredStraight = call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [blurred]);\n\treturn call(glassComposite, \"glassComposite\", [\n\t\tcall(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(ctx.uv)]),\n\t\tblurredStraight,\n\t\tsdfRaw,\n\t\tuniforms.scale,\n\t\tgradX,\n\t\tgradY,\n\t\tctx.viewportSize,\n\t\tuniforms.edgeSoftness,\n\t\tuniforms.lightAngle,\n\t\tuniforms.highlight,\n\t\tuniforms.highlightColor.member(\"rgb\"),\n\t\tuniforms.highlightSoftness,\n\t\tuniforms.fresnel,\n\t\tuniforms.fresnelColor.member(\"rgb\"),\n\t\tuniforms.fresnelSoftness,\n\t\tuniforms.thickness,\n\t\tuniforms.tintColor.member(\"rgb\"),\n\t\tuniforms.tintIntensity,\n\t\tuniforms.tintPreserveLuminosity,\n\t\tuniforms.cutout,\n\t\tvolFlag\n\t]);\n}\nexport { sdfSpaceUV as i, glass_exports as n, offsetUV as r, glassGradient as t };\n","import { An as value12, Bn as TWO_PI, Br as struct, Cn as mxNoiseFloat3, Cr as sin$1, En as perlin12d, Gn as typegpu_default, I as sdf_exports, Kr as bool, Mr as vec4f, Or as vec2f, Sn as mxNoiseFloat2, Tr as sqrt, _r as mix$1, ar as clamp$1, at as ZERO, cr as dot$1, ct as call, er as select, ft as floatE, gr as min, hr as max$1, ht as Expr, jr as vec3f, lr as exp$1, mr as length$1, or as cos, qr as f32, ti as __export, tr as abs, vn as hash12, vr as normalize$1, wn as mxWorleyNoiseFloat2Pub, wr as smoothstep$1, wt as neutral, yr as pow$1 } from \"./lower-Bd2jez_2.js\";\nimport { w as sdf3d_exports } from \"./sdf3d-2AWC_wdn.js\";\nimport { n as glass_exports } from \"./glass-ABppDbYG.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, I as splat3, N as sin, P as smoothstep, T as neg, V as vec3, c as exp, i as clamp, l as exp2, n as add, o as div, s as dot, u as float, v as length, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nvar lighting_exports = /* @__PURE__ */ __export({\n\tTangentFrame: () =\u003e TangentFrame,\n\tWardSpecularInput: () =\u003e WardSpecularInput,\n\tbevelledFlatNormal: () =\u003e bevelledFlatNormal,\n\tcosinePalette: () =\u003e cosinePalette,\n\tfieldGradient: () =\u003e fieldGradient,\n\tinsideMask: () =\u003e insideMask,\n\torthonormalTangentFrame: () =\u003e orthonormalTangentFrame,\n\toutsideShape: () =\u003e outsideShape,\n\tpatternCoords: () =\u003e patternCoords,\n\tperspectiveViewRay: () =\u003e perspectiveViewRay,\n\tvolumetricNormal: () =\u003e volumetricNormal,\n\twardAnisotropicSpecular: () =\u003e wardAnisotropicSpecular\n});\nconst fieldGradient = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((surf0, surfX, surfY, eps) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_div(__tsover_sub(surfX.x, surf0.x), eps), __tsover_div(__tsover_sub(surfY.x, surf0.x), eps));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surf0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surfX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surfY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"eps\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"surfX\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"surf0\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"eps\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"surfY\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"surf0\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"/\",\n\t\t\t\t\"eps\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst volumetricNormal = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((surf0, surfX, surfY, eps, gradClamp) =\u003e {\n\t\"use gpu\";\n\treturn normalize$1(vec3f(clamp$1(__tsover_div(__tsover_sub(surfX.w, surf0.w), eps), __tsover_mul(gradClamp, -1), gradClamp), clamp$1(__tsover_div(__tsover_sub(surfY.w, surf0.w), eps), __tsover_mul(gradClamp, -1), gradClamp), -1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surf0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surfX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surfY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"eps\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradClamp\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ddx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"surfX\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"surf0\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"eps\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gradClamp\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"gradClamp\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ddy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"surfY\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"surf0\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"eps\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gradClamp\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"gradClamp\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.normalize\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\"std.normalize\": () =\u003e normalize$1,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst bevelledFlatNormal = typegpu_default.fn([vec2f, f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((grad, sinTilt) =\u003e {\n\t\"use gpu\";\n\tconst glen = max$1(length$1(grad), 1e-4);\n\tconst sB = min(sinTilt, .9995);\n\treturn vec3f(__tsover_mul(__tsover_div(grad.x, glen), sB), __tsover_mul(__tsover_div(grad.y, glen), sB), __tsover_mul(sqrt(__tsover_sub(1, __tsover_mul(sB, sB))), -1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"grad\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"sinTilt\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"grad\"]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"sinTilt\", [5, \"0.9995\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"grad\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"glen\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sB\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"grad\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"glen\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sB\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sB\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"sB\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.length\": () =\u003e length$1,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.sqrt\": () =\u003e sqrt\n\t}\n}) \u0026\u0026 $.f)({}));\nconst patternCoords = typegpu_default.fn([\n\tvec2f,\n\tvec4f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdfUV, surf0, volumetric) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(select(__tsover_sub(sdfUV.x, .5), surf0.y, volumetric \u003e .5), select(__tsover_sub(sdfUV.y, .5), surf0.z, volumetric \u003e .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surf0\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"surf0\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t], [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"surf0\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst outsideShape = typegpu_default.fn([f32, f32], bool)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, pxH) =\u003e {\n\t\"use gpu\";\n\treturn sdf \u003e __tsover_mul(pxH, 2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"sdf\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"pxH\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t\"sdf\",\n\t\t\t\"\u003e\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t\"pxH\",\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"2\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nconst insideMask = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, sharpEdge, pxH, minPixels) =\u003e {\n\t\"use gpu\";\n\tconst w = max$1(__tsover_mul(sharpEdge, .03125), __tsover_mul(pxH, minPixels));\n\treturn clamp$1(__tsover_div(__tsover_mul(sdf, -1), w), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdf\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sharpEdge\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pxH\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"minPixels\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"w\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sharpEdge\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.03125\"]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"pxH\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"minPixels\"\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"w\"\n\t\t\t\t],\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"1\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.clamp\": () =\u003e clamp$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst perspectiveViewRay = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, fov) =\u003e {\n\t\"use gpu\";\n\treturn normalize$1(vec3f(__tsover_mul(__tsover_mul(__tsover_sub(uv.x, .5), aspect), fov), __tsover_mul(__tsover_sub(uv.y, .5), fov), 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fov\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.normalize\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fov\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"fov\"\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.normalize\": () =\u003e normalize$1,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst TangentFrame = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\ttangent: vec3f,\n\tbitangent: vec3f\n}), \"TangentFrame\");\nconst orthonormalTangentFrame = typegpu_default.fn([vec3f, vec3f], TangentFrame)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((normal, dir) =\u003e {\n\t\"use gpu\";\n\tconst T3 = normalize$1(dir.sub(normal.mul(dot$1(normal, dir))));\n\treturn TangentFrame({\n\t\ttangent: T3,\n\t\tbitangent: vec3f(__tsover_sub(__tsover_mul(normal.y, T3.z), __tsover_mul(normal.z, T3.y)), __tsover_sub(__tsover_mul(normal.z, T3.x), __tsover_mul(normal.x, T3.z)), __tsover_sub(__tsover_mul(normal.x, T3.y), __tsover_mul(normal.y, T3.x)))\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"normal\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dir\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"T3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"normal\", \"dir\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"B3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"T3\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"T3\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"T3\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"T3\",\n\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"T3\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"normal\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"T3\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"TangentFrame\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"tangent\": \"T3\",\n\t\t\t\t\t\"bitangent\": \"B3\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.normalize\": () =\u003e normalize$1,\n\t\t\"std.dot\": () =\u003e dot$1,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"TangentFrame\": () =\u003e TangentFrame\n\t}\n}) \u0026\u0026 $.f)({}));\nconst WardSpecularInput = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tnormal: vec3f,\n\ttangent: vec3f,\n\tlight: vec3f,\n\tview: vec3f,\n\talphaAlong: f32,\n\talphaAcross: f32\n}), \"WardSpecularInput\");\nconst wardAnisotropicSpecular = typegpu_default.fn([WardSpecularInput], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((p) =\u003e {\n\t\"use gpu\";\n\tconst frame = orthonormalTangentFrame(p.normal, p.tangent);\n\tconst H = normalize$1(p.light.sub(p.view));\n\tconst hT = dot$1(H, frame.tangent);\n\tconst hB = dot$1(H, frame.bitangent);\n\tconst hN = clamp$1(abs(dot$1(H, p.normal)), 1e-4, 1);\n\tconst aT = max$1(p.alphaAlong, 1e-4);\n\tconst aB = max$1(p.alphaAcross, 1e-4);\n\tconst expo = __tsover_div(__tsover_add(__tsover_mul(__tsover_div(hT, aT), __tsover_div(hT, aT)), __tsover_mul(__tsover_div(hB, aB), __tsover_div(hB, aB))), __tsover_mul(__tsover_add(hN, 1), .5));\n\treturn exp$1(__tsover_mul(expo, -1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"p\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"frame\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"orthonormalTangentFrame\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"normal\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"tangent\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"H\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"light\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"view\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hT\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"H\", [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\"tangent\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"H\", [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\"bitangent\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hN\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"H\", [\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"normal\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.0001\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aT\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"alphaAlong\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"alphaAcross\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"expo\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hT\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aT\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hT\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aT\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hB\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aB\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hB\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"aB\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"hN\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.exp\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"expo\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"orthonormalTangentFrame\": () =\u003e orthonormalTangentFrame,\n\t\t\"std.normalize\": () =\u003e normalize$1,\n\t\t\"std.dot\": () =\u003e dot$1,\n\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.exp\": () =\u003e exp$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cosinePalette = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, phaseR, phaseG, phaseB) =\u003e {\n\t\"use gpu\";\n\treturn vec3f(__tsover_add(__tsover_mul(cos(__tsover_mul(__tsover_add(t, phaseR), TWO_PI)), .5), .5), __tsover_add(__tsover_mul(cos(__tsover_mul(__tsover_add(t, phaseG), TWO_PI)), .5), .5), __tsover_add(__tsover_mul(cos(__tsover_mul(__tsover_add(t, phaseB), TWO_PI)), .5), .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phaseR\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phaseG\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"phaseB\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"phaseR\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"phaseG\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"phaseB\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"TWO_PI\": () =\u003e TWO_PI\n\t}\n}) \u0026\u0026 $.f)({}));\nconst silhouetteAlpha = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, edgeSoftness, pxH) =\u003e {\n\t\"use gpu\";\n\treturn smoothstep$1(0, 1, insideMask(sdf, max$1(__tsover_mul(edgeSoftness, .5), .001), pxH, 1.5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdf\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"edgeSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pxH\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"sharpEdge\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"edgeSoftness\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t], [5, \"0.001\"]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.smoothstep\",\n\t\t\t[\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"1\"],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"insideMask\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\"sharpEdge\",\n\t\t\t\t\t\t\"pxH\",\n\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.smoothstep\": () =\u003e smoothstep$1,\n\t\t\"insideMask\": () =\u003e insideMask\n\t}\n}) \u0026\u0026 $.f)({}));\nconst KeyLight = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tL: vec3f,\n\tH: vec3f\n}), \"KeyLight\");\nconst keyLight = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], KeyLight)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((lx, ly, lz) =\u003e {\n\t\"use gpu\";\n\tconst L = normalize$1(vec3f(lx, ly, lz));\n\treturn KeyLight({\n\t\tL,\n\t\tH: normalize$1(L.add(vec3f(0, 0, -1)))\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ly\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lz\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"L\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"lx\",\n\t\t\t\t\t\t\t\"ly\",\n\t\t\t\t\t\t\t\"lz\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"H\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"KeyLight\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"L\": \"L\",\n\t\t\t\t\t\"H\": \"H\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.normalize\": () =\u003e normalize$1,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"KeyLight\": () =\u003e KeyLight\n\t}\n}) \u0026\u0026 $.f)({}));\nconst grazingView = typegpu_default.fn([vec3f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((n) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_sub(1, clamp$1(__tsover_mul(n.z, -1), 0, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"n\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[5, \"1\"],\n\t\t\t\"-\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp$1 }\n}) \u0026\u0026 $.f)({}));\nconst sharpGlint$1 = typegpu_default.fn([\n\tf32,\n\tf32,\n\tvec4f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ndh, sharp, cfg) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(pow$1(ndh, mix$1(cfg.x, cfg.y, sharp)), mix$1(cfg.z, cfg.w, sharp));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ndh\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sharp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cfg\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.pow\",\n\t\t\t\t[\"ndh\", [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cfg\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cfg\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sharp\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"cfg\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"cfg\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"sharp\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow$1,\n\t\t\"std.mix\": () =\u003e mix$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst clampedPerlinGrad = typegpu_default.fn([vec2f, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((q, gain) =\u003e {\n\t\"use gpu\";\n\tconst gMax = f32(4);\n\tconst nd = perlin12d(q);\n\treturn vec2f(clamp$1(__tsover_mul(nd.y, gain), __tsover_mul(gMax, -1), gMax), clamp$1(__tsover_mul(nd.z, gain), __tsover_mul(gMax, -1), gMax));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"q\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"gain\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gMax\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlin12d\",\n\t\t\t\t\t[\"q\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"nd\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gain\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gMax\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"gMax\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"nd\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gain\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"gMax\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"gMax\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"perlin12d\": () =\u003e perlin12d,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.clamp\": () =\u003e clamp$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst nudgeNormal$1 = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32\n], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((n, dx, dy) =\u003e {\n\t\"use gpu\";\n\treturn normalize$1(vec3f(__tsover_add(n.x, dx), __tsover_add(n.y, dy), n.z));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"n\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dy\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.normalize\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.normalize\": () =\u003e normalize$1,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst opticalThickness$1 = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst thickVol = clamp$1(__tsover_mul(__tsover_mul(sdf, -1), 2), 0, 1.2);\n\treturn select(__tsover_mul(clamp$1(__tsover_mul(sdf, -1), 0, .5), 2), thickVol, volumetric \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"sdf\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"volumetric\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickVol\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1.2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickFlat\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"thickFlat\",\n\t\t\t\t\t\"thickVol\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst beerLambert$1 = typegpu_default.fn([f32, vec3f], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((thickness, absorb) =\u003e {\n\t\"use gpu\";\n\treturn vec3f(exp$1(__tsover_mul(__tsover_mul(thickness, absorb.x), -1)), exp$1(__tsover_mul(__tsover_mul(thickness, absorb.y), -1)), exp$1(__tsover_mul(__tsover_mul(thickness, absorb.z), -1)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"thickness\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"absorb\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec3f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"absorb\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"absorb\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"absorb\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.exp\": () =\u003e exp$1\n\t}\n}) \u0026\u0026 $.f)({}));\nconst flowWarpOffset = typegpu_default.fn([vec2f, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((warpInput, flowT) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(__tsover_mul(sin$1(__tsover_add(__tsover_add(__tsover_mul(warpInput.x, 1.7), __tsover_mul(flowT, .7)), 1.7)), cos(__tsover_add(__tsover_add(__tsover_mul(warpInput.y, 1.3), __tsover_mul(flowT, .5)), 2.3))), __tsover_mul(cos(__tsover_add(__tsover_add(__tsover_mul(warpInput.x, 1.4), __tsover_mul(flowT, .9)), 8.7)), sin$1(__tsover_add(__tsover_add(__tsover_mul(warpInput.y, 1.6), __tsover_mul(flowT, .6)), 5.1))));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"warpInput\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"flowT\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"warpInput\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"flowT\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"warpInput\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"flowT\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"warpInput\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.4\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"flowT\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"8.7\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"warpInput\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.6\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"flowT\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"5.1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"wx\", \"wy\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin$1,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst studio5Softbox = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((rx, ry, envC, envS, keyRad, drift, envStr, skyGain) =\u003e {\n\t\"use gpu\";\n\tconst ex = __tsover_sub(__tsover_mul(rx, envC), __tsover_mul(ry, envS));\n\tconst ey = __tsover_add(__tsover_mul(rx, envS), __tsover_mul(ry, envC));\n\tconst p = vec2f(ex, ey);\n\tconst sky = smoothstep$1(-.7, .85, ey);\n\tlet lum = __tsover_mul(__tsover_mul(sky, sky), skyGain);\n\tconst r0 = __tsover_mul(keyRad, 1);\n\tlum = __tsover_add(lum, __tsover_mul(__tsover_mul(smoothstep$1(r0, __tsover_mul(r0, .2), length$1(p.sub(vec2f(__tsover_add(0, drift), .55)))), 1.7), envStr));\n\tconst r1 = __tsover_mul(keyRad, 1.15);\n\tlum = __tsover_add(lum, __tsover_mul(__tsover_mul(smoothstep$1(r1, __tsover_mul(r1, .2), length$1(p.sub(vec2f(__tsover_add(-.55, drift), .18)))), 1.05), envStr));\n\tconst r2 = __tsover_mul(keyRad, 1);\n\tlum = __tsover_add(lum, __tsover_mul(__tsover_mul(smoothstep$1(r2, __tsover_mul(r2, .2), length$1(p.sub(vec2f(__tsover_add(.55, drift), .1)))), 1), envStr));\n\tconst r3 = __tsover_mul(keyRad, 1.3);\n\tlum = __tsover_add(lum, __tsover_mul(__tsover_mul(smoothstep$1(r3, __tsover_mul(r3, .2), length$1(p.sub(vec2f(__tsover_add(.2, drift), -.5)))), .7), envStr));\n\tconst r4 = __tsover_mul(keyRad, 1.1);\n\tlum = __tsover_add(lum, __tsover_mul(__tsover_mul(smoothstep$1(r4, __tsover_mul(r4, .2), length$1(p.sub(vec2f(__tsover_add(-.35, drift), -.25)))), .85), envStr));\n\treturn lum;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ry\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"envC\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"envS\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"keyRad\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"drift\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"envStr\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"skyGain\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ex\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envC\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envS\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ey\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envS\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envC\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"ex\", \"ey\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sky\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.85\"],\n\t\t\t\t\t\t\"ey\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"lum\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sky\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"sky\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"skyGain\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r0\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"keyRad\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"lum\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lum\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"r0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r0\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t\t\t\t\t\t\t], [5, \"0.55\"]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envStr\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"keyRad\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1.15\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"lum\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lum\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"r1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r1\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t\t\t\t\t\t\t], [5, \"0.18\"]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.05\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envStr\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"keyRad\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"lum\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lum\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r2\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.55\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t\t\t\t\t\t\t], [5, \"0.1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envStr\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"keyRad\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"lum\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lum\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"r3\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r3\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envStr\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"r4\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"keyRad\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"lum\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lum\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"r4\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"r4\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.85\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"envStr\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, \"lum\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.smoothstep\": () =\u003e smoothstep$1,\n\t\t\"std.length\": () =\u003e length$1\n\t}\n}) \u0026\u0026 $.f)({}));\nvar bevel_exports = /* @__PURE__ */ __export({ bevelSin: () =\u003e bevelSin });\nconst bevelSin = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, shape) =\u003e {\n\t\"use gpu\";\n\tconst sRound = __tsover_sub(1, t);\n\tconst k1 = smoothstep$1(0, .14, t);\n\tconst k2 = smoothstep$1(.68, .92, t);\n\treturn mix$1(sRound, mix$1(f32(1), __tsover_mul(.72, __tsover_sub(1, k2)), k1), shape);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"shape\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sRound\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.14\"],\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.68\"],\n\t\t\t\t\t\t[5, \"0.92\"],\n\t\t\t\t\t\t\"t\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sMach\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.72\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"k2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"k1\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"sRound\",\n\t\t\t\t\t\"sMach\",\n\t\t\t\t\t\"shape\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep$1,\n\t\t\"std.mix\": () =\u003e mix$1,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nvar { sdfSpaceUV, offsetUV } = glass_exports;\nvar { ANALYTIC_SDF_EXTRA_FIELDS } = sdf_exports;\nvar { createVolumetricFieldComputeNode, resolveShapeFieldSampler, VOLUMETRIC_FIELD_EXTRA_FIELDS } = sdf3d_exports;\nvar guardCounter = 0;\nfunction guarded(cond, inner, fallback, hint = \"guarded\", deps = []) {\n\tconst id = guardCounter++;\n\treturn new Expr((ctx) =\u003e ctx.memo(`guard:${id}`, () =\u003e {\n\t\tconst name = ctx.freshLocal(hint);\n\t\tconst condText = cond._emit(ctx);\n\t\tconst fallbackText = fallback._emit(ctx);\n\t\tfor (const dep of deps) dep._emit(ctx);\n\t\tconst stmts = [];\n\t\tconst innerText = inner._emit({\n\t\t\texternal: (v, h) =\u003e ctx.external(v, h),\n\t\t\tstatement: (w) =\u003e stmts.push(w),\n\t\t\tfreshLocal: (h) =\u003e ctx.freshLocal(h),\n\t\t\tmemo: (k, f) =\u003e ctx.memo(k, f)\n\t\t});\n\t\tctx.statement(`var ${name} = ${fallbackText};`);\n\t\tctx.statement(`if (${condText}) {\\n  ${stmts.join(\"\\n  \")}\\n  ${name} = ${innerText};\\n}`);\n\t\treturn name;\n\t}));\n}\nfunction insideShape(sdf, pxH) {\n\tconst outside = call(outsideShape, \"outsideShape\", [sdf, pxH]);\n\treturn new Expr((ctx) =\u003e `(!(${outside._emit(ctx)}))`);\n}\nfunction shapedSurface(spec) {\n\tconst pattern = spec.pattern ?? \"none\";\n\tconst chord = spec.chord ?? \"span\";\n\tconst stencil = spec.stencil ?? {\n\t\tkind: \"forward\",\n\t\teps: .01\n\t};\n\tconst compute = (params) =\u003e createVolumetricFieldComputeNode(params, () =\u003e params.getCpuValue(\"shape\"), pattern, chord);\n\tconst fragment = (params) =\u003e {\n\t\tconst { childNode, computeOutputs, convertToTexture, uniforms, ctx } = params;\n\t\tlet childTexture;\n\t\tif (spec.child === \"required\") {\n\t\t\tif (!childNode) return ZERO;\n\t\t\tchildTexture = computeOutputs?.childTexture ?? convertToTexture(childNode);\n\t\t}\n\t\tconst { sampler, gradSampler, texelSampler, volumetric, bakedGradients } = resolveShapeFieldSampler(params, {\n\t\t\tpatternMode: pattern,\n\t\t\tgradSampler: spec.gradSampler ?? \"fast\",\n\t\t\tbakedGradients: spec.bakedGradients ?? \"none\"\n\t\t});\n\t\tconst frame = {\n\t\t\tsampler,\n\t\t\tgradSampler,\n\t\t\ttexelSampler,\n\t\t\tvolumetric,\n\t\t\tbakedGradients,\n\t\t\tvolFlag: floatE(volumetric ? 1 : 0),\n\t\t\tchildTexture\n\t\t};\n\t\tif (stencil !== \"none\") {\n\t\t\tconst screenUV = spec.placeUV ? spec.placeUV(params) : ctx.uv;\n\t\t\tframe.sdfUV = local(call(sdfSpaceUV, \"sdfSpaceUV\", [\n\t\t\t\tuniforms.center,\n\t\t\t\tuniforms.scale,\n\t\t\t\tuniforms.rotation,\n\t\t\t\tscreenUV,\n\t\t\t\tctx.aspect\n\t\t\t]), \"sdfUV\");\n\t\t\tframe.surf0 = (spec.centreTap === \"fast\" ? gradSampler : sampler)(frame.sdfUV);\n\t\t\tif (stencil !== \"centre\") {\n\t\t\t\tconst { kind, eps } = stencil;\n\t\t\t\tframe.surfX = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\t\t\tframe.sdfUV,\n\t\t\t\t\tfloatE(eps),\n\t\t\t\t\tfloatE(0)\n\t\t\t\t]));\n\t\t\t\tif (kind === \"central\") frame.surfL = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\t\t\tframe.sdfUV,\n\t\t\t\t\tfloatE(-eps),\n\t\t\t\t\tfloatE(0)\n\t\t\t\t]));\n\t\t\t\tframe.surfY = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\t\t\tframe.sdfUV,\n\t\t\t\t\tfloatE(0),\n\t\t\t\t\tfloatE(eps)\n\t\t\t\t]));\n\t\t\t\tif (kind === \"central\") frame.surfD = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\t\t\tframe.sdfUV,\n\t\t\t\t\tfloatE(0),\n\t\t\t\t\tfloatE(-eps)\n\t\t\t\t]));\n\t\t\t}\n\t\t}\n\t\treturn spec.surface(frame, params);\n\t};\n\treturn {\n\t\textraFields: {\n\t\t\t...VOLUMETRIC_FIELD_EXTRA_FIELDS,\n\t\t\t...ANALYTIC_SDF_EXTRA_FIELDS\n\t\t},\n\t\tcompute,\n\t\tgpu: { fragment }\n\t};\n}\nfunction surfaceField(frame, params, opts = {}) {\n\tconst { ctx } = params;\n\tconst s0 = local(frame.surf0, \"s0\");\n\tconst pxH = local(div(1, ctx.viewportSize.member(\"y\")), \"pxH\");\n\tconst sdf = local(opts.scale ? div(s0.member(\"x\"), opts.scale) : s0.member(\"x\"), \"sdf\");\n\tconst aspect = div(ctx.viewportSize.member(\"x\"), ctx.viewportSize.member(\"y\"));\n\treturn {\n\t\ts0,\n\t\tsX: frame.surfX ? local(frame.surfX, \"sX\") : void 0,\n\t\tsY: frame.surfY ? local(frame.surfY, \"sY\") : void 0,\n\t\tsdf,\n\t\tpxH,\n\t\taspect\n\t};\n}\nfunction geometricNormal(frame, field, opts) {\n\tconst eps = float(opts.eps ?? .01);\n\tconst hint = opts.hint ?? \"nGeo\";\n\tif (frame.volumetric) return local(call(volumetricNormal, \"volumetricNormal\", [\n\t\tfield.s0,\n\t\tfield.sX,\n\t\tfield.sY,\n\t\teps,\n\t\tfloat(opts.sharpness ?? 5)\n\t]), hint);\n\tconst rimT = clamp(div(neg(field.sdf), max(opts.bevelWidth, .003)), 0, 1);\n\treturn local(call(bevelledFlatNormal, \"bevelledFlatNormal\", [call(fieldGradient, \"fieldGradient\", [\n\t\tfield.s0,\n\t\tfield.sX,\n\t\tfield.sY,\n\t\teps\n\t]), call(bevelSin, \"bevelSin\", [rimT, opts.bevelShape])]), hint);\n}\nfunction surfacePattern(frame, field, opts = {}) {\n\treturn local(call(patternCoords, \"patternCoords\", [\n\t\topts.uv ?? frame.sdfUV,\n\t\tfield.s0,\n\t\tframe.volFlag\n\t]), \"pat\");\n}\nfunction fieldSlope(field, eps = .01) {\n\treturn local(call(fieldGradient, \"fieldGradient\", [\n\t\tfield.s0,\n\t\tfield.sX,\n\t\tfield.sY,\n\t\tfloat(eps)\n\t]), \"grad\");\n}\nfunction viewRay(params, field, fov = .6) {\n\treturn local(call(perspectiveViewRay, \"perspectiveViewRay\", [\n\t\tparams.ctx.uv,\n\t\tfield.aspect,\n\t\tfloat(fov)\n\t]), \"viewI\");\n}\nfunction grazingOf(n, view) {\n\treturn local(sub(1, clamp(neg(dot(n, view)), 0, 1)), \"grazing\");\n}\nfunction tiltNormal(n, frame, slopes, hint = \"n\") {\n\tconst terms = (axis) =\u003e {\n\t\tconst out = [];\n\t\tif (slopes.across) out.push(mul(frame.perp.member(axis), slopes.across));\n\t\tif (slopes.along) out.push(mul(frame.tangent.member(axis), slopes.along));\n\t\treturn out;\n\t};\n\tconst sum = (base, extra) =\u003e extra.reduce((acc, e) =\u003e add(acc, e), base);\n\treturn local(normalize(vec3(sum(n.member(\"x\"), terms(\"x\")), sum(n.member(\"y\"), terms(\"y\")), n.member(\"z\"))), hint);\n}\nfunction studioSoftboxes(x, y, opts) {\n\tconst toE = (v) =\u003e typeof v === \"number\" ? float(v) : v;\n\treturn call(studio5Softbox, \"studio5Softbox\", [\n\t\tx,\n\t\ty,\n\t\topts.rotation.member(\"x\"),\n\t\topts.rotation.member(\"y\"),\n\t\ttoE(opts.keyRadius),\n\t\ttoE(opts.drift),\n\t\ttoE(opts.strength),\n\t\tfloat(opts.skyGain)\n\t]);\n}\nfunction grainNoise(coords, opts) {\n\tlet x = mul(coords.along, opts.freq[0]);\n\tlet y = mul(coords.across, opts.freq[1]);\n\tif (opts.offset?.[0]) x = add(x, opts.offset[0]);\n\tif (opts.offset?.[1]) y = add(y, opts.offset[1]);\n\tif (opts.drift) x = add(x, opts.drift);\n\treturn call(mxNoiseFloat2, \"mxNoiseFloat2\", [vec2(x, y)]);\n}\nfunction smearAlong(opts, sample) {\n\tconst taps = opts.taps ?? 9;\n\tconst sigma = opts.sigma ?? 2.1;\n\tconst half = (taps - 1) / 2;\n\tconst raw = Array.from({ length: taps }, (_, i) =\u003e Math.exp(-((i - half) ** 2) / (2 * sigma * sigma)));\n\tconst sum = raw.reduce((a, b) =\u003e a + b, 0);\n\tconst weights = raw.map((w) =\u003e w / sum);\n\tconst step = local(div(opts.spread, half), \"step\");\n\tlet acc = float(0);\n\tfor (let i = 0; i \u003c taps; i++) {\n\t\tconst off = local(mul(step, float(i - half)), \"off\");\n\t\tacc = add(acc, mul(sample(add(opts.center.member(\"x\"), mul(opts.axis.member(\"x\"), off)), add(opts.center.member(\"y\"), mul(opts.axis.member(\"y\"), off))), float(weights[i])));\n\t}\n\treturn local(acc, opts.hint ?? \"smear\");\n}\nfunction lightVec3(dir, z, hint = \"L\") {\n\treturn local(normalize(vec3(dir.member(\"x\"), dir.member(\"y\"), float(z))), hint);\n}\nfunction wardAlphas(roughness, anisotropy) {\n\tconst baseA = local(mix(.05, .45, roughness), \"baseA\");\n\treturn {\n\t\talong: mul(baseA, add(1, mul(anisotropy, 7))),\n\t\tacross: max(mul(baseA, sub(1, mul(anisotropy, .55))), .02)\n\t};\n}\nfunction anisoSpecular(opts) {\n\tconst spec = call(wardAnisotropicSpecular, \"wardAnisotropicSpecular\", [call(WardSpecularInput, \"WardSpecularInput\", [\n\t\topts.normal,\n\t\tvec3(opts.tangent.member(\"x\"), opts.tangent.member(\"y\"), 0),\n\t\topts.light,\n\t\topts.view,\n\t\topts.alphas.along,\n\t\topts.alphas.across\n\t])]);\n\treturn opts.gain === void 0 ? spec : mul(spec, opts.gain);\n}\nfunction tiltAlong(n, axis, amount, hint = \"n\") {\n\treturn local(normalize(vec3(add(n.member(\"x\"), mul(axis.member(\"x\"), amount)), add(n.member(\"y\"), mul(axis.member(\"y\"), amount)), n.member(\"z\"))), hint);\n}\nfunction fresnelBoost(grazing, opts) {\n\treturn add(1, mul(pow(grazing, float(opts.power ?? 3)), opts.amount));\n}\nfunction tintRamp(t, dark, light) {\n\treturn mix(dark.member(\"rgb\"), light.member(\"rgb\"), splat3(t));\n}\nfunction silhouette(field, edgeSoftness) {\n\treturn call(silhouetteAlpha, \"silhouetteAlpha\", [\n\t\tfield.sdf,\n\t\tedgeSoftness,\n\t\tfield.pxH\n\t]);\n}\nfunction neutralTone(rgb) {\n\treturn call(neutral, \"tonemapNeutral\", [rgb]);\n}\nfunction nudgeNormal(n, dx, dy, hint = \"n\") {\n\treturn local(call(nudgeNormal$1, \"nudgeNormal\", [\n\t\tn,\n\t\tdx,\n\t\tdy\n\t]), hint);\n}\nfunction marchedNormal(field, sharpness = 5, hint = \"nGeo\") {\n\treturn local(call(volumetricNormal, \"volumetricNormal\", [\n\t\tfield.s0,\n\t\tfield.sX,\n\t\tfield.sY,\n\t\tfloat(.01),\n\t\tfloat(sharpness)\n\t]), hint);\n}\nfunction keyLightAt(dir, elevation, hint = \"kl\") {\n\treturn keyLightXY(dir.member(\"x\"), dir.member(\"y\"), elevation, hint);\n}\nfunction keyLightXY(x, y, elevation, hint = \"kl\") {\n\treturn local(call(keyLight, \"keyLight\", [\n\t\tx,\n\t\ty,\n\t\tfloat(elevation)\n\t]), hint);\n}\nfunction grazingFlat(n) {\n\treturn local(call(grazingView, \"grazingView\", [n]), \"grazing\");\n}\nfunction sharpGlint(ndh, sharpness, cfg) {\n\treturn call(sharpGlint$1, \"sharpGlint\", [\n\t\tndh,\n\t\tsharpness,\n\t\tcfg\n\t]);\n}\nfunction perlinSlope(q, gain) {\n\treturn call(clampedPerlinGrad, \"clampedPerlinGrad\", [q, typeof gain === \"number\" ? float(gain) : gain]);\n}\nfunction opticalThickness(field, frame) {\n\treturn call(opticalThickness$1, \"opticalThickness\", [field.sdf, frame.volFlag]);\n}\nfunction beerLambert(thickness, absorb) {\n\treturn call(beerLambert$1, \"beerLambert\", [thickness, absorb]);\n}\nfunction flowWarp(warpInput, flowT) {\n\treturn call(flowWarpOffset, \"flowWarpOffset\", [warpInput, flowT]);\n}\nfunction surfaceNoise(x, y) {\n\treturn call(mxNoiseFloat2, \"mxNoiseFloat2\", [vec2(x, y)]);\n}\nfunction surfaceNoiseAt(p) {\n\treturn call(mxNoiseFloat2, \"mxNoiseFloat2\", [p]);\n}\nfunction volumeNoiseAt(p) {\n\treturn call(mxNoiseFloat3, \"mxNoiseFloat3\", [p]);\n}\nfunction cosineRainbow(t, phases) {\n\treturn call(cosinePalette, \"cosinePalette\", [\n\t\tt,\n\t\tfloat(phases[0]),\n\t\tfloat(phases[1]),\n\t\tfloat(phases[2])\n\t]);\n}\nfunction cellNoiseAt(p) {\n\treturn call(mxWorleyNoiseFloat2Pub, \"mxWorleyNoiseFloat2Pub\", [p, float(1)]);\n}\nfunction fdSlope(sampleAt, p, eps, hint = \"fd\") {\n\tconst value = local(sampleAt(p), `${hint}0`);\n\treturn {\n\t\tvalue,\n\t\tdx: local(div(sub(sampleAt(add(p, vec2(eps, 0))), value), eps), `${hint}X`),\n\t\tdy: local(div(sub(sampleAt(add(p, vec2(0, eps))), value), eps), `${hint}Y`)\n\t};\n}\nfunction hashNoise(x, y) {\n\treturn call(hash12, \"hash12\", [vec2(x, y)]);\n}\nfunction valueNoise(x, y) {\n\treturn call(value12, \"value12\", [vec2(x, y)]);\n}\nfunction rotationSensor(frame) {\n\tconst s0C = local(frame.gradSampler(vec2(.5, .5)), \"s0C\");\n\treturn {\n\t\tx: local(mul(neg(s0C.member(\"y\")), frame.volFlag), \"rotSenseX\"),\n\t\ty: local(mul(neg(s0C.member(\"z\")), frame.volFlag), \"rotSenseY\")\n\t};\n}\nfunction shellRefract(frame, n, amount) {\n\tconst cx = local(sub(frame.sdfUV.member(\"x\"), .5), \"cx\");\n\tconst cy = local(sub(frame.sdfUV.member(\"y\"), .5), \"cy\");\n\treturn {\n\t\tx: local(add(cx, mul(n.member(\"x\"), amount)), \"bentX\"),\n\t\ty: local(add(cy, mul(n.member(\"y\"), amount)), \"bentY\"),\n\t\tcentered: {\n\t\t\tx: cx,\n\t\t\ty: cy\n\t\t}\n\t};\n}\nfunction schlickFresnel(grazing, opts) {\n\treturn add(opts.r0 ?? .04, mul(pow(grazing, float(opts.power ?? 5)), opts.gain));\n}\nfunction twinkle(t, phase, opts) {\n\treturn add(sub(1, opts.amount), mul(sin(add(mul(t, opts.rate), mul(phase, opts.spread))), opts.amount));\n}\nfunction pointStars(p, opts) {\n\tconst hint = opts.hint ?? \"stars\";\n\tconst variation = local(add(mul(surfaceNoiseAt(mul(p, opts.variationFreq)), .5), .5), `${hint}V`);\n\tconst shimmer = opts.shimmer ? opts.shimmer(variation) : float(1);\n\tconst glint = local(mul(mul(mul(smoothstep(add(opts.radius[0], mul(variation, opts.radius[1])), 5e-4, cellNoiseAt(p)), smoothstep(opts.keep[0], opts.keep[1], variation)), mul(add(opts.brightness[0], mul(mul(variation, variation), opts.brightness[1])), shimmer)), opts.gain), hint);\n\treturn {\n\t\tglint,\n\t\tvariation,\n\t\trgb: opts.tint ? mul(mix(vec3(...opts.tint.from), vec3(...opts.tint.to), splat3(variation)), splat3(mul(glint, opts.tint.gain))) : void 0\n\t};\n}\nfunction placementPoint(params, position, hint = \"placed\") {\n\tconst { uniforms, ctx } = params;\n\tconst screenUV = vec2(position.member(\"x\"), sub(1, position.member(\"y\")));\n\treturn local(call(sdfSpaceUV, \"sdfSpaceUV\", [\n\t\tuniforms.center,\n\t\tuniforms.scale,\n\t\tuniforms.rotation,\n\t\tscreenUV,\n\t\tctx.aspect\n\t]), hint);\n}\nfunction continuedField(frame, field, params) {\n\tif (!(!frame.volumetric \u0026\u0026 Boolean(params.propValues.shapeSdfUrl))) return {\n\t\tsdf: field.sdf,\n\t\toutward: vec2(0, 0),\n\t\tat: (uv$1) =\u003e frame.gradSampler(uv$1).member(\"x\")\n\t};\n\tconst uv = frame.sdfUV;\n\tconst beyond = (p) =\u003e sub(p, clamp(p, vec2(0, 0), vec2(1, 1)));\n\tconst outward = local(beyond(uv), \"outward\");\n\tconst continued = (border, dist) =\u003e max(border, max(dist, sub(border, dist)));\n\treturn {\n\t\tsdf: local(continued(field.sdf, length(outward)), \"sdfFar\"),\n\t\toutward,\n\t\tat: (p) =\u003e {\n\t\t\tconst dist = length(beyond(p));\n\t\t\treturn continued(frame.gradSampler(p).member(\"x\"), dist);\n\t\t}\n\t};\n}\nfunction nearestEdge(sdfUV, sdf, slope, hint = \"edge\") {\n\tconst normal = local(div(slope, max(length(slope), 1e-4)), `${hint}N`);\n\treturn {\n\t\tpoint: local(sub(sdfUV, mul(normal, max(sdf, 0))), `${hint}P`),\n\t\tnormal\n\t};\n}\nfunction pointLightFrom(light, at, hint = \"pl\") {\n\tconst delta = local(sub(light.position, at), `${hint}D`);\n\tconst distance = local(length(delta), `${hint}Dist`);\n\tconst toLight = local(div(delta, max(distance, 1e-4)), `${hint}Dir`);\n\treturn {\n\t\tL: local(normalize(vec3(delta.member(\"x\"), delta.member(\"y\"), neg(light.height))), `${hint}L`),\n\t\ttoLight,\n\t\tdistance\n\t};\n}\nfunction lambert(normal, light, opts = {}) {\n\tconst ndl = dot(normal, light);\n\tif (opts.wrap === void 0) return max(ndl, 0);\n\treturn clamp(div(add(ndl, opts.wrap), add(1, opts.wrap)), 0, 1);\n}\nfunction inverseSquare(distance, range) {\n\tconst r = div(distance, range);\n\treturn div(1, add(1, mul(r, r)));\n}\nfunction exposureTone(rgb) {\n\treturn sub(1, exp(neg(rgb)));\n}\nfunction dualLobeGlint(ndh, opts) {\n\tconst widen = opts.softness ? local(exp2(mix(2, -2, opts.softness)), \"lobeWiden\") : void 0;\n\tconst exponent = (e) =\u003e widen ? mul(e, widen) : float(e);\n\treturn mul(add(mul(pow(ndh, exponent(opts.core[0])), opts.core[1]), mul(pow(ndh, exponent(opts.halo[0])), opts.halo[1])), opts.gain);\n}\nexport { bevel_exports as $, placementPoint as A, studioSoftboxes as B, lightVec3 as C, nudgeNormal as D, neutralTone as E, shapedSurface as F, tiltAlong as G, surfaceNoise as H, sharpGlint as I, twinkle as J, tiltNormal as K, shellRefract as L, pointStars as M, rotationSensor as N, opticalThickness as O, schlickFresnel as P, wardAlphas as Q, silhouette as R, lambert as S, nearestEdge as T, surfaceNoiseAt as U, surfaceField as V, surfacePattern as W, viewRay as X, valueNoise as Y, volumeNoiseAt as Z, hashNoise as _, cosineRainbow as a, keyLightAt as b, fdSlope as c, fresnelBoost as d, cosinePalette as et, geometricNormal as f, guarded as g, grazingOf as h, continuedField as i, pointLightFrom as j, perlinSlope as k, fieldSlope as l, grazingFlat as m, beerLambert as n, dualLobeGlint as o, grainNoise as p, tintRamp as q, cellNoiseAt as r, exposureTone as s, anisoSpecular as t, lighting_exports as tt, flowWarp as u, insideShape as v, marchedNormal as w, keyLightXY as x, inverseSquare as y, smearAlong as z };\n","import { r as debugWarn } from \"./support-GJphyuEe.js\";\nvar registry = /* @__PURE__ */ new Map();\nvar listeners = /* @__PURE__ */ new Set();\nfunction registerNaturalSize(key, width, height) {\n\tif (!key || !(width \u003e 0) || !(height \u003e 0)) return;\n\tconst prev = registry.get(key);\n\tif (prev \u0026\u0026 prev.width === width \u0026\u0026 prev.height === height) return;\n\tregistry.set(key, {\n\t\twidth,\n\t\theight\n\t});\n\tfor (const fn of listeners) try {\n\t\tfn();\n\t} catch {}\n}\nfunction getNaturalSize(key) {\n\treturn registry.get(key) ?? null;\n}\nfunction onNaturalSizeChange(fn) {\n\tlisteners.add(fn);\n\treturn () =\u003e {\n\t\tlisteners.delete(fn);\n\t};\n}\nfunction mipLevelCountFor(width, height) {\n\treturn Math.floor(Math.log2(Math.max(width, height))) + 1;\n}\nfunction createSwappableMediaTexture(params, opts) {\n\tconst { createMediaTexture, registerMediaTexture, onCleanup } = params;\n\tconst wantsMipmaps = opts.mipmaps ?? true;\n\tconst make = (width, height) =\u003e createMediaTexture({\n\t\twidth,\n\t\theight,\n\t\tlabel: opts.label,\n\t\t...wantsMipmaps ? { mipLevelCount: mipLevelCountFor(width, height) } : {},\n\t\t...opts.format ? { format: opts.format } : {}\n\t});\n\tlet current = make(Math.max(1, opts.initial?.width ?? 1), Math.max(1, opts.initial?.height ?? 1));\n\tlet isDisposed = false;\n\tconst kit = registerMediaTexture(() =\u003e current.texture);\n\tonCleanup(() =\u003e {\n\t\tisDisposed = true;\n\t\tcurrent.destroy();\n\t});\n\treturn {\n\t\tkit,\n\t\tensureSize(width, height) {\n\t\t\tconst w = Math.max(1, width);\n\t\t\tconst h = Math.max(1, height);\n\t\t\tif (isDisposed || current.width === w \u0026\u0026 current.height === h) return;\n\t\t\tconst next = make(w, h);\n\t\t\tconst previous = current;\n\t\t\tcurrent = next;\n\t\t\tprevious.destroy();\n\t\t},\n\t\twrite(source) {\n\t\t\tif (isDisposed) return;\n\t\t\tcurrent.write(source);\n\t\t\tif (wantsMipmaps) current.generateMipmaps();\n\t\t},\n\t\tunwrap: () =\u003e current.unwrap(),\n\t\tget width() {\n\t\t\treturn current.width;\n\t\t},\n\t\tget height() {\n\t\t\treturn current.height;\n\t\t},\n\t\tget disposed() {\n\t\t\treturn isDisposed;\n\t\t}\n\t};\n}\nfunction createUrlSourceLoader(params, opts) {\n\tconst { getCpuValue, onBeforeRender, onCleanup } = params;\n\tlet currentUrl = \"\";\n\tlet isLoading = false;\n\tlet isDisposed = false;\n\tlet lastFailedUrl = null;\n\tconst run = (url) =\u003e {\n\t\tif (!url || url.trim() === \"\" || isLoading || isDisposed) return;\n\t\tisLoading = true;\n\t\tconst loadCtx = {\n\t\t\tisDisposed: () =\u003e isDisposed,\n\t\t\tcommit: () =\u003e {\n\t\t\t\tcurrentUrl = url;\n\t\t\t}\n\t\t};\n\t\t(async () =\u003e {\n\t\t\ttry {\n\t\t\t\tawait opts.load(url, loadCtx);\n\t\t\t} catch (error) {\n\t\t\t\topts.onError?.(error, url);\n\t\t\t} finally {\n\t\t\t\tisLoading = false;\n\t\t\t\tlastFailedUrl = currentUrl === url ? null : url;\n\t\t\t}\n\t\t})();\n\t};\n\tconst readUrl = () =\u003e getCpuValue(opts.prop) ?? \"\";\n\tsetTimeout(() =\u003e {\n\t\tconst initialUrl = readUrl();\n\t\tif (initialUrl \u0026\u0026 initialUrl.trim() !== \"\") run(initialUrl);\n\t}, 0);\n\tonBeforeRender(() =\u003e {\n\t\tconst newUrl = readUrl();\n\t\tif (newUrl === currentUrl || isLoading) return;\n\t\tif (newUrl === lastFailedUrl) return;\n\t\tlastFailedUrl = null;\n\t\trun(newUrl);\n\t});\n\tonCleanup(() =\u003e {\n\t\tisDisposed = true;\n\t\tcurrentUrl = \"\";\n\t});\n\treturn {\n\t\tcurrentUrl: () =\u003e currentUrl,\n\t\tisLoading: () =\u003e isLoading,\n\t\trequest: run\n\t};\n}\nvar SVG_RASTER_SIZE = 2048;\nfunction isSvgUrl(url) {\n\treturn /\\.svg($|\\?|#)/i.test(url);\n}\nfunction rasterizeSvg(url) {\n\treturn new Promise((resolve, reject) =\u003e {\n\t\tconst img = new Image();\n\t\timg.crossOrigin = \"anonymous\";\n\t\timg.onload = () =\u003e {\n\t\t\tconst naturalW = img.naturalWidth || SVG_RASTER_SIZE;\n\t\t\tconst naturalH = img.naturalHeight || SVG_RASTER_SIZE;\n\t\t\tconst aspect = naturalW / naturalH;\n\t\t\tconst canvasW = aspect \u003e= 1 ? SVG_RASTER_SIZE : Math.round(SVG_RASTER_SIZE * aspect);\n\t\t\tconst canvasH = aspect \u003e= 1 ? Math.round(SVG_RASTER_SIZE / aspect) : SVG_RASTER_SIZE;\n\t\t\tconst canvas = document.createElement(\"canvas\");\n\t\t\tcanvas.width = canvasW;\n\t\t\tcanvas.height = canvasH;\n\t\t\tconst ctx = canvas.getContext(\"2d\");\n\t\t\tif (!ctx) {\n\t\t\t\treject(/* @__PURE__ */ new Error(\"Could not get 2D context\"));\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tctx.drawImage(img, 0, 0, canvasW, canvasH);\n\t\t\tresolve({\n\t\t\t\tsource: canvas,\n\t\t\t\twidth: canvasW,\n\t\t\t\theight: canvasH,\n\t\t\t\tnaturalWidth: naturalW,\n\t\t\t\tnaturalHeight: naturalH,\n\t\t\t\tclose: () =\u003e {}\n\t\t\t});\n\t\t};\n\t\timg.onerror = () =\u003e reject(/* @__PURE__ */ new Error(`SVG image failed to load: ${url}`));\n\t\timg.src = url;\n\t});\n}\nasync function decodeImageSource(url) {\n\tif (isSvgUrl(url)) return rasterizeSvg(url);\n\tconst response = await fetch(url, { mode: \"cors\" });\n\tif (!response.ok) throw new Error(`HTTP ${response.status}`);\n\tconst blob = await response.blob();\n\tconst bitmap = await createImageBitmap(blob);\n\tlet closed = false;\n\treturn {\n\t\tsource: bitmap,\n\t\twidth: bitmap.width,\n\t\theight: bitmap.height,\n\t\tnaturalWidth: bitmap.width,\n\t\tnaturalHeight: bitmap.height,\n\t\tclose: () =\u003e {\n\t\t\tif (closed) return;\n\t\t\tclosed = true;\n\t\t\tbitmap.close();\n\t\t}\n\t};\n}\nfunction makeVideoElement() {\n\tconst video = document.createElement(\"video\");\n\tvideo.playsInline = true;\n\tvideo.muted = true;\n\treturn video;\n}\nfunction awaitMetadata(video, timeoutMs) {\n\treturn new Promise((resolve, reject) =\u003e {\n\t\tvideo.onloadedmetadata = () =\u003e resolve();\n\t\tvideo.onerror = () =\u003e reject(/* @__PURE__ */ new Error(\"Failed to load video\"));\n\t\tif (timeoutMs \u003e 0) setTimeout(() =\u003e reject(/* @__PURE__ */ new Error(\"Video load timeout\")), timeoutMs);\n\t});\n}\nfunction createVideoElementSource(params, opts) {\n\tconst { getCpuValue, onBeforeRender, onCleanup } = params;\n\tconst metadataTimeoutMs = opts.metadataTimeoutMs ?? 0;\n\tconst autoplayRequired = opts.autoplayRequired ?? false;\n\tlet videoElement = null;\n\tlet mediaStream = null;\n\tlet isDisposed = false;\n\tconst readLoop = () =\u003e {\n\t\tif (!opts.loop) return false;\n\t\tconst raw = getCpuValue(opts.loop.prop);\n\t\treturn raw === true || raw === void 0 || typeof raw === \"number\" \u0026\u0026 raw \u003e 0;\n\t};\n\tconst adopt = async (video, url) =\u003e {\n\t\ttry {\n\t\t\tawait video.play();\n\t\t} catch (error) {\n\t\t\topts.onError?.(error, {\n\t\t\t\turl,\n\t\t\t\tstage: \"autoplay\"\n\t\t\t});\n\t\t\tif (autoplayRequired) throw error;\n\t\t}\n\t\tif (isDisposed) return;\n\t\tif (videoElement \u0026\u0026 videoElement !== video) {\n\t\t\tvideoElement.pause();\n\t\t\tvideoElement.src = \"\";\n\t\t}\n\t\tvideoElement = video;\n\t\tconst key = opts.naturalSizeKey ?? url;\n\t\tif (key) registerNaturalSize(key, video.videoWidth, video.videoHeight);\n\t};\n\tif (opts.source.kind === \"url\") {\n\t\tconst urlProp = opts.source.prop;\n\t\tcreateUrlSourceLoader(params, {\n\t\t\tprop: urlProp,\n\t\t\tasync load(url, ctx) {\n\t\t\t\tconst video = makeVideoElement();\n\t\t\t\tvideo.src = url;\n\t\t\t\tvideo.crossOrigin = \"anonymous\";\n\t\t\t\tvideo.loop = readLoop();\n\t\t\t\ttry {\n\t\t\t\t\tawait awaitMetadata(video, metadataTimeoutMs);\n\t\t\t\t} catch (error) {\n\t\t\t\t\tvideo.src = \"\";\n\t\t\t\t\tthrow error;\n\t\t\t\t}\n\t\t\t\tif (ctx.isDisposed()) {\n\t\t\t\t\tvideo.src = \"\";\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tctx.commit();\n\t\t\t\tawait adopt(video, url);\n\t\t\t},\n\t\t\tonError(error, url) {\n\t\t\t\topts.onError?.(error, {\n\t\t\t\t\turl,\n\t\t\t\t\tstage: \"acquire\"\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\tif (opts.loop) onBeforeRender(() =\u003e {\n\t\t\tif (!videoElement) return;\n\t\t\tconst loopValue = readLoop();\n\t\t\tif (videoElement.loop !== loopValue) videoElement.loop = loopValue;\n\t\t});\n\t\tonCleanup(() =\u003e {\n\t\t\tisDisposed = true;\n\t\t\tif (videoElement) {\n\t\t\t\tvideoElement.pause();\n\t\t\t\tvideoElement.src = \"\";\n\t\t\t\tvideoElement = null;\n\t\t\t}\n\t\t});\n\t} else {\n\t\tconst constraints = opts.source.constraints ?? {\n\t\t\tvideo: true,\n\t\t\taudio: false\n\t\t};\n\t\tlet isInitialized = false;\n\t\tconst startWebcam = async () =\u003e {\n\t\t\tif (isInitialized || isDisposed) return;\n\t\t\ttry {\n\t\t\t\tmediaStream = await navigator.mediaDevices.getUserMedia(constraints);\n\t\t\t\tif (isDisposed) {\n\t\t\t\t\tmediaStream.getTracks().forEach((track) =\u003e track.stop());\n\t\t\t\t\tmediaStream = null;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tconst video = makeVideoElement();\n\t\t\t\tvideo.srcObject = mediaStream;\n\t\t\t\tawait awaitMetadata(video, metadataTimeoutMs);\n\t\t\t\tif (isDisposed) return;\n\t\t\t\tawait adopt(video, null);\n\t\t\t\tif (isDisposed) return;\n\t\t\t\tisInitialized = true;\n\t\t\t\tdebugWarn(`[media] Video source started: ${video.videoWidth}x${video.videoHeight}`);\n\t\t\t} catch (error) {\n\t\t\t\topts.onError?.(error, {\n\t\t\t\t\turl: null,\n\t\t\t\t\tstage: \"acquire\"\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t\tsetTimeout(() =\u003e {\n\t\t\tstartWebcam();\n\t\t}, 0);\n\t\tonBeforeRender(() =\u003e {});\n\t\tonCleanup(() =\u003e {\n\t\t\tisDisposed = true;\n\t\t\tif (mediaStream) {\n\t\t\t\tmediaStream.getTracks().forEach((track) =\u003e track.stop());\n\t\t\t\tmediaStream = null;\n\t\t\t}\n\t\t\tif (videoElement) {\n\t\t\t\tvideoElement.srcObject = null;\n\t\t\t\tvideoElement = null;\n\t\t\t}\n\t\t\tisInitialized = false;\n\t\t});\n\t}\n\tconst readySource = () =\u003e {\n\t\tif (!videoElement || isDisposed) return null;\n\t\tif (videoElement.readyState \u003c 2 || videoElement.videoWidth === 0) return null;\n\t\treturn videoElement;\n\t};\n\treturn {\n\t\tgetSource: readySource,\n\t\telement: () =\u003e videoElement\n\t};\n}\nexport { getNaturalSize as a, decodeImageSource as i, createUrlSourceLoader as n, onNaturalSizeChange as o, createVideoElementSource as r, registerNaturalSize as s, createSwappableMediaTexture as t };\n","function createCanvasRasterTarget(params, opts = {}) {\n\tconst { canvas: hostCanvas, dimensions, onCleanup } = params;\n\tconst maxAxis = opts.maxAxis ?? 4096;\n\tconst supersample = opts.supersample ?? 1;\n\tlet el = null;\n\tlet ctx = null;\n\tlet isDisposed = false;\n\tconst context = () =\u003e {\n\t\tif (isDisposed) return null;\n\t\tif (!el) {\n\t\t\tel = document.createElement(\"canvas\");\n\t\t\tel.width = 2;\n\t\t\tel.height = 2;\n\t\t\tctx = el.getContext(\"2d\", opts.contextAttributes);\n\t\t}\n\t\treturn ctx;\n\t};\n\tonCleanup(() =\u003e {\n\t\tisDisposed = true;\n\t\tif (el) {\n\t\t\tel.width = 0;\n\t\t\tel.height = 0;\n\t\t}\n\t\tel = null;\n\t\tctx = null;\n\t});\n\treturn {\n\t\tcontext,\n\t\tcanvas: () =\u003e el,\n\t\tdevicePixelRatio() {\n\t\t\tconst dimW = dimensions.width || 1;\n\t\t\treturn Math.max(.1, (hostCanvas.width || dimW) / dimW);\n\t\t},\n\t\trasterSize(cssWidth, cssHeight) {\n\t\t\tconst dimW = dimensions.width || 1;\n\t\t\tlet scale = Math.max(.1, (hostCanvas.width || dimW) / dimW) * supersample;\n\t\t\tscale = Math.min(scale, maxAxis / cssWidth, maxAxis / cssHeight);\n\t\t\treturn {\n\t\t\t\tscale,\n\t\t\t\ttexW: Math.max(2, Math.round(cssWidth * scale)),\n\t\t\t\ttexH: Math.max(2, Math.round(cssHeight * scale))\n\t\t\t};\n\t\t},\n\t\tresize(w, h) {\n\t\t\tconst c = context();\n\t\t\tif (!c || !el) return null;\n\t\t\tel.width = w;\n\t\t\tel.height = h;\n\t\t\tc.clearRect(0, 0, w, h);\n\t\t\treturn c;\n\t\t},\n\t\tget disposed() {\n\t\t\treturn isDisposed;\n\t\t}\n\t};\n}\nfunction createRasterInvalidator(params, opts) {\n\tconst minIntervalMs = opts.minIntervalMs ?? 16;\n\tlet lastKey = opts.initialKey ?? \"\";\n\tlet lastCheck = 0;\n\tparams.onBeforeRender(() =\u003e {\n\t\tconst now = Date.now();\n\t\tif (now - lastCheck \u003c minIntervalMs) return;\n\t\tlastCheck = now;\n\t\tconst key = opts.key();\n\t\tif (key === lastKey) return;\n\t\tlastKey = key;\n\t\topts.run();\n\t});\n}\nfunction createFontDependentRaster(opts) {\n\tlet loadedKey = \"\";\n\treturn { ensure() {\n\t\tconst key = opts.key();\n\t\tif (key === loadedKey) return;\n\t\tloadedKey = key;\n\t\topts.load().then(() =\u003e opts.onLoaded()).catch(() =\u003e {});\n\t} };\n}\nexport { createFontDependentRaster as n, createRasterInvalidator as r, createCanvasRasterTarget as t };\n","function googleFontCss2Url(family, weight = 400, italic = false, text) {\n\tlet url = `https://fonts.googleapis.com/css2?family=${family.trim().replace(/ /g, \"+\")}:ital,wght@${italic ? 1 : 0},${weight}\u0026display=swap`;\n\tif (text) url += `\u0026text=${encodeURIComponent(text)}`;\n\treturn url;\n}\nvar loadedFonts = /* @__PURE__ */ new Set();\nvar pendingLoads = /* @__PURE__ */ new Map();\nfunction loadGoogleFont(family, weight = 400, italic = false) {\n\tif (typeof document === \"undefined\" || !family) return Promise.resolve();\n\tconst key = `${family}|${weight}|${italic}`;\n\tif (loadedFonts.has(key)) return Promise.resolve();\n\tconst pending = pendingLoads.get(key);\n\tif (pending) return pending;\n\tconst promise = loadFontLink(family, weight, italic).catch(() =\u003e {\n\t\tif (weight !== 400 || italic) return loadGoogleFont(family, 400, false);\n\t}).then(() =\u003e {\n\t\tloadedFonts.add(key);\n\t\tpendingLoads.delete(key);\n\t});\n\tpendingLoads.set(key, promise);\n\treturn promise;\n}\nfunction loadFontLink(family, weight, italic) {\n\tconst href = googleFontCss2Url(family, weight, italic);\n\treturn new Promise((resolve, reject) =\u003e {\n\t\tif (document.querySelector(`link[href=\"${href}\"]`)) {\n\t\t\tresolve();\n\t\t\treturn;\n\t\t}\n\t\tconst link = document.createElement(\"link\");\n\t\tlink.rel = \"stylesheet\";\n\t\tlink.href = href;\n\t\tlink.onload = () =\u003e resolve();\n\t\tlink.onerror = () =\u003e {\n\t\t\tlink.remove();\n\t\t\treject(/* @__PURE__ */ new Error(`Failed to load font stylesheet: ${family}`));\n\t\t};\n\t\tdocument.head.appendChild(link);\n\t}).then(async () =\u003e {\n\t\tif (document.fonts?.load) {\n\t\t\tconst spec = `${italic ? \"italic \" : \"\"}${weight} 12px \"${family}\"`;\n\t\t\ttry {\n\t\t\t\tif (!(await document.fonts.load(spec)).length) throw new Error(`No font faces loaded for ${spec}`);\n\t\t\t} catch (e) {\n\t\t\t\tif (!(await document.fonts.load(`12px \"${family}\"`)).length) throw e;\n\t\t\t}\n\t\t\tawait new Promise((resolve) =\u003e setTimeout(resolve, 300));\n\t\t} else await new Promise((resolve) =\u003e setTimeout(resolve, 1e3));\n\t});\n}\nfunction isFontAvailable(family, weight = 400, italic = false) {\n\tif (typeof document === \"undefined\" || !document.fonts?.check) return false;\n\ttry {\n\t\treturn document.fonts.check(`${italic ? \"italic \" : \"\"}${weight} 12px \"${family}\"`);\n\t} catch {\n\t\treturn false;\n\t}\n}\nexport { loadGoogleFont as n, isFontAvailable as t };\n","import { Ar as vec2u, Bn as TWO_PI$1, Br as struct, Cr as sin, Gn as typegpu_default, Jr as i32, Kn as textureDimensions, Lr as texture2d, Mr as vec4f, Ot as unpremultiplyAlpha, Rr as textureStorage2d, Tr as sqrt, Yn as textureStore, Yr as u32, _r as mix, ar as clamp, at as ZERO, er as select, fr as floor, gr as min, gt as formatFloat, hr as max, ht as Expr, lr as exp, or as cos, pr as fract, q as createGuardedCompute, qn as textureLoad, qr as f32, tr as abs } from \"./lower-Bd2jez_2.js\";\nimport { St as createFeedbackTrailSim } from \"./porters-OTkIMOyl.js\";\nimport { t as createSwappableMediaTexture } from \"./mediaLifecycle-BTPb5i1-.js\";\nimport { n as createFontDependentRaster, r as createRasterInvalidator, t as createCanvasRasterTarget } from \"./canvasRaster-DDBkrdY8.js\";\nimport { n as loadGoogleFont } from \"./fonts-BUXTd9qb.js\";\nvar L = formatFloat;\nfunction overPremul(dst, rgb, a) {\n\treturn `{ let av = clamp(${a}, 0.0, 1.0); ${dst} = vec4f((${rgb}) * av + ${dst}.rgb * (1.0 - av), av + ${dst}.a * (1.0 - av)); }`;\n}\nfunction roundRectSD(names, opts) {\n\tconst { q, sd } = names;\n\tconst { pp, half, radius } = opts;\n\tif (radius === void 0) return [`let ${q} = abs(${pp}) - ${half};`, `let ${sd} = length(max(${q}, vec2f(0.0))) + min(max(${q}.x, ${q}.y), ${L(0)});`];\n\treturn [`let ${q} = abs(${pp}) - ${half} + ${radius};`, `let ${sd} = length(max(${q}, vec2f(0.0))) + min(max(${q}.x, ${q}.y), ${L(0)}) - ${radius};`];\n}\nfunction cornerBracketMask(names, opts) {\n\tconst { bl, inCorner } = names;\n\tconst { blInit, px, py, hx, hy, stroke } = opts;\n\treturn [\n\t\t`let ${bl} = ${blInit};`,\n\t\t`let ${inCorner} = abs(${px}) \u003e ${hx} - ${bl} \u0026\u0026 abs(${py}) \u003e ${hy} - ${bl};`,\n\t\t`${stroke} = ${stroke} * select(${L(0)}, ${L(1)}, ${inCorner});`\n\t];\n}\nfunction straightFromPremul(dst) {\n\treturn `vec4f(${dst}.rgb / max(${dst}.a, ${L(1e-4)}), ${dst}.a)`;\n}\nvar ATLAS_GLYPHS = \"0123456789x%\";\nvar ATLAS_SLOTS = 16;\nvar ATLAS_CELL_W = 64;\nvar ATLAS_CELL_H = 96;\nvar ATLAS_W = ATLAS_SLOTS * ATLAS_CELL_W;\nvar ATLAS_H = ATLAS_CELL_H;\nvar WALK_SCAN = 3;\nvar LEAF_SCAN = 4;\nvar LUM = \"vec3f(0.299, 0.587, 0.114)\";\nvar num$1 = (v, f) =\u003e typeof v === \"number\" ? v : f;\nfunction createGlyphStripAtlas(params, opts = {}) {\n\tconst { getCpuValue } = params;\n\tconst glyphTex = createSwappableMediaTexture(params, {\n\t\tlabel: opts.label ?? \"GlyphStrip:atlas\",\n\t\tinitial: {\n\t\t\twidth: ATLAS_W,\n\t\t\theight: ATLAS_H\n\t\t}\n\t});\n\tconst target = createCanvasRasterTarget(params, { contextAttributes: { willReadFrequently: true } });\n\tconst readFont = () =\u003e ({\n\t\tfamily: String(getCpuValue(opts.familyProp ?? \"fontFamily\") ?? \"Inter\"),\n\t\tweight: num$1(getCpuValue(opts.weightProp ?? \"fontWeight\"), 500)\n\t});\n\tconst build = (family, weight) =\u003e {\n\t\tif (glyphTex.disposed) return;\n\t\tconst c = target.canvas() ? target.context() : target.resize(ATLAS_W, ATLAS_H);\n\t\tif (!c) return;\n\t\tc.clearRect(0, 0, ATLAS_W, ATLAS_H);\n\t\tc.fillStyle = \"#ffffff\";\n\t\tc.font = `${weight} ${Math.round(ATLAS_CELL_H * .62)}px \"${family}\", ui-monospace, monospace`;\n\t\tc.textAlign = \"center\";\n\t\tc.textBaseline = \"middle\";\n\t\tconst glyphs = opts.glyphs ?? ATLAS_GLYPHS;\n\t\tfor (let i = 0; i \u003c glyphs.length; i++) c.fillText(glyphs[i], i * ATLAS_CELL_W + ATLAS_CELL_W / 2, ATLAS_CELL_H / 2 + 1);\n\t\tglyphTex.write(target.canvas());\n\t};\n\tconst fp0 = readFont();\n\tbuild(fp0.family, fp0.weight);\n\tconst rebuild = () =\u003e {\n\t\tconst fp = readFont();\n\t\tbuild(fp.family, fp.weight);\n\t};\n\tconst font = createFontDependentRaster({\n\t\tkey: () =\u003e {\n\t\t\tconst fp = readFont();\n\t\t\treturn `${fp.family}|${fp.weight}`;\n\t\t},\n\t\tload: () =\u003e {\n\t\t\tconst fp = readFont();\n\t\t\treturn loadGoogleFont(fp.family, fp.weight);\n\t\t},\n\t\tonLoaded: rebuild\n\t});\n\tsetTimeout(() =\u003e font.ensure(), 0);\n\tcreateRasterInvalidator(params, {\n\t\tinitialKey: `${fp0.family}|${fp0.weight}`,\n\t\tminIntervalMs: 100,\n\t\tkey: () =\u003e {\n\t\t\tconst fp = readFont();\n\t\t\treturn `${fp.family}|${fp.weight}`;\n\t\t},\n\t\trun: () =\u003e {\n\t\t\trebuild();\n\t\t\tfont.ensure();\n\t\t}\n\t});\n\treturn glyphTex.kit;\n}\nfunction contentPredicate(f, sVar, uVar) {\n\tconst { p, L: L$1, modeStr } = f;\n\tif (modeStr === \"alpha\") return `${sVar}.a \u003e ${p}_thr`;\n\tif (modeStr === \"bright\") return `dot(${uVar}.rgb, ${LUM}) \u003e ${p}_thr \u0026\u0026 ${sVar}.a \u003e ${L$1(.02)}`;\n\tif (modeStr === \"dark\") return `dot(${uVar}.rgb, ${LUM}) \u003c ${p}_thr \u0026\u0026 ${sVar}.a \u003e ${L$1(.5)}`;\n\tif (modeStr === \"red\") return `${uVar}.r \u003e ${p}_thr \u0026\u0026 ${uVar}.r \u003e= ${uVar}.g \u0026\u0026 ${uVar}.r \u003e= ${uVar}.b \u0026\u0026 ${sVar}.a \u003e ${L$1(.02)}`;\n\tif (modeStr === \"green\") return `${uVar}.g \u003e ${p}_thr \u0026\u0026 ${uVar}.g \u003e= ${uVar}.r \u0026\u0026 ${uVar}.g \u003e= ${uVar}.b \u0026\u0026 ${sVar}.a \u003e ${L$1(.02)}`;\n\treturn `${uVar}.b \u003e ${p}_thr \u0026\u0026 ${uVar}.b \u003e= ${uVar}.r \u0026\u0026 ${uVar}.b \u003e= ${uVar}.g \u0026\u0026 ${sVar}.a \u003e ${L$1(.02)}`;\n}\nfunction cellScanStmts(f, sfx, originX, originY, sizeV, N, wantBounds) {\n\tconst { p, L: L$1, s, sampleChild, UN, modeStr } = f;\n\ts.push(`var ${sfx}_cnt = ${L$1(0)};`);\n\tif (wantBounds) s.push(`var ${sfx}_minX = ${L$1(1e9)}; var ${sfx}_maxX = ${L$1(-1e9)}; var ${sfx}_minY = ${L$1(1e9)}; var ${sfx}_maxY = ${L$1(-1e9)};`);\n\tconst inv = 1 / N;\n\tlet k = 0;\n\tfor (let sy = 0; sy \u003c N; sy++) for (let sx = 0; sx \u003c N; sx++) {\n\t\tconst pxX = `${sfx}_px${k}x`;\n\t\tconst pxY = `${sfx}_px${k}y`;\n\t\ts.push(`let ${pxX} = ${originX} + ${sizeV} * ${L$1((sx + .5) * inv)};`);\n\t\ts.push(`let ${pxY} = ${originY} + ${sizeV} * ${L$1((sy + .5) * inv)};`);\n\t\ts.push(`let ${sfx}_s${k} = ${sampleChild(`vec2f(${pxX}, ${pxY}) / ${p}_res`)};`);\n\t\tif (modeStr !== \"alpha\") s.push(`let ${sfx}_u${k} = ${UN}(${sfx}_s${k});`);\n\t\ts.push(`let ${sfx}_c${k} = ${contentPredicate(f, `${sfx}_s${k}`, `${sfx}_u${k}`)};`);\n\t\ts.push(`${sfx}_cnt = ${sfx}_cnt + select(${L$1(0)}, ${L$1(1)}, ${sfx}_c${k});`);\n\t\tif (wantBounds) {\n\t\t\ts.push(`${sfx}_minX = select(${sfx}_minX, min(${sfx}_minX, ${pxX}), ${sfx}_c${k});`);\n\t\t\ts.push(`${sfx}_maxX = select(${sfx}_maxX, max(${sfx}_maxX, ${pxX}), ${sfx}_c${k});`);\n\t\t\ts.push(`${sfx}_minY = select(${sfx}_minY, min(${sfx}_minY, ${pxY}), ${sfx}_c${k});`);\n\t\t\ts.push(`${sfx}_maxY = select(${sfx}_maxY, max(${sfx}_maxY, ${pxY}), ${sfx}_c${k});`);\n\t\t}\n\t\tk++;\n\t}\n\ts.push(`let ${sfx}_coverage = ${sfx}_cnt / ${L$1(N * N)};`);\n}\nfunction partitionWalkStmts(f, layoutStr, D) {\n\tconst { p, L: L$1, s } = f;\n\ts.push(`var ${p}_origin = floor(${p}_fragPx / ${p}_cellPx) * ${p}_cellPx;`);\n\ts.push(`var ${p}_size = ${p}_cellPx;`);\n\tfor (let lvl = 0; lvl \u003c D; lvl++) {\n\t\tconst sfx = `${p}_w${lvl}`;\n\t\tif (layoutStr === \"mosaic\") {\n\t\t\ts.push(`let ${sfx}_cellIx = ${p}_origin / ${p}_size;`);\n\t\t\ts.push(`let ${sfx}_doSplit = fract(sin(dot(${sfx}_cellIx, vec2f(${L$1(127.1)}, ${L$1(311.7)})) + ${L$1(lvl * 53.13)}) * ${L$1(43758.5453)}) \u003e ${L$1(.5)};`);\n\t\t} else {\n\t\t\tcellScanStmts(f, sfx, `${p}_origin.x`, `${p}_origin.y`, `${p}_size`, WALK_SCAN, false);\n\t\t\ts.push(`let ${sfx}_doSplit = ${sfx}_coverage \u003e ${L$1(.02)} \u0026\u0026 ${sfx}_coverage \u003c ${L$1(.98)};`);\n\t\t}\n\t\ts.push(`let ${sfx}_half = ${p}_size * ${L$1(.5)};`);\n\t\ts.push(`let ${sfx}_qx = step(${p}_origin.x + ${sfx}_half, ${p}_fragPx.x);`);\n\t\ts.push(`let ${sfx}_qy = step(${p}_origin.y + ${sfx}_half, ${p}_fragPx.y);`);\n\t\ts.push(`let ${sfx}_childOrigin = vec2f(${p}_origin.x + ${sfx}_qx * ${sfx}_half, ${p}_origin.y + ${sfx}_qy * ${sfx}_half);`);\n\t\ts.push(`${p}_origin = select(${p}_origin, ${sfx}_childOrigin, ${sfx}_doSplit);`);\n\t\ts.push(`${p}_size = select(${p}_size, ${sfx}_half, ${sfx}_doSplit);`);\n\t}\n}\nfunction contentBBoxStmts(f) {\n\tconst { p, L: L$1, s } = f;\n\tcellScanStmts(f, `${p}_leaf`, `${p}_origin.x`, `${p}_origin.y`, `${p}_size`, LEAF_SCAN, true);\n\ts.push(`let ${p}_halfStep = ${p}_size / ${L$1(LEAF_SCAN)} * ${L$1(.5)};`);\n\ts.push(`let ${p}_innerMinX = ${p}_origin.x + ${p}_boxInset;`);\n\ts.push(`let ${p}_innerMaxX = max(${p}_origin.x + ${p}_size - ${p}_boxInset, ${p}_innerMinX);`);\n\ts.push(`let ${p}_innerMinY = ${p}_origin.y + ${p}_boxInset;`);\n\ts.push(`let ${p}_innerMaxY = max(${p}_origin.y + ${p}_size - ${p}_boxInset, ${p}_innerMinY);`);\n\ts.push(`let ${p}_bMinX = clamp(${p}_leaf_minX - ${p}_halfStep, ${p}_innerMinX, ${p}_innerMaxX);`);\n\ts.push(`let ${p}_bMaxX = clamp(${p}_leaf_maxX + ${p}_halfStep, ${p}_innerMinX, ${p}_innerMaxX);`);\n\ts.push(`let ${p}_bMinY = clamp(${p}_leaf_minY - ${p}_halfStep, ${p}_innerMinY, ${p}_innerMaxY);`);\n\ts.push(`let ${p}_bMaxY = clamp(${p}_leaf_maxY + ${p}_halfStep, ${p}_innerMinY, ${p}_innerMaxY);`);\n\ts.push(`let ${p}_boxW = ${p}_bMaxX - ${p}_bMinX;`);\n\ts.push(`let ${p}_boxH = ${p}_bMaxY - ${p}_bMinY;`);\n\ts.push(`let ${p}_detected = ${p}_leaf_coverage \u003e ${L$1(.02)} \u0026\u0026 ${p}_boxW \u003e ${p}_minSize \u0026\u0026 ${p}_boxH \u003e ${p}_minSize;`);\n\ts.push(`let ${p}_detF = select(${L$1(0)}, ${L$1(1)}, ${p}_detected);`);\n}\nfunction detectionBoxStmts(f, cornerStyle) {\n\tconst { p, U, L: L$1, s } = f;\n\ts.push(`let ${p}_center = vec2f((${p}_bMinX + ${p}_bMaxX) * ${L$1(.5)}, (${p}_bMinY + ${p}_bMaxY) * ${L$1(.5)});`);\n\ts.push(`let ${p}_halfB = vec2f(${p}_boxW * ${L$1(.5)}, ${p}_boxH * ${L$1(.5)});`);\n\tconst cRExpr = cornerStyle ? L$1(0) : `${p}_cornerRadiusPx`;\n\ts.push(`let ${p}_cR = max(min(min(${cRExpr}, ${p}_halfB.x), ${p}_halfB.y), ${L$1(0)});`);\n\ts.push(`let ${p}_pp = ${p}_fragPx - ${p}_center;`);\n\ts.push(...roundRectSD({\n\t\tq: `${p}_q`,\n\t\tsd: `${p}_sd`\n\t}, {\n\t\tpp: `${p}_pp`,\n\t\thalf: `${p}_halfB`,\n\t\tradius: `${p}_cR`\n\t}));\n\ts.push(`let ${p}_fillA = (${L$1(1)} - smoothstep(${L$1(0)}, ${p}_aa, ${p}_sd)) * ${U(\"fillColor\")}.a * ${p}_detF;`);\n\ts.push(`var ${p}_strokeA = ${L$1(1)} - smoothstep(${L$1(0)}, ${p}_aa, abs(${p}_sd) - ${p}_lineHalf);`);\n\tif (cornerStyle) s.push(...cornerBracketMask({\n\t\tbl: `${p}_bl`,\n\t\tinCorner: `${p}_inCorner`\n\t}, {\n\t\tblInit: `min(${p}_halfB.x, ${p}_halfB.y) * ${L$1(.35)}`,\n\t\tpx: `${p}_pp.x`,\n\t\tpy: `${p}_pp.y`,\n\t\thx: `${p}_halfB.x`,\n\t\thy: `${p}_halfB.y`,\n\t\tstroke: `${p}_strokeA`\n\t}));\n\ts.push(`${p}_strokeA = ${p}_strokeA * ${U(\"strokeColor\")}.a * ${p}_detF;`);\n\ts.push(overPremul(`${p}_dst`, `${U(\"fillColor\")}.rgb`, `${p}_fillA`));\n\ts.push(overPremul(`${p}_dst`, `${U(\"strokeColor\")}.rgb`, `${p}_strokeA`));\n}\nconst digitsOf = (L$1, v) =\u003e `(${L$1(1)} + step(${L$1(10)}, ${v}) + step(${L$1(100)}, ${v}) + step(${L$1(1e3)}, ${v}) + step(${L$1(1e4)}, ${v}))`;\nconst digitAt = (L$1, v, e) =\u003e {\n\tconst x = `floor(${v} / pow(${L$1(10)}, ${e}))`;\n\treturn `(${x} - ${L$1(10)} * floor((${x}) / ${L$1(10)}))`;\n};\nfunction glyphPillLabelStmts(f, opts) {\n\tconst { p, U, L: L$1, s } = f;\n\tconst { labelStr, labelPos, atlasKey } = opts;\n\ts.push(`let ${p}_textH = max(${U(\"fontSize\")} * ${p}_res.y, ${L$1(1)});`);\n\ts.push(`let ${p}_glyphW = ${p}_textH * ${L$1(ATLAS_CELL_W / ATLAS_CELL_H)};`);\n\ts.push(`let ${p}_advance = ${p}_glyphW + ${p}_textH * ${U(\"letterSpacing\")};`);\n\ts.push(`let ${p}_padX = ${p}_textH * ${L$1(.38)};`);\n\ts.push(`let ${p}_padY = ${p}_textH * ${L$1(.24)};`);\n\ts.push(`let ${p}_gap = ${p}_textH * ${L$1(.28)};`);\n\tif (labelStr === \"dimensions\") {\n\t\ts.push(`let ${p}_w = clamp(floor(${p}_boxW + ${L$1(.5)}), ${L$1(1)}, ${L$1(99999)});`);\n\t\ts.push(`let ${p}_h = clamp(floor(${p}_boxH + ${L$1(.5)}), ${L$1(1)}, ${L$1(99999)});`);\n\t\ts.push(`let ${p}_dw = ${digitsOf(L$1, `${p}_w`)};`);\n\t\ts.push(`let ${p}_dh = ${digitsOf(L$1, `${p}_h`)};`);\n\t\ts.push(`let ${p}_total = ${p}_dw + ${L$1(1)} + ${p}_dh;`);\n\t} else {\n\t\ts.push(`let ${p}_pc = clamp(floor(${p}_leaf_coverage * ${L$1(100)} + ${L$1(.5)}), ${L$1(0)}, ${L$1(100)});`);\n\t\ts.push(`let ${p}_dp = ${digitsOf(L$1, `${p}_pc`)};`);\n\t\ts.push(`let ${p}_total = ${p}_dp + ${L$1(1)};`);\n\t}\n\ts.push(`let ${p}_labelW = ${p}_total * ${p}_advance + ${p}_padX * ${L$1(2)};`);\n\ts.push(`let ${p}_labelH = ${p}_textH + ${p}_padY * ${L$1(2)};`);\n\tconst isRight = labelPos === 1 || labelPos === 3;\n\tconst isTop = labelPos === 2 || labelPos === 3;\n\ts.push(`let ${p}_inset = ${U(\"labelInset\")} \u003e ${L$1(.5)};`);\n\tconst leftIn = isRight ? `${p}_bMaxX - ${p}_labelW - ${p}_gap` : `${p}_bMinX + ${p}_gap`;\n\tconst leftOut = isRight ? `${p}_bMaxX - ${p}_labelW` : `${p}_bMinX`;\n\ts.push(`var ${p}_labelLeft = select(${leftOut}, ${leftIn}, ${p}_inset);`);\n\tconst topIn = isTop ? `${p}_bMinY + ${p}_gap` : `${p}_bMaxY - ${p}_labelH - ${p}_gap`;\n\tconst topOut = isTop ? `${p}_bMinY - ${p}_labelH - ${p}_gap` : `${p}_bMaxY + ${p}_gap`;\n\ts.push(`var ${p}_labelTop = select(${topOut}, ${topIn}, ${p}_inset);`);\n\ts.push(`let ${p}_cellMaxX = ${p}_origin.x + ${p}_size;`);\n\ts.push(`let ${p}_cellMaxY = ${p}_origin.y + ${p}_size;`);\n\ts.push(`${p}_labelLeft = clamp(${p}_labelLeft, ${p}_origin.x, max(${p}_cellMaxX - ${p}_labelW, ${p}_origin.x));`);\n\ts.push(`${p}_labelTop = clamp(${p}_labelTop, ${p}_origin.y, max(${p}_cellMaxY - ${p}_labelH, ${p}_origin.y));`);\n\ts.push(`let ${p}_labelCenter = vec2f(${p}_labelLeft + ${p}_labelW * ${L$1(.5)}, ${p}_labelTop + ${p}_labelH * ${L$1(.5)});`);\n\ts.push(`let ${p}_pillHalf = vec2f(${p}_labelW * ${L$1(.5)}, ${p}_labelH * ${L$1(.5)});`);\n\ts.push(`let ${p}_pillR = max(min(min(${U(\"labelRadius\")} * ${p}_scaleFactor, ${p}_pillHalf.x), ${p}_pillHalf.y), ${L$1(0)});`);\n\ts.push(`let ${p}_pillP = ${p}_fragPx - ${p}_labelCenter;`);\n\ts.push(...roundRectSD({\n\t\tq: `${p}_pillQ`,\n\t\tsd: `${p}_pillSD`\n\t}, {\n\t\tpp: `${p}_pillP`,\n\t\thalf: `${p}_pillHalf`,\n\t\tradius: `${p}_pillR`\n\t}));\n\ts.push(`let ${p}_pillA = (${L$1(1)} - smoothstep(${L$1(0)}, ${p}_aa, ${p}_pillSD)) * ${U(\"labelBackgroundColor\")}.a * ${p}_detF;`);\n\ts.push(overPremul(`${p}_dst`, `${U(\"labelBackgroundColor\")}.rgb`, `${p}_pillA`));\n\ts.push(`let ${p}_rel = ${p}_fragPx.x - ${p}_labelLeft - ${p}_padX;`);\n\ts.push(`let ${p}_slot = floor(${p}_rel / ${p}_advance);`);\n\ts.push(`let ${p}_within = fract(${p}_rel / ${p}_advance);`);\n\ts.push(`let ${p}_uInChar = ${p}_within * (${p}_advance / ${p}_glyphW);`);\n\ts.push(`let ${p}_vInChar = (${p}_fragPx.y - ${p}_labelTop - ${p}_padY) / ${p}_textH;`);\n\tif (labelStr === \"dimensions\") {\n\t\ts.push(`let ${p}_wDigit = ${digitAt(L$1, `${p}_w`, `${p}_dw - ${L$1(1)} - ${p}_slot`)};`);\n\t\ts.push(`let ${p}_hDigit = ${digitAt(L$1, `${p}_h`, `${p}_dh + ${p}_dw - ${p}_slot`)};`);\n\t\ts.push(`var ${p}_g = ${p}_hDigit;`);\n\t\ts.push(`${p}_g = select(${p}_g, ${L$1(10)}, ${p}_slot == ${p}_dw);`);\n\t\ts.push(`${p}_g = select(${p}_g, ${p}_wDigit, ${p}_slot \u003c ${p}_dw);`);\n\t} else s.push(`var ${p}_g = select(${L$1(11)}, ${digitAt(L$1, `${p}_pc`, `${p}_dp - ${L$1(1)} - ${p}_slot`)}, ${p}_slot \u003c ${p}_dp);`);\n\ts.push(`let ${p}_atlasU = (${p}_g + clamp(${p}_uInChar, ${L$1(0)}, ${L$1(1)})) / ${L$1(ATLAS_SLOTS)};`);\n\ts.push(`let ${p}_glyphCov = textureSampleLevel(tex.$.${atlasKey}, samp.$.linearClamp, vec2f(${p}_atlasU, ${p}_vInChar), 0.0).a;`);\n\ts.push(`let ${p}_inText = ${p}_rel \u003e= ${L$1(0)} \u0026\u0026 ${p}_slot \u003e= ${L$1(0)} \u0026\u0026 ${p}_slot \u003c ${p}_total \u0026\u0026 ${p}_uInChar \u003c= ${L$1(1)} \u0026\u0026 ${p}_vInChar \u003e= ${L$1(0)} \u0026\u0026 ${p}_vInChar \u003c= ${L$1(1)};`);\n\ts.push(`let ${p}_textA = ${p}_glyphCov * select(${L$1(0)}, ${L$1(1)}, ${p}_inText) * ${U(\"labelColor\")}.a * ${p}_detF;`);\n\ts.push(overPremul(`${p}_dst`, `${U(\"labelColor\")}.rgb`, `${p}_textA`));\n}\nconst diamondStamp = (f) =\u003e {\n\tconst { p, U, L: L$1, s } = f;\n\ts.push(`let dsz = ${p}_ms * ${L$1(.16)};`);\n\ts.push(`let dSd = (abs(dp.x) + abs(dp.y)) * ${L$1(.7071)} - dsz;`);\n\ts.push(overPremul(`${p}_dst`, `${U(\"keyframeColor\")}.rgb`, `(${L$1(1)} - smoothstep(${L$1(0)}, ${p}_aa, dSd)) * ${U(\"keyframeColor\")}.a * fade * ${U(\"trail\")}`));\n};\nfunction pathSegmentStamp(every) {\n\treturn (f) =\u003e {\n\t\tconst { p, U, L: L$1, s } = f;\n\t\ts.push(`let validP = select(${L$1(0)}, ${L$1(1)}, abs(ePrev.w - mta.z) \u003c ${L$1(.5)}) * select(${L$1(0)}, ${L$1(1)}, ePrev.z \u003e ${L$1(.5)});`);\n\t\ts.push(`let stampGap = abs(e.z - ePrev.z);`);\n\t\ts.push(`let contiguous = select(${L$1(0)}, ${L$1(1)}, stampGap \u003c ${L$1(every * 1.5)});`);\n\t\ts.push(`let epp = vec2f(ePrev.x * ${p}_res.x, ePrev.y * ${p}_res.y);`);\n\t\ts.push(`let pa = ${p}_px - epp; let ba = ep - epp;`);\n\t\ts.push(`let h = clamp(dot(pa, ba) / max(dot(ba, ba), ${L$1(1e-4)}), ${L$1(0)}, ${L$1(1)});`);\n\t\ts.push(`let segD = length(pa - ba * h);`);\n\t\ts.push(overPremul(`${p}_dst`, `${U(\"pathColor\")}.rgb`, `(${L$1(1)} - smoothstep(${p}_lw * ${L$1(.4)}, ${p}_lw * ${L$1(.4)} + ${p}_aa, segD)) * ${U(\"pathColor\")}.a * fade * validP * contiguous * ${U(\"trail\")} * ${L$1(.8)}`));\n\t};\n}\nfunction ringTrailStmts(f, slots) {\n\tconst { p, U, L: L$1, s } = f;\n\tconst maxAge = slots.len * slots.every;\n\ts.push(`if (${U(\"trail\")} \u003e ${L$1(.001)}) {`);\n\ts.push(`var ePrev = ${slots.load(`${2 + slots.len - 1}u`)};`);\n\ts.push(`for (var j = 0u; j \u003c ${slots.len}u; j = j + 1u) {`);\n\ts.push(`let e = ${slots.load(\"2u + j\")};`);\n\ts.push(`let valid = select(${L$1(0)}, ${L$1(1)}, abs(e.w - mta.z) \u003c ${L$1(.5)}) * select(${L$1(0)}, ${L$1(1)}, e.z \u003e ${L$1(.5)});`);\n\ts.push(`let age = head.z - e.z;`);\n\ts.push(`let fade = clamp(${L$1(1)} - age / ${L$1(maxAge)}, ${L$1(0)}, ${L$1(1)}) * valid;`);\n\ts.push(`let ep = vec2f(e.x * ${p}_res.x, e.y * ${p}_res.y);`);\n\ts.push(`let dp = ${p}_px - ep;`);\n\tfor (const stage of slots.stages) stage(f);\n\ts.push(`ePrev = e;`);\n\ts.push(`}`);\n\ts.push(`}`);\n}\nconst bracketGizmo = (f) =\u003e {\n\tconst { p, U, L: L$1, s } = f;\n\ts.push(`let gp = ${p}_px - tp;`);\n\ts.push(`let hlf = ${p}_ms * ${L$1(.5)};`);\n\ts.push(...roundRectSD({\n\t\tq: `q`,\n\t\tsd: `boxSd`\n\t}, {\n\t\tpp: `gp`,\n\t\thalf: `vec2f(hlf)`\n\t}));\n\ts.push(`var strokeA = ${L$1(1)} - smoothstep(${L$1(0)}, ${p}_aa, abs(boxSd) - ${p}_lw * ${L$1(.5)});`);\n\ts.push(...cornerBracketMask({\n\t\tbl: `bl`,\n\t\tinCorner: `inCorner`\n\t}, {\n\t\tblInit: `hlf * ${L$1(.45)}`,\n\t\tpx: `gp.x`,\n\t\tpy: `gp.y`,\n\t\thx: `hlf`,\n\t\thy: `hlf`,\n\t\tstroke: `strokeA`\n\t}));\n\ts.push(overPremul(`${p}_dst`, `${U(\"markerColor\")}.rgb`, `strokeA * ${U(\"markerColor\")}.a * searching`));\n\ts.push(`let tick = hlf * ${L$1(.55)};`);\n\ts.push(`let chH = ${L$1(1)} - smoothstep(${L$1(0)}, ${p}_aa, max(abs(gp.y) - ${p}_lw * ${L$1(.5)}, abs(gp.x) - tick));`);\n\ts.push(`let chV = ${L$1(1)} - smoothstep(${L$1(0)}, ${p}_aa, max(abs(gp.x) - ${p}_lw * ${L$1(.5)}, abs(gp.y) - tick));`);\n\ts.push(overPremul(`${p}_dst`, `${U(\"markerColor\")}.rgb`, `max(chH, chV) * ${L$1(.55)} * ${U(\"markerColor\")}.a * searching`));\n\ts.push(overPremul(`${p}_dst`, `vec3f(1.0, 1.0, 1.0)`, `(${L$1(1)} - smoothstep(${p}_lw, ${p}_lw + ${p}_aa, length(gp))) * searching`));\n};\nvar MAX_TRACKERS = 64;\nvar TRAIL_LEN = 12;\nvar TRAIL_EVERY = 8;\nvar AABB_COL = 14;\nvar STATE_W = AABB_COL + 1;\nvar STATE_FORMAT = \"rgba32float\";\nvar FEAT_GRID = 96;\nvar TWO_PI = TWO_PI$1;\nvar TrackParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tdt: f32,\n\ttrackersF: f32,\n\tagility: f32,\n\tthreshold: f32,\n\tvariance: f32,\n\tlifespan: f32\n}), \"TrackParams\");\nvar featureLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tsrc: { texture: texture2d(f32) },\n\tgrid: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") },\n\tparams: { uniform: TrackParams }\n}), \"featureLayout\");\nvar trackLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tsrc: { texture: texture2d(f32) },\n\tfeatGrid: {\n\t\ttexture: texture2d(f32),\n\t\tsampleType: \"unfilterable-float\"\n\t},\n\tprev: {\n\t\ttexture: texture2d(f32),\n\t\tsampleType: \"unfilterable-float\"\n\t},\n\tnext: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") },\n\tpresent: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") },\n\tparams: { uniform: TrackParams }\n}), \"trackLayout\");\nconst trackHash = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((x) =\u003e {\n\t\"use gpu\";\n\treturn fract(__tsover_mul(sin(x), 43758.5453123));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"x\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"x\"]\n\t\t\t\t],\n\t\t\t\t\"*\",\n\t\t\t\t[5, \"43758.5453123\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({})), \"trackHash\");\nfunction featureScoreFn(mode) {\n\treturn typegpu_default.fn([vec4f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((c) =\u003e {\n\t\t\"use gpu\";\n\t\tconst a = max(c.w, 1e-4);\n\t\tconst lumaU = clamp(__tsover_div(__tsover_add(__tsover_add(__tsover_mul(c.x, .299), __tsover_mul(c.y, .587)), __tsover_mul(c.z, .114)), a), 0, 1);\n\t\tlet score = f32(0);\n\t\tif (mode === \"alpha\") score = c.w;\n\t\telse if (mode === \"dark\") score = __tsover_mul(__tsover_sub(1, lumaU), select(f32(0), f32(1), c.w \u003e .5));\n\t\telse if (mode === \"red\") score = __tsover_mul(__tsover_mul(__tsover_mul(clamp(__tsover_div(c.x, a), 0, 1), select(f32(0), f32(1), c.x \u003e= c.y)), select(f32(0), f32(1), c.x \u003e= c.z)), select(f32(0), f32(1), c.w \u003e .02));\n\t\telse if (mode === \"green\") score = __tsover_mul(__tsover_mul(__tsover_mul(clamp(__tsover_div(c.y, a), 0, 1), select(f32(0), f32(1), c.y \u003e= c.x)), select(f32(0), f32(1), c.y \u003e= c.z)), select(f32(0), f32(1), c.w \u003e .02));\n\t\telse if (mode === \"blue\") score = __tsover_mul(__tsover_mul(__tsover_mul(clamp(__tsover_div(c.z, a), 0, 1), select(f32(0), f32(1), c.z \u003e= c.x)), select(f32(0), f32(1), c.z \u003e= c.y)), select(f32(0), f32(1), c.w \u003e .02));\n\t\telse score = __tsover_mul(lumaU, select(f32(0), f32(1), c.w \u003e .02));\n\t\treturn score;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"a\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lumaU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.299\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.587\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.114\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"score\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[103, \"alpha\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t[103, \"dark\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"lumaU\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t[103, \"red\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t[103, \"green\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t[103, \"blue\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"a\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"lumaU\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, \"score\"]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"mode\": () =\u003e mode,\n\t\t\t\"std.select\": () =\u003e select\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`featureScore_${mode}`);\n}\nfunction buildFeatureGridKernel(scoreFn) {\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((gx, gy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst srcDims = textureDimensions(featureLayout.$.src);\n\t\tconst srcW = f32(srcDims.x);\n\t\tconst srcH = f32(srcDims.y);\n\t\tconst g = f32(FEAT_GRID);\n\t\tconst cu = __tsover_div(__tsover_add(f32(gx), .5), g);\n\t\tconst cv = __tsover_div(__tsover_add(f32(gy), .5), g);\n\t\tconst q = __tsover_div(.25, g);\n\t\tlet score = f32(0);\n\t\tfor (let sy = 0; sy \u003c 2; sy++) for (let sx = 0; sx \u003c 2; sx++) {\n\t\t\tconst u = __tsover_add(cu, __tsover_mul(__tsover_mul(__tsover_sub(f32(sx), .5), 2), q));\n\t\t\tconst v = __tsover_add(cv, __tsover_mul(__tsover_mul(__tsover_sub(f32(sy), .5), 2), q));\n\t\t\tconst tx = u32(clamp(__tsover_mul(u, srcW), f32(0), __tsover_sub(srcW, 1)));\n\t\t\tconst ty = u32(clamp(__tsover_mul(v, srcH), f32(0), __tsover_sub(srcH, 1)));\n\t\t\tscore = max(score, scoreFn(textureLoad(featureLayout.$.src, vec2u(tx, ty), 0)));\n\t\t}\n\t\ttextureStore(featureLayout.$.grid, vec2u(gx, gy), vec4f(score, 0, 0, 1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureDimensions\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"featureLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcW\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcH\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"g\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"FEAT_GRID\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cu\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"g\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"g\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"q\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.25\"],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"g\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"score\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cu\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"q\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cv\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"q\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcW\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcW\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcH\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcH\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"score\", [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"scoreFn\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"featureLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"tx\", \"ty\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"featureLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"grid\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"gx\", \"gy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.textureDimensions\": () =\u003e textureDimensions,\n\t\t\t\"featureLayout\": () =\u003e featureLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"FEAT_GRID\": () =\u003e FEAT_GRID,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"scoreFn\": () =\u003e scoreFn,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"featureGridScan\");\n}\nfunction buildPursuitKernel(mode, scoreFn) {\n\tconst score = scoreFn ?? featureScoreFn(mode);\n\treturn typegpu_default.fn([u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ti) =\u003e {\n\t\t\"use gpu\";\n\t\tconst P = trackLayout.$.params;\n\t\tconst iF = f32(ti);\n\t\tconst head = textureLoad(trackLayout.$.prev, vec2u(u32(0), ti), 0);\n\t\tconst meta = textureLoad(trackLayout.$.prev, vec2u(u32(1), ti), 0);\n\t\tlet posX = head.x;\n\t\tlet posY = head.y;\n\t\tlet frame = head.z;\n\t\tlet genStart = __tsover_sub(head.w, 1);\n\t\tlet missStreak = meta.x;\n\t\tlet gen = meta.z;\n\t\tlet crowdStreak = meta.w;\n\t\tif (head.w \u003c .5) {\n\t\t\tposX = __tsover_add(.15, __tsover_mul(.7, trackHash(__tsover_add(__tsover_mul(iF, 7.31), 1.3))));\n\t\t\tposY = __tsover_add(.15, __tsover_mul(.7, trackHash(__tsover_add(__tsover_mul(iF, 11.93), 4.7))));\n\t\t\tframe = f32(0);\n\t\t\tgenStart = f32(0);\n\t\t\tmissStreak = f32(0);\n\t\t\tgen = f32(1);\n\t\t}\n\t\tframe = __tsover_add(frame, 1);\n\t\tconst minFeat = max(P.threshold, .02);\n\t\tconst Lpref = max(__tsover_sub(1, __tsover_mul(P.variance, trackHash(__tsover_add(__tsover_add(__tsover_mul(iF, 6.13), __tsover_mul(gen, .37)), 2.9)))), minFeat);\n\t\tconst srcDims = textureDimensions(trackLayout.$.src);\n\t\tconst srcW = f32(srcDims.x);\n\t\tconst srcH = f32(srcDims.y);\n\t\tconst radius = __tsover_add(.035, __tsover_mul(.11, P.agility));\n\t\tlet sumW = f32(0);\n\t\tlet sumX = f32(0);\n\t\tlet sumY = f32(0);\n\t\tfor (let dy = -3; dy \u003c= 3; dy++) for (let dx = -3; dx \u003c= 3; dx++) {\n\t\t\tconst ox = __tsover_mul(__tsover_div(f32(dx), 3), radius);\n\t\t\tconst oy = __tsover_mul(__tsover_div(f32(dy), 3), radius);\n\t\t\tconst cx01 = clamp(__tsover_add(posX, ox), .02, .98);\n\t\t\tconst cy01 = clamp(__tsover_add(posY, oy), .02, .98);\n\t\t\tconst tx = u32(clamp(__tsover_mul(cx01, srcW), f32(0), __tsover_sub(srcW, 1)));\n\t\t\tconst ty = u32(clamp(__tsover_mul(cy01, srcH), f32(0), __tsover_sub(srcH, 1)));\n\t\t\tconst s = score(textureLoad(trackLayout.$.src, vec2u(tx, ty), 0));\n\t\t\tconst gate = select(f32(0), f32(1), s \u003e minFeat);\n\t\t\tconst dBand = __tsover_sub(s, Lpref);\n\t\t\tconst aff = __tsover_mul(exp(__tsover_mul(__tsover_mul(dBand, dBand), -24)), gate);\n\t\t\tconst off = __tsover_div(sqrt(__tsover_add(__tsover_mul(ox, ox), __tsover_mul(oy, oy))), max(radius, .001));\n\t\t\tconst w = __tsover_mul(aff, __tsover_sub(1, __tsover_mul(.3, off)));\n\t\t\tsumW = __tsover_add(sumW, w);\n\t\t\tsumX = __tsover_add(sumX, __tsover_mul(cx01, w));\n\t\t\tsumY = __tsover_add(sumY, __tsover_mul(cy01, w));\n\t\t}\n\t\tconst locked = sumW \u003e .8;\n\t\tlet bestX = posX;\n\t\tlet bestY = posY;\n\t\tif (locked) {\n\t\t\tbestX = __tsover_div(sumX, sumW);\n\t\t\tbestY = __tsover_div(sumY, sumW);\n\t\t}\n\t\tmissStreak = select(__tsover_add(missStreak, 1), f32(0), locked);\n\t\tif (!locked) {\n\t\t\tconst g = f32(FEAT_GRID);\n\t\t\tlet bestW = f32(0);\n\t\t\tlet tgtX = posX;\n\t\t\tlet tgtY = posY;\n\t\t\tfor (let gy = 0; gy \u003c FEAT_GRID; gy++) for (let gx = 0; gx \u003c FEAT_GRID; gx++) {\n\t\t\t\tconst cs = textureLoad(trackLayout.$.featGrid, vec2u(u32(gx), u32(gy)), 0).x;\n\t\t\t\tconst cGate = select(f32(0), f32(1), cs \u003e minFeat);\n\t\t\t\tconst dB = __tsover_sub(cs, Lpref);\n\t\t\t\tconst aff = __tsover_mul(exp(__tsover_mul(__tsover_mul(dB, dB), -14)), cGate);\n\t\t\t\tconst cx = __tsover_div(__tsover_add(f32(gx), .5), g);\n\t\t\t\tconst cy = __tsover_div(__tsover_add(f32(gy), .5), g);\n\t\t\t\tconst ddx = __tsover_sub(cx, posX);\n\t\t\t\tconst ddy = __tsover_sub(cy, posY);\n\t\t\t\tconst pref = __tsover_add(.6, __tsover_mul(.8, trackHash(__tsover_add(__tsover_add(__tsover_mul(iF, 3.17), __tsover_mul(f32(gx), 13.71)), __tsover_mul(f32(gy), 29.37)))));\n\t\t\t\tconst wgt = __tsover_div(__tsover_mul(aff, pref), __tsover_add(1, __tsover_mul(5, __tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy)))));\n\t\t\t\tif (wgt \u003e bestW) {\n\t\t\t\t\tbestW = wgt;\n\t\t\t\t\ttgtX = cx;\n\t\t\t\t\ttgtY = cy;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (bestW \u003e .02) {\n\t\t\t\tbestX = clamp(__tsover_add(tgtX, __tsover_div(__tsover_sub(trackHash(__tsover_add(__tsover_mul(iF, 5.77), __tsover_mul(gen, 2.13))), .5), g)), .02, .98);\n\t\t\t\tbestY = clamp(__tsover_add(tgtY, __tsover_div(__tsover_sub(trackHash(__tsover_add(__tsover_mul(iF, 8.31), __tsover_mul(gen, 4.97))), .5), g)), .02, .98);\n\t\t\t} else {\n\t\t\t\tconst ang = __tsover_add(__tsover_mul(trackHash(__tsover_add(__tsover_mul(iF, 13.77), __tsover_mul(gen, 3.19))), TWO_PI), __tsover_mul(sin(__tsover_add(__tsover_mul(frame, .02), iF)), 1.4));\n\t\t\t\tbestX = clamp(__tsover_add(posX, __tsover_mul(cos(ang), .08)), .03, .97);\n\t\t\t\tbestY = clamp(__tsover_add(posY, __tsover_mul(sin(ang), .08)), .03, .97);\n\t\t\t}\n\t\t}\n\t\tconst maxStep = __tsover_mul(P.dt, __tsover_add(.15, __tsover_mul(1.4, P.agility)));\n\t\tconst dX = __tsover_sub(bestX, posX);\n\t\tconst dY = __tsover_sub(bestY, posY);\n\t\tconst dist = sqrt(__tsover_add(__tsover_mul(dX, dX), __tsover_mul(dY, dY)));\n\t\tconst stepK = min(f32(1), __tsover_div(maxStep, max(dist, 1e-5)));\n\t\tposX = __tsover_add(posX, __tsover_mul(dX, stepK));\n\t\tposY = __tsover_add(posY, __tsover_mul(dY, stepK));\n\t\tlet crowded = f32(0);\n\t\tconst iN = i32(ti);\n\t\tfor (let k = 0; k \u003c iN; k++) {\n\t\t\tconst kF = f32(k);\n\t\t\tconst other = textureLoad(trackLayout.$.prev, vec2u(u32(0), u32(k)), 0);\n\t\t\tconst odx = __tsover_sub(other.x, posX);\n\t\t\tconst ody = __tsover_sub(other.y, posY);\n\t\t\tconst near = select(f32(0), f32(1), sqrt(__tsover_add(__tsover_mul(odx, odx), __tsover_mul(ody, ody))) \u003c .022);\n\t\t\tcrowded = max(crowded, __tsover_mul(__tsover_mul(near, other.w), select(f32(0), f32(1), kF \u003c P.trackersF)));\n\t\t}\n\t\tcrowdStreak = select(f32(0), __tsover_add(crowdStreak, 1), crowded \u003e .5);\n\t\tif (crowdStreak \u003e 30) {\n\t\t\tconst hopAng = __tsover_mul(trackHash(__tsover_add(__tsover_add(__tsover_mul(iF, 9.13), __tsover_mul(gen, 5.77)), 2.3)), TWO_PI);\n\t\t\tconst hopDist = __tsover_add(.05, __tsover_mul(.08, trackHash(__tsover_add(__tsover_mul(iF, 4.71), __tsover_mul(gen, 8.11)))));\n\t\t\tposX = clamp(__tsover_add(posX, __tsover_mul(cos(hopAng), hopDist)), .03, .97);\n\t\t\tposY = clamp(__tsover_add(posY, __tsover_mul(sin(hopAng), hopDist)), .03, .97);\n\t\t\tgen = __tsover_add(gen, 1);\n\t\t\tgenStart = frame;\n\t\t\tmissStreak = f32(0);\n\t\t\tcrowdStreak = f32(0);\n\t\t}\n\t\tconst lifeFrames = __tsover_mul(__tsover_mul(P.lifespan, 60), __tsover_add(.7, __tsover_mul(.6, trackHash(__tsover_add(__tsover_mul(iF, 4.77), __tsover_mul(gen, 1.31))))));\n\t\tconst expired = __tsover_mul(select(f32(0), f32(1), __tsover_sub(frame, genStart) \u003e lifeFrames), select(f32(0), f32(1), P.lifespan \u003e .01));\n\t\tconst lost = select(f32(0), f32(1), missStreak \u003e 90);\n\t\tif (__tsover_add(expired, lost) \u003e .5) {\n\t\t\tposX = __tsover_add(.1, __tsover_mul(.8, trackHash(__tsover_add(__tsover_add(__tsover_mul(iF, 7.31), __tsover_mul(gen, 13.7)), __tsover_mul(frame, .013)))));\n\t\t\tposY = __tsover_add(.1, __tsover_mul(.8, trackHash(__tsover_add(__tsover_add(__tsover_mul(iF, 11.93), __tsover_mul(gen, 17.3)), __tsover_mul(frame, .019)))));\n\t\t\tgen = __tsover_add(gen, 1);\n\t\t\tgenStart = frame;\n\t\t\tmissStreak = f32(0);\n\t\t\tcrowdStreak = f32(0);\n\t\t}\n\t\tconst writeIdx = __tsover_mod(floor(__tsover_div(frame, f32(TRAIL_EVERY))), f32(TRAIL_LEN));\n\t\tconst shouldWrite = select(f32(0), f32(1), __tsover_mod(frame, f32(TRAIL_EVERY)) \u003c .5);\n\t\tlet bbMinX = posX;\n\t\tlet bbMinY = posY;\n\t\tlet bbMaxX = posX;\n\t\tlet bbMaxY = posY;\n\t\tfor (let j = 0; j \u003c TRAIL_LEN; j++) {\n\t\t\tconst jF = f32(j);\n\t\t\tlet e = textureLoad(trackLayout.$.prev, vec2u(u32(__tsover_add(2, j)), ti), 0);\n\t\t\tconst isSlot = select(f32(0), f32(1), abs(__tsover_sub(jF, writeIdx)) \u003c .5);\n\t\t\tconst doWrite = __tsover_mul(isSlot, shouldWrite);\n\t\t\te = mix(e, vec4f(posX, posY, frame, gen), doWrite);\n\t\t\ttextureStore(trackLayout.$.next, vec2u(u32(__tsover_add(2, j)), ti), e);\n\t\t\ttextureStore(trackLayout.$.present, vec2u(u32(__tsover_add(2, j)), ti), e);\n\t\t\tconst live = __tsover_mul(select(f32(0), f32(1), abs(__tsover_sub(e.w, gen)) \u003c .5), select(f32(0), f32(1), e.z \u003e .5));\n\t\t\tbbMinX = min(bbMinX, mix(posX, e.x, live));\n\t\t\tbbMinY = min(bbMinY, mix(posY, e.y, live));\n\t\t\tbbMaxX = max(bbMaxX, mix(posX, e.x, live));\n\t\t\tbbMaxY = max(bbMaxY, mix(posY, e.y, live));\n\t\t}\n\t\tconst bbOut = vec4f(bbMinX, bbMinY, bbMaxX, bbMaxY);\n\t\ttextureStore(trackLayout.$.next, vec2u(u32(AABB_COL), ti), bbOut);\n\t\ttextureStore(trackLayout.$.present, vec2u(u32(AABB_COL), ti), bbOut);\n\t\tconst headOut = vec4f(posX, posY, frame, __tsover_add(genStart, 1));\n\t\tconst metaOut = vec4f(missStreak, sumW, gen, crowdStreak);\n\t\ttextureStore(trackLayout.$.next, vec2u(u32(0), ti), headOut);\n\t\ttextureStore(trackLayout.$.present, vec2u(u32(0), ti), headOut);\n\t\ttextureStore(trackLayout.$.next, vec2u(u32(1), ti), metaOut);\n\t\ttextureStore(trackLayout.$.present, vec2u(u32(1), ti), metaOut);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ti\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"P\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"ti\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"head\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"meta\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"posX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"head\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"posY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"head\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"head\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"genStart\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"head\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"meta\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"gen\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"meta\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"crowdStreak\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"meta\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"head\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.15\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"7.31\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.15\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"11.93\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"4.7\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"genStart\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"frame\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"minFeat\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"threshold\"\n\t\t\t\t\t\t], [5, \"0.02\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"Lpref\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"variance\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"6.13\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.37\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2.9\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"minFeat\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureDimensions\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcW\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"srcH\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"srcDims\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radius\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.035\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.11\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"agility\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"sumW\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"sumX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"sumY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"dy\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"dx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"dx\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"dy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"cx01\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"ox\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.98\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"cy01\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"oy\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.98\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cx01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcW\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcW\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cy01\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcH\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"srcH\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"score\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"tx\", \"ty\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"gate\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\"minFeat\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dBand\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"Lpref\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"aff\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dBand\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dBand\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"24\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"gate\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"off\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ox\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ox\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"oy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"oy\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"radius\", [5, \"0.001\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"aff\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.3\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"off\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"sumW\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sumW\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"sumX\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sumX\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cx01\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"sumY\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sumY\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cy01\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"locked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sumW\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.8\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"bestX\",\n\t\t\t\t\t\"posX\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"bestY\",\n\t\t\t\t\t\"posY\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t\"locked\",\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"bestX\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sumX\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"sumW\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"bestY\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sumY\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"sumW\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"locked\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"!\",\n\t\t\t\t\t\t\"locked\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"FEAT_GRID\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"bestW\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"tgtX\",\n\t\t\t\t\t\t\t\"posX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"tgtY\",\n\t\t\t\t\t\t\t\"posY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"FEAT_GRID\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"gy\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"FEAT_GRID\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"gx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"cs\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"featGrid\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"cGate\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cs\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"minFeat\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"dB\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cs\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"Lpref\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"aff\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dB\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"14\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"cGate\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"posX\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"posY\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"pref\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.8\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3.17\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"gx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"13.71\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"gy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"29.37\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"wgt\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"aff\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"pref\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"5\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"wgt\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\"bestW\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"bestW\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"wgt\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tgtX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tgtY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"bestW\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"bestX\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tgtX\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"5.77\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.13\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.98\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"bestY\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tgtY\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8.31\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"4.97\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"g\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"0.98\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"13.77\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"3.19\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.02\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.4\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"bestX\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.08\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.03\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.97\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"bestY\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.08\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.03\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.97\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"maxStep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.15\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1.4\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\"agility\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bestX\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"posX\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"bestY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"posY\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dist\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"stepK\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"maxStep\",\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"dist\", [5, \"0.00001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"posX\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"stepK\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"posY\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"stepK\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"crowded\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"iN\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[\"ti\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"iN\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"kF\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"k\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"k\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"odx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"posX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ody\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"posY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"near\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"odx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"odx\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ody\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ody\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.022\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"crowded\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"crowded\", [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"near\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"other\",\n\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"kF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"trackersF\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"crowdStreak\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"crowdStreak\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"crowded\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"crowdStreak\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"30\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"hopAng\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"9.13\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"5.77\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"hopDist\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.08\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"4.71\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"8.11\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"hopAng\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"hopDist\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0.03\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.97\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"hopAng\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"hopDist\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0.03\"],\n\t\t\t\t\t\t\t\t\t[5, \"0.97\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"genStart\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"frame\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"crowdStreak\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lifeFrames\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\"lifespan\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"60\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"4.77\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.31\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"expired\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"genStart\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\"lifeFrames\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"P\",\n\t\t\t\t\t\t\t\t\t\t\"lifespan\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lost\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"90\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"expired\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"lost\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.1\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.8\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"7.31\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"13.7\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.013\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.1\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.8\"],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"trackHash\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"iF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"11.93\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"17.3\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.019\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"genStart\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"frame\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"crowdStreak\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"writeIdx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"TRAIL_EVERY\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"TRAIL_LEN\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"shouldWrite\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\t\"%\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"TRAIL_EVERY\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"bbMinX\",\n\t\t\t\t\t\"posX\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"bbMinY\",\n\t\t\t\t\t\"posY\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"bbMaxX\",\n\t\t\t\t\t\"posX\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"bbMaxY\",\n\t\t\t\t\t\"posY\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"j\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"j\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"TRAIL_LEN\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"j\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"jF\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"j\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"j\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"isSlot\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"jF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"writeIdx\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"doWrite\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"isSlot\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"shouldWrite\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t\t\t\t\t\"gen\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"doWrite\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"j\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"present\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"j\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"e\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"live\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gen\"\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"bbMinX\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[\"bbMinX\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"live\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"bbMinY\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[\"bbMinY\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"live\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"bbMaxX\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"bbMaxX\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"live\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"bbMaxY\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"bbMaxY\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"e\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"live\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"bbOut\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"bbMinX\",\n\t\t\t\t\t\t\t\"bbMinY\",\n\t\t\t\t\t\t\t\"bbMaxX\",\n\t\t\t\t\t\t\t\"bbMaxY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"AABB_COL\"]\n\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"bbOut\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"present\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"AABB_COL\"]\n\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"bbOut\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"headOut\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"posX\",\n\t\t\t\t\t\t\t\"posY\",\n\t\t\t\t\t\t\t\"frame\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"genStart\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"metaOut\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"missStreak\",\n\t\t\t\t\t\t\t\"sumW\",\n\t\t\t\t\t\t\t\"gen\",\n\t\t\t\t\t\t\t\"crowdStreak\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"headOut\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"present\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"headOut\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"next\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"metaOut\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"trackLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"present\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t], \"ti\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"metaOut\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"trackLayout\": () =\u003e trackLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"trackHash\": () =\u003e trackHash,\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"std.textureDimensions\": () =\u003e textureDimensions,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"score\": () =\u003e score,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"FEAT_GRID\": () =\u003e FEAT_GRID,\n\t\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.floor\": () =\u003e floor,\n\t\t\t\"TRAIL_EVERY\": () =\u003e TRAIL_EVERY,\n\t\t\t\"TRAIL_LEN\": () =\u003e TRAIL_LEN,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.mix\": () =\u003e mix,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"AABB_COL\": () =\u003e AABB_COL\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"trackerPursuit\");\n}\nfunction createTrackerPursuitSim(slots) {\n\treturn (params) =\u003e {\n\t\tconst { childNode, gpu, getCpuValue } = params;\n\t\tif (!childNode) return null;\n\t\tconst root = gpu?.root;\n\t\tif (!root) return null;\n\t\tconst scoreFn = featureScoreFn(slots.mode);\n\t\tconst featureKernel = buildFeatureGridKernel(scoreFn);\n\t\tconst trackKernel = buildPursuitKernel(slots.mode, scoreFn);\n\t\tconst paramsBuf = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(TrackParams), \"paramsBuf\");\n\t\tconst sim = createFeedbackTrailSim(params, {\n\t\t\tsize: [STATE_W, MAX_TRACKERS],\n\t\t\tformat: STATE_FORMAT,\n\t\t\ttextures: { grid: FEAT_GRID },\n\t\t\tbindGroups: ({ childTexture, display, textures }, read, write) =\u003e root.createBindGroup(trackLayout, {\n\t\t\t\tsrc: childTexture,\n\t\t\t\tfeatGrid: textures.grid,\n\t\t\t\tprev: read.state,\n\t\t\t\tnext: write.state,\n\t\t\t\tpresent: display,\n\t\t\t\tparams: paramsBuf.buffer\n\t\t\t}),\n\t\t\tstaticGroups: ({ childTexture, textures }) =\u003e root.createBindGroup(featureLayout, {\n\t\t\t\tsrc: childTexture,\n\t\t\t\tgrid: textures.grid,\n\t\t\t\tparams: paramsBuf.buffer\n\t\t\t})\n\t\t});\n\t\tif (!sim) return null;\n\t\tconst featurePipeline = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((gx, gy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tfeatureKernel(gx, gy);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"gx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"gy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t6,\n\t\t\t\t\t\"featureKernel\",\n\t\t\t\t\t[\"gx\", \"gy\"]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: { \"featureKernel\": () =\u003e featureKernel }\n\t\t}) \u0026\u0026 $.f)({}), { size: [FEAT_GRID, FEAT_GRID] });\n\t\tconst simPipeline = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ti) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\ttrackKernel(ti);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ti\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t6,\n\t\t\t\t\t\"trackKernel\",\n\t\t\t\t\t[\"ti\"]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: { \"trackKernel\": () =\u003e trackKernel }\n\t\t}) \u0026\u0026 $.f)({}), { size: [MAX_TRACKERS] });\n\t\treturn {\n\t\t\toutputs: {\n\t\t\t\tchildTexture: sim.childTexture,\n\t\t\t\ttrackState: sim.display\n\t\t\t},\n\t\t\tbindInputs: sim.bindInputs,\n\t\t\tgetComputeNodes: (frameParams) =\u003e sim.tick(frameParams, ({ groups, shared, dt }) =\u003e {\n\t\t\t\tparamsBuf.write({\n\t\t\t\t\tdt,\n\t\t\t\t\ttrackersF: getCpuValue(slots.trackers) ?? 4,\n\t\t\t\t\tagility: getCpuValue(slots.agility) ?? .5,\n\t\t\t\t\tthreshold: getCpuValue(slots.threshold) ?? .15,\n\t\t\t\t\tvariance: getCpuValue(slots.variance) ?? .5,\n\t\t\t\t\tlifespan: getCpuValue(slots.lifespan) ?? 6\n\t\t\t\t});\n\t\t\t\treturn [featurePipeline.with(shared), simPipeline.with(groups)];\n\t\t\t})\n\t\t};\n\t};\n}\nvar num = (v, f) =\u003e typeof v === \"number\" ? v : f;\nvar DETECTION_REFERENCE_HEIGHT = 1080;\nfunction detectionOverlay(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uniforms, ctx, childNode, convertToTexture, propValues } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst texKey = convertToTexture(childNode).key;\n\t\tconst modeMap = {\n\t\t\talpha: 0,\n\t\t\tbright: 1,\n\t\t\tdark: 2,\n\t\t\tred: 3,\n\t\t\tgreen: 4,\n\t\t\tblue: 5\n\t\t};\n\t\tconst layoutMap = {\n\t\t\tgrid: 0,\n\t\t\tquadtree: 1,\n\t\t\tmosaic: 2\n\t\t};\n\t\tconst labelMap = {\n\t\t\tnone: 0,\n\t\t\tdimensions: 1,\n\t\t\tpercentage: 2\n\t\t};\n\t\tconst posMap = {\n\t\t\t\"bottom-left\": 0,\n\t\t\t\"bottom-right\": 1,\n\t\t\t\"top-left\": 2,\n\t\t\t\"top-right\": 3\n\t\t};\n\t\tconst rawMode = propValues[slots.detectionMode.name];\n\t\tconst modeStr = [\n\t\t\t\"alpha\",\n\t\t\t\"bright\",\n\t\t\t\"dark\",\n\t\t\t\"red\",\n\t\t\t\"green\",\n\t\t\t\"blue\"\n\t\t][typeof rawMode === \"number\" ? rawMode : modeMap[rawMode] ?? 1];\n\t\tconst rawLayout = propValues[slots.layout.name];\n\t\tconst layoutStr = [\n\t\t\t\"grid\",\n\t\t\t\"quadtree\",\n\t\t\t\"mosaic\"\n\t\t][typeof rawLayout === \"number\" ? rawLayout : layoutMap[rawLayout] ?? 2];\n\t\tlet D = Math.round(num(propValues[slots.maxDepth.name], 2));\n\t\tif (!Number.isFinite(D)) D = 2;\n\t\tD = Math.max(0, Math.min(5, D));\n\t\tif (layoutStr === \"grid\") D = 0;\n\t\tconst rawBox = propValues[slots.boxStyle.name];\n\t\tconst cornerStyle = (typeof rawBox === \"string\" ? rawBox : \"corners\") === \"corners\";\n\t\tconst rawLabel = propValues[slots.labelMode.name];\n\t\tconst labelStr = [\n\t\t\t\"none\",\n\t\t\t\"dimensions\",\n\t\t\t\"percentage\"\n\t\t][typeof rawLabel === \"number\" ? rawLabel : labelMap[rawLabel] ?? 0];\n\t\tconst labelsOn = labelStr !== \"none\";\n\t\tconst rawPos = propValues[slots.labelPosition.name];\n\t\tconst labelPos = typeof rawPos === \"number\" ? rawPos : posMap[rawPos] ?? 1;\n\t\tconst atlasKey = labelsOn ? createGlyphStripAtlas(params, {\n\t\t\tlabel: \"DetectionOverlay:atlas\",\n\t\t\tfamilyProp: slots.fontFamily.name,\n\t\t\tweightProp: slots.fontWeight.name\n\t\t}).key : void 0;\n\t\treturn new Expr((ec) =\u003e {\n\t\t\tconst p = ec.freshLocal(\"ot\");\n\t\t\tconst s = [];\n\t\t\tconst f = {\n\t\t\t\tp,\n\t\t\t\tU: (name) =\u003e uniforms[slots[name].name]._emit(ec),\n\t\t\t\tL: (n) =\u003e formatFloat(n),\n\t\t\t\ts,\n\t\t\t\tsampleChild: (uvWgsl) =\u003e `textureSampleLevel(tex.$.${texKey}, samp.$.linearClamp, ${uvWgsl}, 0.0)`,\n\t\t\t\tUN: ec.external(unpremultiplyAlpha, \"unpremultiplyAlpha\"),\n\t\t\t\tmodeStr\n\t\t\t};\n\t\t\tconst { U, L: L$1 } = f;\n\t\t\ts.push(`let ${p}_res = ${ctx.logicalViewportSize._emit(ec)};`);\n\t\t\ts.push(`let ${p}_scaleFactor = ${p}_res.y / ${L$1(DETECTION_REFERENCE_HEIGHT)};`);\n\t\t\tconst uvE = ctx.uv._emit(ec);\n\t\t\ts.push(`let ${p}_fragPx = vec2f((${uvE}).x * ${p}_res.x, (${uvE}).y * ${p}_res.y);`);\n\t\t\ts.push(`let ${p}_aa = max(max(fwidth(${p}_fragPx.x), fwidth(${p}_fragPx.y)), ${L$1(1e-4)});`);\n\t\t\ts.push(`let ${p}_cellPx = max(${U(\"cellSize\")} * ${p}_scaleFactor, ${L$1(4)});`);\n\t\t\ts.push(`let ${p}_minSize = ${L$1(3)} * ${p}_scaleFactor;`);\n\t\t\ts.push(`let ${p}_lineHalf = max(${U(\"lineWidth\")} * ${p}_scaleFactor * ${L$1(.5)}, ${L$1(.5)});`);\n\t\t\ts.push(`let ${p}_cornerRadiusPx = ${U(\"cornerRadius\")} * ${p}_scaleFactor;`);\n\t\t\ts.push(`let ${p}_boxInset = ${p}_lineHalf + ${p}_scaleFactor * ${L$1(1.5)};`);\n\t\t\ts.push(`let ${p}_thr = ${U(\"threshold\")};`);\n\t\t\tpartitionWalkStmts(f, layoutStr, D);\n\t\t\tcontentBBoxStmts(f);\n\t\t\ts.push(`var ${p}_dst = ${f.sampleChild(`(${uvE})`)};`);\n\t\t\tdetectionBoxStmts(f, cornerStyle);\n\t\t\tif (labelsOn \u0026\u0026 atlasKey) glyphPillLabelStmts(f, {\n\t\t\t\tlabelStr,\n\t\t\t\tlabelPos,\n\t\t\t\tatlasKey\n\t\t\t});\n\t\t\tfor (const line of s) ec.statement(line);\n\t\t\treturn straightFromPremul(`${p}_dst`);\n\t\t});\n\t};\n}\nfunction motionTrackerHud(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uniforms, ctx, childNode, convertToTexture, computeOutputs } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst texKey = (computeOutputs?.childTexture ?? convertToTexture(childNode)).key;\n\t\tconst stateKit = computeOutputs?.trackState;\n\t\treturn new Expr((ec) =\u003e {\n\t\t\tconst p = ec.freshLocal(\"kft\");\n\t\t\tconst s = [];\n\t\t\tconst f = {\n\t\t\t\tp,\n\t\t\t\tU: (name) =\u003e uniforms[slots[name].name]._emit(ec),\n\t\t\t\tL: (n) =\u003e formatFloat(n),\n\t\t\t\ts\n\t\t\t};\n\t\t\tconst { U, L: L$1 } = f;\n\t\t\tconst uvE = ctx.uv._emit(ec);\n\t\t\ts.push(`let ${p}_res = ${ctx.logicalViewportSize._emit(ec)};`);\n\t\t\ts.push(`let ${p}_sf = ${p}_res.y / ${L$1(DETECTION_REFERENCE_HEIGHT)};`);\n\t\t\ts.push(`let ${p}_px = vec2f((${uvE}).x * ${p}_res.x, (${uvE}).y * ${p}_res.y);`);\n\t\t\ts.push(`let ${p}_aa = max(max(fwidth(${p}_px.x), fwidth(${p}_px.y)), ${L$1(1e-4)});`);\n\t\t\ts.push(`let ${p}_lw = max(${U(\"lineWidth\")} * ${p}_sf, ${L$1(.5)});`);\n\t\t\ts.push(`let ${p}_ms = max(${U(\"markerSize\")} * ${p}_sf, ${L$1(4)});`);\n\t\t\ts.push(`var ${p}_dst = textureSampleLevel(tex.$.${texKey}, samp.$.linearClamp, (${uvE}), 0.0);`);\n\t\t\tif (stateKit) {\n\t\t\t\tconst stateKey = stateKit.key;\n\t\t\t\tconst load = (col) =\u003e `textureLoad(tex.$.${stateKey}, vec2u(${col}, ti), 0)`;\n\t\t\t\ts.push(`let ${p}_n = u32(clamp(${U(\"trackers\")}, ${L$1(1)}, ${L$1(64)}));`);\n\t\t\t\ts.push(`for (var ti = 0u; ti \u003c ${p}_n; ti = ti + 1u) {`);\n\t\t\t\ts.push(`let head = ${load(\"0u\")};`);\n\t\t\t\ts.push(`if (head.w \u003c 0.5) { continue; }`);\n\t\t\t\ts.push(`let bb = ${load(`14u`)};`);\n\t\t\t\ts.push(`let pad = ${p}_ms + ${p}_lw * ${L$1(4)} + ${p}_aa * ${L$1(2)};`);\n\t\t\t\ts.push(`let bbMin = vec2f(bb.x * ${p}_res.x, bb.y * ${p}_res.y) - vec2f(pad);`);\n\t\t\t\ts.push(`let bbMax = vec2f(bb.z * ${p}_res.x, bb.w * ${p}_res.y) + vec2f(pad);`);\n\t\t\t\ts.push(`if (all(${p}_px \u003e= bbMin) \u0026\u0026 all(${p}_px \u003c= bbMax)) {`);\n\t\t\t\ts.push(`let mta = ${load(\"1u\")};`);\n\t\t\t\ts.push(`let tp = vec2f(head.x * ${p}_res.x, head.y * ${p}_res.y);`);\n\t\t\t\ts.push(`let searching = select(${L$1(1)}, ${L$1(.45)}, mta.x \u003e ${L$1(4)});`);\n\t\t\t\tringTrailStmts(f, {\n\t\t\t\t\tlen: 12,\n\t\t\t\t\tevery: 8,\n\t\t\t\t\tload,\n\t\t\t\t\tstages: [diamondStamp, pathSegmentStamp(8)]\n\t\t\t\t});\n\t\t\t\tbracketGizmo(f);\n\t\t\t\ts.push(`}`);\n\t\t\t\ts.push(`}`);\n\t\t\t}\n\t\t\tfor (const line of s) ec.statement(line);\n\t\t\treturn straightFromPremul(`${p}_dst`);\n\t\t});\n\t};\n}\nexport { motionTrackerHud as n, createTrackerPursuitSim as r, detectionOverlay as t };\n","function crosses(value) {\n\treturn {\n\t\tkind: \"crosses\",\n\t\tvalue\n\t};\n}\nfunction recompileWhen(predicate) {\n\treturn {\n\t\tkind: \"custom\",\n\t\tpredicate\n\t};\n}\nfunction isZero(prop) {\n\treturn {\n\t\tkind: \"isZero\",\n\t\tprop\n\t};\n}\nfunction isValue(prop, value) {\n\treturn {\n\t\tkind: \"isValue\",\n\t\tprop,\n\t\tvalue\n\t};\n}\nfunction allOf(...rules) {\n\treturn {\n\t\tkind: \"allOf\",\n\t\trules\n\t};\n}\nexport { recompileWhen as a, isZero as i, crosses as n, isValue as r, allOf as t };\n","import { Ot as unpremultiplyAlpha, at as ZERO, c as p, ct as call, dt as expr, gt as formatFloat$1, ht as Expr, t as defineStd, ti as __export } from \"./lower-Bd2jez_2.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nimport { n as crosses } from \"./slots-BqIef2iV.js\";\nvar instanceParts_exports = /* @__PURE__ */ __export({\n\taccumulateInstances: () =\u003e accumulateInstances,\n\tformatFloat: () =\u003e formatFloat$1,\n\tgridPlacement: () =\u003e gridPlacement,\n\tinstanceHueShift: () =\u003e instanceHueShift,\n\tinstanceVariation: () =\u003e instanceVariation,\n\tlinePlacement: () =\u003e linePlacement,\n\tplacementField: () =\u003e placementField,\n\tradialPlacement: () =\u003e radialPlacement,\n\tsourceRect: () =\u003e sourceRect\n});\nvar PI = Math.PI;\nfunction sourceRect(f, src, crop) {\n\tconst { p: p$1, L } = f;\n\treturn [\n\t\t`let ${p$1}_cropL = ${crop.left};`,\n\t\t`let ${p$1}_cropR = ${crop.right};`,\n\t\t`let ${p$1}_cropT = ${crop.top};`,\n\t\t`let ${p$1}_cropB = ${crop.bottom};`,\n\t\t`let ${p$1}_srcCx = (${src.cx}) + (${p$1}_cropL - ${p$1}_cropR) * (${src.hw});`,\n\t\t`let ${p$1}_srcCy = (${src.cy}) + (${p$1}_cropT - ${p$1}_cropB) * (${src.hh});`,\n\t\t`let ${p$1}_srcHw = max((${src.hw}) * (1.0 - ${p$1}_cropL - ${p$1}_cropR), ${L(1e-6)});`,\n\t\t`let ${p$1}_srcHh = max((${src.hh}) * (1.0 - ${p$1}_cropT - ${p$1}_cropB), ${L(1e-6)});`,\n\t\t`let ${p$1}_srcHwSq = ${p$1}_srcHw * ${p$1}_aspect;`,\n\t\t`let ${p$1}_srcHhSq = ${p$1}_srcHh;`\n\t];\n}\nfunction placementField(f, own) {\n\tconst { p: p$1, L } = f;\n\treturn [\n\t\t`let ${p$1}_fieldCenterSq = vec2f((${own.cx}) * ${p$1}_aspect, ${own.cy});`,\n\t\t`let ${p$1}_fieldHwSq = max((${own.hw}) * ${p$1}_aspect, ${L(1e-6)});`,\n\t\t`let ${p$1}_fieldHh = max(${own.hh}, ${L(1e-6)});`\n\t];\n}\nfunction gridPlacement(slots, flipMode) {\n\treturn {\n\t\trequested: () =\u003e `(${slots.columns} * ${slots.rows})`,\n\t\tbody: (f) =\u003e {\n\t\t\tconst { p: p$1, L } = f;\n\t\t\tconst out = [\n\t\t\t\t`let ${p$1}_cols = ${slots.columns};`,\n\t\t\t\t`let ${p$1}_rows = ${slots.rows};`,\n\t\t\t\t`let ${p$1}_col = ${p$1}_j - ${p$1}_cols * floor(${p$1}_j / ${p$1}_cols);`,\n\t\t\t\t`let ${p$1}_row = floor(${p$1}_j / ${p$1}_cols);`,\n\t\t\t\t`let ${p$1}_gapXSq = ${slots.gapX} * ${p$1}_aspect;`,\n\t\t\t\t`let ${p$1}_gapY = ${slots.gapY};`,\n\t\t\t\t`let ${p$1}_fieldW = ${p$1}_fieldHwSq * 2.0;`,\n\t\t\t\t`let ${p$1}_fieldH = ${p$1}_fieldHh * 2.0;`,\n\t\t\t\t`let ${p$1}_pitchX = (${p$1}_fieldW - ${p$1}_gapXSq * (${p$1}_cols - 1.0)) / ${p$1}_cols;`,\n\t\t\t\t`let ${p$1}_pitchY = (${p$1}_fieldH - ${p$1}_gapY * (${p$1}_rows - 1.0)) / ${p$1}_rows;`,\n\t\t\t\t`let ${p$1}_periodX = ${p$1}_pitchX + ${p$1}_gapXSq;`,\n\t\t\t\t`let ${p$1}_periodY = ${p$1}_pitchY + ${p$1}_gapY;`,\n\t\t\t\t`${p$1}_cellFitInv = max(${p$1}_srcHwSq * 2.0 / max(${p$1}_pitchX, ${L(1e-5)}), ${p$1}_srcHhSq * 2.0 / max(${p$1}_pitchY, ${L(1e-5)}));`,\n\t\t\t\t`let ${p$1}_rowMod2 = ${p$1}_row - 2.0 * floor(${p$1}_row / 2.0);`,\n\t\t\t\t`let ${p$1}_staggerOff = ${p$1}_rowMod2 * ${slots.stagger} * ${p$1}_periodX;`,\n\t\t\t\t`let ${p$1}_cxArg = ${p$1}_col * ${p$1}_periodX + ${p$1}_staggerOff + ${p$1}_phase * ${p$1}_periodX;`,\n\t\t\t\t`let ${p$1}_cxMod = ${p$1}_periodX * ${p$1}_cols;`,\n\t\t\t\t`let ${p$1}_cellX = ${p$1}_cxArg - ${p$1}_cxMod * floor(${p$1}_cxArg / ${p$1}_cxMod);`,\n\t\t\t\t`let ${p$1}_cyArg = ${p$1}_row * ${p$1}_periodY + ${p$1}_phase * ${p$1}_periodY;`,\n\t\t\t\t`let ${p$1}_cyMod = ${p$1}_periodY * ${p$1}_rows;`,\n\t\t\t\t`let ${p$1}_cellY = ${p$1}_cyArg - ${p$1}_cyMod * floor(${p$1}_cyArg / ${p$1}_cyMod);`,\n\t\t\t\t`${p$1}_pos = vec2f(${p$1}_fieldCenterSq.x - ${p$1}_fieldW * 0.5 + ${p$1}_pitchX * 0.5 + ${p$1}_cellX, ${p$1}_fieldCenterSq.y - ${p$1}_fieldH * 0.5 + ${p$1}_pitchY * 0.5 + ${p$1}_cellY);`\n\t\t\t];\n\t\t\tif (flipMode === 1 || flipMode === 3) out.push(`${p$1}_flipX = 1.0 - (${p$1}_col - 2.0 * floor(${p$1}_col / 2.0)) * 2.0;`);\n\t\t\tif (flipMode === 2 || flipMode === 3) out.push(`${p$1}_flipY = 1.0 - (${p$1}_row - 2.0 * floor(${p$1}_row / 2.0)) * 2.0;`);\n\t\t\treturn out;\n\t\t}\n\t};\n}\nfunction radialPlacement(anchorSq, slots) {\n\treturn {\n\t\trequested: () =\u003e slots.count,\n\t\tbody: (f) =\u003e {\n\t\t\tconst { p: p$1, L } = f;\n\t\t\treturn [\n\t\t\t\t`let ${p$1}_cSq = ${anchorSq};`,\n\t\t\t\t`let ${p$1}_sweep = ${slots.sweep} * ${L(PI / 180)};`,\n\t\t\t\t`let ${p$1}_start = ${slots.startAngle} * ${L(PI / 180)};`,\n\t\t\t\t`let ${p$1}_ang = ${p$1}_start + ${p$1}_sweep * (${p$1}_j / ${p$1}_totalN) + ${p$1}_phase * ${p$1}_sweep;`,\n\t\t\t\t`${p$1}_pos = ${p$1}_cSq + vec2f(cos(${p$1}_ang), sin(${p$1}_ang)) * ${slots.radius};`,\n\t\t\t\t`${p$1}_layoutRot = select(0.0, ${p$1}_ang + ${L(PI / 2)}, ${slots.faceCenter} \u003e 0.0);`\n\t\t\t];\n\t\t}\n\t};\n}\nfunction linePlacement(anchorSq, slots) {\n\treturn {\n\t\trequested: () =\u003e slots.count,\n\t\tbody: (f) =\u003e {\n\t\t\tconst { p: p$1, L } = f;\n\t\t\treturn [\n\t\t\t\t`let ${p$1}_cSq = ${anchorSq};`,\n\t\t\t\t`let ${p$1}_dirRad = ${slots.direction} * ${L(PI / 180)};`,\n\t\t\t\t`let ${p$1}_dir = vec2f(cos(${p$1}_dirRad), sin(${p$1}_dirRad));`,\n\t\t\t\t`let ${p$1}_tArg = ${p$1}_j + ${p$1}_phase;`,\n\t\t\t\t`let ${p$1}_t = ${p$1}_tArg - ${p$1}_totalN * floor(${p$1}_tArg / ${p$1}_totalN);`,\n\t\t\t\t`${p$1}_pos = ${p$1}_cSq + ${p$1}_dir * ${slots.spacing} * ${p$1}_t;`\n\t\t\t];\n\t\t}\n\t};\n}\nfunction instanceVariation(f, slots) {\n\tconst { p: p$1, L } = f;\n\tconst hash = (off) =\u003e `fract(sin((${p$1}_hashBase + ${L(off)}) * 78.233) * 43758.5453)`;\n\treturn [\n\t\t`let ${p$1}_hashBase = ${p$1}_j + ${p$1}_seed * 7.0;`,\n\t\t`let ${p$1}_h1 = ${hash(.123)};`,\n\t\t`let ${p$1}_h2 = ${hash(5.456)};`,\n\t\t`let ${p$1}_h3 = ${hash(9.789)};`,\n\t\t`let ${p$1}_h4 = ${hash(13.21)};`,\n\t\t`let ${p$1}_h5 = ${hash(17.65)};`,\n\t\t`let ${p$1}_scale = max(pow(${slots.scale}, ${p$1}_j) * (1.0 + ${slots.jitterScale} * (${p$1}_h3 - 0.5)), ${L(1e-4)});`,\n\t\t`let ${p$1}_rot = ${p$1}_layoutRot + ${slots.rotation} * ${p$1}_j + ${slots.jitterRotation} * (${p$1}_h4 - 0.5) * ${L(PI * 2)};`,\n\t\t`let ${p$1}_instOpacity = pow(${slots.opacity}, ${p$1}_j) * (1.0 - ${slots.jitterOpacity} * ${p$1}_h5);`,\n\t\t`${p$1}_pos = ${p$1}_pos + vec2f((${p$1}_h1 - 0.5) * ${p$1}_fieldHwSq, (${p$1}_h2 - 0.5) * ${p$1}_fieldHh) * ${slots.jitterPosition};`\n\t];\n}\nfunction instanceHueShift(f, hueShift) {\n\tconst { p: p$1, L } = f;\n\treturn [\n\t\t`let ${p$1}_hueAngle = ${hueShift} * ${p$1}_j;`,\n\t\t`let ${p$1}_cosH = cos(${p$1}_hueAngle);`,\n\t\t`let ${p$1}_sinH = sin(${p$1}_hueAngle);`,\n\t\t`let ${p$1}_kOMC = (1.0 - ${p$1}_cosH) * ${L(1 / 3)};`,\n\t\t`let ${p$1}_sOS3 = ${p$1}_sinH / 1.7320508075688772;`,\n\t\t`let ${p$1}_mA = ${p$1}_cosH + ${p$1}_kOMC;`,\n\t\t`let ${p$1}_mB = ${p$1}_kOMC - ${p$1}_sOS3;`,\n\t\t`let ${p$1}_mC = ${p$1}_kOMC + ${p$1}_sOS3;`,\n\t\t`${p$1}_rgb = vec3f(${p$1}_src.r * ${p$1}_mA + ${p$1}_src.g * ${p$1}_mB + ${p$1}_src.b * ${p$1}_mC, ${p$1}_src.r * ${p$1}_mC + ${p$1}_src.g * ${p$1}_mA + ${p$1}_src.b * ${p$1}_mB, ${p$1}_src.r * ${p$1}_mB + ${p$1}_src.g * ${p$1}_mC + ${p$1}_src.b * ${p$1}_mA);`\n\t];\n}\nfunction accumulateInstances(f, slots) {\n\tconst { p: p$1 } = f;\n\tconst out = [];\n\tout.push(`let ${p$1}_totalN = min(max(${slots.placement.requested()}, 1.0), 64.0);`);\n\tout.push(`var ${p$1}_accum = vec4f(0.0, 0.0, 0.0, 0.0);`);\n\tout.push(`var ${p$1}_cellFitInv = 1.0;`);\n\tconst body = [];\n\tbody.push(`let ${p$1}_fi = f32(${p$1}_i);`);\n\tbody.push(slots.zBack ? `let ${p$1}_j = ${p$1}_totalN - 1.0 - ${p$1}_fi;` : `let ${p$1}_j = ${p$1}_fi;`);\n\tbody.push(`var ${p$1}_pos = vec2f(0.0, 0.0);`);\n\tbody.push(`var ${p$1}_layoutRot = 0.0;`);\n\tbody.push(`var ${p$1}_flipX = 1.0;`);\n\tbody.push(`var ${p$1}_flipY = 1.0;`);\n\tbody.push(...slots.placement.body(f));\n\tbody.push(...slots.variation);\n\tbody.push(`let ${p$1}_negRot = -${p$1}_rot;`);\n\tbody.push(`let ${p$1}_cosA = cos(${p$1}_negRot);`);\n\tbody.push(`let ${p$1}_sinA = sin(${p$1}_negRot);`);\n\tbody.push(`let ${p$1}_d0 = ${p$1}_pix - ${p$1}_pos;`);\n\tbody.push(`let ${p$1}_dr = vec2f(${p$1}_d0.x * ${p$1}_cosA - ${p$1}_d0.y * ${p$1}_sinA, ${p$1}_d0.x * ${p$1}_sinA + ${p$1}_d0.y * ${p$1}_cosA);`);\n\tbody.push(`let ${p$1}_dl = ${p$1}_dr / ${p$1}_scale;`);\n\tbody.push(`let ${p$1}_localU = ${p$1}_dl.x * ${p$1}_flipX * ${p$1}_cellFitInv / (${p$1}_srcHwSq * 2.0) + 0.5;`);\n\tbody.push(`let ${p$1}_localV = ${p$1}_dl.y * ${p$1}_flipY * ${p$1}_cellFitInv / (${p$1}_srcHhSq * 2.0) + 0.5;`);\n\tconst sample = [];\n\tsample.push(`let ${p$1}_sampleUV = vec2f(${p$1}_srcCx - ${p$1}_srcHw + ${p$1}_localU * ${p$1}_srcHw * 2.0, ${p$1}_srcCy - ${p$1}_srcHh + ${p$1}_localV * ${p$1}_srcHh * 2.0);`);\n\tsample.push(`let ${p$1}_src = textureSampleLevel(tex.$.${slots.texKey}, samp.$.linearClamp, ${p$1}_sampleUV, 0.0);`);\n\tsample.push(`var ${p$1}_rgb = ${p$1}_src.rgb;`);\n\tsample.push(...slots.hue);\n\tsample.push(`let ${p$1}_a = ${p$1}_src.a * ${p$1}_instOpacity;`);\n\tsample.push(`let ${p$1}_premul = ${p$1}_rgb * ${p$1}_a;`);\n\tsample.push(`${p$1}_accum = vec4f(${p$1}_premul + ${p$1}_accum.rgb * (1.0 - ${p$1}_a), ${p$1}_a + ${p$1}_accum.a * (1.0 - ${p$1}_a));`);\n\tbody.push(`if (${p$1}_localU \u003e= 0.0 \u0026\u0026 ${p$1}_localU \u003c= 1.0 \u0026\u0026 ${p$1}_localV \u003e= 0.0 \u0026\u0026 ${p$1}_localV \u003c= 1.0) {`);\n\tfor (const s of sample) body.push(`  ${s}`);\n\tbody.push(`}`);\n\tout.push(`for (var ${p$1}_i = 0u; ${p$1}_i \u003c u32(${p$1}_totalN); ${p$1}_i++) {`);\n\tfor (const b of body) out.push(`  ${b}`);\n\tout.push(`}`);\n\treturn out;\n}\nvar { formatFloat } = instanceParts_exports;\nconst grid = (slots) =\u003e ({\n\tkind: \"grid\",\n\tslots\n});\nconst radial = (slots) =\u003e ({\n\tkind: \"radial\",\n\tslots\n});\nconst line = (slots) =\u003e ({\n\tkind: \"line\",\n\tslots\n});\nconst byMode = (mode, members) =\u003e ({\n\tmode,\n\tmembers\n});\nvar MODE_MAP = {\n\tgrid: 0,\n\tradial: 1,\n\tlinear: 2\n};\nvar FLIP_MAP = {\n\t\"none\": 0,\n\t\"alternate-flip-x\": 1,\n\t\"alternate-flip-y\": 2,\n\t\"both\": 3\n};\nfunction repeatInstances(recipe) {\n\treturn (params) =\u003e {\n\t\tconst { uniforms, childNode, ctx, propValues, childBoundsParams, ownBoundsParams, convertToTexture } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst texKey = convertToTexture(childNode).key;\n\t\tconst structural = (ref, map) =\u003e {\n\t\t\tconst v = propValues[ref.name];\n\t\t\treturn typeof v === \"number\" ? v : map[v] ?? 0;\n\t\t};\n\t\tconst spec = \"members\" in recipe.placement ? [\n\t\t\trecipe.placement.members.grid,\n\t\t\trecipe.placement.members.radial,\n\t\t\trecipe.placement.members.linear\n\t\t][structural(recipe.placement.mode, MODE_MAP)] ?? recipe.placement.members.grid : recipe.placement;\n\t\tconst zBack = recipe.order ? propValues[recipe.order.name] === \"backward\" || propValues[recipe.order.name] === 1 : false;\n\t\tconst hueActive = recipe.hueShift ? (propValues[recipe.hueShift.name] ?? 0) !== 0 : false;\n\t\treturn new Expr((ec) =\u003e {\n\t\t\tconst f = {\n\t\t\t\tp: ec.freshLocal(\"rep\"),\n\t\t\t\tL: formatFloat\n\t\t\t};\n\t\t\tconst { p: p$1, L } = f;\n\t\t\tconst R = (ref) =\u003e {\n\t\t\t\tconst accessor = uniforms[ref.name];\n\t\t\t\tif (!accessor) throw new Error(`std: repeatInstances binds unknown prop '${ref.name}'`);\n\t\t\t\treturn accessor._emit(ec);\n\t\t\t};\n\t\t\tconst stmts = [];\n\t\t\tstmts.push(`let ${p$1}_uv = ${ctx.uv._emit(ec)};`);\n\t\t\tstmts.push(`let ${p$1}_aspect = ${ctx.aspect._emit(ec)};`);\n\t\t\tstmts.push(`let ${p$1}_pix = vec2f(${p$1}_uv.x * ${p$1}_aspect, ${p$1}_uv.y);`);\n\t\t\tconst src = {\n\t\t\t\tcx: childBoundsParams ? childBoundsParams.centerX._emit(ec) : L(.5),\n\t\t\t\tcy: childBoundsParams ? childBoundsParams.centerY._emit(ec) : L(.5),\n\t\t\t\thw: childBoundsParams ? childBoundsParams.halfWidth._emit(ec) : L(.5),\n\t\t\t\thh: childBoundsParams ? childBoundsParams.halfHeight._emit(ec) : L(.5)\n\t\t\t};\n\t\t\tstmts.push(...sourceRect(f, src, {\n\t\t\t\tleft: R(recipe.source.crop.left),\n\t\t\t\tright: R(recipe.source.crop.right),\n\t\t\t\ttop: R(recipe.source.crop.top),\n\t\t\t\tbottom: R(recipe.source.crop.bottom)\n\t\t\t}));\n\t\t\tstmts.push(...placementField(f, {\n\t\t\t\tcx: ownBoundsParams ? ownBoundsParams.centerX._emit(ec) : L(.5),\n\t\t\t\tcy: ownBoundsParams ? ownBoundsParams.centerY._emit(ec) : L(.5),\n\t\t\t\thw: ownBoundsParams ? ownBoundsParams.halfWidth._emit(ec) : L(.5),\n\t\t\t\thh: ownBoundsParams ? ownBoundsParams.halfHeight._emit(ec) : L(.5)\n\t\t\t}));\n\t\t\tstmts.push(`let ${p$1}_phase = ${R(recipe.variation.phase)};`);\n\t\t\tstmts.push(`let ${p$1}_seed = ${R(recipe.variation.seed)};`);\n\t\t\tconst anchorSq = childBoundsParams ? `vec2f((${childBoundsParams.centerX._emit(ec)}) * ${p$1}_aspect, ${childBoundsParams.centerY._emit(ec)})` : `${p$1}_fieldCenterSq`;\n\t\t\tconst placement = spec.kind === \"grid\" ? gridPlacement({\n\t\t\t\tcolumns: R(spec.slots.columns),\n\t\t\t\trows: R(spec.slots.rows),\n\t\t\t\tgapX: R(spec.slots.gapX),\n\t\t\t\tgapY: R(spec.slots.gapY),\n\t\t\t\tstagger: R(spec.slots.stagger)\n\t\t\t}, structural(spec.slots.flip, FLIP_MAP)) : spec.kind === \"radial\" ? radialPlacement(anchorSq, {\n\t\t\t\tcount: R(spec.slots.count),\n\t\t\t\tsweep: R(spec.slots.sweep),\n\t\t\t\tstartAngle: R(spec.slots.startAngle),\n\t\t\t\tradius: R(spec.slots.radius),\n\t\t\t\tfaceCenter: R(spec.slots.faceCenter)\n\t\t\t}) : linePlacement(anchorSq, {\n\t\t\t\tcount: R(spec.slots.count),\n\t\t\t\tdirection: R(spec.slots.direction),\n\t\t\t\tspacing: R(spec.slots.spacing)\n\t\t\t});\n\t\t\tstmts.push(...accumulateInstances(f, {\n\t\t\t\tplacement,\n\t\t\t\tvariation: instanceVariation(f, {\n\t\t\t\t\tscale: R(recipe.variation.scale),\n\t\t\t\t\trotation: R(recipe.variation.rotation),\n\t\t\t\t\topacity: R(recipe.variation.opacity),\n\t\t\t\t\tjitterPosition: R(recipe.variation.jitter.position),\n\t\t\t\t\tjitterRotation: R(recipe.variation.jitter.rotation),\n\t\t\t\t\tjitterScale: R(recipe.variation.jitter.scale),\n\t\t\t\t\tjitterOpacity: R(recipe.variation.jitter.opacity)\n\t\t\t\t}),\n\t\t\t\thue: hueActive \u0026\u0026 recipe.hueShift ? instanceHueShift(f, R(recipe.hueShift)) : [],\n\t\t\t\tzBack,\n\t\t\t\ttexKey\n\t\t\t}));\n\t\t\tfor (const s of stmts) ec.statement(s);\n\t\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [expr(`${p$1}_accum`)])._emit(ec);\n\t\t});\n\t};\n}\nconst componentDefinition = defineStd({\n\tname: \"Repeater\",\n\trole: \"structural\",\n\tspecies: \"custom\",\n\tcategory: \"Distortions\",\n\tdescription: \"Repeat the child content in grid, radial or linear layouts with per-instance variation\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\twantsBoundsParams: true,\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tmode: {\n\t\t\tdefault: \"grid\",\n\t\t\ttransform: (value) =\u003e ({\n\t\t\t\tgrid: 0,\n\t\t\t\tradial: 1,\n\t\t\t\tlinear: 2\n\t\t\t})[value] ?? 0,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Layout used to place the repeated instances\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Grid\",\n\t\t\t\t\t\tvalue: \"grid\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Radial\",\n\t\t\t\t\t\tvalue: \"radial\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Linear\",\n\t\t\t\t\t\tvalue: \"linear\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Mode\",\n\t\t\t\tgroup: \"Layout\"\n\t\t\t}\n\t\t},\n\t\tcropLeft: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Crop inset from the left edge of the source element (fraction of its width)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .49,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Crop Left\",\n\t\t\t\tgroup: \"Source\"\n\t\t\t}\n\t\t},\n\t\tcropRight: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Crop inset from the right edge of the source element (fraction of its width)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .49,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Crop Right\",\n\t\t\t\tgroup: \"Source\"\n\t\t\t}\n\t\t},\n\t\tcropTop: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Crop inset from the top edge of the source element (fraction of its height)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .49,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Crop Top\",\n\t\t\t\tgroup: \"Source\"\n\t\t\t}\n\t\t},\n\t\tcropBottom: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Crop inset from the bottom edge of the source element (fraction of its height)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .49,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Crop Bottom\",\n\t\t\t\tgroup: \"Source\"\n\t\t\t}\n\t\t},\n\t\tcolumns: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Number of grid columns\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 12,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Columns\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"grid\" }\n\t\t\t}\n\t\t},\n\t\trows: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Number of grid rows\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 12,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rows\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"grid\" }\n\t\t\t}\n\t\t},\n\t\tgapX: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Horizontal gap between grid cells\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Gap X\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"grid\" },\n\t\t\t\tdimensional: \"canvas-width\"\n\t\t\t}\n\t\t},\n\t\tgapY: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Vertical gap between grid cells\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Gap Y\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"grid\" },\n\t\t\t\tdimensional: \"canvas-height\"\n\t\t\t}\n\t\t},\n\t\tstagger: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Horizontal offset applied to every other row (brick layout)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Stagger\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"grid\" }\n\t\t\t}\n\t\t},\n\t\tflip: {\n\t\t\tdefault: \"none\",\n\t\t\ttransform: (value) =\u003e ({\n\t\t\t\t\"none\": 0,\n\t\t\t\t\"alternate-flip-x\": 1,\n\t\t\t\t\"alternate-flip-y\": 2,\n\t\t\t\t\"both\": 3\n\t\t\t})[value] ?? 0,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Mirror alternating columns/rows for seamless tiling patterns\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"None\",\n\t\t\t\t\t\tvalue: \"none\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Alternate Flip X\",\n\t\t\t\t\t\tvalue: \"alternate-flip-x\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Alternate Flip Y\",\n\t\t\t\t\t\tvalue: \"alternate-flip-y\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Both\",\n\t\t\t\t\t\tvalue: \"both\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Flip\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"grid\" }\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of repeated instances\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 64,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: [\"radial\", \"linear\"] }\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Orbit radius of the radial layout\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"radial\" },\n\t\t\t\tdimensional: \"canvas-height\"\n\t\t\t}\n\t\t},\n\t\tstartAngle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Angle of the first instance on the orbit\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Start Angle\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"radial\" }\n\t\t\t}\n\t\t},\n\t\tsweep: {\n\t\t\tdefault: 360,\n\t\t\tdescription: \"Angular span the instances are distributed across\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Sweep\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"radial\" }\n\t\t\t}\n\t\t},\n\t\tfaceCenter: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Rotate each instance to face the orbit center\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Face Center\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"radial\" }\n\t\t\t}\n\t\t},\n\t\tdirection: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Direction of the linear layout in degrees (0 = rightward)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Direction\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"linear\" }\n\t\t\t}\n\t\t},\n\t\tspacing: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Distance between consecutive instances\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Spacing\",\n\t\t\t\tgroup: \"Layout\",\n\t\t\t\tcondition: { mode: \"linear\" },\n\t\t\t\tdimensional: \"canvas-height\"\n\t\t\t}\n\t\t},\n\t\tinstanceScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Progressive scale multiplier applied per instance (compounds with each copy)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Instances\"\n\t\t\t}\n\t\t},\n\t\tinstanceRotation: {\n\t\t\tdefault: 0,\n\t\t\ttransform: (value) =\u003e value * Math.PI / 180,\n\t\t\tdescription: \"Additional rotation in degrees applied per instance (accumulates with each copy)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Instances\"\n\t\t\t}\n\t\t},\n\t\tinstanceOpacity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Progressive opacity falloff applied per instance (compounds with each copy)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Opacity\",\n\t\t\t\tgroup: \"Instances\"\n\t\t\t}\n\t\t},\n\t\thueShift: {\n\t\t\tdefault: 0,\n\t\t\ttransform: (value) =\u003e value * Math.PI / 180,\n\t\t\trecompile: crosses(0),\n\t\t\tdescription: \"Hue rotation in degrees added per instance\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Hue Shift\",\n\t\t\t\tgroup: \"Instances\"\n\t\t\t}\n\t\t},\n\t\tphase: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Seamless layout animation phase (0-1 wraps to the identical layout)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Phase\",\n\t\t\t\tgroup: \"Instances\"\n\t\t\t}\n\t\t},\n\t\tzOrder: {\n\t\t\tdefault: \"forward\",\n\t\t\ttransform: (value) =\u003e value === \"backward\" ? 1 : 0,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Stacking order of overlapping instances\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Forward\",\n\t\t\t\t\tvalue: \"forward\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Backward\",\n\t\t\t\t\tvalue: \"backward\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Z-Order\",\n\t\t\t\tgroup: \"Instances\"\n\t\t\t}\n\t\t},\n\t\tjitterPosition: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random per-instance position offset\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Position\",\n\t\t\t\tgroup: \"Jitter\"\n\t\t\t}\n\t\t},\n\t\tjitterRotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random per-instance rotation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Jitter\"\n\t\t\t}\n\t\t},\n\t\tjitterScale: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random per-instance scale variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Jitter\"\n\t\t\t}\n\t\t},\n\t\tjitterOpacity: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random per-instance opacity variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Opacity\",\n\t\t\t\tgroup: \"Jitter\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for the jitter values\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Jitter\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: repeatInstances({\n\t\tsource: { crop: {\n\t\t\tleft: p(\"cropLeft\"),\n\t\t\tright: p(\"cropRight\"),\n\t\t\ttop: p(\"cropTop\"),\n\t\t\tbottom: p(\"cropBottom\")\n\t\t} },\n\t\tplacement: byMode(p(\"mode\"), {\n\t\t\tgrid: grid({\n\t\t\t\tcolumns: p(\"columns\"),\n\t\t\t\trows: p(\"rows\"),\n\t\t\t\tgapX: p(\"gapX\"),\n\t\t\t\tgapY: p(\"gapY\"),\n\t\t\t\tstagger: p(\"stagger\"),\n\t\t\t\tflip: p(\"flip\")\n\t\t\t}),\n\t\t\tradial: radial({\n\t\t\t\tcount: p(\"count\"),\n\t\t\t\tradius: p(\"radius\"),\n\t\t\t\tstartAngle: p(\"startAngle\"),\n\t\t\t\tsweep: p(\"sweep\"),\n\t\t\t\tfaceCenter: p(\"faceCenter\")\n\t\t\t}),\n\t\t\tlinear: line({\n\t\t\t\tcount: p(\"count\"),\n\t\t\t\tdirection: p(\"direction\"),\n\t\t\t\tspacing: p(\"spacing\")\n\t\t\t})\n\t\t}),\n\t\tvariation: {\n\t\t\tscale: p(\"instanceScale\"),\n\t\t\trotation: p(\"instanceRotation\"),\n\t\t\topacity: p(\"instanceOpacity\"),\n\t\t\tjitter: {\n\t\t\t\tposition: p(\"jitterPosition\"),\n\t\t\t\trotation: p(\"jitterRotation\"),\n\t\t\t\tscale: p(\"jitterScale\"),\n\t\t\t\topacity: p(\"jitterOpacity\")\n\t\t\t},\n\t\t\tseed: p(\"seed\"),\n\t\t\tphase: p(\"phase\")\n\t\t},\n\t\thueShift: p(\"hueShift\"),\n\t\torder: p(\"zOrder\")\n\t}) }\n});\nvar Repeater_default = componentDefinition;\nexport { componentDefinition as n, Repeater_default as t };\n","import { Cr as sin, Gn as typegpu_default, Or as vec2f, Ot as unpremultiplyAlpha, at as ZERO, br as radians, ct as call, dt as expr, gt as formatFloat, ht as Expr, i as resolveArg, mt as vec4, or as cos, qr as f32 } from \"./lower-Bd2jez_2.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nconst LENS_MAX_SAMPLES = 50;\nconst LENS_MAX_TAPS = isMobileGpuViewport() ? 24 : 50;\nfunction valueNoiseStmts(em, lines, inputExpr, outName) {\n\tconst n = `${em.p}_vn${em.noiseIdx.value++}`;\n\tlines.push(`let ${n}_st = ${inputExpr};`);\n\tlines.push(`let ${n}_fi = floor(${n}_st);`);\n\tlines.push(`let ${n}_ff = fract(${n}_st);`);\n\tfor (const [k, off] of [\n\t\t[\"a\", \"vec2f(0.0, 0.0)\"],\n\t\t[\"b\", \"vec2f(1.0, 0.0)\"],\n\t\t[\"c\", \"vec2f(0.0, 1.0)\"],\n\t\t[\"d\", \"vec2f(1.0, 1.0)\"]\n\t]) {\n\t\tlines.push(`var ${n}_q${k} = fract((${n}_fi + ${off}) * vec2f(0.3183099, 0.3678794)) + vec2f(0.1);`);\n\t\tlines.push(`${n}_q${k} = ${n}_q${k} + vec2f(dot(${n}_q${k}, ${n}_q${k} + vec2f(19.19)));`);\n\t\tlines.push(`let ${n}_h${k} = fract(${n}_q${k}.x * ${n}_q${k}.y);`);\n\t}\n\tlines.push(`let ${n}_u = ${n}_ff * ${n}_ff * (vec2f(3.0) - 2.0 * ${n}_ff);`);\n\tlines.push(`let ${outName} = mix(mix(${n}_ha, ${n}_hb, ${n}_u.x), mix(${n}_hc, ${n}_hd, ${n}_u.x), ${n}_u.y);`);\n}\nfunction lensGeometryStmts(em, uvExpr, aspectExpr) {\n\tconst { p, stmts, U } = em;\n\tstmts.push(`let ${p}_uv = ${uvExpr};`);\n\tstmts.push(`let ${p}_aspect = ${aspectExpr};`);\n\tstmts.push(`let ${p}_invAspect = 1.0 / ${p}_aspect;`);\n\tstmts.push(`let ${p}_inradius = 0.5 * min(${p}_aspect, 1.0);`);\n\tstmts.push(`let ${p}_outradius = 0.5 * length(vec2f(${p}_aspect, 1.0));`);\n\tstmts.push(`let ${p}_spread = ${U(\"spread\")};`);\n\tstmts.push(`let ${p}_reach = 0.7 * pow(${p}_spread, 1.3 + 2.7 * ${p}_spread);`);\n\tstmts.push(`let ${p}_centerU = ${U(\"center\")};`);\n\tstmts.push(`let ${p}_c = vec2f(${p}_centerU.x, 1.0 - ${p}_centerU.y);`);\n\tstmts.push(`let ${p}_fromCenter = vec2f((${p}_uv.x - ${p}_c.x) * ${p}_aspect, ${p}_uv.y - ${p}_c.y);`);\n\tstmts.push(`let ${p}_radius = length(${p}_fromCenter);`);\n\tstmts.push(`let ${p}_lensBulge = ${U(\"lensBulge\")};`);\n\tstmts.push(`let ${p}_lensCircle = ${U(\"lensCircle\")};`);\n\tstmts.push(`var ${p}_bulgeFade = 1.0;`);\n\tstmts.push(`var ${p}_warped = ${p}_fromCenter;`);\n\tstmts.push(`let ${p}_rSafe = max(${p}_radius, 1e-5);`);\n\tstmts.push(`if (${p}_lensBulge != 0.0) {`);\n\tstmts.push(`  let ${p}_rn = ${p}_rSafe / ${p}_inradius;`);\n\tstmts.push(`  let ${p}_bulgeAmt = abs(${p}_lensBulge) * select(1.2, 1.4, ${p}_lensBulge \u003e 0.0);`);\n\tstmts.push(`  ${p}_bulgeFade = select(1.0, 1.0 - smoothstep(1.45, 1.53, ${p}_rn * ${p}_bulgeAmt), ${p}_lensBulge \u003e 0.0);`);\n\tstmts.push(`  let ${p}_mapPos = tan(min(${p}_rn * ${p}_bulgeAmt, 1.53)) / tan(${p}_bulgeAmt);`);\n\tstmts.push(`  let ${p}_mapNeg = atan(${p}_rn * tan(${p}_bulgeAmt)) / ${p}_bulgeAmt;`);\n\tstmts.push(`  let ${p}_bulgeScale = select(${p}_mapNeg, ${p}_mapPos, ${p}_lensBulge \u003e 0.0) / ${p}_rn;`);\n\tstmts.push(`  ${p}_warped = ${p}_warped * ${p}_bulgeScale;`);\n\tstmts.push(`}`);\n\tstmts.push(`if (${p}_lensCircle \u003e 0.0) {`);\n\tstmts.push(`  let ${p}_wr = length(${p}_warped);`);\n\tstmts.push(`  let ${p}_dir = ${p}_warped / max(${p}_wr, 1e-5);`);\n\tstmts.push(`  let ${p}_halfBox = vec2f(${p}_aspect, 1.0) * 0.5;`);\n\tstmts.push(`  let ${p}_boxOff = vec2f((${p}_c.x - 0.5) * ${p}_aspect, ${p}_c.y - 0.5);`);\n\tstmts.push(`  let ${p}_rBox = min((${p}_halfBox.x - sign(${p}_dir.x) * ${p}_boxOff.x) / max(abs(${p}_dir.x), 1e-4), (${p}_halfBox.y - sign(${p}_dir.y) * ${p}_boxOff.y) / max(abs(${p}_dir.y), 1e-4));`);\n\tstmts.push(`  let ${p}_band = ${p}_inradius * mix(0.03, 0.2, 0.5 * (${p}_lensBulge + 1.0));`);\n\tstmts.push(`  let ${p}_over = smoothstep(0.0, 1.0, (${p}_wr - (${p}_inradius - ${p}_band)) / ${p}_band);`);\n\tstmts.push(`  let ${p}_g = ${p}_wr + (${p}_rBox - ${p}_inradius) * pow(${p}_over, 14.0);`);\n\tstmts.push(`  ${p}_warped = ${p}_dir * mix(${p}_wr, ${p}_g, ${p}_lensCircle);`);\n\tstmts.push(`}`);\n\tstmts.push(`let ${p}_baseUV = vec2f(${p}_warped.x * ${p}_invAspect, ${p}_warped.y) + ${p}_c;`);\n\tstmts.push(`let ${p}_baseDeriv = fwidth(${p}_baseUV);`);\n\tstmts.push(`let ${p}_edgeAA = clamp(2.0 * max(${p}_baseDeriv.x, ${p}_baseDeriv.y), 0.001, 0.02);`);\n\tstmts.push(`let ${p}_frameInvAA = 1.0 / clamp(${p}_baseDeriv, vec2f(1e-5), vec2f(0.02));`);\n\tstmts.push(`let ${p}_grainUV = (${p}_uv - vec2f(0.5)) * (0.8 / vec2f(length(dpdx(${p}_uv)), length(dpdy(${p}_uv)))) + vec2f(0.5);`);\n}\nfunction spreadAxisStmts(em) {\n\tconst { p, stmts, U } = em;\n\tstmts.push(`let ${p}_angleRad = radians(${U(\"angle\")});`);\n\tstmts.push(`let ${p}_uniformDir = vec2f(cos(${p}_angleRad), sin(${p}_angleRad));`);\n\tstmts.push(`let ${p}_invInradius = 1.0 / ${p}_inradius;`);\n\tstmts.push(`let ${p}_maxLen = (${p}_outradius + ${p}_reach) * ${p}_invInradius;`);\n\tstmts.push(`let ${p}_radialLen = ${p}_radius * ${p}_invInradius;`);\n\tstmts.push(`let ${p}_radialDir = ${p}_fromCenter * ${p}_invInradius * min(1.0, ${p}_maxLen / max(${p}_radialLen, 1e-6));`);\n\tstmts.push(`let ${p}_bandProximity = smoothstep(${p}_inradius * 0.8, ${p}_inradius, ${p}_radius);`);\n\tstmts.push(`let ${p}_circleMaxing = ${p}_bandProximity * ${p}_lensCircle * ${p}_lensCircle * ${p}_lensCircle;`);\n\tstmts.push(`let ${p}_spreadDir = mix(mix(${p}_uniformDir, ${p}_radialDir, ${U(\"perspective\")}), ${p}_radialDir, ${p}_circleMaxing);`);\n\tstmts.push(`let ${p}_warpedAbs = abs(${p}_baseUV - vec2f(0.5));`);\n\tstmts.push(`let ${p}_focusCenter = ${U(\"focusCenter\")};`);\n\tstmts.push(`let ${p}_inner = mix(1.0, smoothstep(0.0, mix(${p}_inradius, ${p}_outradius, ${p}_focusCenter), ${p}_radius), ${p}_focusCenter);`);\n\tstmts.push(`let ${p}_boxDist = max(${p}_warpedAbs.x, ${p}_warpedAbs.y) * 2.0;`);\n\tstmts.push(`let ${p}_outer = mix(1.0, 1.0 - min(${p}_boxDist, 1.0), ${U(\"focusEdges\")});`);\n\tstmts.push(`var ${p}_strength = ${p}_inner * ${p}_outer * mix(1.0, mix(0.15, 0.03, max(-${p}_lensBulge, 0.0)), ${p}_circleMaxing);`);\n\tstmts.push(`let ${p}_outside = max(${p}_warpedAbs - vec2f(0.5), vec2f(0.0));`);\n\tstmts.push(`let ${p}_margin = max(${p}_reach * length(${p}_spreadDir) * (1.0 - ${p}_lensCircle), ${p}_edgeAA);`);\n\tstmts.push(`${p}_strength = ${p}_strength * (1.0 - smoothstep(0.0, ${p}_margin, length(${p}_outside)));`);\n\tstmts.push(`var ${p}_axis = ${p}_spreadDir * (${p}_reach * ${p}_strength);`);\n\tstmts.push(`let ${p}_noise = ${U(\"noise\")};`);\n\tstmts.push(`if (${p}_noise \u003e 0.0) {`);\n\t{\n\t\tconst lines = [];\n\t\tvalueNoiseStmts(em, lines, `${p}_fromCenter * (${U(\"noiseFrequency\")} * 18.0) + vec2f(${U(\"noiseOffset\")} * 30.0)`, `${p}_turnNoise`);\n\t\tfor (const l of lines) stmts.push(`  ${l}`);\n\t}\n\tstmts.push(`  let ${p}_turn = (${p}_turnNoise - 0.5) * 2.0 * ${p}_noise;`);\n\tstmts.push(`  let ${p}_tc = cos(${p}_turn);`);\n\tstmts.push(`  let ${p}_ts = sin(${p}_turn);`);\n\tstmts.push(`  ${p}_axis = vec2f(${p}_tc * ${p}_axis.x + ${p}_ts * ${p}_axis.y, -${p}_ts * ${p}_axis.x + ${p}_tc * ${p}_axis.y);`);\n\tstmts.push(`}`);\n\tstmts.push(`${p}_axis = vec2f(${p}_axis.x * ${p}_invAspect, ${p}_axis.y);`);\n\tstmts.push(`let ${p}_grainMixer = ${U(\"grainMixer\")};`);\n\tstmts.push(`if (${p}_grainMixer \u003e 0.0) {`);\n\t{\n\t\tconst lines = [];\n\t\tvalueNoiseStmts(em, lines, `${p}_grainUV`, `${p}_grainSeed`);\n\t\tfor (const l of lines) stmts.push(`  ${l}`);\n\t}\n\tstmts.push(`  let ${p}_jit = fract(${p}_grainSeed * vec2f(157.31, 113.57)) * 2.0 - vec2f(1.0);`);\n\tstmts.push(`  ${p}_axis = ${p}_axis + ${p}_jit * (0.3 * ${p}_grainMixer * length(${p}_axis));`);\n\tstmts.push(`}`);\n}\nfunction frameAAMaskStmts(em, body) {\n\tconst { p } = em;\n\tbody.push(`let ${p}_lo = clamp(${p}_sampleUV * ${p}_frameInvAA + vec2f(0.5), vec2f(0.0), vec2f(1.0));`);\n\tbody.push(`let ${p}_hi = clamp((vec2f(1.0) - ${p}_sampleUV) * ${p}_frameInvAA + vec2f(0.5), vec2f(0.0), vec2f(1.0));`);\n\tbody.push(`let ${p}_frame = ${p}_lo.x * ${p}_hi.x * ${p}_lo.y * ${p}_hi.y;`);\n}\nfunction spectralFanStmts(em, texKey) {\n\tconst { p, stmts, U, L } = em;\n\tconst PI = Math.PI;\n\tstmts.push(`let ${p}_countF = clamp(floor(${U(\"count\")}), 2.0, ${L(LENS_MAX_TAPS)});`);\n\tstmts.push(`let ${p}_hueBase = ${U(\"dispersionColor\")} + 0.5;`);\n\tstmts.push(`let ${p}_bias = ${U(\"bias\")};`);\n\tstmts.push(`let ${p}_biasPower = 1.0 + 2.0 * abs(${p}_bias);`);\n\tstmts.push(`let ${p}_biasNeg = ${p}_bias \u003c 0.0;`);\n\tstmts.push(`let ${p}_dispShift = ${U(\"dispersionShift\")};`);\n\tstmts.push(`let ${p}_icMask = 1.0 - smoothstep(0.5 * ${p}_inradius, 1.1 * ${p}_inradius, ${p}_radius);`);\n\tstmts.push(`let ${p}_dispAmt = ${U(\"dispersion\")} * mix(clamp(1.0 + ${p}_dispShift, 0.0, 1.0), clamp(1.0 - ${p}_dispShift, 0.0, 1.0), ${p}_icMask);`);\n\tstmts.push(`let ${p}_dispPower = pow(${p}_dispAmt, 0.8);`);\n\tstmts.push(`let ${p}_warpedRadius = length(${p}_warped);`);\n\tstmts.push(`let ${p}_swirlAngle = ${U(\"swirl\")} * ${L(.4 * PI)} * ${p}_strength * ${p}_spread * min(1.0, ${p}_inradius / max(${p}_warpedRadius, 1e-4));`);\n\tstmts.push(`let ${p}_texel = max((${p}_baseDeriv.x + ${p}_baseDeriv.y) * 0.5, 1e-6);`);\n\tstmts.push(`let ${p}_fanPx = (2.0 * length(${p}_axis) + abs(${p}_swirlAngle) * ${p}_warpedRadius) / ${p}_texel;`);\n\tstmts.push(`let ${p}_tapsF = clamp(ceil(${p}_fanPx * ${p}_biasPower) + 1.0, 2.0, ${p}_countF);`);\n\tstmts.push(`let ${p}_invCount = 1.0 / ${p}_tapsF;`);\n\tstmts.push(`let ${p}_invSpan = 1.0 / max(${p}_tapsF - 1.0, 1.0);`);\n\tstmts.push(`var ${p}_colorSum = vec3f(0.0);`);\n\tstmts.push(`var ${p}_weightSum = vec3f(0.0);`);\n\tstmts.push(`var ${p}_coverSum = 0.0;`);\n\tconst body = [];\n\tbody.push(`let ${p}_layer = f32(${p}_i);`);\n\tbody.push(`let ${p}_hue = ${p}_hueBase + ${p}_layer * ${p}_invCount;`);\n\tbody.push(`let ${p}_t0 = ${p}_layer * ${p}_invSpan;`);\n\tbody.push(`let ${p}_curved = pow(select(${p}_t0, 1.0 - ${p}_t0, ${p}_biasNeg), ${p}_biasPower);`);\n\tbody.push(`let ${p}_spreadT = select(${p}_curved, 1.0 - ${p}_curved, ${p}_biasNeg);`);\n\tbody.push(`let ${p}_fanPos = 1.0 - 2.0 * ${p}_spreadT;`);\n\tbody.push(`let ${p}_tap0 = ${p}_baseUV + ${p}_axis * ${p}_fanPos - ${p}_c;`);\n\tbody.push(`let ${p}_sa = ${p}_swirlAngle * ${p}_fanPos;`);\n\tbody.push(`let ${p}_sc = cos(${p}_sa);`);\n\tbody.push(`let ${p}_ss = sin(${p}_sa);`);\n\tbody.push(`let ${p}_tx = ${p}_tap0.x * ${p}_aspect;`);\n\tbody.push(`let ${p}_sampleUV = vec2f((${p}_sc * ${p}_tx - ${p}_ss * ${p}_tap0.y) * ${p}_invAspect, ${p}_ss * ${p}_tx + ${p}_sc * ${p}_tap0.y) + ${p}_c;`);\n\tframeAAMaskStmts(em, body);\n\tbody.push(`let ${p}_tapC = textureSampleLevel(tex.$.${texKey}, samp.$.linearClamp, ${p}_sampleUV, 0.0);`);\n\tbody.push(`let ${p}_cover = ${p}_tapC.a * ${p}_frame;`);\n\tbody.push(`let ${p}_overWhite = vec3f(1.0 - ${p}_cover) + ${p}_tapC.rgb * ${p}_frame;`);\n\tbody.push(`let ${p}_hraw = ${p}_hue * 6.0 + vec3f(0.0, 4.0, 2.0);`);\n\tbody.push(`let ${p}_hmod = ${p}_hraw - 6.0 * floor(${p}_hraw / 6.0);`);\n\tbody.push(`let ${p}_hclamped = clamp(abs(${p}_hmod - vec3f(3.0)) - vec3f(1.0), vec3f(0.0), vec3f(1.0));`);\n\tbody.push(`let ${p}_hrgb = ${p}_hclamped * ${p}_hclamped * (vec3f(3.0) - 2.0 * ${p}_hclamped);`);\n\tbody.push(`let ${p}_weight = vec3f(1.0) - ${p}_dispPower * ${p}_hrgb;`);\n\tbody.push(`${p}_colorSum = ${p}_colorSum + ${p}_overWhite * ${p}_weight;`);\n\tbody.push(`${p}_weightSum = ${p}_weightSum + ${p}_weight;`);\n\tbody.push(`${p}_coverSum = ${p}_coverSum + ${p}_cover;`);\n\tstmts.push(`for (var ${p}_i = 0u; ${p}_i \u003c u32(${p}_tapsF); ${p}_i++) {`);\n\tfor (const b of body) stmts.push(`  ${b}`);\n\tstmts.push(`}`);\n\tstmts.push(`let ${p}_color = ${p}_colorSum / max(${p}_weightSum, vec3f(1e-4));`);\n\tstmts.push(`let ${p}_coverAvg = ${p}_coverSum * ${p}_invCount;`);\n\tstmts.push(`let ${p}_ground = min(${p}_color.r, min(${p}_color.g, ${p}_color.b));`);\n\tstmts.push(`let ${p}_alpha = max(${p}_coverAvg, 1.0 - ${p}_ground);`);\n\tstmts.push(`let ${p}_premul = max(${p}_color - vec3f(1.0 - ${p}_alpha), vec3f(0.0));`);\n\tstmts.push(`var ${p}_out = vec4f(${p}_premul, ${p}_alpha) * ${p}_bulgeFade;`);\n}\nfunction grainOverlayStmts(em) {\n\tconst { p, stmts, L } = em;\n\tstmts.push(`let ${p}_grainOverlay = ${em.U(\"grainOverlay\")};`);\n\tstmts.push(`if (${p}_grainOverlay \u003e 0.0) {`);\n\t{\n\t\tconst lines = [];\n\t\tconst c1 = L(Math.cos(1)), s1 = L(Math.sin(1));\n\t\tconst c2 = L(Math.cos(2)), s2 = L(Math.sin(2));\n\t\tlines.push(`let ${p}_gr1 = vec2f(${c1} * ${p}_grainUV.x - ${s1} * ${p}_grainUV.y, ${s1} * ${p}_grainUV.x + ${c1} * ${p}_grainUV.y) + vec2f(3.0);`);\n\t\tlines.push(`let ${p}_gr2 = vec2f(${c2} * ${p}_grainUV.x - ${s2} * ${p}_grainUV.y, ${s2} * ${p}_grainUV.x + ${c2} * ${p}_grainUV.y) + vec2f(-1.0);`);\n\t\tvalueNoiseStmts(em, lines, `${p}_gr1`, `${p}_gn1`);\n\t\tvalueNoiseStmts(em, lines, `${p}_gr2`, `${p}_gn2`);\n\t\tlines.push(`let ${p}_grain = pow(mix(${p}_gn1, ${p}_gn2, 0.5), 1.3);`);\n\t\tlines.push(`let ${p}_grainV = ${p}_grain * 2.0 - 1.0;`);\n\t\tlines.push(`let ${p}_grainStrength = pow(${p}_grainOverlay * abs(${p}_grainV), 0.8) * ${p}_out.a;`);\n\t\tlines.push(`${p}_out = vec4f(mix(${p}_out.rgb, vec3f(step(0.0, ${p}_grainV)) * ${p}_out.a, 0.35 * ${p}_grainStrength), ${p}_out.a);`);\n\t\tfor (const l of lines) stmts.push(`  ${l}`);\n\t}\n\tstmts.push(`}`);\n}\nconst chromaticOffsetUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, angle, strength, aspect, channelOffset) =\u003e {\n\t\"use gpu\";\n\tconst angleRad = radians(angle);\n\tconst direction = vec2f(__tsover_div(cos(angleRad), aspect), sin(angleRad));\n\tconst scaledStrength = __tsover_mul(strength, .1);\n\tconst offsetBase = direction.mul(scaledStrength);\n\treturn uv.add(offsetBase.mul(channelOffset));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"strength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"channelOffset\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angleRad\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.radians\",\n\t\t\t\t\t[\"angle\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"direction\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"angleRad\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledStrength\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"strength\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offsetBase\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"direction\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"scaledStrength\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"offsetBase\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"channelOffset\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.radians\": () =\u003e radians,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction chromaticFan(opts) {\n\treturn (params) =\u003e {\n\t\tconst tapUV = (offset) =\u003e call(chromaticOffsetUV, \"chromaticOffsetUV\", [\n\t\t\tparams.ctx.uv,\n\t\t\tresolveArg(opts.angle, params),\n\t\t\tresolveArg(opts.strength, params),\n\t\t\tparams.ctx.aspect,\n\t\t\tresolveArg(offset, params)\n\t\t]);\n\t\tconst redSample = params.texture.sample(tapUV(opts.red));\n\t\tconst greenSample = params.texture.sample(tapUV(opts.green));\n\t\tconst blueSample = params.texture.sample(tapUV(opts.blue));\n\t\treturn vec4(redSample.member(\"r\"), greenSample.member(\"g\"), blueSample.member(\"b\"), greenSample.member(\"a\"));\n\t};\n}\nfunction spectralLens(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uniforms, childNode, ctx, convertToTexture } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst texKey = convertToTexture(childNode).key;\n\t\treturn new Expr((ec) =\u003e {\n\t\t\tconst em = {\n\t\t\t\tp: ec.freshLocal(\"lens\"),\n\t\t\t\tstmts: [],\n\t\t\t\tU: (name) =\u003e uniforms[slots[name].name]._emit(ec),\n\t\t\t\tL: (n) =\u003e formatFloat(n),\n\t\t\t\tnoiseIdx: { value: 0 }\n\t\t\t};\n\t\t\tlensGeometryStmts(em, ctx.uv._emit(ec), ctx.aspect._emit(ec));\n\t\t\tspreadAxisStmts(em);\n\t\t\tspectralFanStmts(em, texKey);\n\t\t\tgrainOverlayStmts(em);\n\t\t\tfor (const s of em.stmts) ec.statement(s);\n\t\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [expr(`${em.p}_out`)])._emit(ec);\n\t\t});\n\t};\n}\nexport { spectralLens as n, LENS_MAX_SAMPLES as r, chromaticFan as t };\n","import { $t as timeAxisDomain, En as perlin12d, Gn as typegpu_default, Gt as aspectScaledDomain, It as mixColorsLinear, Mn as wavelet12, Nn as wool12, On as scratches12, Or as vec2f, Ot as unpremultiplyAlpha, Xt as pixelGridDomain, ar as clamp, at as ZERO, ct as call, fn as blue12, ft as floatE, gn as gabor12, hn as erosion12, kn as stone12, mt as vec4, n as paintFrame, o as uniformOf, pt as mixExpr, qr as f32, st as asLocal } from \"./lower-Bd2jez_2.js\";\nimport { i as signedToUnit, o as toneSignedInverted } from \"./tone-BKhfiOBn.js\";\nimport { _ as worleyHash$1, a as fbmNormalize, b as worleyNormalize, c as rawAspectScaledDomain, d as toneLift, f as transformWorleyDistance$1, g as worleyDistNum, h as worleyCells, i as curlMagnitude, l as ribbonsField, m as voronoiCells, n as cellBorders$1, o as fractalSum, p as transformWorleyMode$1, r as cellFill$1, t as aspectPlane, u as rotatedCenteredDomain, v as worleyModeNum, x as worleyTone, y as worleyModeScale } from \"./noisePaints-CfHcXL02.js\";\nimport { Tt as backConvertToP3, t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { O as noiseToneKColor, b as stops, f as rampOver, n as colorSpaceModeOf } from \"./fields-DgADOKsP.js\";\nimport { N as sin, n as add, w as mul } from \"./math-D864seEs.js\";\nconst reliefPos = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, scale, seed) =\u003e {\n\t\"use gpu\";\n\tconst aspectUV = vec2f(__tsover_mul(uv.x, aspect), uv.y);\n\tconst freq = __tsover_mul(scale, 4);\n\treturn aspectUV.mul(freq).add(seed);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspectUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"freq\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"scale\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"aspectUV\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"freq\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"seed\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst reliefDisplacedUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, pos, distortion) =\u003e {\n\t\"use gpu\";\n\tconst grad = perlin12d(pos);\n\tconst disp = vec2f(grad.y, grad.z).mul(distortion).mul(.012);\n\treturn uv.add(disp);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pos\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distortion\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grad\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"perlin12d\",\n\t\t\t\t\t[\"pos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"disp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"grad\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"grad\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"distortion\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[5, \"0.012\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[\"disp\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"perlin12d\": () =\u003e perlin12d,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst reliefBrightness = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((h, contrast, intensity) =\u003e {\n\t\"use gpu\";\n\tconst hAdj = __tsover_add(__tsover_mul(__tsover_sub(h, .5), __tsover_add(contrast, 1)), .5);\n\treturn clamp(__tsover_add(1, __tsover_mul(__tsover_sub(hAdj, .5), __tsover_mul(intensity, 1.1))), 0, 1.6);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"contrast\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"hAdj\",\n\t\t\t[\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"contrast\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"hAdj\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"1.6\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"std.clamp\": () =\u003e clamp }\n}) \u0026\u0026 $.f)({}));\nfunction applyNoiseReliefExpr(params, heightFn, heightHint) {\n\tconst { childNode, uniforms, ctx, convertToTexture } = params;\n\tif (!childNode) return ZERO;\n\tconst texture = convertToTexture(childNode);\n\tconst pos = call(reliefPos, \"reliefPos\", [\n\t\tctx.uv,\n\t\tctx.aspect,\n\t\tuniforms.scale,\n\t\tuniforms.seed\n\t]);\n\tconst displacedUV = call(reliefDisplacedUV, \"reliefDisplacedUV\", [\n\t\tctx.uv,\n\t\tpos,\n\t\tuniforms.distortion\n\t]);\n\tconst straight = call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [texture.sample(displacedUV)]);\n\tconst brightness = call(reliefBrightness, \"reliefBrightness\", [\n\t\tcall(heightFn, heightHint, [pos]),\n\t\tuniforms.contrast,\n\t\tuniforms.intensity\n\t]);\n\treturn vec4(straight.member(\"rgb\").mul(brightness), straight.member(\"a\"));\n}\nfunction waves(axes, schedule) {\n\tconst axisTerm = (axis, k, name) =\u003e {\n\t\tif (k === void 0) return void 0;\n\t\tif (axis === void 0) throw new Error(`std: waves() schedule uses axis '${name}' but the axes object doesn't provide it`);\n\t\treturn k === 1 ? axis : mul(axis, k);\n\t};\n\tconst waveExpr = (w) =\u003e {\n\t\tconst parts = [\n\t\t\taxisTerm(axes.x, w.x, \"x\"),\n\t\t\taxisTerm(axes.y, w.y, \"y\"),\n\t\t\taxisTerm(axes.t, w.t, \"t\"),\n\t\t\tw.phase\n\t\t].filter((part) =\u003e part !== void 0);\n\t\tif (parts.length === 0) throw new Error(\"std: a wave needs at least one axis coefficient or phase\");\n\t\treturn sin(parts.reduce((a, b) =\u003e add(a, b)));\n\t};\n\tconst terms = schedule.map((term) =\u003e {\n\t\tif (term.waves.length === 0) throw new Error(\"std: a waves() term needs at least one wave\");\n\t\tconst product = term.waves.map(waveExpr).reduce((a, b) =\u003e mul(a, b));\n\t\treturn term.weight === void 0 || term.weight === 1 ? product : mul(product, term.weight);\n\t});\n\tif (terms.length === 0) throw new Error(\"std: waves() needs at least one term\");\n\treturn terms.reduce((a, b) =\u003e add(a, b));\n}\nfunction wavyLine(opts) {\n\treturn waves({\n\t\tx: opts.along,\n\t\tt: opts.time\n\t}, opts.waves.map((w) =\u003e ({\n\t\twaves: [{\n\t\t\tx: w.freq,\n\t\t\tt: w.speed,\n\t\t\tphase: w.phase\n\t\t}],\n\t\tweight: w.amount\n\t})));\n}\nfunction seededPlane(field, slots) {\n\treturn (params, uv) =\u003e {\n\t\tconst { viewport } = paintFrame(params);\n\t\treturn field(params, call(aspectScaledDomain, \"aspectScaledDomain\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.scale, params),\n\t\t\tuniformOf(slots.seed, params)\n\t\t]));\n\t};\n}\nfunction rawPlane(field, slots) {\n\treturn (params, uv) =\u003e {\n\t\tconst { viewport } = paintFrame(params);\n\t\treturn field(params, call(rawAspectScaledDomain, \"rawAspectScaledDomain\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.scale, params),\n\t\t\tuniformOf(slots.seed, params)\n\t\t]));\n\t};\n}\nfunction pixelGrid(field, slots) {\n\treturn (params, uv) =\u003e {\n\t\tconst { viewport } = paintFrame(params);\n\t\treturn field(params, call(pixelGridDomain, \"pixelGridDomain\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.grain, params),\n\t\t\tuniformOf(slots.seed, params)\n\t\t]));\n\t};\n}\nfunction evolving(field, opts) {\n\treturn (params, coord) =\u003e field(params, call(timeAxisDomain, \"timeAxisDomain\", [\n\t\tcoord,\n\t\tanimatedTime(params),\n\t\tfloatE(opts.rate)\n\t]));\n}\nfunction gaborGrains(slots) {\n\treturn (params, coord) =\u003e call(gabor12, \"gabor12\", [\n\t\tcoord,\n\t\tuniformOf(slots.frequency, params),\n\t\tanimatedTime(params)\n\t]);\n}\nfunction waveletBands(slots) {\n\treturn (params, coord) =\u003e call(wavelet12, \"wavelet12\", [\n\t\tcoord,\n\t\tanimatedTime(params),\n\t\tuniformOf(slots.detail, params)\n\t]);\n}\nfunction blueSpeckle() {\n\treturn (_params, coord) =\u003e call(blue12, \"blue12\", [coord]);\n}\nfunction erosionRidges() {\n\treturn (_params, coord) =\u003e call(erosion12, \"erosion12\", [coord]).member(\"x\");\n}\nfunction curlSpeed(opts) {\n\treturn (params, coord) =\u003e call(curlMagnitude, \"curlMagnitude\", [coord, animatedTime(params).mul(opts.rate)]);\n}\nfunction scratchStreaks(slots) {\n\treturn (params, coord) =\u003e call(scratches12, \"scratches12\", [\n\t\tcoord,\n\t\tanimatedTime(params),\n\t\tuniformOf(slots.thickness, params)\n\t]);\n}\nfunction unitized(field) {\n\treturn (params, coord) =\u003e call(signedToUnit, \"signedToUnit\", [field(params, coord)]);\n}\nfunction noiseTone(field, slots) {\n\treturn (params, coord) =\u003e call(noiseToneKColor, \"noiseToneKColor\", [\n\t\tfield(params, coord),\n\t\tslots?.contrast ? uniformOf(slots.contrast, params) : floatE(0),\n\t\tslots?.balance ? uniformOf(slots.balance, params) : floatE(0)\n\t]);\n}\nfunction signedTone(field, slots) {\n\treturn (params, coord) =\u003e call(toneSignedInverted, \"noiseToneSigned\", [\n\t\tfield(params, coord),\n\t\tuniformOf(slots.contrast, params),\n\t\tuniformOf(slots.balance, params)\n\t]);\n}\nfunction gainTone(field, slots) {\n\treturn (params, coord) =\u003e call(worleyTone, \"worleyTone\", [\n\t\tfield(params, coord),\n\t\tuniformOf(slots.contrast, params),\n\t\tuniformOf(slots.balance, params)\n\t]);\n}\nfunction linearPair(a, b) {\n\treturn (t, params) =\u003e call(mixColorsLinear, \"mixColors\", [\n\t\tuniformOf(a, params),\n\t\tuniformOf(b, params),\n\t\tt\n\t]);\n}\nfunction fractalNoise(slots) {\n\tconst ridges = (params, uv) =\u003e {\n\t\tconst { viewport } = paintFrame(params);\n\t\treturn call(fbmNormalize, \"fbmNormalize\", [call(fractalSum, \"fractalSum\", [\n\t\t\tcall(rotatedCenteredDomain, \"rotatedCenteredDomain\", [\n\t\t\t\tuv,\n\t\t\t\tviewport,\n\t\t\t\tuniformOf(slots.angle, params)\n\t\t\t]),\n\t\t\tuniformOf(slots.detail, params),\n\t\t\tuniformOf(slots.contrast, params),\n\t\t\tanimatedTime(params),\n\t\t\tuniformOf(slots.seed, params),\n\t\t\tuniformOf(slots.octaves, params)\n\t\t])]);\n\t};\n\treturn rampOver(ridges, stops(slots.space));\n}\nfunction worleyNoise(slots) {\n\tconst cells = (params, uv) =\u003e {\n\t\tconst { viewport } = paintFrame(params);\n\t\tconst modeNum = worleyModeNum(params.propValues[slots.mode.name]);\n\t\tconst distNum = worleyDistNum(params.propValues[slots.distance.name]);\n\t\tconst octavesNum = Math.max(1, Math.min(4, Math.round(params.propValues[slots.octaves.name] ?? 1)));\n\t\treturn call(worleyNormalize, \"worleyNormalize\", [call(worleyCells, \"worleyCells\", [\n\t\t\tcall(aspectPlane, \"aspectPlane\", [uv, viewport]),\n\t\t\tuniformOf(slots.scale, params),\n\t\t\tuniformOf(slots.seed, params),\n\t\t\tuniformOf(slots.jitter, params),\n\t\t\tuniformOf(slots.lacunarity, params),\n\t\t\tuniformOf(slots.persistence, params),\n\t\t\tanimatedTime(params),\n\t\t\tfloatE(octavesNum),\n\t\t\tfloatE(distNum),\n\t\t\tfloatE(modeNum)\n\t\t]), floatE(worleyModeScale(modeNum, distNum))]);\n\t};\n\treturn rampOver(gainTone(cells, {\n\t\tcontrast: slots.contrast,\n\t\tbalance: slots.balance\n\t}), stops(slots.space));\n}\nfunction cellDistances(slots) {\n\treturn (params, uv) =\u003e {\n\t\tconst { viewport } = paintFrame(params);\n\t\treturn call(voronoiCells, \"voronoiNearest2\", [\n\t\t\tcall(aspectPlane, \"aspectPlane\", [uv, viewport]).mul(uniformOf(slots.scale, params)),\n\t\t\tanimatedTime(params),\n\t\t\tuniformOf(slots.seed, params)\n\t\t]);\n\t};\n}\nfunction cellFill(cells, slots) {\n\treturn (params, coord) =\u003e call(cellFill$1, \"cellFill\", [cells(params, coord), uniformOf(slots.edgeIntensity, params)]);\n}\nfunction cellBorders(cells, slots) {\n\treturn (params, coord) =\u003e call(cellBorders$1, \"cellBorders\", [\n\t\tcells(params, coord),\n\t\tuniformOf(slots.softness, params),\n\t\tuniformOf(slots.scale, params)\n\t]);\n}\nfunction borderOverlay(paint, mask, slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv } = paintFrame(params);\n\t\tconst base = asLocal(paint(params), \"base\");\n\t\treturn vec4(mixExpr(uniformOf(slots.color, params).member(\"rgb\"), base.member(\"rgb\"), mask(params, uv)), base.member(\"a\"));\n\t};\n}\nfunction overRgb(paint, ...stages) {\n\treturn (params) =\u003e {\n\t\tconst base = paint(params);\n\t\tlet rgb = base.member(\"rgb\");\n\t\tfor (const stage of stages) rgb = stage(rgb, params);\n\t\treturn vec4(rgb, base.member(\"a\"));\n\t};\n}\nfunction backToP3(slots) {\n\treturn (rgb, params) =\u003e {\n\t\treturn backConvertToP3(rgb, slots.space ? colorSpaceModeOf(params.propValues[slots.space.name]) : 0);\n\t};\n}\nfunction tonePow() {\n\treturn (rgb) =\u003e call(toneLift, \"toneLift\", [rgb]);\n}\nfunction ribbons(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uniforms } = params;\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\tconst waveT = animatedTime(params);\n\t\tconst colorT = animatedTime(params, void 0, \"_animTime_color\");\n\t\tconst packed1 = vec4(uniformOf(slots.amplitude, params), uniformOf(slots.frequency, params), uniformOf(slots.count, params), uniformOf(slots.width, params));\n\t\tconst packed2 = vec4(uniformOf(slots.softness, params), uniformOf(slots.spread, params), uniformOf(slots.colorScale, params), uniformOf(slots.colorVariance, params));\n\t\tconst packed3 = vec4(uniformOf(slots.pinEdges, params), waveT, colorT, uniforms.stopCount);\n\t\treturn call(ribbonsField, \"ribbonsField\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.from, params),\n\t\t\tuniformOf(slots.to, params),\n\t\t\tpacked1,\n\t\t\tpacked2,\n\t\t\tpacked3,\n\t\t\tuniforms.colorsArray,\n\t\t\tuniforms.positionsArray,\n\t\t\tuniforms.convertedColorsArray\n\t\t]);\n\t};\n}\nconst reliefBases = {\n\tstone: {\n\t\tfn: stone12,\n\t\thint: \"stone12\"\n\t},\n\twool: {\n\t\tfn: wool12,\n\t\thint: \"wool12\"\n\t}\n};\nfunction noiseRelief(basis) {\n\treturn (params) =\u003e applyNoiseReliefExpr(params, basis.fn, basis.hint);\n}\nconst transformWorleyMode = transformWorleyMode$1;\nconst transformWorleyDistance = transformWorleyDistance$1;\nconst worleyHash = worleyHash$1;\nexport { worleyHash as A, tonePow as C, waveletBands as D, unitized as E, waves as O, signedTone as S, transformWorleyMode as T, rawPlane as _, cellDistances as a, scratchStreaks as b, erosionRidges as c, gaborGrains as d, linearPair as f, pixelGrid as g, overRgb as h, cellBorders as i, worleyNoise as j, wavyLine as k, evolving as l, noiseTone as m, blueSpeckle as n, cellFill as o, noiseRelief as p, borderOverlay as r, curlSpeed as s, backToP3 as t, fractalNoise as u, reliefBases as v, transformWorleyDistance as w, seededPlane as x, ribbons as y };\n","import { Bn as TWO_PI, Br as struct, Cr as sin, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD, Sn as mxNoiseFloat2, _n as hash11, ar as clamp, cr as dot, ct as call, er as select, fr as floor, ft as floatE, gr as min, hr as max, i as resolveArg, mr as length, or as cos, pr as fract, qr as f32, rr as atan2, tr as abs, vn as hash12, wr as smoothstep } from \"./lower-Bd2jez_2.js\";\nconst revealMask = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((coord, progress, feather, invert) =\u003e {\n\t\"use gpu\";\n\tconst c = select(coord, __tsover_sub(1, coord), invert \u003e 0);\n\tconst f = max(feather, 1e-4);\n\tconst front = __tsover_sub(__tsover_mul(progress, __tsover_add(1, __tsover_mul(2, f))), f);\n\treturn smoothstep(__tsover_sub(front, f), __tsover_add(front, f), c);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"coord\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"progress\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"feather\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"invert\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"coord\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"invert\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"feather\", [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"front\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"progress\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"f\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"f\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"front\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"f\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"front\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"f\"\n\t\t\t\t\t],\n\t\t\t\t\t\"c\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst applyReveal = typegpu_default.fn([vec4f, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, reveal$1) =\u003e {\n\t\"use gpu\";\n\treturn vec4f(color.x, color.y, color.z, __tsover_mul(color.w, reveal$1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"reveal\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"color\",\n\t\t\t\t\t\"z\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"reveal\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec4f\": () =\u003e vec4f }\n}) \u0026\u0026 $.f)({}));\nconst directionalCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, angleDeg) =\u003e {\n\t\"use gpu\";\n\tconst a = __tsover_mul(angleDeg, DEG_TO_RAD);\n\tconst dir = vec2f(cos(a), sin(a));\n\tconst grad = dot(vec2f(__tsover_mul(__tsover_sub(uv.x, .5), aspect), __tsover_sub(uv.y, .5)), dir);\n\tconst ext = __tsover_mul(.5, __tsover_add(__tsover_mul(aspect, abs(dir.x)), abs(dir.y)));\n\treturn __tsover_add(__tsover_div(grad, __tsover_mul(2, ext)), .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angleDeg\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"angleDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t[\"a\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"grad\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", \"dir\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ext\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"grad\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ext\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nconst radialCornerNormCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, center) =\u003e {\n\t\"use gpu\";\n\tconst cx = __tsover_mul(center.x, aspect);\n\tconst cy = __tsover_sub(1, center.y);\n\tconst dist = length(vec2f(__tsover_sub(__tsover_mul(uv.x, aspect), cx), __tsover_sub(uv.y, cy)));\n\tconst maxDist = length(vec2f(max(cx, __tsover_sub(aspect, cx)), max(cy, __tsover_sub(1, cy))));\n\treturn __tsover_div(dist, max(maxDist, 1e-4));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"aspect\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rel\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"rel\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"cx\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"cy\", [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxDist\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"dx\", \"dy\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"dist\",\n\t\t\t\t\"/\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"maxDist\", [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.max\": () =\u003e max\n\t}\n}) \u0026\u0026 $.f)({}));\nconst angularCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, center, startDeg, mode) =\u003e {\n\t\"use gpu\";\n\tconst rel = vec2f(__tsover_mul(__tsover_sub(uv.x, center.x), aspect), __tsover_sub(uv.y, __tsover_sub(1, center.y)));\n\tconst ang = atan2(rel.y, rel.x);\n\tconst start = __tsover_mul(startDeg, DEG_TO_RAD);\n\tlet frac = __tsover_div(__tsover_sub(ang, start), TWO_PI);\n\tfrac = __tsover_sub(frac, floor(frac));\n\tconst ccwCoord = __tsover_sub(1, frac);\n\tconst bothCoord = __tsover_mul(min(frac, __tsover_sub(1, frac)), 2);\n\tlet coord = select(frac, ccwCoord, mode \u003e .5);\n\tcoord = select(coord, bothCoord, mode \u003e 1.5);\n\treturn coord;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"startDeg\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mode\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rel\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ang\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rel\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rel\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"start\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"startDeg\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"frac\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"start\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"frac\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"frac\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t[\"frac\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ccwCoord\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"frac\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bothCoord\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"frac\", [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"frac\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"coord\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"frac\",\n\t\t\t\t\t\t\"ccwCoord\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"coord\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"coord\",\n\t\t\t\t\t\t\"bothCoord\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"mode\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, \"coord\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst CellGrid = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcell: vec2f,\n\tlocal: vec2f,\n\tgrid: vec2f\n}), \"CellGrid\");\nconst cellGrid = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], CellGrid)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, size) =\u003e {\n\t\"use gpu\";\n\tconst gridX = __tsover_div(1, max(size, .001));\n\tconst gridY = max(__tsover_div(gridX, aspect), 1);\n\tconst sx = __tsover_mul(uv.x, gridX);\n\tconst sy = __tsover_mul(uv.y, gridY);\n\treturn CellGrid({\n\t\tcell: vec2f(floor(sx), floor(sy)),\n\t\tlocal: vec2f(fract(sx), fract(sy)),\n\t\tgrid: vec2f(gridX, gridY)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"size\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gridX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"size\", [5, \"0.001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gridY\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"gridX\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"gridX\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"gridY\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"CellGrid\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"cell\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"local\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"grid\": [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"gridX\", \"gridY\"]\n\t\t\t\t\t]\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"CellGrid\": () =\u003e CellGrid,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.fract\": () =\u003e fract\n\t}\n}) \u0026\u0026 $.f)({}));\nconst foldAboutCenter = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_mul(abs(__tsover_sub(t, .5)), 2);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"*\",\n\t\t\t[5, \"2\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.abs\": () =\u003e abs }\n}) \u0026\u0026 $.f)({}));\nconst tilePhase = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, count) =\u003e {\n\t\"use gpu\";\n\treturn fract(__tsover_mul(t, count));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"count\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.fract\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t\"t\",\n\t\t\t\t\"*\",\n\t\t\t\t\"count\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"std.fract\": () =\u003e fract }\n}) \u0026\u0026 $.f)({}));\nconst bandMidpointCoord = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, count) =\u003e {\n\t\"use gpu\";\n\tconst n = max(count, 1);\n\treturn clamp(__tsover_div(__tsover_add(floor(__tsover_mul(t, n)), .5), n), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"count\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"n\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.max\",\n\t\t\t\t[\"count\", [5, \"1\"]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.clamp\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"n\"\n\t\t\t\t],\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"1\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.floor\": () =\u003e floor\n\t}\n}) \u0026\u0026 $.f)({}));\nconst bandShuffleCoord = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((t, count) =\u003e {\n\t\"use gpu\";\n\tconst idx = floor(__tsover_mul(t, max(count, 1)));\n\treturn hash11(__tsover_add(idx, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"t\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"count\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"idx\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.floor\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"count\", [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"hash11\",\n\t\t\t[[\n\t\t\t\t1,\n\t\t\t\t\"idx\",\n\t\t\t\t\"+\",\n\t\t\t\t[5, \"0.5\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"hash11\": () =\u003e hash11\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellDiamondCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, size) =\u003e {\n\t\"use gpu\";\n\tconst g = cellGrid(uv, aspect, size);\n\treturn __tsover_add(abs(__tsover_sub(g.local.x, .5)), abs(__tsover_sub(g.local.y, .5)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"size\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"g\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"cellGrid\",\n\t\t\t\t[\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\"size\"\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t\"+\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.abs\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\"local\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"cellGrid\": () =\u003e cellGrid,\n\t\t\"std.abs\": () =\u003e abs\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellCheckerCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, size) =\u003e {\n\t\"use gpu\";\n\tconst g = cellGrid(uv, aspect, size);\n\tconst parity = __tsover_mul(fract(__tsover_mul(__tsover_add(g.cell.x, g.cell.y), .5)), 2);\n\tconst diag = __tsover_mul(__tsover_add(__tsover_div(g.cell.x, g.grid.x), __tsover_div(g.cell.y, g.grid.y)), .5);\n\treturn clamp(__tsover_add(__tsover_mul(.5, parity), __tsover_mul(.5, diag)), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"size\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"g\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cellGrid\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"size\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"parity\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diag\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\"grid\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\"cell\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\"grid\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"parity\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"diag\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"cellGrid\": () =\u003e cellGrid,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst cellShuffleCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, size) =\u003e {\n\t\"use gpu\";\n\treturn hash12(cellGrid(uv, aspect, size).cell);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"size\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"hash12\",\n\t\t\t[[\n\t\t\t\t7,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"cellGrid\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"size\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"cell\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"hash12\": () =\u003e hash12,\n\t\t\"cellGrid\": () =\u003e cellGrid\n\t}\n}) \u0026\u0026 $.f)({}));\nconst fbmCoverageCoord = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, scale, seed) =\u003e {\n\t\"use gpu\";\n\tconst p = vec2f(__tsover_add(__tsover_mul(__tsover_mul(uv.x, aspect), scale), __tsover_mul(seed, 13.7)), __tsover_add(__tsover_mul(uv.y, scale), __tsover_mul(seed, 7.9)));\n\tconst n1 = mxNoiseFloat2(p);\n\tconst n2 = __tsover_mul(mxNoiseFloat2(vec2f(__tsover_add(__tsover_add(__tsover_mul(p.x, 2), 17.3), __tsover_mul(seed, 3.1)), __tsover_add(__tsover_mul(p.y, 2), 9.1))), .5);\n\tconst n3 = __tsover_mul(mxNoiseFloat2(vec2f(__tsover_add(__tsover_mul(p.x, 4), 41.7), __tsover_add(__tsover_add(__tsover_mul(p.y, 4), 27.9), __tsover_mul(seed, 5.3)))), .25);\n\tconst n = __tsover_div(__tsover_add(__tsover_add(n1, n2), n3), 1.75);\n\treturn clamp(__tsover_add(.5, __tsover_mul(n, .9)), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"aspect\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"13.7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"7.9\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"mxNoiseFloat2\",\n\t\t\t\t\t[\"p\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxNoiseFloat2\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"17.3\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"3.1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"9.1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"mxNoiseFloat2\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"41.7\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"27.9\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"5.3\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"n1\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"n2\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"n3\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"1.75\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"mxNoiseFloat2\": () =\u003e mxNoiseFloat2,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nvar Coverage = class Coverage {\n\tconstructor(build) {\n\t\tthis.build = build;\n\t}\n\tfolded() {\n\t\treturn new Coverage((params) =\u003e call(foldAboutCenter, \"foldAboutCenter\", [this.build(params)]));\n\t}\n\ttiled(count) {\n\t\treturn new Coverage((params) =\u003e call(tilePhase, \"tilePhase\", [this.build(params), resolveArg(count, params)]));\n\t}\n\tbands(count) {\n\t\treturn new BandedCoverage(this, count);\n\t}\n};\nvar BandedCoverage = class extends Coverage {\n\tconstructor(base, count) {\n\t\tsuper((params) =\u003e call(bandMidpointCoord, \"bandMidpointCoord\", [base.build(params), resolveArg(count, params)]));\n\t\tthis.base = base;\n\t\tthis.count = count;\n\t}\n\tbase;\n\tcount;\n\tshuffled() {\n\t\treturn new Coverage((params) =\u003e call(bandShuffleCoord, \"bandShuffleCoord\", [this.base.build(params), resolveArg(this.count, params)]));\n\t}\n};\nvar CellCoverage = class {\n\tconstructor(size) {\n\t\tthis.size = size;\n\t}\n\tdiamond() {\n\t\treturn new Coverage((params) =\u003e call(cellDiamondCoord, \"cellDiamondCoord\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tresolveArg(this.size, params)\n\t\t]));\n\t}\n\tchecker() {\n\t\treturn new Coverage((params) =\u003e call(cellCheckerCoord, \"cellCheckerCoord\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tresolveArg(this.size, params)\n\t\t]));\n\t}\n\tshuffled() {\n\t\treturn new Coverage((params) =\u003e call(cellShuffleCoord, \"cellShuffleCoord\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tresolveArg(this.size, params)\n\t\t]));\n\t}\n};\nvar ANGULAR_MODES = {\n\tcw: 0,\n\tccw: 1,\n\tboth: 2\n};\nconst coverage = {\n\tdirectional(angleDeg) {\n\t\treturn new Coverage((params) =\u003e call(directionalCoord, \"directionalCoord\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tresolveArg(angleDeg, params)\n\t\t]));\n\t},\n\tradial(center) {\n\t\treturn new Coverage((params) =\u003e call(radialCornerNormCoord, \"radialCornerNormCoord\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tresolveArg(center, params)\n\t\t]));\n\t},\n\tangular(center, startDeg, direction) {\n\t\treturn new Coverage((params) =\u003e {\n\t\t\tconst mode = ANGULAR_MODES[typeof direction === \"string\" ? direction : params.propValues[direction.name] ?? \"cw\"] ?? 0;\n\t\t\treturn call(angularCoord, \"angularCoord\", [\n\t\t\t\tparams.ctx.uv,\n\t\t\t\tparams.ctx.aspect,\n\t\t\t\tresolveArg(center, params),\n\t\t\t\tresolveArg(startDeg, params),\n\t\t\t\tfloatE(mode)\n\t\t\t]);\n\t\t});\n\t},\n\tcells(size) {\n\t\treturn new CellCoverage(size);\n\t},\n\tnoise(scale, seed) {\n\t\treturn new Coverage((params) =\u003e call(fbmCoverageCoord, \"fbmCoverageCoord\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tresolveArg(scale, params),\n\t\t\tresolveArg(seed, params)\n\t\t]));\n\t}\n};\nfunction reveal(slots) {\n\treturn {\n\t\tkind: \"pointwise\",\n\t\tbody: {\n\t\t\tfn: applyReveal,\n\t\t\thint: \"applyReveal\"\n\t\t},\n\t\targs: (params) =\u003e [call(revealMask, \"revealMask\", [\n\t\t\tslots.coverage.build(params),\n\t\t\tresolveArg(slots.progress, params),\n\t\t\tresolveArg(slots.feather, params),\n\t\t\tresolveArg(slots.invert, params)\n\t\t])]\n\t};\n}\nexport { reveal as n, coverage as t };\n","import { Ar as vec2u, Br as struct, Cr as sin$1, Er as step, Fr as size, Gn as typegpu_default, Jr as i32, Lr as texture2d, M as parseShapeConfigValue, Mr as vec4f, Or as vec2f, Pn as DEG_TO_RAD$1, Pr as align, Rr as textureStorage2d, Tr as sqrt, Y as createStateBuffer, Yn as textureStore, Yr as u32, _r as mix$1, ar as clamp$1, at as ZERO, c as p, cr as dot$1, ct as call, dr as extractBits, er as select$1, fr as floor$1, ft as floatE, gr as min$1, hr as max$1, jr as vec3f, o as uniformOf, or as cos$1, q as createGuardedCompute, qn as textureLoad, qr as f32, t as defineStd, tr as abs$1, yn as hash13, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { F as shapedSurface, P as schlickFresnel, S as lambert, V as surfaceField, X as viewRay, g as guarded, h as grazingOf, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nimport { s as mixColorsIn } from \"./fields-DgADOKsP.js\";\nimport { C as sdRoundBox, O as resolveShapeType, S as rotateVecCpu, b as resolveActiveFieldRes, c as createSvg3dSdfSetup, d as isSvg3dShapeType, i as buildVolumetricFieldKernel, k as shapeEffectBoundingBoxDeclaration, l as createVolumetricFieldCompute, o as createAnalytic2dExtrudeSetup, s as createAnalytic3dSdfSetup, t as RotStruct, u as is3dShapeType, x as rotateVec3 } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, M as sign, N as sin, P as smoothstep, S as min, T as neg, V as vec3, a as cos, b as lt, d as floor, h as gt, i as clamp, j as select, l as exp2, m as ge, n as add, o as div, s as dot, t as abs, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nconst VOXEL_GRID_MAX = isMobileGpuViewport() ? 128 : 192;\nconst OCC_BUFFER_WORDS = Math.ceil(VOXEL_GRID_MAX / 4) * VOXEL_GRID_MAX * VOXEL_GRID_MAX;\nconst VOXEL_SHADOW_RES = isMobileGpuViewport() ? 512 : 1024;\nconst VOXEL_SHADOW_FORMAT = \"r32float\";\nvar DEG = Math.PI / 180;\nvar HALF_DIAGONAL = .8660254;\nvar CLEARANCE_MARGIN = 1.74;\nvar GOLDEN_ANGLE = 2.39996323;\nvar SOFT_TAN = .27;\nvar SHADOW_FAR = 1e9;\nconst VoxelMarchParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcam: align(16, size(32, RotStruct)),\n\tlightDir: vec3f,\n\tvoxelSize: f32,\n\tlightT1: vec3f,\n\tfill: f32,\n\tlightT2: vec3f,\n\tvoxelScale: f32,\n\tbevel: f32,\n\tgridOrigin: f32,\n\tgridN: f32,\n\tgridW: f32\n}), \"VoxelMarchParams\");\nfunction makeVoxelLayout() {\n\treturn typegpu_default.bindGroupLayout({\n\t\tvox: { uniform: VoxelMarchParams },\n\t\tocc: {\n\t\t\tstorage: arrayOf(u32, OCC_BUFFER_WORDS),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tshadowMap: { storageTexture: textureStorage2d(VOXEL_SHADOW_FORMAT, \"write-only\") }\n\t});\n}\nfunction makeVoxelBakeLayout() {\n\treturn typegpu_default.bindGroupLayout({\n\t\tvox: { uniform: VoxelMarchParams },\n\t\tocc: {\n\t\t\tstorage: arrayOf(u32, OCC_BUFFER_WORDS),\n\t\t\taccess: \"mutable\"\n\t\t}\n\t});\n}\nfunction buildVoxelBakeFn(sdfFn, marchLayout, bakeLayout, gridSpace) {\n\tconst gridToShape = typegpu_default.fn([vec3f], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((pG) =\u003e {\n\t\t\"use gpu\";\n\t\tif (gridSpace === \"view\") return rotateVec3(rotateVec3(pG, bakeLayout.$.vox.cam), marchLayout.$.params.rot);\n\t\telse return vec3f(pG.x, pG.y, pG.z);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pG\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gridSpace\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[103, \"view\"]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"rotateVec3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rotateVec3\",\n\t\t\t\t\t\t[\"pG\", [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"bakeLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"cam\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"marchLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"rot\"\n\t\t\t\t\t]]\n\t\t\t\t]],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pG\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pG\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"pG\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"gridSpace\": () =\u003e gridSpace,\n\t\t\t\"rotateVec3\": () =\u003e rotateVec3,\n\t\t\t\"bakeLayout\": () =\u003e bakeLayout,\n\t\t\t\"marchLayout\": () =\u003e marchLayout,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\treturn typegpu_default.fn([\n\t\tu32,\n\t\tu32,\n\t\tu32\n\t])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((wx, iy, iz) =\u003e {\n\t\t\"use gpu\";\n\t\tconst vx = bakeLayout.$.vox;\n\t\tconst n = u32(vx.gridN);\n\t\tconst w = u32(vx.gridW);\n\t\tif (wx \u003c w \u0026\u0026 iy \u003c n \u0026\u0026 iz \u003c n) {\n\t\t\tconst v = vx.voxelSize;\n\t\t\tconst o = vx.gridOrigin;\n\t\t\tlet word = u32(0);\n\t\t\tlet scale = u32(1);\n\t\t\tfor (let k = 0; k \u003c 4; k++) {\n\t\t\t\tconst ix = __tsover_add(__tsover_mul(wx, u32(4)), u32(k));\n\t\t\t\tlet val = u32(1);\n\t\t\t\tif (ix \u003c n) {\n\t\t\t\t\tconst dd = sdfFn(gridToShape(vec3f(__tsover_add(__tsover_mul(__tsover_add(f32(ix), .5), v), o), __tsover_add(__tsover_mul(__tsover_add(f32(iy), .5), v), o), __tsover_add(__tsover_mul(__tsover_add(f32(iz), .5), v), o))));\n\t\t\t\t\tconst clear = clamp$1(__tsover_sub(__tsover_sub(__tsover_div(dd, v), vx.fill), CLEARANCE_MARGIN), 0, 254);\n\t\t\t\t\tval = select$1(__tsover_add(u32(1), u32(floor$1(clear))), u32(0), dd \u003c __tsover_mul(vx.fill, v));\n\t\t\t\t}\n\t\t\t\tword = __tsover_add(word, __tsover_mul(val, scale));\n\t\t\t\tscale = __tsover_mul(scale, u32(256));\n\t\t\t}\n\t\t\tbakeLayout.$.occ[__tsover_add(wx, __tsover_mul(__tsover_add(iy, __tsover_mul(iz, n)), w))] = word;\n\t\t}\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"wx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"iy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"iz\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"bakeLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"n\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"gridN\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"w\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"gridW\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"iz\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\"gridOrigin\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"word\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"4\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"k\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"ix\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"iy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"iz\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"gridToShape\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"clear\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"fill\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"CLEARANCE_MARGIN\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"254\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"clear\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"fill\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"word\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"word\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"scale\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"256\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"bakeLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"occ\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"iz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\"word\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"bakeLayout\": () =\u003e bakeLayout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"sdfFn\": () =\u003e sdfFn,\n\t\t\t\"gridToShape\": () =\u003e gridToShape,\n\t\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\t\"CLEARANCE_MARGIN\": () =\u003e CLEARANCE_MARGIN,\n\t\t\t\"std.select\": () =\u003e select$1,\n\t\t\t\"std.floor\": () =\u003e floor$1\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"voxelGridBake\");\n}\nfunction buildVoxelTraversal(voxLayout, style) {\n\tconst cellValue = typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy, cz) =\u003e {\n\t\t\"use gpu\";\n\t\tconst vx = voxLayout.$.vox;\n\t\tconst n = vx.gridN;\n\t\tlet out = f32(1);\n\t\tif (cx \u003e= 0 \u0026\u0026 cx \u003c n \u0026\u0026 cy \u003e= 0 \u0026\u0026 cy \u003c n \u0026\u0026 cz \u003e= 0 \u0026\u0026 cz \u003c n) {\n\t\t\tconst wx = floor$1(__tsover_mul(cx, .25));\n\t\t\tconst sub$1 = __tsover_sub(cx, __tsover_mul(wx, 4));\n\t\t\tconst idx = __tsover_add(u32(wx), __tsover_mul(__tsover_add(u32(cy), __tsover_mul(u32(cz), u32(n))), u32(vx.gridW)));\n\t\t\tconst word = voxLayout.$.occ[idx];\n\t\t\tout = f32(extractBits(word, __tsover_mul(u32(sub$1), u32(8)), u32(8)));\n\t\t}\n\t\treturn out;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cz\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"n\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\"gridN\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"out\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"n\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sub\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"wx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t[\"wx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"cz\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"n\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\"gridW\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"word\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"occ\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"out\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.extractBits\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"word\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"sub\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[10, \"out\"]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"voxLayout\": () =\u003e voxLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.floor\": () =\u003e floor$1,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"std.extractBits\": () =\u003e extractBits\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tconst cellCentre = typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy, cz) =\u003e {\n\t\t\"use gpu\";\n\t\tconst vx = voxLayout.$.vox;\n\t\treturn vec3f(__tsover_add(__tsover_mul(__tsover_add(cx, .5), vx.voxelSize), vx.gridOrigin), __tsover_add(__tsover_mul(__tsover_add(cy, .5), vx.voxelSize), vx.gridOrigin), __tsover_add(__tsover_mul(__tsover_add(cz, .5), vx.voxelSize), vx.gridOrigin));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cz\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"vx\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"vox\"\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"gridOrigin\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"gridOrigin\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"gridOrigin\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"voxLayout\": () =\u003e voxLayout,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tconst occupied = typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy, cz) =\u003e {\n\t\t\"use gpu\";\n\t\treturn select$1(f32(0), f32(1), cellValue(cx, cy, cz) \u003c .5);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cz\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"cellValue\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.select\": () =\u003e select$1,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"cellValue\": () =\u003e cellValue\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tconst SubHit = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\t\thit: f32,\n\t\tt: f32\n\t}), \"SubHit\");\n\tconst subShapeHit = typegpu_default.fn([\n\t\tvec3f,\n\t\tvec3f,\n\t\tvec3f,\n\t\tf32\n\t], SubHit)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ro, rd, c, tNow) =\u003e {\n\t\t\"use gpu\";\n\t\tconst vx = voxLayout.$.vox;\n\t\tconst h = __tsover_mul(__tsover_mul(vx.voxelSize, .5), vx.voxelScale);\n\t\tlet hit = f32(0);\n\t\tlet t = tNow;\n\t\tif (style === \"sphere\") {\n\t\t\tconst oc = ro.sub(c);\n\t\t\tconst b = dot$1(oc, rd);\n\t\t\tconst cc = __tsover_sub(dot$1(oc, oc), __tsover_mul(h, h));\n\t\t\tconst disc = __tsover_sub(__tsover_mul(b, b), cc);\n\t\t\tif (disc \u003e= 0) {\n\t\t\t\tconst ts = __tsover_sub(__tsover_mul(b, -1), sqrt(disc));\n\t\t\t\tif (ts \u003e= __tsover_sub(tNow, 1e-4)) {\n\t\t\t\t\thit = f32(1);\n\t\t\t\t\tt = ts;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tconst sx = select$1(f32(-1), f32(1), rd.x \u003e= 0);\n\t\t\tconst sy = select$1(f32(-1), f32(1), rd.y \u003e= 0);\n\t\t\tconst sz = select$1(f32(-1), f32(1), rd.z \u003e= 0);\n\t\t\tconst ix = __tsover_div(sx, max$1(abs$1(rd.x), 1e-6));\n\t\t\tconst iy = __tsover_div(sy, max$1(abs$1(rd.y), 1e-6));\n\t\t\tconst iz = __tsover_div(sz, max$1(abs$1(rd.z), 1e-6));\n\t\t\tconst t1x = __tsover_mul(__tsover_sub(__tsover_sub(c.x, h), ro.x), ix);\n\t\t\tconst t2x = __tsover_mul(__tsover_sub(__tsover_add(c.x, h), ro.x), ix);\n\t\t\tconst t1y = __tsover_mul(__tsover_sub(__tsover_sub(c.y, h), ro.y), iy);\n\t\t\tconst t2y = __tsover_mul(__tsover_sub(__tsover_add(c.y, h), ro.y), iy);\n\t\t\tconst t1z = __tsover_mul(__tsover_sub(__tsover_sub(c.z, h), ro.z), iz);\n\t\t\tconst t2z = __tsover_mul(__tsover_sub(__tsover_add(c.z, h), ro.z), iz);\n\t\t\tconst tIn = max$1(min$1(t1x, t2x), max$1(min$1(t1y, t2y), min$1(t1z, t2z)));\n\t\t\tconst tOut = min$1(max$1(t1x, t2x), min$1(max$1(t1y, t2y), max$1(t1z, t2z)));\n\t\t\tif (tIn \u003c= tOut) {\n\t\t\t\tif (tOut \u003e= __tsover_sub(tNow, 1e-4)) if (style === \"rounded\") {\n\t\t\t\t\tconst r = __tsover_mul(clamp$1(vx.bevel, f32(0), f32(1)), h);\n\t\t\t\t\tlet s = max$1(tIn, __tsover_sub(tNow, 1e-4));\n\t\t\t\t\tfor (let i = 0; i \u003c 12; i++) {\n\t\t\t\t\t\tconst dd = sdRoundBox(ro.add(rd.mul(s)).sub(c), h, h, h, r);\n\t\t\t\t\t\tif (dd \u003c __tsover_mul(h, .003)) {\n\t\t\t\t\t\t\thit = f32(1);\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ts = __tsover_add(s, dd);\n\t\t\t\t\t\tif (s \u003e tOut) break;\n\t\t\t\t\t}\n\t\t\t\t\tt = s;\n\t\t\t\t} else {\n\t\t\t\t\thit = f32(1);\n\t\t\t\t\tt = max$1(tIn, tNow);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn SubHit({\n\t\t\thit,\n\t\t\tt\n\t\t});\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"ro\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rd\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"c\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"tNow\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"h\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"voxelScale\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"hit\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"tNow\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"style\",\n\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t[103, \"sphere\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"oc\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"oc\", \"rd\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cc\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t[\"oc\", \"oc\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"disc\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"cc\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"disc\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ts\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t\t\t[\"disc\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ts\",\n\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tNow\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\"ts\"\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"iy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"iz\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"t1x\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ix\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"t2x\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ix\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"t1y\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"iy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"t2y\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"iy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"t1z\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"iz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"t2z\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"iz\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"tIn\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[\"t1x\", \"t2x\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t[\"t1y\", \"t2y\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t\t[\"t1z\", \"t2z\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"tOut\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"t1x\", \"t2x\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"t1y\", \"t2y\"]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"t1z\", \"t2z\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tIn\",\n\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\"tOut\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tOut\",\n\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tNow\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"style\",\n\t\t\t\t\t\t\t\t\t\t\"===\",\n\t\t\t\t\t\t\t\t\t\t[103, \"rounded\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"bevel\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"tIn\", [\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tNow\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.0001\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"12\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"sdRoundBox\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.003\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t], [17]]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"tOut\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t[\"tIn\", \"tNow\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"SubHit\",\n\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\"hit\": \"hit\",\n\t\t\t\t\t\t\"t\": \"t\"\n\t\t\t\t\t}]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"voxLayout\": () =\u003e voxLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"style\": () =\u003e style,\n\t\t\t\"std.dot\": () =\u003e dot$1,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"std.select\": () =\u003e select$1,\n\t\t\t\"std.max\": () =\u003e max$1,\n\t\t\t\"std.abs\": () =\u003e abs$1,\n\t\t\t\"std.min\": () =\u003e min$1,\n\t\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\t\"sdRoundBox\": () =\u003e sdRoundBox,\n\t\t\t\"SubHit\": () =\u003e SubHit\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tconst DdaHit = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\t\thit: f32,\n\t\tt: f32,\n\t\tcx: f32,\n\t\tcy: f32,\n\t\tcz: f32,\n\t\tminD: f32\n\t}), \"DdaHit\");\n\treturn {\n\t\tcellValue,\n\t\tcellCentre,\n\t\toccupied,\n\t\tsubShapeHit,\n\t\tvoxelDda: typegpu_default.fn([\n\t\t\tvec3f,\n\t\t\tvec3f,\n\t\t\tf32,\n\t\t\tf32,\n\t\t\tvec3f,\n\t\t\ti32\n\t\t], DdaHit)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ro, rd, tStart, tEnd, skip, maxSteps) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst vx = voxLayout.$.vox;\n\t\t\tconst v = vx.voxelSize;\n\t\t\tconst o = vx.gridOrigin;\n\t\t\tconst p0 = ro.add(rd.mul(tStart));\n\t\t\tlet cx = floor$1(__tsover_div(__tsover_sub(p0.x, o), v));\n\t\t\tlet cy = floor$1(__tsover_div(__tsover_sub(p0.y, o), v));\n\t\t\tlet cz = floor$1(__tsover_div(__tsover_sub(p0.z, o), v));\n\t\t\tconst sx = select$1(f32(-1), f32(1), rd.x \u003e= 0);\n\t\t\tconst sy = select$1(f32(-1), f32(1), rd.y \u003e= 0);\n\t\t\tconst sz = select$1(f32(-1), f32(1), rd.z \u003e= 0);\n\t\t\tconst ax = __tsover_div(1, max$1(abs$1(rd.x), 1e-6));\n\t\t\tconst ay = __tsover_div(1, max$1(abs$1(rd.y), 1e-6));\n\t\t\tconst az = __tsover_div(1, max$1(abs$1(rd.z), 1e-6));\n\t\t\tconst dtx = __tsover_mul(v, ax);\n\t\t\tconst dty = __tsover_mul(v, ay);\n\t\t\tconst dtz = __tsover_mul(v, az);\n\t\t\tconst bx = __tsover_add(__tsover_mul(__tsover_add(cx, max$1(sx, f32(0))), v), o);\n\t\t\tconst by = __tsover_add(__tsover_mul(__tsover_add(cy, max$1(sy, f32(0))), v), o);\n\t\t\tconst bz = __tsover_add(__tsover_mul(__tsover_add(cz, max$1(sz, f32(0))), v), o);\n\t\t\tlet tmx = __tsover_add(tStart, __tsover_mul(__tsover_mul(__tsover_sub(bx, p0.x), sx), ax));\n\t\t\tlet tmy = __tsover_add(tStart, __tsover_mul(__tsover_mul(__tsover_sub(by, p0.y), sy), ay));\n\t\t\tlet tmz = __tsover_add(tStart, __tsover_mul(__tsover_mul(__tsover_sub(bz, p0.z), sz), az));\n\t\t\tlet t = tStart;\n\t\t\tlet hit = f32(0);\n\t\t\tlet tHit = tEnd;\n\t\t\tlet minClear = f32(255);\n\t\t\tfor (let i = 0; i \u003c maxSteps; i++) {\n\t\t\t\tconst same = step(__tsover_add(__tsover_add(abs$1(__tsover_sub(cx, skip.x)), abs$1(__tsover_sub(cy, skip.y))), abs$1(__tsover_sub(cz, skip.z))), .5);\n\t\t\t\tconst val = cellValue(cx, cy, cz);\n\t\t\t\tconst clear = max$1(__tsover_sub(val, 1), 0);\n\t\t\t\tminClear = min$1(minClear, clear);\n\t\t\t\tif (val \u003c .5) {\n\t\t\t\t\tif (same \u003c .5) {\n\t\t\t\t\t\tconst sh = subShapeHit(ro, rd, cellCentre(cx, cy, cz), t);\n\t\t\t\t\t\tif (sh.hit \u003e .5) {\n\t\t\t\t\t\t\thit = f32(1);\n\t\t\t\t\t\t\ttHit = sh.t;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif (clear \u003e= 1) {\n\t\t\t\t\tt = __tsover_add(t, __tsover_mul(clear, v));\n\t\t\t\t\tconst pj = ro.add(rd.mul(t));\n\t\t\t\t\tcx = floor$1(__tsover_div(__tsover_sub(pj.x, o), v));\n\t\t\t\t\tcy = floor$1(__tsover_div(__tsover_sub(pj.y, o), v));\n\t\t\t\t\tcz = floor$1(__tsover_div(__tsover_sub(pj.z, o), v));\n\t\t\t\t\ttmx = __tsover_add(t, __tsover_mul(__tsover_mul(__tsover_sub(__tsover_add(__tsover_mul(__tsover_add(cx, max$1(sx, f32(0))), v), o), pj.x), sx), ax));\n\t\t\t\t\ttmy = __tsover_add(t, __tsover_mul(__tsover_mul(__tsover_sub(__tsover_add(__tsover_mul(__tsover_add(cy, max$1(sy, f32(0))), v), o), pj.y), sy), ay));\n\t\t\t\t\ttmz = __tsover_add(t, __tsover_mul(__tsover_mul(__tsover_sub(__tsover_add(__tsover_mul(__tsover_add(cz, max$1(sz, f32(0))), v), o), pj.z), sz), az));\n\t\t\t\t} else if (tmx \u003c tmy) if (tmx \u003c tmz) {\n\t\t\t\t\tt = tmx;\n\t\t\t\t\tcx = __tsover_add(cx, sx);\n\t\t\t\t\ttmx = __tsover_add(tmx, dtx);\n\t\t\t\t} else {\n\t\t\t\t\tt = tmz;\n\t\t\t\t\tcz = __tsover_add(cz, sz);\n\t\t\t\t\ttmz = __tsover_add(tmz, dtz);\n\t\t\t\t}\n\t\t\t\telse if (tmy \u003c tmz) {\n\t\t\t\t\tt = tmy;\n\t\t\t\t\tcy = __tsover_add(cy, sy);\n\t\t\t\t\ttmy = __tsover_add(tmy, dty);\n\t\t\t\t} else {\n\t\t\t\t\tt = tmz;\n\t\t\t\t\tcz = __tsover_add(cz, sz);\n\t\t\t\t\ttmz = __tsover_add(tmz, dtz);\n\t\t\t\t}\n\t\t\t\tif (t \u003e tEnd) break;\n\t\t\t}\n\t\t\treturn DdaHit({\n\t\t\t\thit,\n\t\t\t\tt: tHit,\n\t\t\t\tcx,\n\t\t\t\tcy,\n\t\t\t\tcz,\n\t\t\t\tminD: __tsover_mul(minClear, v)\n\t\t\t});\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"ro\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"rd\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"tStart\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"tEnd\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"skip\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"maxSteps\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"gridOrigin\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"tStart\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sz\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ax\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ay\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"az\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dtx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ax\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dty\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ay\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dtz\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"az\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"sx\", [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"sy\", [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"bz\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"sz\", [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"tmx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tStart\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"bx\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ax\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"tmy\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tStart\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"by\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ay\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"tmz\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tStart\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"bz\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"az\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"tStart\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"tHit\",\n\t\t\t\t\t\t\"tEnd\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"minClear\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"255\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"maxSteps\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"same\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.step\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"skip\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"skip\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"skip\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [5, \"0.5\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"cellValue\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"clear\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"minClear\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[\"minClear\", \"clear\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"val\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"same\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"sh\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"subShapeHit\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cellCentre\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"hit\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tHit\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[17]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"clear\",\n\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"clear\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"pj\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"tmx\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\", [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ax\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"tmy\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\", [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ay\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"tmz\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sz\", [\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"o\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"pj\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"az\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tmx\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"tmy\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tmx\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\"tmz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmx\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tmx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dtx\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmz\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tmz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dtz\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"tmy\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\"tmz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmy\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sy\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tmy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dty\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmz\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sz\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\"tmz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tmz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dtz\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\"tEnd\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[10, [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"DdaHit\",\n\t\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\t\"hit\": \"hit\",\n\t\t\t\t\t\t\t\"t\": \"tHit\",\n\t\t\t\t\t\t\t\"cx\": \"cx\",\n\t\t\t\t\t\t\t\"cy\": \"cy\",\n\t\t\t\t\t\t\t\"cz\": \"cz\",\n\t\t\t\t\t\t\t\"minD\": [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"minClear\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t}]]\n\t\t\t\t\t]]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"voxLayout\": () =\u003e voxLayout,\n\t\t\t\t\"std.floor\": () =\u003e floor$1,\n\t\t\t\t\"std.select\": () =\u003e select$1,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"std.max\": () =\u003e max$1,\n\t\t\t\t\"std.abs\": () =\u003e abs$1,\n\t\t\t\t\"std.step\": () =\u003e step,\n\t\t\t\t\"cellValue\": () =\u003e cellValue,\n\t\t\t\t\"std.min\": () =\u003e min$1,\n\t\t\t\t\"subShapeHit\": () =\u003e subShapeHit,\n\t\t\t\t\"cellCentre\": () =\u003e cellCentre,\n\t\t\t\t\"DdaHit\": () =\u003e DdaHit\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({}))\n\t};\n}\nvar stepCap = () =\u003e isMobileGpuViewport() ? 288 : 720;\nfunction buildVoxelShadowMapFn(voxLayout, style) {\n\tconst { voxelDda } = buildVoxelTraversal(voxLayout, style);\n\tconst RES = VOXEL_SHADOW_RES;\n\tconst STEP_CAP = stepCap();\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i, j) =\u003e {\n\t\t\"use gpu\";\n\t\tconst vx = voxLayout.$.vox;\n\t\tconst rB = __tsover_mul(vx.gridOrigin, -1);\n\t\tconst u = __tsover_mul(__tsover_sub(__tsover_mul(__tsover_div(__tsover_add(f32(i), .5), f32(RES)), 2), 1), rB);\n\t\tconst w = __tsover_mul(__tsover_sub(__tsover_mul(__tsover_div(__tsover_add(f32(j), .5), f32(RES)), 2), 1), rB);\n\t\tconst L = vx.lightDir;\n\t\tconst p0 = vx.lightT1.mul(u).add(vx.lightT2.mul(w)).add(L.mul(rB));\n\t\tconst rd = L.mul(-1);\n\t\tlet depth = f32(SHADOW_FAR);\n\t\tconst perp2 = __tsover_add(__tsover_mul(u, u), __tsover_mul(w, w));\n\t\tif (perp2 \u003c __tsover_mul(rB, rB)) {\n\t\t\tconst half = sqrt(__tsover_sub(__tsover_mul(rB, rB), perp2));\n\t\t\tconst maxSteps = i32(clamp$1(__tsover_add(__tsover_div(__tsover_mul(rB, 6), vx.voxelSize), 8), f32(8), f32(STEP_CAP)));\n\t\t\tconst none = vec3f(-9999, -9999, -9999);\n\t\t\tconst hh = voxelDda(p0, rd, __tsover_sub(rB, half), __tsover_add(__tsover_add(rB, half), .01), none, maxSteps);\n\t\t\tif (hh.hit \u003e .5) depth = hh.t;\n\t\t}\n\t\ttextureStore(voxLayout.$.shadowMap, vec2u(i, j), vec4f(depth, 0, 0, 0));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"j\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rB\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\"gridOrigin\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"rB\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"w\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"j\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"RES\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"rB\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"L\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\"lightDir\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"lightT1\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"u\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\"lightT2\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"w\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"rB\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"L\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"depth\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"SHADOW_FAR\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"perp2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"perp2\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rB\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"rB\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"half\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"rB\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"rB\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"perp2\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"maxSteps\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rB\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"6\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"STEP_CAP\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"none\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"9999\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"9999\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"9999\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"voxelDda\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p0\",\n\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"rB\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"half\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"rB\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"half\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"none\",\n\t\t\t\t\t\t\t\t\t\"maxSteps\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\"hit\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"shadowMap\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"i\", \"j\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"voxLayout\": () =\u003e voxLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"RES\": () =\u003e RES,\n\t\t\t\"SHADOW_FAR\": () =\u003e SHADOW_FAR,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\t\"STEP_CAP\": () =\u003e STEP_CAP,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"voxelDda\": () =\u003e voxelDda,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"voxelShadowMap\");\n}\nvar shadowCompare = typegpu_default.fn([\n\ttexture2d(f32),\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((tex, mx, my, ref) =\u003e {\n\t\"use gpu\";\n\tconst maxT = f32(__tsover_sub(VOXEL_SHADOW_RES, 1));\n\tconst x0 = floor$1(mx);\n\tconst y0 = floor$1(my);\n\tconst fx = __tsover_sub(mx, x0);\n\tconst fy = __tsover_sub(my, y0);\n\tconst cx0 = u32(clamp$1(x0, f32(0), maxT));\n\tconst cx1 = u32(clamp$1(__tsover_add(x0, 1), f32(0), maxT));\n\tconst cy0 = u32(clamp$1(y0, f32(0), maxT));\n\tconst cy1 = u32(clamp$1(__tsover_add(y0, 1), f32(0), maxT));\n\tconst s00 = select$1(f32(0), f32(1), textureLoad(tex, vec2u(cx0, cy0), 0).r \u003c ref);\n\tconst s10 = select$1(f32(0), f32(1), textureLoad(tex, vec2u(cx1, cy0), 0).r \u003c ref);\n\tconst s01 = select$1(f32(0), f32(1), textureLoad(tex, vec2u(cx0, cy1), 0).r \u003c ref);\n\tconst s11 = select$1(f32(0), f32(1), textureLoad(tex, vec2u(cx1, cy1), 0).r \u003c ref);\n\treturn mix$1(mix$1(s00, s10, fx), mix$1(s01, s11, fx), fy);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tex\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"mx\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"my\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ref\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxT\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"VOXEL_SHADOW_RES\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"x0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"mx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"y0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"my\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"mx\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"x0\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"my\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"y0\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"x0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"y0\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s00\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"tex\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy0\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"ref\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s10\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"tex\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy0\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"ref\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s01\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"tex\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx0\", \"cy1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"ref\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s11\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"tex\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx1\", \"cy1\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"ref\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"s00\",\n\t\t\t\t\t\t\t\"s10\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"s01\",\n\t\t\t\t\t\t\t\"s11\",\n\t\t\t\t\t\t\t\"fx\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"fy\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"VOXEL_SHADOW_RES\": () =\u003e VOXEL_SHADOW_RES,\n\t\t\"std.floor\": () =\u003e floor$1,\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\"std.select\": () =\u003e select$1,\n\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\"std.mix\": () =\u003e mix$1\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"voxelShadowCompare\");\nconst voxelShadowLookup = typegpu_default.fn([\n\ttexture2d(f32),\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((tex, p$1, L, T1, T2, rBound, softness, voxel) =\u003e {\n\t\"use gpu\";\n\tconst RES = f32(VOXEL_SHADOW_RES);\n\tconst texelWorld = __tsover_div(__tsover_mul(rBound, 2), RES);\n\tconst u = dot$1(p$1, T1);\n\tconst w = dot$1(p$1, T2);\n\tconst dL = __tsover_sub(rBound, dot$1(p$1, L));\n\tconst mx = __tsover_sub(__tsover_mul(__tsover_add(__tsover_mul(__tsover_div(u, rBound), .5), .5), RES), .5);\n\tconst my = __tsover_sub(__tsover_mul(__tsover_add(__tsover_mul(__tsover_div(w, rBound), .5), .5), RES), .5);\n\tconst ref = __tsover_sub(dL, __tsover_add(__tsover_mul(voxel, .05), __tsover_mul(texelWorld, 2)));\n\tlet shadow = f32(0);\n\tif (softness \u003c .001) shadow = shadowCompare(tex, mx, my, ref);\n\telse {\n\t\tconst k = __tsover_mul(softness, SOFT_TAN);\n\t\tconst rSearch = max$1(__tsover_div(min$1(__tsover_mul(rBound, k), __tsover_mul(rBound, .25)), texelWorld), 1);\n\t\tlet sum = f32(0);\n\t\tlet count = f32(0);\n\t\tfor (let s = 0; s \u003c 8; s++) {\n\t\t\tconst r = __tsover_mul(sqrt(__tsover_div(__tsover_add(f32(s), .5), 8)), rSearch);\n\t\t\tconst th = __tsover_mul(f32(s), GOLDEN_ANGLE);\n\t\t\tconst sx = clamp$1(__tsover_add(mx, __tsover_mul(cos$1(th), r)), f32(0), __tsover_sub(RES, 1));\n\t\t\tconst sy = clamp$1(__tsover_add(my, __tsover_mul(sin$1(th), r)), f32(0), __tsover_sub(RES, 1));\n\t\t\tconst dep = textureLoad(tex, vec2u(u32(sx), u32(sy)), 0).r;\n\t\t\tif (dep \u003c ref) {\n\t\t\t\tsum = __tsover_add(sum, dep);\n\t\t\t\tcount = __tsover_add(count, 1);\n\t\t\t}\n\t\t}\n\t\tif (count \u003e .5) {\n\t\t\tconst avgBlocker = __tsover_div(sum, count);\n\t\t\tconst penumbra = clamp$1(__tsover_div(__tsover_mul(__tsover_sub(dL, avgBlocker), k), texelWorld), 1, rSearch);\n\t\t\tlet acc = f32(0);\n\t\t\tfor (let s = 0; s \u003c 12; s++) {\n\t\t\t\tconst r = __tsover_mul(sqrt(__tsover_div(__tsover_add(f32(s), .5), 12)), penumbra);\n\t\t\t\tconst th = __tsover_add(__tsover_mul(f32(s), GOLDEN_ANGLE), .7);\n\t\t\t\tacc = __tsover_add(acc, shadowCompare(tex, __tsover_add(mx, __tsover_mul(cos$1(th), r)), __tsover_add(my, __tsover_mul(sin$1(th), r)), ref));\n\t\t\t}\n\t\t\tshadow = __tsover_div(acc, 12);\n\t\t}\n\t}\n\treturn shadow;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tex\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"p\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"L\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"T1\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"T2\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rBound\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"voxel\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"RES\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[\"VOXEL_SHADOW_RES\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"texelWorld\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"RES\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"u\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", \"T1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"p\", \"T2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dL\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"p\", \"L\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"RES\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"my\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"RES\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ref\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"dL\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"voxel\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"texelWorld\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"shadow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"softness\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t2,\n\t\t\t\t\t\"shadow\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"shadowCompare\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"tex\",\n\t\t\t\t\t\t\t\"mx\",\n\t\t\t\t\t\t\t\"my\",\n\t\t\t\t\t\t\t\"ref\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"softness\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"SOFT_TAN\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"rSearch\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"texelWorld\"\n\t\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"rSearch\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"th\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"GOLDEN_ANGLE\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"mx\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"th\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"RES\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"my\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"th\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"RES\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"tex\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sx\"]\n\t\t\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"sy\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dep\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"ref\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"dep\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t11,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"count\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"avgBlocker\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sum\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"penumbra\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"avgBlocker\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\"texelWorld\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"rSearch\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"12\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"12\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"penumbra\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\"th\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"GOLDEN_ANGLE\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"shadowCompare\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"tex\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"th\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"my\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"th\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"ref\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"shadow\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t[5, \"12\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, \"shadow\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"VOXEL_SHADOW_RES\": () =\u003e VOXEL_SHADOW_RES,\n\t\t\"std.dot\": () =\u003e dot$1,\n\t\t\"shadowCompare\": () =\u003e shadowCompare,\n\t\t\"SOFT_TAN\": () =\u003e SOFT_TAN,\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.min\": () =\u003e min$1,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"GOLDEN_ANGLE\": () =\u003e GOLDEN_ANGLE,\n\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\"std.cos\": () =\u003e cos$1,\n\t\t\"std.sin\": () =\u003e sin$1,\n\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\"d.u32\": () =\u003e u32\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"voxelShadowLookup\");\nconst voxelRayBox = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ro, rd, c, h) =\u003e {\n\t\"use gpu\";\n\tconst sx = select$1(f32(-1), f32(1), rd.x \u003e= 0);\n\tconst sy = select$1(f32(-1), f32(1), rd.y \u003e= 0);\n\tconst sz = select$1(f32(-1), f32(1), rd.z \u003e= 0);\n\tconst ix = __tsover_div(sx, max$1(abs$1(rd.x), 1e-6));\n\tconst iy = __tsover_div(sy, max$1(abs$1(rd.y), 1e-6));\n\tconst iz = __tsover_div(sz, max$1(abs$1(rd.z), 1e-6));\n\tconst t1x = __tsover_mul(__tsover_sub(__tsover_sub(c.x, h), ro.x), ix);\n\tconst t2x = __tsover_mul(__tsover_sub(__tsover_add(c.x, h), ro.x), ix);\n\tconst t1y = __tsover_mul(__tsover_sub(__tsover_sub(c.y, h), ro.y), iy);\n\tconst t2y = __tsover_mul(__tsover_sub(__tsover_add(c.y, h), ro.y), iy);\n\tconst t1z = __tsover_mul(__tsover_sub(__tsover_sub(c.z, h), ro.z), iz);\n\tconst t2z = __tsover_mul(__tsover_sub(__tsover_add(c.z, h), ro.z), iz);\n\tconst tIn = max$1(min$1(t1x, t2x), max$1(min$1(t1y, t2y), min$1(t1z, t2z)));\n\tconst tOut = min$1(max$1(t1x, t2x), min$1(max$1(t1y, t2y), max$1(t1z, t2z)));\n\tconst ok = __tsover_mul(select$1(f32(0), f32(1), tIn \u003c= tOut), select$1(f32(0), f32(1), tOut \u003e= 0));\n\treturn select$1(f32(-1), max$1(tIn, f32(0)), ok \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ro\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rd\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sz\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ix\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sx\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sy\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"iz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sz\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [5, \"0.000001\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t1x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"ix\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t2x\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"ix\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t1y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"iy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t2y\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"iy\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t1z\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"iz\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t2z\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"iz\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tIn\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[\"t1x\", \"t2x\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[\"t1y\", \"t2y\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t[\"t1z\", \"t2z\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tOut\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"t1x\", \"t2x\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"t1y\", \"t2y\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"t1z\", \"t2z\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ok\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tIn\",\n\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t\"tOut\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"tOut\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"tIn\", [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ok\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select$1,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.abs\": () =\u003e abs$1,\n\t\t\"std.min\": () =\u003e min$1\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"voxelRayBox\");\nconst voxelRaySphere = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ro, rd, c, h) =\u003e {\n\t\"use gpu\";\n\tconst oc = ro.sub(c);\n\tconst b = dot$1(oc, rd);\n\tconst cc = __tsover_sub(dot$1(oc, oc), __tsover_mul(h, h));\n\tconst disc = __tsover_sub(__tsover_mul(b, b), cc);\n\tconst t = __tsover_sub(__tsover_mul(b, -1), sqrt(max$1(disc, 0)));\n\tconst ok = __tsover_mul(select$1(f32(0), f32(1), disc \u003e= 0), select$1(f32(0), f32(1), t \u003e= 0));\n\treturn select$1(f32(-1), t, ok \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ro\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rd\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oc\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"c\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"b\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t[\"oc\", \"rd\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"oc\", \"oc\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"h\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"disc\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"b\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"cc\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"disc\", [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ok\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"disc\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"t\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ok\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.dot\": () =\u003e dot$1,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.select\": () =\u003e select$1,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"voxelRaySphere\");\nconst voxelRayRoundedBox = typegpu_default.fn([\n\tvec3f,\n\tvec3f,\n\tvec3f,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((ro, rd, c, h, r) =\u003e {\n\t\"use gpu\";\n\tconst tBox = voxelRayBox(ro, rd, c, h);\n\tlet t = f32(-1);\n\tif (tBox \u003e= 0) {\n\t\tlet s = tBox;\n\t\tlet hit = f32(0);\n\t\tfor (let i = 0; i \u003c 8; i++) {\n\t\t\tconst dd = sdRoundBox(ro.add(rd.mul(s)).sub(c), h, h, h, r);\n\t\t\tif (dd \u003c __tsover_mul(h, .004)) {\n\t\t\t\thit = f32(1);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\ts = __tsover_add(s, dd);\n\t\t\tif (s \u003e __tsover_add(tBox, __tsover_mul(h, 3.5))) break;\n\t\t}\n\t\tt = select$1(f32(-1), s, hit \u003e .5);\n\t}\n\treturn t;\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"ro\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rd\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"c\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"r\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tBox\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"voxelRayBox\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\"h\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"tBox\",\n\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\"tBox\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"sdRoundBox\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.004\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [17]]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tBox\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"3.5\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, \"t\"]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"voxelRayBox\": () =\u003e voxelRayBox,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"sdRoundBox\": () =\u003e sdRoundBox,\n\t\t\"std.select\": () =\u003e select$1\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"voxelRayRoundedBox\");\nfunction buildVoxelFieldFn(marchLayout, voxLayout, opts) {\n\tconst { style, gridSpace } = opts;\n\tconst STEP_CAP = stepCap();\n\tconst { cellCentre, occupied, voxelDda } = buildVoxelTraversal(voxLayout, style);\n\tconst viewToGrid = typegpu_default.fn([vec3f, RotStruct], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v, rot) =\u003e {\n\t\t\"use gpu\";\n\t\tif (gridSpace === \"shape\") return rotateVec3(rotateVec3(v, voxLayout.$.vox.cam), rot);\n\t\telse return vec3f(v.x, v.y, v.z);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"v\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rot\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t11,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gridSpace\",\n\t\t\t\t\t\"===\",\n\t\t\t\t\t[103, \"shape\"]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"rotateVec3\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"rotateVec3\",\n\t\t\t\t\t\t[\"v\", [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"cam\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t], \"rot\"]\n\t\t\t\t]],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"gridSpace\": () =\u003e gridSpace,\n\t\t\t\"rotateVec3\": () =\u003e rotateVec3,\n\t\t\t\"voxLayout\": () =\u003e voxLayout,\n\t\t\t\"d.vec3f\": () =\u003e vec3f\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\tconst vertexAo = typegpu_default.fn([\n\t\tf32,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s1, s2, k) =\u003e {\n\t\t\"use gpu\";\n\t\treturn select$1(__tsover_div(__tsover_sub(3, __tsover_add(__tsover_add(s1, s2), k)), 3), f32(0), __tsover_add(s1, s2) \u003e 1.5);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"s1\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"s2\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"k\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"open\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"s1\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"s2\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"open\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"s1\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"s2\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.select\": () =\u003e select$1,\n\t\t\t\"d.f32\": () =\u003e f32\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n\treturn typegpu_default.fn([\n\t\tvec2f,\n\t\tRotStruct,\n\t\tf32\n\t], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fuv, rot, rBound) =\u003e {\n\t\t\"use gpu\";\n\t\tconst vx = voxLayout.$.vox;\n\t\tconst v = vx.voxelSize;\n\t\tconst ro = viewToGrid(vec3f(__tsover_sub(fuv.x, .5), __tsover_sub(.5, fuv.y), -1.2), rot);\n\t\tconst rd = viewToGrid(vec3f(0, 0, 1), rot);\n\t\tconst b = dot$1(ro, rd);\n\t\tconst perp2 = max$1(__tsover_sub(dot$1(ro, ro), __tsover_mul(b, b)), 0);\n\t\tconst halfSpan = sqrt(max$1(__tsover_sub(__tsover_mul(rBound, rBound), perp2), 0));\n\t\tconst tStart = max$1(__tsover_sub(__tsover_mul(b, -1), halfSpan), 0);\n\t\tconst tEnd = __tsover_add(__tsover_add(__tsover_mul(b, -1), halfSpan), .01);\n\t\tconst mp = marchLayout.$.params;\n\t\tconst texel = __tsover_div(max$1(mp.spanX, mp.spanY), f32(mp.activeRes));\n\t\tlet fieldVal = __tsover_add(__tsover_sub(sqrt(perp2), rBound), texel);\n\t\tlet payload = f32(0);\n\t\tlet cellPacked = f32(0);\n\t\tlet depth = __tsover_add(tEnd, .4);\n\t\tif (perp2 \u003c __tsover_mul(rBound, rBound)) {\n\t\t\tconst maxSteps = i32(clamp$1(__tsover_add(__tsover_div(__tsover_mul(rBound, 6), v), 8), f32(8), f32(STEP_CAP)));\n\t\t\tconst hh = voxelDda(ro, rd, tStart, tEnd, vec3f(-9999, -9999, -9999), maxSteps);\n\t\t\tif (hh.hit \u003e .5) {\n\t\t\t\tconst hp = ro.add(rd.mul(hh.t));\n\t\t\t\tconst c = cellCentre(hh.cx, hh.cy, hh.cz);\n\t\t\t\tconst l = hp.sub(c);\n\t\t\t\tconst alx = abs$1(l.x);\n\t\t\t\tconst aly = abs$1(l.y);\n\t\t\t\tconst alz = abs$1(l.z);\n\t\t\t\tlet axis = f32(0);\n\t\t\t\tif (aly \u003e alx) if (aly \u003e= alz) axis = f32(1);\n\t\t\t\telse axis = f32(2);\n\t\t\t\telse if (alz \u003e alx) axis = f32(2);\n\t\t\t\tconst la = select$1(select$1(l.x, l.y, axis \u003e .5), l.z, axis \u003e 1.5);\n\t\t\t\tconst sgn = select$1(f32(-1), f32(1), la \u003e= 0);\n\t\t\t\tconst isX = select$1(f32(0), f32(1), axis \u003c .5);\n\t\t\t\tconst isZ = select$1(f32(0), f32(1), axis \u003e 1.5);\n\t\t\t\tconst isY = __tsover_sub(__tsover_sub(1, isX), isZ);\n\t\t\t\tconst nx = __tsover_mul(sgn, isX);\n\t\t\t\tconst ny = __tsover_mul(sgn, isY);\n\t\t\t\tconst nz = __tsover_mul(sgn, isZ);\n\t\t\t\tconst bxv = __tsover_sub(1, isX);\n\t\t\t\tconst byv = isX;\n\t\t\t\tconst eyv = isZ;\n\t\t\t\tconst ezv = __tsover_sub(1, isZ);\n\t\t\t\tconst lb = __tsover_add(__tsover_mul(l.x, bxv), __tsover_mul(l.y, byv));\n\t\t\t\tconst lc = __tsover_add(__tsover_mul(l.y, eyv), __tsover_mul(l.z, ezv));\n\t\t\t\tconst h = __tsover_mul(__tsover_mul(v, .5), vx.voxelScale);\n\t\t\t\tconst u = clamp$1(__tsover_add(__tsover_div(lb, __tsover_mul(2, h)), .5), 0, 1);\n\t\t\t\tconst w = clamp$1(__tsover_add(__tsover_div(lc, __tsover_mul(2, h)), .5), 0, 1);\n\t\t\t\tconst fx = __tsover_add(hh.cx, nx);\n\t\t\t\tconst fy = __tsover_add(hh.cy, ny);\n\t\t\t\tconst fz = __tsover_add(hh.cz, nz);\n\t\t\t\tconst sB1 = occupied(__tsover_sub(fx, bxv), __tsover_sub(fy, byv), fz);\n\t\t\t\tconst sB2 = occupied(__tsover_add(fx, bxv), __tsover_add(fy, byv), fz);\n\t\t\t\tconst sC1 = occupied(fx, __tsover_sub(fy, eyv), __tsover_sub(fz, ezv));\n\t\t\t\tconst sC2 = occupied(fx, __tsover_add(fy, eyv), __tsover_add(fz, ezv));\n\t\t\t\tconst k11 = occupied(__tsover_sub(fx, bxv), __tsover_sub(__tsover_sub(fy, byv), eyv), __tsover_sub(fz, ezv));\n\t\t\t\tconst k21 = occupied(__tsover_add(fx, bxv), __tsover_sub(__tsover_add(fy, byv), eyv), __tsover_sub(fz, ezv));\n\t\t\t\tconst k12 = occupied(__tsover_sub(fx, bxv), __tsover_add(__tsover_sub(fy, byv), eyv), __tsover_add(fz, ezv));\n\t\t\t\tconst k22 = occupied(__tsover_add(fx, bxv), __tsover_add(__tsover_add(fy, byv), eyv), __tsover_add(fz, ezv));\n\t\t\t\tconst ao = mix$1(mix$1(vertexAo(sB1, sC1, k11), vertexAo(sB2, sC1, k21), u), mix$1(vertexAo(sB1, sC2, k12), vertexAo(sB2, sC2, k22), u), w);\n\t\t\t\tconst faceId = __tsover_add(__tsover_mul(axis, 2), max$1(sgn, f32(0)));\n\t\t\t\tfieldVal = __tsover_mul(texel, -1);\n\t\t\t\tpayload = __tsover_add(__tsover_mul(faceId, 65536), __tsover_mul(floor$1(__tsover_add(__tsover_mul(ao, 255), .5)), 256));\n\t\t\t\tcellPacked = __tsover_add(__tsover_add(hh.cx, __tsover_mul(hh.cy, 256)), __tsover_mul(hh.cz, 65536));\n\t\t\t\tdepth = hh.t;\n\t\t\t} else fieldVal = __tsover_add(texel, max$1(__tsover_sub(hh.minD, v), 0));\n\t\t}\n\t\treturn vec4f(fieldVal, payload, cellPacked, depth);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"fuv\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rot\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rBound\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"vx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"voxLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"vox\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"v\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\"voxelSize\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ro\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"viewToGrid\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"fuv\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"fuv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1.2\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"rot\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"viewToGrid\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"rot\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"b\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t[\"ro\", \"rd\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"perp2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t[\"ro\", \"ro\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"b\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"halfSpan\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"perp2\"\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tStart\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"halfSpan\"\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tEnd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"b\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"halfSpan\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"mp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"marchLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"texel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mp\",\n\t\t\t\t\t\t\t\t\"spanX\"\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mp\",\n\t\t\t\t\t\t\t\t\"spanY\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"mp\",\n\t\t\t\t\t\t\t\t\"activeRes\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"fieldVal\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t\t\t[\"perp2\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"texel\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"payload\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"cellPacked\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"depth\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tEnd\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"perp2\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"rBound\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"maxSteps\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"rBound\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"6\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"8\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"8\"]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"STEP_CAP\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"none\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"9999\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"9999\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"9999\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"voxelDda\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\"tStart\",\n\t\t\t\t\t\t\t\t\t\"tEnd\",\n\t\t\t\t\t\t\t\t\t\"none\",\n\t\t\t\t\t\t\t\t\t\"maxSteps\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\"hit\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"cellCentre\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hp\",\n\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"c\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"alx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"aly\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"alz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"aly\",\n\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\"alx\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"aly\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\"alz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t]]],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"alz\",\n\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\"alx\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"la\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sgn\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"la\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"isX\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"isZ\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"isY\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"isX\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"isZ\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"sgn\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"isX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"sgn\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"isY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"nz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"sgn\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"isZ\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"bxv\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"isX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"byv\",\n\t\t\t\t\t\t\t\t\t\"isX\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"eyv\",\n\t\t\t\t\t\t\t\t\t\"isZ\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ezv\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"isZ\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"lb\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"bxv\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"byv\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"lc\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"eyv\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"ezv\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"h\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"vx\",\n\t\t\t\t\t\t\t\t\t\t\t\"voxelScale\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"lb\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"lc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"h\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"nx\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"ny\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"nz\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sB1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"bxv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"byv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"fz\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sB2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"bxv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"byv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"fz\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sC1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"eyv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ezv\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"sC2\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"eyv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ezv\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"k11\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"bxv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"byv\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"eyv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ezv\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"k21\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"bxv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"byv\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"eyv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ezv\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"k12\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"bxv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"byv\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"eyv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ezv\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"k22\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"occupied\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"bxv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"byv\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"eyv\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"fz\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"ezv\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ao0\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vertexAo\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sB1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sC1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k11\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vertexAo\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sB2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sC1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k21\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ao1\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vertexAo\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sB1\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sC2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k12\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"vertexAo\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sB2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sC2\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"k22\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ao\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\"ao0\",\n\t\t\t\t\t\t\t\t\t\t\t\"ao1\",\n\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"faceId\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"axis\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t[\"sgn\", [\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"fieldVal\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"payload\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"faceId\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"65536\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"ao\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"255\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"256\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"cellPacked\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"256\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cz\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"65536\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"fieldVal\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"texel\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"minD\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"fieldVal\",\n\t\t\t\t\t\t\"payload\",\n\t\t\t\t\t\t\"cellPacked\",\n\t\t\t\t\t\t\"depth\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"voxLayout\": () =\u003e voxLayout,\n\t\t\t\"viewToGrid\": () =\u003e viewToGrid,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"std.dot\": () =\u003e dot$1,\n\t\t\t\"std.max\": () =\u003e max$1,\n\t\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\t\"marchLayout\": () =\u003e marchLayout,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"std.clamp\": () =\u003e clamp$1,\n\t\t\t\"STEP_CAP\": () =\u003e STEP_CAP,\n\t\t\t\"voxelDda\": () =\u003e voxelDda,\n\t\t\t\"cellCentre\": () =\u003e cellCentre,\n\t\t\t\"std.abs\": () =\u003e abs$1,\n\t\t\t\"std.select\": () =\u003e select$1,\n\t\t\t\"occupied\": () =\u003e occupied,\n\t\t\t\"std.mix\": () =\u003e mix$1,\n\t\t\t\"vertexAo\": () =\u003e vertexAo,\n\t\t\t\"std.floor\": () =\u003e floor$1,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"voxelFieldMarch\");\n}\nconst VOXEL_FIELD_EXTRA_FIELDS = {\n\t_vxMx: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t1,\n\t\t\t0,\n\t\t\t0\n\t\t]\n\t},\n\t_vxMy: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t0,\n\t\t\t1,\n\t\t\t0\n\t\t]\n\t},\n\t_vxMz: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t0,\n\t\t\t0,\n\t\t\t1\n\t\t]\n\t},\n\t_vxVoxel: {\n\t\tschema: f32,\n\t\tinitial: .03\n\t},\n\t_vxGridOrigin: {\n\t\tschema: f32,\n\t\tinitial: -.6\n\t},\n\t_vxL: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t0,\n\t\t\t0,\n\t\t\t-1\n\t\t]\n\t},\n\t_vxT1: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t1,\n\t\t\t0,\n\t\t\t0\n\t\t]\n\t},\n\t_vxT2: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t0,\n\t\t\t1,\n\t\t\t0\n\t\t]\n\t}\n};\nfunction clampVoxel(size$1, rBound) {\n\tconst minCell = 2 * (rBound + .002) / VOXEL_GRID_MAX;\n\treturn Math.max(Number.isFinite(size$1) ? size$1 : .03, minCell, .002);\n}\nvar cross = (a, b) =\u003e ({\n\tx: a.y * b.z - a.z * b.y,\n\ty: a.z * b.x - a.x * b.z,\n\tz: a.x * b.y - a.y * b.x\n});\nvar normalize$1 = (a) =\u003e {\n\tconst l = Math.hypot(a.x, a.y, a.z) || 1;\n\treturn {\n\t\tx: a.x / l,\n\t\ty: a.y / l,\n\t\tz: a.z / l\n\t};\n};\nvar clampNum = (v, lo, hi) =\u003e Math.min(hi, Math.max(lo, v));\nfunction createVoxelFieldComputeNode(params, spec) {\n\tconst root = params.gpu?.root;\n\tif (!root) return null;\n\tconst cfg = parseShapeConfigValue(spec.getShapeConfig());\n\tconst shapeSdfUrl = params.getCpuValue(\"shapeSdfUrl\") || \"\";\n\tconst shapeType = params.getCpuValue(\"shapeType\") || cfg.type || \"\";\n\tlet values = spec.getValues();\n\tlet lastRBound = .6;\n\tlet voxel = clampVoxel(values.voxelSize, lastRBound);\n\tconst extraPad = () =\u003e voxel * HALF_DIAGONAL + .01;\n\tlet setup;\n\tif (shapeSdfUrl) setup = createSvg3dSdfSetup(params, shapeSdfUrl, isSvg3dShapeType(shapeType) ? spec.getShapeConfig : () =\u003e ({\n\t\t...parseShapeConfigValue(spec.getShapeConfig()),\n\t\ttype: \"svgExtrude3D\",\n\t\tdepth: values.depth,\n\t\tbevel: 0,\n\t\trotX: 0,\n\t\trotY: 0,\n\t\trotZ: 0\n\t}), { extraPad });\n\telse if (is3dShapeType(shapeType)) setup = createAnalytic3dSdfSetup(root, shapeType, cfg, spec.getShapeConfig, { extraPad });\n\telse setup = createAnalytic2dExtrudeSetup(root, resolveShapeType(shapeType, cfg), spec.getShapeConfig, () =\u003e values.depth * .5, { extraPad });\n\tconst voxLayout = makeVoxelLayout();\n\tconst bakeLayout = makeVoxelBakeLayout();\n\tconst voxUniform = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(VoxelMarchParams), \"voxUniform\");\n\tconst occBuffer = createStateBuffer(root, u32, OCC_BUFFER_WORDS);\n\tconst shadowTexture = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\tsize: [VOXEL_SHADOW_RES, VOXEL_SHADOW_RES],\n\t\tformat: VOXEL_SHADOW_FORMAT\n\t}).$usage(\"storage\", \"sampled\"), \"shadowTexture\");\n\tparams.onCleanup(() =\u003e {\n\t\toccBuffer.destroy();\n\t\tshadowTexture.destroy();\n\t});\n\tconst voxBindGroup = root.createBindGroup(voxLayout, {\n\t\tvox: voxUniform.buffer,\n\t\tocc: occBuffer,\n\t\tshadowMap: shadowTexture\n\t});\n\tconst bakeBindGroup = root.createBindGroup(bakeLayout, {\n\t\tvox: voxUniform.buffer,\n\t\tocc: occBuffer\n\t});\n\tconst march = buildVoxelFieldFn(setup.layout, voxLayout, {\n\t\tstyle: spec.style,\n\t\tgridSpace: spec.gridSpace\n\t});\n\tconst kernel = buildVolumetricFieldKernel(setup.layout, march);\n\tconst compute = createVolumetricFieldCompute(root, setup.layout, kernel, params.onCleanup, {\n\t\tparamsUniform: setup.marchParamsBuffer,\n\t\tsdfSourceTexture: setup.sdfSourceTexture,\n\t\textraBindGroups: [voxBindGroup]\n\t});\n\tconst fieldTexture = params.registerComputeTexture(compute.fieldTexture);\n\tconst shadowMap = params.registerComputeTexture(shadowTexture);\n\tconst bakeFn = buildVoxelBakeFn(setup.sdfFn, setup.layout, bakeLayout, spec.gridSpace);\n\tconst setupBindGroup = root.createBindGroup(setup.layout, {\n\t\tfield: compute.fieldTexture,\n\t\tparams: setup.marchParamsBuffer.buffer,\n\t\t...setup.sdfSourceTexture ? { sdfSource: setup.sdfSourceTexture } : {}\n\t});\n\tconst bake = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((wx, iy, iz) =\u003e {\n\t\t\"use gpu\";\n\t\tbakeFn(wx, iy, iz);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"wx\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"iy\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"iz\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"bakeFn\",\n\t\t\t\t[\n\t\t\t\t\t\"wx\",\n\t\t\t\t\t\"iy\",\n\t\t\t\t\t\"iz\"\n\t\t\t\t]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"bakeFn\": () =\u003e bakeFn }\n\t}) \u0026\u0026 $.f)({}), { bindGroup: setupBindGroup }).with(bakeBindGroup);\n\tconst shadowFn = buildVoxelShadowMapFn(voxLayout, spec.style);\n\tconst shadowPass = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((i, j) =\u003e {\n\t\t\"use gpu\";\n\t\tshadowFn(i, j);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"i\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"j\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"shadowFn\",\n\t\t\t\t[\"i\", \"j\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"shadowFn\": () =\u003e shadowFn }\n\t}) \u0026\u0026 $.f)({}), {\n\t\tbindGroup: voxBindGroup,\n\t\tsize: [VOXEL_SHADOW_RES, VOXEL_SHADOW_RES]\n\t});\n\tlet activeRes = compute.maxRes;\n\tlet lastMarchKey = \"\";\n\tlet lastBakeKey = \"\";\n\tlet lastShadowKey = \"\";\n\tconst marchEvery = isMobileGpuViewport() ? 2 : 1;\n\tlet changedFrames = 0;\n\tconst getComputeNodes = (frameParams) =\u003e {\n\t\tvalues = spec.getValues();\n\t\tvoxel = clampVoxel(values.voxelSize, lastRBound);\n\t\tsetup.update(frameParams);\n\t\tconst fp = setup.getFootprint();\n\t\tlastRBound = fp.rBound;\n\t\tvoxel = clampVoxel(voxel, fp.rBound);\n\t\tconst scale = params.getCpuValue(\"scale\") ?? 1;\n\t\tactiveRes = resolveActiveFieldRes(fp.spanX, fp.spanY, scale, params.dimensions.height, compute.maxRes, activeRes);\n\t\tconst pitch = values.pitch * DEG;\n\t\tconst yaw = values.yaw * DEG;\n\t\tconst cam = {\n\t\t\tcx: Math.cos(pitch),\n\t\t\tsx: Math.sin(pitch),\n\t\t\tcy: Math.cos(yaw),\n\t\t\tsy: Math.sin(yaw),\n\t\t\tcz: 1,\n\t\t\tsz: 0\n\t\t};\n\t\tconst rot = setup.getRotation();\n\t\tconst R = (x, y, z) =\u003e {\n\t\t\tconst a = rotateVecCpu(x, y, z, cam);\n\t\t\treturn rotateVecCpu(a.x, a.y, a.z, rot);\n\t\t};\n\t\tconst Mx = R(1, 0, 0);\n\t\tconst My = R(0, 1, 0);\n\t\tconst Mz = R(0, 0, 1);\n\t\tconst az = values.lightAngle * DEG;\n\t\tconst el = clampNum(values.lightElevation, 1, 89) * DEG;\n\t\tconst LV = {\n\t\t\tx: Math.cos(az) * Math.cos(el),\n\t\t\ty: -Math.sin(az) * Math.cos(el),\n\t\t\tz: -Math.sin(el)\n\t\t};\n\t\tconst LG = spec.gridSpace === \"shape\" ? R(LV.x, LV.y, LV.z) : LV;\n\t\tconst T1 = normalize$1(cross(LG, Math.abs(LG.x) \u003c .9 ? {\n\t\t\tx: 1,\n\t\t\ty: 0,\n\t\t\tz: 0\n\t\t} : {\n\t\t\tx: 0,\n\t\t\ty: 1,\n\t\t\tz: 0\n\t\t}));\n\t\tconst T2 = cross(LG, T1);\n\t\tconst gridOrigin = -fp.rBound;\n\t\tconst gridN = Math.min(VOXEL_GRID_MAX, Math.ceil(2 * fp.rBound / voxel));\n\t\tconst gridW = Math.ceil(gridN / 4);\n\t\tconst fill = clampNum(values.fill, -.5, .5);\n\t\tconst voxelScale = clampNum(values.voxelScale, .2, 1);\n\t\tconst bevel = clampNum(values.bevel, 0, 1);\n\t\tvoxUniform.write({\n\t\t\tcam,\n\t\t\tlightDir: vec3f(LG.x, LG.y, LG.z),\n\t\t\tvoxelSize: voxel,\n\t\t\tlightT1: vec3f(T1.x, T1.y, T1.z),\n\t\t\tfill,\n\t\t\tlightT2: vec3f(T2.x, T2.y, T2.z),\n\t\t\tvoxelScale,\n\t\t\tbevel,\n\t\t\tgridOrigin,\n\t\t\tgridN,\n\t\t\tgridW\n\t\t});\n\t\tconst geometryKey = setup.getGeometryKey ? setup.getGeometryKey() : setup.getStateKey();\n\t\tconst gridKey = spec.gridSpace === \"view\" ? `${setup.getStateKey()},${values.pitch},${values.yaw},${voxel},${fill},${gridN}` : `${geometryKey},${voxel},${fill},${gridN}`;\n\t\tconst subShapeKey = `${voxelScale},${bevel}`;\n\t\tconst lightKey = `${LG.x},${LG.y},${LG.z}`;\n\t\tconst bakeKey = gridKey;\n\t\tconst shadowKey = `${gridKey},${subShapeKey},${lightKey}`;\n\t\tconst marchKey = `${gridKey},${subShapeKey},${setup.getStateKey()},${values.pitch},${values.yaw},${activeRes}`;\n\t\tconst rebake = bakeKey !== lastBakeKey;\n\t\tconst reshadow = shadowKey !== lastShadowKey;\n\t\tconst remarch = marchKey !== lastMarchKey;\n\t\tif (!rebake \u0026\u0026 !reshadow \u0026\u0026 !remarch) return null;\n\t\tif (remarch) {\n\t\t\tchangedFrames++;\n\t\t\tif (marchEvery \u003e 1 \u0026\u0026 changedFrames % marchEvery !== 0 \u0026\u0026 !rebake) return null;\n\t\t}\n\t\tlastBakeKey = bakeKey;\n\t\tlastShadowKey = shadowKey;\n\t\tconst steps = [];\n\t\tif (rebake) steps.push(() =\u003e bake.dispatchThreads(gridW, gridN, gridN));\n\t\tif (reshadow) {\n\t\t\tparams.setExtraField(\"_vxL\", [\n\t\t\t\tLG.x,\n\t\t\t\tLG.y,\n\t\t\t\tLG.z\n\t\t\t]);\n\t\t\tparams.setExtraField(\"_vxT1\", [\n\t\t\t\tT1.x,\n\t\t\t\tT1.y,\n\t\t\t\tT1.z\n\t\t\t]);\n\t\t\tparams.setExtraField(\"_vxT2\", [\n\t\t\t\tT2.x,\n\t\t\t\tT2.y,\n\t\t\t\tT2.z\n\t\t\t]);\n\t\t\tsteps.push(shadowPass);\n\t\t}\n\t\tif (remarch) {\n\t\t\tlastMarchKey = marchKey;\n\t\t\tsetup.setActiveRes(activeRes);\n\t\t\tparams.setExtraField(\"_vfOriginX\", fp.originX);\n\t\t\tparams.setExtraField(\"_vfOriginY\", fp.originY);\n\t\t\tparams.setExtraField(\"_vfSpanX\", fp.spanX);\n\t\t\tparams.setExtraField(\"_vfSpanY\", fp.spanY);\n\t\t\tparams.setExtraField(\"_vfActiveRes\", activeRes);\n\t\t\tparams.setExtraField(\"_vfRBound\", fp.rBound);\n\t\t\tparams.setExtraField(\"_vxMx\", [\n\t\t\t\tMx.x,\n\t\t\t\tMx.y,\n\t\t\t\tMx.z\n\t\t\t]);\n\t\t\tparams.setExtraField(\"_vxMy\", [\n\t\t\t\tMy.x,\n\t\t\t\tMy.y,\n\t\t\t\tMy.z\n\t\t\t]);\n\t\t\tparams.setExtraField(\"_vxMz\", [\n\t\t\t\tMz.x,\n\t\t\t\tMz.y,\n\t\t\t\tMz.z\n\t\t\t]);\n\t\t\tparams.setExtraField(\"_vxVoxel\", voxel);\n\t\t\tparams.setExtraField(\"_vxGridOrigin\", gridOrigin);\n\t\t\tsteps.push(() =\u003e compute.dispatch(activeRes));\n\t\t}\n\t\treturn steps;\n\t};\n\treturn {\n\t\toutputs: {\n\t\t\tvolumetricFieldTexture: fieldTexture,\n\t\t\tvoxelShadowMap: shadowMap\n\t\t},\n\t\tgetComputeNodes\n\t};\n}\nvar SUBSAMPLES = [\n\t[1 / 16, -3 / 16],\n\t[-1 / 16, 3 / 16],\n\t[5 / 16, 1 / 16],\n\t[-3 / 16, -5 / 16],\n\t[-5 / 16, 5 / 16],\n\t[-7 / 16, -1 / 16],\n\t[3 / 16, 7 / 16],\n\t[7 / 16, -7 / 16]\n];\nvar FAR = 1e9;\nvar styleOf = (v) =\u003e v === \"sphere\" || v === \"rounded\" ? v : \"cube\";\nvar gridSpaceOf = (v) =\u003e v === \"view\" ? \"view\" : \"shape\";\nfunction voxelSurface(spec) {\n\tconst spine = shapedSurface({\n\t\tstencil: \"centre\",\n\t\tcentreTap: \"fast\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst style = styleOf(params.propValues[spec.style.name]);\n\t\t\tconst gridSpace = gridSpaceOf(params.propValues[spec.gridSpace.name]);\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst view = viewRay(params, field);\n\t\t\tconst Mx = u._vxMx;\n\t\t\tconst My = u._vxMy;\n\t\t\tconst Mz = u._vxMz;\n\t\t\tconst toGrid = (p$1) =\u003e gridSpace === \"shape\" ? add(add(mul(Mx, p$1.member(\"x\")), mul(My, p$1.member(\"y\"))), mul(Mz, p$1.member(\"z\"))) : p$1;\n\t\t\tconst toView = (n) =\u003e gridSpace === \"shape\" ? vec3(dot(Mx, n), dot(My, n), dot(Mz, n)) : n;\n\t\t\tconst suv = frame.sdfUV;\n\t\t\tconst roG = local(toGrid(vec3(sub(suv.member(\"x\"), .5), sub(.5, suv.member(\"y\")), -1.2)), \"vxRo\");\n\t\t\tconst rdG = local(toGrid(vec3(0, 0, 1)), \"vxRd\");\n\t\t\tconst pxUV = local(div(field.pxH, max(u.scale, .001)), \"vxPx\");\n\t\t\tconst ex = local(toGrid(vec3(pxUV, 0, 0)), \"vxEx\");\n\t\t\tconst ey = local(toGrid(vec3(0, neg(pxUV), 0)), \"vxEy\");\n\t\t\tconst v = local(u._vxVoxel, \"vxSize\");\n\t\t\tconst o = local(u._vxGridOrigin, \"vxOrigin\");\n\t\t\tconst half = local(mul(mul(v, .5), uniformOf(spec.voxelScale, params)), \"vxHalf\");\n\t\t\tconst rEff = local(max(mul(uniformOf(spec.bevel, params), half), mul(half, .04)), \"vxREff\");\n\t\t\tconst span = local(mul(o, -2), \"vxSpan\");\n\t\t\tconst rayHit = (ro, centre) =\u003e {\n\t\t\t\tif (style === \"sphere\") return call(voxelRaySphere, \"voxelRaySphere\", [\n\t\t\t\t\tro,\n\t\t\t\t\trdG,\n\t\t\t\t\tcentre,\n\t\t\t\t\thalf\n\t\t\t\t]);\n\t\t\t\tif (style === \"rounded\") return call(voxelRayRoundedBox, \"voxelRayRoundedBox\", [\n\t\t\t\t\tro,\n\t\t\t\t\trdG,\n\t\t\t\t\tcentre,\n\t\t\t\t\thalf,\n\t\t\t\t\tmul(uniformOf(spec.bevel, params), half)\n\t\t\t\t]);\n\t\t\t\treturn call(voxelRayBox, \"voxelRayBox\", [\n\t\t\t\t\tro,\n\t\t\t\t\trdG,\n\t\t\t\t\tcentre,\n\t\t\t\t\thalf\n\t\t\t\t]);\n\t\t\t};\n\t\t\tconst res = local(u._vfActiveRes, \"vxRes\");\n\t\t\tconst ox = u._vfOriginX;\n\t\t\tconst oy = u._vfOriginY;\n\t\t\tconst sx = u._vfSpanX;\n\t\t\tconst sy = u._vfSpanY;\n\t\t\tconst maxT = sub(res, 1);\n\t\t\tconst px = sub(mul(div(sub(suv.member(\"x\"), ox), sx), res), .5);\n\t\t\tconst py = sub(mul(div(sub(suv.member(\"y\"), oy), sy), res), .5);\n\t\t\tconst x0 = local(clamp(floor(px), 0, maxT), \"vxX0\");\n\t\t\tconst y0 = local(clamp(floor(py), 0, maxT), \"vxY0\");\n\t\t\tconst x1 = min(add(x0, 1), maxT);\n\t\t\tconst y1 = min(add(y0, 1), maxT);\n\t\t\tconst texelUV = (tx, ty) =\u003e vec2(add(ox, mul(div(add(tx, .5), res), sx)), add(oy, mul(div(add(ty, .5), res), sy)));\n\t\t\tconst cands = [\n\t\t\t\t{\n\t\t\t\t\ttx: x0,\n\t\t\t\t\tty: y0,\n\t\t\t\t\ttag: \"00\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttx: x1,\n\t\t\t\t\tty: y0,\n\t\t\t\t\ttag: \"10\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttx: x0,\n\t\t\t\t\tty: y1,\n\t\t\t\t\ttag: \"01\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\ttx: x1,\n\t\t\t\t\tty: y1,\n\t\t\t\t\ttag: \"11\"\n\t\t\t\t}\n\t\t\t].map((c) =\u003e {\n\t\t\t\tconst h = (name) =\u003e `${name}${c.tag}`;\n\t\t\t\tconst uvC = local(texelUV(c.tx, c.ty), h(\"vxUv\"));\n\t\t\t\tconst tex = local(frame.texelSampler(uvC), h(\"vxTex\"));\n\t\t\t\tconst cov = local(select(lt(tex.member(\"x\"), 0), 1, 0), h(\"cov\"));\n\t\t\t\tconst g = tex.member(\"y\");\n\t\t\t\tconst ao = local(div(floor(div(sub(g, mul(floor(div(g, 65536)), 65536)), 256)), 255), h(\"ao\"));\n\t\t\t\tconst bCh = tex.member(\"z\");\n\t\t\t\tconst cz = local(floor(div(bCh, 65536)), h(\"cz\"));\n\t\t\t\tconst bRest = sub(bCh, mul(cz, 65536));\n\t\t\t\tconst cy = local(floor(div(bRest, 256)), h(\"cy\"));\n\t\t\t\tconst cell = local(vec3(local(sub(bRest, mul(cy, 256)), h(\"cx\")), cy, cz), h(\"cell\"));\n\t\t\t\tconst centre = local(add(mul(add(cell, .5), v), o), h(\"centre\"));\n\t\t\t\tconst texDepth = tex.member(\"w\");\n\t\t\t\tconst texHp = local(toGrid(vec3(sub(uvC.member(\"x\"), .5), sub(.5, uvC.member(\"y\")), sub(texDepth, 1.2))), h(\"texHp\"));\n\t\t\t\tconst tHit = local(select(gt(cov, .5), rayHit(roG, centre), -1), h(\"tC\"));\n\t\t\t\tconst valid = gt(tHit, -.5);\n\t\t\t\tconst hp = local(select(valid, add(roG, mul(rdG, tHit)), texHp), h(\"hp\"));\n\t\t\t\tconst depth = local(select(valid, tHit, texDepth), h(\"depth\"));\n\t\t\t\tconst l = local(sub(hp, centre), h(\"l\"));\n\t\t\t\tconst al = local(abs(l), h(\"al\"));\n\t\t\t\tconst mx = max(al.member(\"x\"), max(al.member(\"y\"), al.member(\"z\")));\n\t\t\t\tconst isX = local(select(ge(al.member(\"x\"), mx), 1, 0), h(\"isX\"));\n\t\t\t\tconst isY = local(mul(select(ge(al.member(\"y\"), mx), 1, 0), sub(1, isX)), h(\"isY\"));\n\t\t\t\tconst isZ = sub(sub(1, isX), isY);\n\t\t\t\tconst faceN = local(mul(sign(l), vec3(isX, isY, isZ)), h(\"faceN\"));\n\t\t\t\tconst tangentMask = local(sub(1, abs(faceN)), h(\"tMask\"));\n\t\t\t\tlet nGraw;\n\t\t\t\tif (style === \"sphere\") nGraw = normalize(l);\n\t\t\t\telse {\n\t\t\t\t\tconst q = mul(mul(sign(l), max(sub(al, sub(half, rEff)), vec3(0, 0, 0))), tangentMask);\n\t\t\t\t\tnGraw = normalize(add(mul(faceN, rEff), q));\n\t\t\t\t}\n\t\t\t\tconst nG = local(nGraw, h(\"nG\"));\n\t\t\t\tconst nV = local(toView(nG), h(\"nV\"));\n\t\t\t\tconst normal = local(vec3(nV.member(\"x\"), neg(nV.member(\"y\")), nV.member(\"z\")), h(\"n\"));\n\t\t\t\tconst lt2 = mul(al, tangentMask);\n\t\t\t\tconst edge = local(clamp(div(max(max(lt2.member(\"x\"), lt2.member(\"y\")), lt2.member(\"z\")), half), 0, 1), h(\"edge\"));\n\t\t\t\tconst cellHash = local(call(hash13, \"hash13\", [add(cell, vec3(.37, .61, .83))]), h(\"hash\"));\n\t\t\t\tconst heightT = local(clamp(div(mul(add(cy, .5), v), span), 0, 1), h(\"heightT\"));\n\t\t\t\tconst depthT = local(clamp(div(sub(depth, add(1.2, o)), span), 0, 1), h(\"depthT\"));\n\t\t\t\tconst tSort = local(select(valid, tHit, FAR), h(\"tSort\"));\n\t\t\t\treturn {\n\t\t\t\t\ttag: c.tag,\n\t\t\t\t\tcov,\n\t\t\t\t\tcell,\n\t\t\t\t\tcentre,\n\t\t\t\t\thp,\n\t\t\t\t\tnG,\n\t\t\t\t\ttSort,\n\t\t\t\t\tframe: {\n\t\t\t\t\t\tfield,\n\t\t\t\t\t\tcoverage: cov,\n\t\t\t\t\t\tnormal,\n\t\t\t\t\t\tao,\n\t\t\t\t\t\tcell,\n\t\t\t\t\t\tcellHash,\n\t\t\t\t\t\theightT,\n\t\t\t\t\t\tdepthT,\n\t\t\t\t\t\tedge,\n\t\t\t\t\t\tview,\n\t\t\t\t\t\tstyle\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t});\n\t\t\tconst sameAs0 = (k) =\u003e local(mul(select(lt(abs(sub(cands[k].cell, cands[0].cell)).member(\"x\"), .5), 1, 0), mul(select(lt(abs(sub(cands[k].cell, cands[0].cell)).member(\"y\"), .5), 1, 0), select(lt(abs(sub(cands[k].cell, cands[0].cell)).member(\"z\"), .5), 1, 0))), `vxSame${k}`);\n\t\t\tconst same = [\n\t\t\t\tfloatE(1),\n\t\t\t\tsameAs0(1),\n\t\t\t\tsameAs0(2),\n\t\t\t\tsameAs0(3)\n\t\t\t];\n\t\t\tconst allOne = local(mul(mul(mul(same[1], same[2]), same[3]), mul(mul(cands[0].cov, cands[1].cov), mul(cands[2].cov, cands[3].cov))), \"vxAllOne\");\n\t\t\tconst shadowTex = params.computeOutputs?.voxelShadowMap;\n\t\t\tlet shadow = floatE(0);\n\t\t\tif (shadowTex) {\n\t\t\t\tconst pick = (a, b) =\u003e {\n\t\t\t\t\tconst aWins = lt(a.tSort, b.tSort);\n\t\t\t\t\treturn {\n\t\t\t\t\t\ttSort: select(aWins, a.tSort, b.tSort),\n\t\t\t\t\t\thp: select(aWins, a.hp, b.hp),\n\t\t\t\t\t\tnG: select(aWins, a.nG, b.nG)\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t\tconst best = pick(pick(cands[0], cands[1]), pick(cands[2], cands[3]));\n\t\t\t\tconst hpS = local(best.hp, \"vxHpShadow\");\n\t\t\t\tconst nS = local(best.nG, \"vxNShadow\");\n\t\t\t\tconst lookup = call(voxelShadowLookup, \"voxelShadowLookup\", [\n\t\t\t\t\tshadowTex.accessor(),\n\t\t\t\t\tadd(hpS, mul(nS, mul(v, .12))),\n\t\t\t\t\tu._vxL,\n\t\t\t\t\tu._vxT1,\n\t\t\t\t\tu._vxT2,\n\t\t\t\t\tneg(o),\n\t\t\t\t\tuniformOf(spec.shadowSoftness, params),\n\t\t\t\t\tv\n\t\t\t\t]);\n\t\t\t\tconst facing = gt(dot(nS, u._vxL), -.12);\n\t\t\t\tshadow = guarded(gt(mul(select(gt(u.shadows, .001), 1, 0), select(facing, 1, 0)), .5), lookup, floatE(1), \"shadow\", [hpS, nS]);\n\t\t\t}\n\t\t\tconst shadeDeps = cands.flatMap((c) =\u003e [\n\t\t\t\tc.cov,\n\t\t\t\tc.centre,\n\t\t\t\tc.tSort,\n\t\t\t\tc.frame.normal,\n\t\t\t\tc.frame.ao,\n\t\t\t\tc.frame.cellHash,\n\t\t\t\tc.frame.heightT,\n\t\t\t\tc.frame.depthT,\n\t\t\t\tc.frame.edge\n\t\t\t]);\n\t\t\tconst shade0 = local(spec.surface({\n\t\t\t\t...cands[0].frame,\n\t\t\t\tshadow\n\t\t\t}, frame, params).member(\"rgb\"), \"vxShade00\");\n\t\t\tconst shaded = cands.map((c, k) =\u003e k === 0 ? shade0 : guarded(lt(same[k], .5), spec.surface({\n\t\t\t\t...c.frame,\n\t\t\t\tshadow\n\t\t\t}, frame, params).member(\"rgb\"), shade0, `vxShade${c.tag}`, k === 1 ? shadeDeps : []));\n\t\t\tlet alpha = floatE(0);\n\t\t\tlet rgb = vec3(0, 0, 0);\n\t\t\tSUBSAMPLES.forEach(([dx, dy], si) =\u003e {\n\t\t\t\tconst ro = local(add(add(roG, mul(ex, dx)), mul(ey, dy)), `vxRo${si}`);\n\t\t\t\tconst ts = cands.map((c) =\u003e {\n\t\t\t\t\tconst t = local(select(gt(c.cov, .5), rayHit(ro, c.centre), -1), `vxTr${si}_${c.tag}`);\n\t\t\t\t\treturn local(select(gt(t, -.5), t, FAR), `vxT${si}_${c.tag}`);\n\t\t\t\t});\n\t\t\t\tconst t23 = min(ts[2], ts[3]);\n\t\t\t\tconst t123 = min(ts[1], t23);\n\t\t\t\tconst best = min(ts[0], t123);\n\t\t\t\tconst col = select(lt(ts[0], t123), shaded[0], select(lt(ts[1], t23), shaded[1], select(lt(ts[2], ts[3]), shaded[2], shaded[3])));\n\t\t\t\tconst hit = local(select(lt(best, FAR * .5), 1, 0), `vxHit${si}`);\n\t\t\t\talpha = add(alpha, hit);\n\t\t\t\trgb = add(rgb, mul(col, hit));\n\t\t\t});\n\t\t\tconst resolved = vec4(div(rgb, max(alpha, 1e-4)), div(alpha, SUBSAMPLES.length));\n\t\t\tconst interior = vec4(shade0, 1);\n\t\t\tconst out = guarded(lt(allOne, .5), resolved, interior, \"vxOut\", [shade0, ...shaded.slice(1)]);\n\t\t\treturn guarded(insideShape(field.sdf, field.pxH), out, ZERO, \"voxels\");\n\t\t}\n\t});\n\tconst compute = (params) =\u003e {\n\t\tconst num = (ref, fallback) =\u003e {\n\t\t\tif (!ref) return fallback;\n\t\t\tconst raw = params.getCpuValue(ref.name);\n\t\t\treturn typeof raw === \"number\" \u0026\u0026 Number.isFinite(raw) ? raw : fallback;\n\t\t};\n\t\tconst clock = () =\u003e {\n\t\t\tconst t = params.getCpuValue(\"_animTime\");\n\t\t\treturn typeof t === \"number\" \u0026\u0026 Number.isFinite(t) ? t : 0;\n\t\t};\n\t\treturn createVoxelFieldComputeNode(params, {\n\t\t\tstyle: styleOf(params.propValues[spec.style.name]),\n\t\t\tgridSpace: gridSpaceOf(params.propValues[spec.gridSpace.name]),\n\t\t\tgetShapeConfig: () =\u003e params.getCpuValue(\"shape\"),\n\t\t\tgetValues: () =\u003e ({\n\t\t\t\tvoxelSize: num(spec.voxelSize, .03),\n\t\t\t\tfill: num(spec.fill, 0),\n\t\t\t\tvoxelScale: num(spec.voxelScale, 1),\n\t\t\t\tbevel: num(spec.bevel, 0),\n\t\t\t\tpitch: num(spec.pitch, 0),\n\t\t\t\tyaw: num(spec.yaw, 0) + (spec.spin ? clock() * 36 : 0),\n\t\t\t\tlightAngle: num(spec.lightAngle, 225),\n\t\t\t\tlightElevation: num(spec.lightElevation, 45),\n\t\t\t\tdepth: num(spec.depth, .12)\n\t\t\t})\n\t\t});\n\t};\n\treturn {\n\t\textraFields: {\n\t\t\t...spine.extraFields,\n\t\t\t...VOXEL_FIELD_EXTRA_FIELDS\n\t\t},\n\t\tcompute,\n\t\tgpu: spine.gpu\n\t};\n}\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"sphere3D\",\n\tradius: .35\n});\nvar KEY_WRAP = .12;\nvar GROUND_GAIN = .35;\nvar GLOSS_EXP_RANGE = [3, 7.5];\nvar VARIATION_RANGE = .6;\nvar SEAM_WIDTH = [.04, .12];\nvar SEAM_DARKEN = .75;\nconst componentDefinition = defineStd({\n\tname: \"Voxels\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Rebuild any shape out of voxels — a flat shape becomes chunky pixel art, a 3D shape a lit voxel model with smooth ambient occlusion, cast shadows, a key light you can orbit or drive, and per-cube colour\",\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the voxel model\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the voxel model (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the voxel model in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tvoxelSize: {\n\t\t\tdefault: .035,\n\t\t\tdescription: \"Edge length of one voxel relative to the shape field — small for fine detail, large for chunky blocks\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .006,\n\t\t\t\tmax: .15,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Voxel Size\",\n\t\t\t\tgroup: \"Voxels\"\n\t\t\t}\n\t\t},\n\t\tvoxelShape: {\n\t\t\tdefault: \"cube\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What each cell is built from: hard cubes, rounded cubes (see Bevel) or spheres\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Cube\",\n\t\t\t\t\t\tvalue: \"cube\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Rounded Cube\",\n\t\t\t\t\t\tvalue: \"rounded\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Sphere\",\n\t\t\t\t\t\tvalue: \"sphere\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Voxel Shape\",\n\t\t\t\tgroup: \"Voxels\"\n\t\t\t}\n\t\t},\n\t\tvoxelScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Size of each voxel inside its cell — 1 = touching neighbours, lower opens gaps between the blocks\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Voxel Fill\",\n\t\t\t\tgroup: \"Voxels\"\n\t\t\t}\n\t\t},\n\t\tfill: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"How eagerly cells fill in along the surface — negative carves a thinner model, positive puffs it out\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -.5,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Surface Bias\",\n\t\t\t\tgroup: \"Voxels\"\n\t\t\t}\n\t\t},\n\t\tbevel: {\n\t\t\tdefault: .08,\n\t\t\tdescription: \"Edge rounding of each voxel as a fraction of its size — a hairline chamfer catching light on cubes, the corner radius of rounded cubes\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bevel\",\n\t\t\t\tgroup: \"Voxels\"\n\t\t\t}\n\t\t},\n\t\tdepth: {\n\t\t\tdefault: .12,\n\t\t\tdescription: \"Thickness given to flat shapes (2D shapes and flat SVGs) so they become a slab of voxels — 3D shapes ignore it\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .6,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Depth\",\n\t\t\t\tgroup: \"Voxels\"\n\t\t\t}\n\t\t},\n\t\tgridSpace: {\n\t\t\tdefault: \"shape\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Model: the grid rotates with the shape like a built voxel model. Screen: the grid is fixed to the canvas and the shape moves through it like a 3D pixelation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Model\",\n\t\t\t\t\tvalue: \"shape\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Screen\",\n\t\t\t\t\tvalue: \"view\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Grid\",\n\t\t\t\tgroup: \"Voxels\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#6ea8ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Base colour of the voxels (the first colour of the palette mode)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#1d2b4f\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second palette colour — blended in by height, depth, per voxel or on the side faces\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorMode: {\n\t\t\tdefault: \"height\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"How the two colours are laid over the model: one solid colour, a gradient by height or depth, a random pick per voxel, or Color A on top faces and Color B on the sides\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Solid\",\n\t\t\t\t\t\tvalue: \"solid\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Height\",\n\t\t\t\t\t\tvalue: \"height\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Depth\",\n\t\t\t\t\t\tvalue: \"depth\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Random\",\n\t\t\t\t\t\tvalue: \"random\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Top / Sides\",\n\t\t\t\t\t\tvalue: \"faces\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Palette\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorVariation: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Per-voxel tonal jitter — the slightly-off shades that make blocks read as individual bricks\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variation\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 225,\n\t\t\tdescription: \"Direction the key light comes from, in degrees around the canvas — shadows fall away from it\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tlightElevation: {\n\t\t\tdefault: 42,\n\t\t\tdescription: \"How high the key light sits above the canvas — low for long raking shadows, high for a flat top-down light\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 5,\n\t\t\t\tmax: 85,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Elevation\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tlightColor: {\n\t\t\tdefault: \"#fff2df\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Colour of the key light\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Light Color\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tlightIntensity: {\n\t\t\tdefault: 1.1,\n\t\t\tdescription: \"Strength of the key light\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Light Intensity\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tambientColor: {\n\t\t\tdefault: \"#9fb4d8\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Sky colour of the ambient light — the fill on faces the key light misses\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Ambient Color\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tambient: {\n\t\t\tdefault: .55,\n\t\t\tdescription: \"Strength of the ambient sky/ground fill\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ambient\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tshadows: {\n\t\t\tdefault: .85,\n\t\t\tdescription: \"Darkness of the shadows voxels cast onto each other\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shadows\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tshadowSoftness: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Penumbra of the cast shadows — 0 is razor sharp, higher spreads the light into a soft area source whose shadows sharpen at contact\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shadow Softness\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tao: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Ambient occlusion in the creases between voxels — the soft contact darkening that sells the geometry\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Occlusion\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tglossiness: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"How tight the specular highlight is — satin plastic at 0, lacquered at 1\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Glossiness\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tspecular: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Strength of the specular highlight and the fresnel rim on grazing faces\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Specular\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tseams: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Dark seam lines along every voxel edge — 0 for seamless blocks, higher for a drawn-outline brick look\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Seams\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...voxelSurface({\n\t\tstyle: p(\"voxelShape\"),\n\t\tgridSpace: p(\"gridSpace\"),\n\t\tvoxelSize: p(\"voxelSize\"),\n\t\tfill: p(\"fill\"),\n\t\tvoxelScale: p(\"voxelScale\"),\n\t\tbevel: p(\"bevel\"),\n\t\tshadowSoftness: p(\"shadowSoftness\"),\n\t\tlightAngle: p(\"lightAngle\"),\n\t\tlightElevation: p(\"lightElevation\"),\n\t\tdepth: p(\"depth\"),\n\t\tsurface: (vox, _frame, params) =\u003e {\n\t\t\tconst { uniforms: u, propValues } = params;\n\t\t\tconst n = vox.normal;\n\t\t\tconst mixVariant = mixColorsIn(p(\"colorSpace\"), params);\n\t\t\tconst mixAB = (t) =\u003e call(mixVariant, \"mixColors\", [\n\t\t\t\tu.colorA,\n\t\t\t\tu.colorB,\n\t\t\t\tt\n\t\t\t]).member(\"rgb\");\n\t\t\tconst upness = local(clamp(neg(n.member(\"y\")), 0, 1), \"upness\");\n\t\t\tlet base;\n\t\t\tswitch (propValues.colorMode) {\n\t\t\t\tcase \"height\":\n\t\t\t\t\tbase = mixAB(sub(1, vox.heightT));\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"depth\":\n\t\t\t\t\tbase = mixAB(vox.depthT);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"random\":\n\t\t\t\t\tbase = mixAB(vox.cellHash);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"faces\":\n\t\t\t\t\tbase = mixAB(sub(1, smoothstep(.35, .75, upness)));\n\t\t\t\t\tbreak;\n\t\t\t\tdefault: base = u.colorA.member(\"rgb\");\n\t\t\t}\n\t\t\tconst jitter = add(1, mul(sub(vox.cellHash, .5), mul(u.colorVariation, VARIATION_RANGE)));\n\t\t\tconst albedo = local(mul(base, jitter), \"albedo\");\n\t\t\tconst az = mul(u.lightAngle, DEG_TO_RAD);\n\t\t\tconst el = mul(u.lightElevation, DEG_TO_RAD);\n\t\t\tconst cosEl = local(cos(el), \"cosEl\");\n\t\t\tconst L = local(normalize(vec3(mul(cos(az), cosEl), mul(sin(az), cosEl), neg(sin(el)))), \"L\");\n\t\t\tconst ndl = local(lambert(n, L, { wrap: KEY_WRAP }), \"ndl\");\n\t\t\tconst lit = local(sub(1, mul(vox.shadow, u.shadows)), \"lit\");\n\t\t\tconst keyRgb = local(mul(u.lightColor.member(\"rgb\"), u.lightIntensity), \"keyRgb\");\n\t\t\tconst direct = mul(keyRgb, mul(ndl, lit));\n\t\t\tconst occlusion = local(sub(1, mul(u.ao, sub(1, vox.ao))), \"occl\");\n\t\t\tconst sky = local(u.ambientColor.member(\"rgb\"), \"sky\");\n\t\t\tconst ambient = local(mul(mul(mix(mul(sky, GROUND_GAIN), sky, upness), u.ambient), max(occlusion, 0)), \"ambient\");\n\t\t\tconst view = vox.view;\n\t\t\tconst specRgb = mul(keyRgb, mul(mul(mul(pow(clamp(dot(n, local(normalize(sub(L, view)), \"H\")), 0, 1), local(exp2(mix(GLOSS_EXP_RANGE[0], GLOSS_EXP_RANGE[1], u.glossiness)), \"shininess\")), mix(.2, 1.4, u.glossiness)), u.specular), lit));\n\t\t\tconst rimRgb = mul(sky, mul(mul(schlickFresnel(grazingOf(n, view), {\n\t\t\t\tr0: .02,\n\t\t\t\tgain: mul(u.glossiness, .5)\n\t\t\t}), mul(u.specular, .5)), max(occlusion, 0)));\n\t\t\tconst seamLine = smoothstep(sub(1, add(SEAM_WIDTH[0], mul(u.seams, SEAM_WIDTH[1]))), 1, vox.edge);\n\t\t\tconst seamShade = sub(1, mul(mul(u.seams, SEAM_DARKEN), seamLine));\n\t\t\treturn vec4(clamp(mul(add(mul(albedo, add(direct, ambient)), add(specRgb, rimRgb)), seamShade), vec3(0, 0, 0), vec3(1, 1, 1)), vox.coverage);\n\t\t}\n\t})\n});\nvar Voxels_default = componentDefinition;\nexport { componentDefinition as n, Voxels_default as t };\n","import { Cr as sin, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Tr as sqrt, _r as mix, ar as clamp, ct as call, er as select, ft as floatE, hr as max, jr as vec3f, lr as exp, or as cos, qr as f32, rr as atan2, t as defineStd, ti as __export, tr as abs, ur as exp2, wr as smoothstep, yr as pow } from \"./lower-Bd2jez_2.js\";\nimport { F as shapedSurface } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { i as sdfSpaceUV, r as offsetUV } from \"./glass-ABppDbYG.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nvar neon_exports = /* @__PURE__ */ __export({\n\tapplyNeonEffect: () =\u003e applyNeonEffect$1,\n\tneonComposite: () =\u003e neonComposite,\n\tneonFlicker: () =\u003e neonFlicker,\n\tneonFlow: () =\u003e neonFlow,\n\tneonGlow: () =\u003e neonGlow,\n\tneonSmoothEPS: () =\u003e neonSmoothEPS\n});\nvar DEG_TO_RAD = .017453292519943295;\nvar _LZ = .7;\nvar _INV_LIGHT_LEN = 1 / Math.sqrt(1 + _LZ * _LZ);\nvar _LZN = _LZ * _INV_LIGHT_LEN;\nvar _HZ = _LZN + 1;\nvar _INV_H_LEN = 1 / Math.sqrt(_INV_LIGHT_LEN * _INV_LIGHT_LEN + _HZ * _HZ);\nconst neonSmoothEPS = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((tubeThickness, cornerSmoothing, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst vol = max(tubeThickness, .006);\n\treturn select(__tsover_add(.008, __tsover_mul(cornerSmoothing, .03)), vol, volumetric \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tubeThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cornerSmoothing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vol\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"tubeThickness\", [5, \"0.006\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flat\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.008\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cornerSmoothing\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.03\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"flat\",\n\t\t\t\t\t\"vol\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst neonGlow = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdf, glowRadius, glowIntensity) =\u003e {\n\t\"use gpu\";\n\tconst glowR = max(glowRadius, .001);\n\tconst sdfOutside = max(sdf, 0);\n\tconst innerGlow = __tsover_mul(exp(__tsover_mul(__tsover_mul(sdfOutside, -1), __tsover_div(12, glowR))), .7);\n\tconst outerGlow = __tsover_mul(exp(__tsover_mul(__tsover_mul(sdfOutside, -1), __tsover_div(4, glowR))), .35);\n\tconst totalGlow = __tsover_mul(__tsover_add(innerGlow, outerGlow), glowIntensity);\n\tconst outsideFactor = smoothstep(-.003, .003, sdf);\n\treturn __tsover_mul(totalGlow, outsideFactor);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdf\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glowRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glowIntensity\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glowR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"glowRadius\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdfOutside\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"sdf\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerGlow\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdfOutside\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"12\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"glowR\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outerGlow\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdfOutside\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"glowR\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalGlow\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"innerGlow\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"outerGlow\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"glowIntensity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outsideFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.003\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.003\"],\n\t\t\t\t\t\t\"sdf\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t1,\n\t\t\t\t\"totalGlow\",\n\t\t\t\t\"*\",\n\t\t\t\t\"outsideFactor\"\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst neonFlicker = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((time, flickerSpeed, flickerAmount) =\u003e {\n\t\"use gpu\";\n\tconst flickerTime = __tsover_mul(time, flickerSpeed);\n\tconst f1 = sin(__tsover_mul(flickerTime, 17.13));\n\tconst f2 = sin(__tsover_mul(flickerTime, 31.71));\n\tconst f3 = sin(__tsover_mul(flickerTime, 47.29));\n\tconst combined = __tsover_add(__tsover_add(f1, __tsover_mul(f2, .5)), __tsover_mul(f3, .3));\n\tconst threshold = mix(-2, .8, flickerAmount);\n\treturn smoothstep(__tsover_sub(threshold, .1), __tsover_add(threshold, .1), combined);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flickerSpeed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flickerAmount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flickerTime\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"time\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"flickerSpeed\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"flickerTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"17.13\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"flickerTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"31.71\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"flickerTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"47.29\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"combined\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"f1\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"f2\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"f3\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.3\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"threshold\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.8\"],\n\t\t\t\t\t\t\"flickerAmount\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.smoothstep\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"threshold\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"combined\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst neonFlow = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdfUV, time, flowSpeed, flowAmount) =\u003e {\n\t\"use gpu\";\n\tconst flowDx = __tsover_sub(sdfUV.x, .5);\n\tconst flowAngle = atan2(__tsover_sub(sdfUV.y, .5), flowDx);\n\tconst flowPhase = __tsover_add(__tsover_mul(flowAngle, 2), __tsover_mul(time, flowSpeed));\n\treturn mix(1, __tsover_add(__tsover_mul(sin(flowPhase), .5), .5), flowAmount);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flowSpeed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flowAmount\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowDx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowDy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowAngle\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t[\"flowDy\", \"flowDx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowPhase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"flowAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"flowSpeed\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowWave\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"flowPhase\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"flowWave\",\n\t\t\t\t\t\"flowAmount\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nconst neonComposite = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32,\n\tvec2f,\n\tf32,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tvec3f,\n\tvec3f,\n\tf32,\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sC, sR, sL, sU, sD, smoothEPS, sdfUV, scale, viewportSize, time, cornerSmoothing, tubeThickness, color, secondaryColor, secondaryBlend, glowColor, intensity, hotCoreIntensity, glowIntensity, glowRadius, lightAngle, specularIntensity, specularSize, flickerSpeed, flickerAmount, flowSpeed, flowAmount, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst sdfCenter = sC.x;\n\tconst sdfRight = sR.x;\n\tconst sdfLeft = sL.x;\n\tconst sdfUp = sU.x;\n\tconst sdfDown = sD.x;\n\tconst pxH = __tsover_div(1, viewportSize.y);\n\tconst glowR = max(glowRadius, .001);\n\tconst softPx = max(__tsover_div(pxH, scale), .004);\n\tconst gradX = __tsover_div(__tsover_sub(sdfRight, sdfLeft), __tsover_mul(smoothEPS, 2));\n\tconst gradY = __tsover_div(__tsover_sub(sdfUp, sdfDown), __tsover_mul(smoothEPS, 2));\n\tconst sdf = mix(sdfCenter, __tsover_div(__tsover_add(__tsover_add(__tsover_add(__tsover_add(sdfCenter, sdfRight), sdfLeft), sdfUp), sdfDown), 5), cornerSmoothing);\n\tconst gxRaw = select(gradX, __tsover_sub(sR.w, sL.w), volumetric \u003e .5);\n\tconst gyRaw = select(gradY, __tsover_sub(sU.w, sD.w), volumetric \u003e .5);\n\tconst gradLen = max(sqrt(__tsover_add(__tsover_mul(gxRaw, gxRaw), __tsover_mul(gyRaw, gyRaw))), 1e-4);\n\tconst gnx = __tsover_div(gxRaw, gradLen);\n\tconst gny = __tsover_div(gyRaw, gradLen);\n\tconst depthNorm2D = clamp(__tsover_div(__tsover_mul(sdf, -1), max(tubeThickness, .001)), 0, 1);\n\tconst innerMask2D = smoothstep(__tsover_add(tubeThickness, softPx), __tsover_sub(tubeThickness, softPx), __tsover_mul(sdf, -1));\n\tconst lap = __tsover_add(abs(__tsover_sub(__tsover_add(sR.w, sL.w), __tsover_mul(sC.w, 2))), abs(__tsover_sub(__tsover_add(sU.w, sD.w), __tsover_mul(sC.w, 2))));\n\tconst slopeMag = __tsover_add(abs(gxRaw), abs(gyRaw));\n\tconst crease = __tsover_div(lap, __tsover_add(__tsover_add(lap, __tsover_mul(smoothEPS, .6)), __tsover_mul(slopeMag, .35)));\n\tconst innerMaskVol = smoothstep(.08, .35, crease);\n\tconst depthNorm = select(depthNorm2D, crease, volumetric \u003e .5);\n\tconst innerMask = select(innerMask2D, innerMaskVol, volumetric \u003e .5);\n\tconst outerMask = smoothstep(softPx, __tsover_mul(softPx, -1), sdf);\n\tconst tubeMask = __tsover_mul(outerMask, innerMask);\n\tconst t = depthNorm;\n\tconst cylinderZ = sqrt(max(__tsover_mul(t, __tsover_sub(2, t)), 0));\n\tconst cylinderR = __tsover_sub(1, t);\n\tconst nx = __tsover_mul(gnx, cylinderR);\n\tconst ny = __tsover_mul(gny, cylinderR);\n\tconst nz = cylinderZ;\n\tconst lightRad = __tsover_mul(lightAngle, DEG_TO_RAD);\n\tconst lx = cos(lightRad);\n\tconst ly = sin(lightRad);\n\tconst lxn = __tsover_mul(lx, _INV_LIGHT_LEN);\n\tconst lyn = __tsover_mul(ly, _INV_LIGHT_LEN);\n\tconst lzn = _LZN;\n\tconst diffuse = clamp(__tsover_add(__tsover_add(__tsover_mul(nx, lxn), __tsover_mul(ny, lyn)), __tsover_mul(nz, lzn)), 0, 1);\n\tconst NdotH = __tsover_add(__tsover_add(__tsover_mul(nx, __tsover_mul(lxn, _INV_H_LEN)), __tsover_mul(ny, __tsover_mul(lyn, _INV_H_LEN))), __tsover_mul(nz, __tsover_mul(_HZ, _INV_H_LEN)));\n\tconst shininess = exp2(__tsover_sub(8, __tsover_mul(specularSize, 7)));\n\tconst specular = __tsover_mul(pow(clamp(NdotH, 0, 1), shininess), specularIntensity);\n\tconst flowMod = neonFlow(sdfUV, time, flowSpeed, flowAmount);\n\tconst baseColor = mix(color, mix(secondaryColor, color, diffuse), secondaryBlend);\n\tconst ambient = .12;\n\tconst selfEmission = __tsover_mul(cylinderZ, .35);\n\tconst shadedRgb = baseColor.mul(__tsover_add(__tsover_add(ambient, __tsover_mul(diffuse, .55)), selfEmission));\n\tconst tubeRgb = vec3f(__tsover_add(shadedRgb.x, specular), __tsover_add(shadedRgb.y, specular), __tsover_add(shadedRgb.z, specular));\n\tconst coreProfile = smoothstep(.55, 1, depthNorm);\n\tconst hotCoreAmt = __tsover_mul(__tsover_mul(coreProfile, hotCoreIntensity), flowMod);\n\tconst tubeFlowed = mix(tubeRgb, mix(color, vec3f(1, 1, 1), .75), hotCoreAmt).mul(mix(1, flowMod, .4));\n\tconst glowMasked = neonGlow(sdf, glowRadius, glowIntensity);\n\tconst flickerValue = neonFlicker(time, flickerSpeed, flickerAmount);\n\tconst intensityMul = __tsover_mul(intensity, flickerValue);\n\tconst finalTubeRgb = tubeFlowed.mul(intensityMul);\n\tconst finalGlowRgb = glowColor.mul(__tsover_mul(glowMasked, intensityMul));\n\tconst result = vec4f(mix(finalGlowRgb.x, finalTubeRgb.x, tubeMask), mix(finalGlowRgb.y, finalTubeRgb.y, tubeMask), mix(finalGlowRgb.z, finalTubeRgb.z, tubeMask), max(tubeMask, clamp(__tsover_mul(glowMasked, .6), 0, 1)));\n\tconst threshOut = __tsover_add(__tsover_add(__tsover_mul(glowR, 1.5), softPx), smoothEPS);\n\treturn select(result, vec4f(0, 0, 0, 0), sdfCenter \u003e threshOut);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sC\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sR\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sL\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sU\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sD\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"smoothEPS\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewportSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"time\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cornerSmoothing\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tubeThickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"color\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"secondaryColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"secondaryBlend\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glowColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hotCoreIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glowIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glowRadius\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"specularIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"specularSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flickerSpeed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flickerAmount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flowSpeed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"flowAmount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdfCenter\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sC\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdfRight\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sR\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdfLeft\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sL\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdfUp\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sU\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdfDown\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"sD\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"pxH\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"viewportSize\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glowR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"glowRadius\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"softPx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"pxH\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t], [5, \"0.004\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gradX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sdfRight\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"sdfLeft\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"smoothEPS\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gradY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sdfUp\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"sdfDown\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"smoothEPS\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"smoothedSdf\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sdfCenter\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"sdfRight\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"sdfLeft\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"sdfUp\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"sdfDown\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[5, \"5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdf\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfCenter\",\n\t\t\t\t\t\t\"smoothedSdf\",\n\t\t\t\t\t\t\"cornerSmoothing\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gxRaw\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sR\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sL\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gyRaw\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sU\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sD\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gradLen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gxRaw\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gxRaw\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gyRaw\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gyRaw\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gnx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gxRaw\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"gradLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gyRaw\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"gradLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"depthNorm2D\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"tubeThickness\", [5, \"0.001\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerMask2D\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tubeThickness\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"softPx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tubeThickness\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"softPx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lap\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sR\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sL\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sC\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sU\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sD\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sC\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"slopeMag\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"gxRaw\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"gyRaw\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"crease\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lap\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lap\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"smoothEPS\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"slopeMag\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerMaskVol\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.08\"],\n\t\t\t\t\t\t[5, \"0.35\"],\n\t\t\t\t\t\t\"crease\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"depthNorm\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"depthNorm2D\",\n\t\t\t\t\t\t\"crease\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"innerMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"innerMask2D\",\n\t\t\t\t\t\t\"innerMaskVol\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outerMask\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"softPx\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"softPx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sdf\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tubeMask\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"outerMask\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"innerMask\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t\"depthNorm\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cylinderZ\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cylinderR\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gnx\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cylinderR\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gny\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"cylinderR\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nz\",\n\t\t\t\t\"cylinderZ\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightRad\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"lightRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ly\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"lightRad\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lxn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lx\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"_INV_LIGHT_LEN\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lyn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ly\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"_INV_LIGHT_LEN\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lzn\",\n\t\t\t\t\"_LZN\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"NdotL\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"lxn\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"lyn\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nz\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"lzn\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diffuse\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"NdotL\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"NdotH\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lxn\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"_INV_H_LEN\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"lyn\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"_INV_H_LEN\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nz\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"_HZ\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"_INV_H_LEN\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shininess\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.exp2\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"specularSize\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"7\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"specular\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"NdotH\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], \"shininess\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"specularIntensity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flowMod\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"neonFlow\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\"flowSpeed\",\n\t\t\t\t\t\t\"flowAmount\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"twoTone\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"secondaryColor\",\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"diffuse\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseColor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\"twoTone\",\n\t\t\t\t\t\t\"secondaryBlend\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ambient\",\n\t\t\t\t[5, \"0.12\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"selfEmission\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cylinderZ\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shadedRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"baseColor\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ambient\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"diffuse\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"selfEmission\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tubeRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"shadedRgb\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"specular\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"shadedRgb\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"specular\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"shadedRgb\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"specular\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"coreProfile\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0.55\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"depthNorm\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hotCoreAmt\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"coreProfile\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"hotCoreIntensity\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"flowMod\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hotCoreCol\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.75\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tubeWithCore\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"tubeRgb\",\n\t\t\t\t\t\t\"hotCoreCol\",\n\t\t\t\t\t\t\"hotCoreAmt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tubeFlowed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tubeWithCore\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"flowMod\",\n\t\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glowMasked\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"neonGlow\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\"glowRadius\",\n\t\t\t\t\t\t\"glowIntensity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flickerValue\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"neonFlicker\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\"flickerSpeed\",\n\t\t\t\t\t\t\"flickerAmount\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"intensityMul\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"intensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"flickerValue\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalTubeRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"tubeFlowed\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"intensityMul\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalGlowRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"glowColor\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"glowMasked\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"intensityMul\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"finalGlowRgb\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"finalTubeRgb\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"tubeMask\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalG\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"finalGlowRgb\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"finalTubeRgb\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"tubeMask\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"finalGlowRgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"finalTubeRgb\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"tubeMask\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"glowAlpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"glowMasked\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"tubeMask\", \"glowAlpha\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"result\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"finalR\",\n\t\t\t\t\t\t\"finalG\",\n\t\t\t\t\t\t\"finalB\",\n\t\t\t\t\t\t\"finalA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"threshOut\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"glowR\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"softPx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"smoothEPS\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"result\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sdfCenter\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\"threshOut\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"_INV_LIGHT_LEN\": () =\u003e _INV_LIGHT_LEN,\n\t\t\"_LZN\": () =\u003e _LZN,\n\t\t\"_INV_H_LEN\": () =\u003e _INV_H_LEN,\n\t\t\"_HZ\": () =\u003e _HZ,\n\t\t\"std.exp2\": () =\u003e exp2,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"neonFlow\": () =\u003e neonFlow,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"neonGlow\": () =\u003e neonGlow,\n\t\t\"neonFlicker\": () =\u003e neonFlicker,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction applyNeonEffect$1(params, sdfSampler, time, options) {\n\tconst { uniforms, ctx } = params;\n\tconst gradSampler = options?.gradSampler ?? sdfSampler;\n\tconst volFlag = floatE(options?.volumetric ? 1 : 0);\n\tconst sdfUV = call(sdfSpaceUV, \"sdfSpaceUV\", [\n\t\tuniforms.center,\n\t\tuniforms.scale,\n\t\tuniforms.rotation,\n\t\tctx.uv,\n\t\tctx.aspect\n\t]);\n\tconst smoothEPS = call(neonSmoothEPS, \"neonSmoothEPS\", [\n\t\tuniforms.tubeThickness,\n\t\tuniforms.cornerSmoothing,\n\t\tvolFlag\n\t]);\n\tconst negEPS = smoothEPS.mul(-1);\n\treturn call(neonComposite, \"neonComposite\", [\n\t\tsdfSampler(sdfUV),\n\t\tgradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tsmoothEPS,\n\t\t\tfloatE(0)\n\t\t])),\n\t\tgradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tnegEPS,\n\t\t\tfloatE(0)\n\t\t])),\n\t\tgradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tfloatE(0),\n\t\t\tsmoothEPS\n\t\t])),\n\t\tgradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tfloatE(0),\n\t\t\tnegEPS\n\t\t])),\n\t\tsmoothEPS,\n\t\tsdfUV,\n\t\tuniforms.scale,\n\t\tctx.viewportSize,\n\t\ttime,\n\t\tuniforms.cornerSmoothing,\n\t\tuniforms.tubeThickness,\n\t\tuniforms.color.member(\"rgb\"),\n\t\tuniforms.secondaryColor.member(\"rgb\"),\n\t\tuniforms.secondaryBlend,\n\t\tuniforms.glowColor.member(\"rgb\"),\n\t\tuniforms.intensity,\n\t\tuniforms.hotCoreIntensity,\n\t\tuniforms.glowIntensity,\n\t\tuniforms.glowRadius,\n\t\tuniforms.lightAngle,\n\t\tuniforms.specularIntensity,\n\t\tuniforms.specularSize,\n\t\tuniforms.flickerSpeed,\n\t\tuniforms.flickerAmount,\n\t\tuniforms.flowSpeed,\n\t\tuniforms.flowAmount,\n\t\tvolFlag\n\t]);\n}\nvar { applyNeonEffect } = neon_exports;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nconst componentDefinition = defineStd({\n\tname: \"Neon\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Photorealistic neon tube / 3D pipe effect driven by a custom shape\",\n\t...shapedSurface({\n\t\tchord: \"firstLobe\",\n\t\tstencil: \"none\",\n\t\tsurface: (frame, params) =\u003e applyNeonEffect(params, frame.sampler, params.ctx.time, {\n\t\t\tvolumetric: frame.volumetric,\n\t\t\tgradSampler: frame.gradSampler\n\t\t})\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the neon shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the neon shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the neon shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolor: {\n\t\t\tdefault: \"#00ddff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Primary neon tube color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tube Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tsecondaryColor: {\n\t\t\tdefault: \"#ff00aa\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Shadow-side color for a two-tone / dual-lit pipe look\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Secondary Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tsecondaryBlend: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Blend between mono (0) and two-tone (1) tube coloring\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Blend\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tglowColor: {\n\t\t\tdefault: \"#00ddff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the outer glow / bloom\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Glow Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\ttubeThickness: {\n\t\t\tdefault: .2,\n\t\t\ttransform: (v) =\u003e v * .05,\n\t\t\tdescription: \"How far inward from the boundary the tube extends. Low = thin neon outline, high = thick 3D pipe\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Tube Thickness\",\n\t\t\t\tgroup: \"Tube\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Overall brightness multiplier\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Tube\"\n\t\t\t}\n\t\t},\n\t\thotCoreIntensity: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Bright white-hot center line — the gas discharge glow inside the tube\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Hot Core\",\n\t\t\t\tgroup: \"Tube\"\n\t\t\t}\n\t\t},\n\t\tglowIntensity: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Outer glow / bloom strength\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Glow Intensity\",\n\t\t\t\tgroup: \"Glow\"\n\t\t\t}\n\t\t},\n\t\tglowRadius: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"How far the glow extends beyond the tube\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Glow Radius\",\n\t\t\t\tgroup: \"Glow\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 300,\n\t\t\tdescription: \"Directional light angle in degrees — controls 3D shading on the tube\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tspecularIntensity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Specular highlight brightness on the tube surface\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Specular\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tspecularSize: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Specular highlight size — 0 = tight pinpoint, 1 = broad sheen\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Specular Size\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tcornerSmoothing: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Rounds sharp corners to mimic how real glass tubes curve at bends\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Corner Smoothing\",\n\t\t\t\tgroup: \"Tube\"\n\t\t\t}\n\t\t},\n\t\tflickerSpeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Flicker animation speed — 0 = off, higher = faster sporadic on/off\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Flicker\"\n\t\t\t}\n\t\t},\n\t\tflickerAmount: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"How often the neon flickers off — 0 = always on, 1 = frequent outages\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Amount\",\n\t\t\t\tgroup: \"Flicker\"\n\t\t\t}\n\t\t},\n\t\tflowSpeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Flow animation speed — 0 = off, light rotates through the tube\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Flow\"\n\t\t\t}\n\t\t},\n\t\tflowAmount: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Strength of the flowing brightness variation — 0 = uniform, 1 = dramatic\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Amount\",\n\t\t\t\tgroup: \"Flow\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file — when non-empty, activates SVG mode and triggers a shader recompile\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type — triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.\"\n\t\t}\n\t}\n});\nvar Neon_default = componentDefinition;\nexport { componentDefinition as n, Neon_default as t };\n","import { Cr as sin, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Tr as sqrt, ar as clamp, ct as call, er as select, ft as floatE, hr as max, jr as vec3f, or as cos, qr as f32, t as defineStd, ti as __export, tr as abs, wr as smoothstep } from \"./lower-Bd2jez_2.js\";\nimport { F as shapedSurface } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { i as sdfSpaceUV, r as offsetUV } from \"./glass-ABppDbYG.js\";\nimport { c as transformPosition } from \"./transformations-CzFmhZww.js\";\nvar emboss_exports = /* @__PURE__ */ __export({\n\tapplyEmbossEffect: () =\u003e applyEmbossEffect$1,\n\tembossComposite: () =\u003e embossComposite,\n\tembossEdgeLighting: () =\u003e embossEdgeLighting,\n\tembossHeight: () =\u003e embossHeight,\n\tembossTraceUV: () =\u003e embossTraceUV,\n\tembossWarpUV: () =\u003e embossWarpUV\n});\nvar DEG_TO_RAD = .017453292519943295;\nvar _INV_LIGHT_LEN = 1 / Math.sqrt(1.49);\nvar _LZN = .7 * _INV_LIGHT_LEN;\nconst embossHeight = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((s, depth, transitionW, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst vol = __tsover_mul(depth, clamp(__tsover_div(__tsover_mul(s, -1), .18), 0, 1));\n\treturn select(__tsover_mul(depth, smoothstep(transitionW, __tsover_mul(transitionW, -1), s)), vol, volumetric \u003e .5);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"s\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"depth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"transitionW\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vol\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"depth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[5, \"0.18\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flat\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"depth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"transitionW\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"transitionW\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t\"flat\",\n\t\t\t\t\t\"vol\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({}));\nconst embossTraceUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdfUV, lightAngle, depth, frac) =\u003e {\n\t\"use gpu\";\n\tconst lx = cos(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst ly = sin(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst absDepth = max(abs(depth), 1e-4);\n\tconst spread = __tsover_mul(absDepth, .06);\n\treturn vec2f(__tsover_add(sdfUV.x, __tsover_mul(__tsover_mul(lx, spread), frac)), __tsover_add(sdfUV.y, __tsover_mul(__tsover_mul(ly, spread), frac)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"depth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"frac\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ly\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"absDepth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"depth\"]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"spread\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"absDepth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"spread\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"frac\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ly\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"spread\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"frac\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst embossWarpUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, center, sdfC, depth) =\u003e {\n\t\"use gpu\";\n\tconst tw = .003;\n\tconst inside = smoothstep(tw, __tsover_mul(tw, -1), sdfC);\n\tconst dispScale = __tsover_sub(1, __tsover_mul(__tsover_mul(depth, .05), inside));\n\tconst centerX = center.x;\n\tconst centerY = __tsover_sub(1, center.y);\n\treturn vec2f(__tsover_add(centerX, __tsover_mul(__tsover_sub(uv.x, centerX), dispScale)), __tsover_add(centerY, __tsover_mul(__tsover_sub(uv.y, centerY), dispScale)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"center\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfC\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"depth\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tw\",\n\t\t\t\t[5, \"0.003\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inside\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"tw\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"tw\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"sdfC\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dispScale\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.05\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"inside\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerX\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"center\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centerY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t\"centerX\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"centerX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dispScale\"\n\t\t\t\t\t]\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t\"centerY\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"centerY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"dispScale\"\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst embossEdgeLighting = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdfR, sdfL, sdfU, sdfD, depth, lightAngle, lightIntensity, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst eps = .003;\n\tconst tw = .003;\n\tconst hR = embossHeight(sdfR, depth, tw, volumetric);\n\tconst hL = embossHeight(sdfL, depth, tw, volumetric);\n\tconst hU = embossHeight(sdfU, depth, tw, volumetric);\n\tconst hD = embossHeight(sdfD, depth, tw, volumetric);\n\tconst dhx = __tsover_div(__tsover_sub(hR, hL), __tsover_mul(eps, 2));\n\tconst dhy = __tsover_div(__tsover_sub(hU, hD), __tsover_mul(eps, 2));\n\tconst nLen = sqrt(__tsover_add(__tsover_add(__tsover_mul(dhx, dhx), __tsover_mul(dhy, dhy)), 1));\n\tconst nx = __tsover_div(__tsover_mul(dhx, -1), nLen);\n\tconst ny = __tsover_div(__tsover_mul(dhy, -1), nLen);\n\tconst nz = __tsover_div(1, nLen);\n\tconst lx = cos(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst ly = sin(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst lxn = __tsover_mul(lx, _INV_LIGHT_LEN);\n\tconst lyn = __tsover_mul(ly, _INV_LIGHT_LEN);\n\tconst lzn = _LZN;\n\tconst NdotL = __tsover_add(__tsover_add(__tsover_mul(nx, lxn), __tsover_mul(ny, lyn)), __tsover_mul(nz, lzn));\n\tconst edgeLighting = __tsover_mul(__tsover_sub(NdotL, lzn), lightIntensity);\n\treturn vec2f(max(edgeLighting, 0), max(__tsover_mul(edgeLighting, -1), 0));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfR\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfL\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfU\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfD\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"depth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"eps\",\n\t\t\t\t[5, \"0.003\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tw\",\n\t\t\t\t[5, \"0.003\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfR\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"tw\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hL\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfL\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"tw\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hU\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfU\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"tw\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hD\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfD\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"tw\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dhx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"hR\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hL\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"dhy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"hU\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hD\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nLen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dhx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dhx\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dhy\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"dhy\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dhx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"nLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"dhy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"nLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nz\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"nLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ly\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lxn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lx\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"_INV_LIGHT_LEN\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lyn\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"ly\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"_INV_LIGHT_LEN\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lzn\",\n\t\t\t\t\"_LZN\"\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"NdotL\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"lxn\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"lyn\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nz\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"lzn\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeLighting\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"NdotL\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"lzn\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"lightIntensity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"highlight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"edgeLighting\", [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeShadow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"edgeLighting\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"highlight\", \"edgeShadow\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"embossHeight\": () =\u003e embossHeight,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"_INV_LIGHT_LEN\": () =\u003e _INV_LIGHT_LEN,\n\t\t\"_LZN\": () =\u003e _LZN,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst embossComposite = typegpu_default.fn([\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((childColor, sdfC, sdfR, sdfL, sdfU, sdfD, h1raw, h2raw, depth, lightAngle, lightIntensity, shadowIntensity, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst tw = .003;\n\tconst light = embossEdgeLighting(sdfR, sdfL, sdfU, sdfD, depth, lightAngle, lightIntensity, volumetric);\n\tconst highlight = light.x;\n\tconst edgeShadow = light.y;\n\tconst hC = embossHeight(sdfC, depth, tw, volumetric);\n\tconst absDepth = max(abs(depth), 1e-4);\n\tconst shadowTw = __tsover_mul(absDepth, .06);\n\tconst h1 = embossHeight(h1raw, depth, shadowTw, volumetric);\n\tconst h2 = embossHeight(h2raw, depth, shadowTw, volumetric);\n\tconst diff1 = __tsover_div(__tsover_sub(h1, hC), absDepth);\n\tconst diff2 = __tsover_div(__tsover_sub(h2, hC), absDepth);\n\tconst castShadow = __tsover_add(__tsover_mul(smoothstep(0, .5, diff1), .55), __tsover_mul(smoothstep(0, .5, diff2), .45));\n\tconst totalShadow = __tsover_mul(clamp(__tsover_add(edgeShadow, castShadow), 0, 1), shadowIntensity);\n\tconst childRgb = vec3f(childColor.x, childColor.y, childColor.z);\n\tconst highlightRgb = vec3f(highlight, highlight, highlight);\n\tconst finalRgb = clamp(childRgb.mul(__tsover_sub(1, totalShadow)).add(highlightRgb), vec3f(0), vec3f(1));\n\treturn vec4f(finalRgb.x, finalRgb.y, finalRgb.z, childColor.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"childColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfC\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfR\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfL\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfU\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfD\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h1raw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"h2raw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"depth\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shadowIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tw\",\n\t\t\t\t[5, \"0.003\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"light\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossEdgeLighting\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfR\",\n\t\t\t\t\t\t\"sdfL\",\n\t\t\t\t\t\t\"sdfU\",\n\t\t\t\t\t\t\"sdfD\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"lightIntensity\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"highlight\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"light\",\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeShadow\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"light\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"hC\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"sdfC\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"tw\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"absDepth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[\"depth\"]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shadowTw\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"absDepth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"h1raw\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"shadowTw\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"h2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"embossHeight\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"h2raw\",\n\t\t\t\t\t\t\"depth\",\n\t\t\t\t\t\t\"shadowTw\",\n\t\t\t\t\t\t\"volumetric\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diff1\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"h1\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hC\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"absDepth\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diff2\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"h2\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"hC\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"absDepth\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"castShadow\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"diff1\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.55\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"diff2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.45\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"totalShadow\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"edgeShadow\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"castShadow\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"shadowIntensity\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"childRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"highlightRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"highlight\",\n\t\t\t\t\t\t\"highlight\",\n\t\t\t\t\t\t\"highlight\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"childRgb\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"totalShadow\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"highlightRgb\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalRgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalRgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalRgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"childColor\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"embossEdgeLighting\": () =\u003e embossEdgeLighting,\n\t\t\"embossHeight\": () =\u003e embossHeight,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction applyEmbossEffect$1(params, sdfSampler, childTexture, options) {\n\tconst { uniforms, ctx } = params;\n\tconst gradSampler = options?.gradSampler ?? sdfSampler;\n\tconst volFlag = floatE(options?.volumetric ? 1 : 0);\n\tconst eps = .003;\n\tconst sdfUV = call(sdfSpaceUV, \"sdfSpaceUV\", [\n\t\tuniforms.center,\n\t\tuniforms.scale,\n\t\tuniforms.rotation,\n\t\tctx.uv,\n\t\tctx.aspect\n\t]);\n\tconst sdfC = sdfSampler(sdfUV).member(\"r\");\n\tconst sdfR = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\tsdfUV,\n\t\tfloatE(eps),\n\t\tfloatE(0)\n\t])).member(\"r\");\n\tconst sdfL = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\tsdfUV,\n\t\tfloatE(-eps),\n\t\tfloatE(0)\n\t])).member(\"r\");\n\tconst sdfU = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\tsdfUV,\n\t\tfloatE(0),\n\t\tfloatE(eps)\n\t])).member(\"r\");\n\tconst sdfD = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\tsdfUV,\n\t\tfloatE(0),\n\t\tfloatE(-eps)\n\t])).member(\"r\");\n\tconst h1raw = gradSampler(call(embossTraceUV, \"embossTraceUV\", [\n\t\tsdfUV,\n\t\tuniforms.lightAngle,\n\t\tuniforms.depth,\n\t\tfloatE(.5)\n\t])).member(\"r\");\n\tconst h2raw = gradSampler(call(embossTraceUV, \"embossTraceUV\", [\n\t\tsdfUV,\n\t\tuniforms.lightAngle,\n\t\tuniforms.depth,\n\t\tfloatE(1)\n\t])).member(\"r\");\n\tconst warpedUV = call(embossWarpUV, \"embossWarpUV\", [\n\t\tctx.uv,\n\t\tuniforms.center,\n\t\tsdfC,\n\t\tuniforms.depth\n\t]);\n\treturn call(embossComposite, \"embossComposite\", [\n\t\tcall(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(warpedUV)]),\n\t\tsdfC,\n\t\tsdfR,\n\t\tsdfL,\n\t\tsdfU,\n\t\tsdfD,\n\t\th1raw,\n\t\th2raw,\n\t\tuniforms.depth,\n\t\tuniforms.lightAngle,\n\t\tuniforms.lightIntensity,\n\t\tuniforms.shadowIntensity,\n\t\tvolFlag\n\t]);\n}\nvar { applyEmbossEffect } = emboss_exports;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nconst componentDefinition = defineStd({\n\tname: \"Emboss\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Embossed / debossed relief shading on top of child content, driven by a custom shape\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\t...shapedSurface({\n\t\tchord: \"firstLobe\",\n\t\tstencil: \"none\",\n\t\tchild: \"required\",\n\t\tsurface: (frame, params) =\u003e applyEmbossEffect(params, frame.sampler, frame.childTexture, {\n\t\t\tvolumetric: frame.volumetric,\n\t\t\tgradSampler: frame.gradSampler\n\t\t})\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the embossed shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the embossed shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the embossed shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tdepth: {\n\t\t\tdefault: -.5,\n\t\t\tdescription: \"Relief depth — negative = inset (debossed), positive = raised (embossed)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Depth\",\n\t\t\t\tgroup: \"Relief\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 260,\n\t\t\tdescription: \"Directional light angle in degrees — controls highlight and shadow direction\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tlightIntensity: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Strength of the directional edge highlights and shadows\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Light Intensity\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tshadowIntensity: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Darkness of the relief shadow\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shadow Intensity\",\n\t\t\t\tgroup: \"Relief\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file — when non-empty, activates SVG mode and triggers a shader recompile\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type — triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.\"\n\t\t}\n\t}\n});\nvar Emboss_default = componentDefinition;\nexport { componentDefinition as n, Emboss_default as t };\n","import { Br as struct, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Pn as DEG_TO_RAD, _r as mix, ar as clamp, at as ZERO, cr as dot, ct as call, er as select, gr as min, jr as vec3f, pr as fract, qr as f32, t as defineStd, ti as __export, tr as abs, vr as normalize, yr as pow } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { D as twistedRibbonSurfaceUV, E as torusSurfaceUV, T as sphereSurfaceUV, _ as paramSphereSdf, a as capsuleSurfaceUV, f as mobiusSurfaceUV, g as paramMobiusSdf, h as paramCapsuleSdf, m as paramBoxSdf, n as boxFaceUV, p as packedParamExtraFields, v as paramTorusSdf, y as paramTwistedRibbonSdf } from \"./sdf3d-2AWC_wdn.js\";\nimport { c as transformPosition, s as transformEdges } from \"./transformations-CzFmhZww.js\";\nvar raymarch3d_exports = /* @__PURE__ */ __export({\n\tDistortion3DTrace: () =\u003e Distortion3DTrace,\n\tapplyUVMode3d: () =\u003e applyUVMode3d$1,\n\tbuildParamThreadedTrace: () =\u003e buildParamThreadedTrace$1,\n\tdistortion3dLighting: () =\u003e distortion3dLighting$1\n});\nconst Distortion3DTrace = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\thitPos: vec3f,\n\tnormal: vec3f,\n\trd: vec3f,\n\thit: f32\n}), \"Distortion3DTrace\");\nconst applyUVMode3d$1 = typegpu_default.fn([vec2f, f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, uvMode) =\u003e {\n\t\"use gpu\";\n\tconst stretched = clamp(uv, vec2f(0), vec2f(1));\n\tconst mirrored = abs(fract(uv.mul(.5)).mul(2).sub(1));\n\tconst wrapped = fract(uv);\n\tconst tv1 = select(f32(0), f32(1), uv.y \u003c= 1);\n\tconst tv2 = select(f32(0), tv1, uv.y \u003e= 0);\n\tconst tv3 = select(f32(0), tv2, uv.x \u003c= 1);\n\tconst transparentVisible = select(f32(0), tv3, uv.x \u003e= 0);\n\tconst finalUV = select(select(select(wrapped, mirrored, uvMode \u003c 2.5), uv, uvMode \u003c 1.5), stretched, uvMode \u003c .5);\n\tconst visible = select(select(f32(1), transparentVisible, uvMode \u003c 1.5), f32(1), uvMode \u003c .5);\n\treturn vec3f(finalUV.x, finalUV.y, visible);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uvMode\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"stretched\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"mirrored\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0.5\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[5, \"2\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"wrapped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"uv\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tv1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tv2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"tv1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tv3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"tv2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"transparentVisible\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"tv3\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fuv2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"wrapped\",\n\t\t\t\t\t\t\"mirrored\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"uvMode\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"2.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fuv1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"fuv2\",\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"uvMode\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"fuv1\",\n\t\t\t\t\t\t\"stretched\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"uvMode\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"vis1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"transparentVisible\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"uvMode\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"visible\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"vis1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"uvMode\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"finalUV\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"visible\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst distortion3dLighting$1 = typegpu_default.fn([\n\tvec4f,\n\tvec3f,\n\tvec3f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((surfaceColor, normal, rd, hit, uvVisible, glossAmt, lightAmt) =\u003e {\n\t\"use gpu\";\n\tconst lightDir = normalize(vec3f(.4, .7, -.6));\n\tconst viewDir = rd.mul(-1);\n\tconst diffuse = clamp(dot(normal, lightDir), 0, 1);\n\tconst halfVec = normalize(lightDir.add(viewDir));\n\tconst specPow = __tsover_add(__tsover_mul(glossAmt, 256), 4);\n\tconst specular = __tsover_mul(__tsover_mul(pow(clamp(dot(normal, halfVec), 0, 1), specPow), glossAmt), 1.5);\n\tconst nDotV = clamp(dot(normal, viewDir), 0, 1);\n\tconst fresnel = __tsover_mul(__tsover_mul(pow(__tsover_sub(1, nDotV), 3), .5), glossAmt);\n\tconst litClamped = clamp(mix(1, __tsover_add(__tsover_add(__tsover_add(.35, __tsover_mul(diffuse, .65)), specular), fresnel), lightAmt), 0, 3);\n\tconst colClamped = clamp(surfaceColor.xyz.mul(litClamped), vec3f(0), vec3f(1));\n\tconst alpha = __tsover_mul(__tsover_mul(hit, surfaceColor.w), uvVisible);\n\treturn vec4f(colClamped.x, colClamped.y, colClamped.z, alpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"surfaceColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"normal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rd\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hit\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvVisible\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glossAmt\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAmt\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0.4\"],\n\t\t\t\t\t\t\t[5, \"0.7\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"viewDir\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"diffuse\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t[\"normal\", \"lightDir\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"halfVec\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lightDir\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"viewDir\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"specPow\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"glossAmt\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"256\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"specular\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t[\"normal\", \"halfVec\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], \"specPow\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"glossAmt\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nDotV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t[\"normal\", \"viewDir\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fresnel\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"nDotV\"\n\t\t\t\t\t\t\t], [5, \"3\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"glossAmt\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ambient\",\n\t\t\t\t[5, \"0.35\"]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lit\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ambient\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"diffuse\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.65\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"specular\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"fresnel\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"lightAmt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"litClamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"lit\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"col\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"surfaceColor\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"litClamped\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"colClamped\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"surfaceColor\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"uvVisible\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colClamped\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colClamped\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"colClamped\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"alpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.dot\": () =\u003e dot,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction buildParamThreadedTrace$1(sdf, opts) {\n\tconst STEPS = opts.steps, STEP_CAP = opts.stepCap, HIT_EPS = opts.hitEps, MAX_DIST = opts.maxDistance ?? 20;\n\treturn typegpu_default.fn([\n\t\tvec2f,\n\t\tf32,\n\t\tvec2f,\n\t\tf32,\n\t\tvec4f,\n\t\tvec4f,\n\t\tvec4f,\n\t\tf32\n\t], Distortion3DTrace)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, aspect, center, zoom, rp0, rp1, rp2, t) =\u003e {\n\t\t\"use gpu\";\n\t\tconst cx = center.x;\n\t\tconst cy = __tsover_sub(1, center.y);\n\t\tconst camDist = __tsover_sub(8, __tsover_mul(zoom, .06));\n\t\tconst ro = vec3f(0, 0, __tsover_mul(camDist, -1));\n\t\tconst rd = normalize(vec3f(__tsover_mul(__tsover_sub(uv.x, cx), aspect), __tsover_sub(uv.y, cy), 1.5));\n\t\tlet rayT = f32(0);\n\t\tlet hit = f32(0);\n\t\tconst maxDistF = f32(MAX_DIST);\n\t\tfor (let i = 0; i \u003c STEPS; i++) {\n\t\t\tconst dd = sdf(ro.add(rd.mul(rayT)), rp0, rp1, rp2, t);\n\t\t\tif (dd \u003c HIT_EPS) {\n\t\t\t\thit = f32(1);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (rayT \u003e maxDistF) break;\n\t\t\trayT = __tsover_add(rayT, min(dd, STEP_CAP));\n\t\t}\n\t\tconst hitPos = ro.add(rd.mul(rayT));\n\t\tconst hh = .001;\n\t\tconst hn = __tsover_mul(hh, -1);\n\t\tconst k0 = sdf(hitPos.add(vec3f(hh, hn, hn)), rp0, rp1, rp2, t);\n\t\tconst k1 = sdf(hitPos.add(vec3f(hn, hn, hh)), rp0, rp1, rp2, t);\n\t\tconst k2 = sdf(hitPos.add(vec3f(hn, hh, hn)), rp0, rp1, rp2, t);\n\t\tconst k3 = sdf(hitPos.add(vec3f(hh, hh, hh)), rp0, rp1, rp2, t);\n\t\treturn Distortion3DTrace({\n\t\t\thitPos,\n\t\t\tnormal: normalize(vec3f(1, -1, -1).mul(k0).add(vec3f(-1, -1, 1).mul(k1)).add(vec3f(-1, 1, -1).mul(k2)).add(vec3f(1, 1, 1).mul(k3))),\n\t\t\trd,\n\t\t\thit\n\t\t});\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"uv\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"aspect\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"center\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"zoom\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rp0\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rp1\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"rp2\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"t\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"center\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"camDist\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"8\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"zoom\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.06\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ro\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"camDist\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rd\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"rayT\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"hit\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"maxDistF\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[\"MAX_DIST\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"STEPS\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"rayT\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"HIT_EPS\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\"hit\",\n\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [17]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rayT\",\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\"maxDistF\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"rayT\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"rayT\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t\t[\"dd\", \"STEP_CAP\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"ro\",\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"rd\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"rayT\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"hh\",\n\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"hn\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"k0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\"hn\",\n\t\t\t\t\t\t\t\t\t\t\"hn\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"k1\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"hn\",\n\t\t\t\t\t\t\t\t\t\t\"hn\",\n\t\t\t\t\t\t\t\t\t\t\"hh\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"k2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"hn\",\n\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\"hn\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"k3\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"hitPos\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\"hh\",\n\t\t\t\t\t\t\t\t\t\t\"hh\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"rp0\",\n\t\t\t\t\t\t\t\"rp1\",\n\t\t\t\t\t\t\t\"rp2\",\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"normal\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"k0\"]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"k1\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"k2\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\"k3\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"Distortion3DTrace\",\n\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\"hitPos\": \"hitPos\",\n\t\t\t\t\t\t\"normal\": \"normal\",\n\t\t\t\t\t\t\"rd\": \"rd\",\n\t\t\t\t\t\t\"hit\": \"hit\"\n\t\t\t\t\t}]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"std.normalize\": () =\u003e normalize,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"MAX_DIST\": () =\u003e MAX_DIST,\n\t\t\t\"STEPS\": () =\u003e STEPS,\n\t\t\t\"sdf\": () =\u003e sdf,\n\t\t\t\"HIT_EPS\": () =\u003e HIT_EPS,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"STEP_CAP\": () =\u003e STEP_CAP,\n\t\t\t\"Distortion3DTrace\": () =\u003e Distortion3DTrace\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n}\nvar { applyUVMode3d, distortion3dLighting, buildParamThreadedTrace } = raymarch3d_exports;\nvar DEG = DEG_TO_RAD;\nvar TAU_RATE = Math.PI * 2 / 10;\nvar DEFAULT_RIBBON = JSON.stringify({\n\ttype: \"ribbon\",\n\tangle: 0,\n\ttwist: 50,\n\twidth: 40,\n\tthickness: 20,\n\tseed: 0\n});\nvar SHAPES = {\n\tsphere: {\n\t\tsdf: paramSphereSdf,\n\t\tsurfaceUV: sphereSurfaceUV,\n\t\tuvHint: \"sphereSurfaceUV\",\n\t\tsteps: 64,\n\t\tstepCap: 1.5,\n\t\thitEps: .001\n\t},\n\ttorus: {\n\t\tsdf: paramTorusSdf,\n\t\tsurfaceUV: torusSurfaceUV,\n\t\tuvHint: \"torusSurfaceUV\",\n\t\tsteps: 96,\n\t\tstepCap: .5,\n\t\thitEps: .001\n\t},\n\tbox: {\n\t\tsdf: paramBoxSdf,\n\t\tsurfaceUV: boxFaceUV,\n\t\tuvHint: \"boxFaceUV\",\n\t\tsteps: 96,\n\t\tstepCap: .5,\n\t\thitEps: .001\n\t},\n\tcapsule: {\n\t\tsdf: paramCapsuleSdf,\n\t\tsurfaceUV: capsuleSurfaceUV,\n\t\tuvHint: \"capsuleSurfaceUV\",\n\t\tsteps: 64,\n\t\tstepCap: 1.5,\n\t\thitEps: .001\n\t},\n\tmobius: {\n\t\tsdf: paramMobiusSdf,\n\t\tsurfaceUV: mobiusSurfaceUV,\n\t\tuvHint: \"mobiusSurfaceUV\",\n\t\tsteps: 96,\n\t\tstepCap: .3,\n\t\thitEps: .001\n\t},\n\tribbon: {\n\t\tsdf: paramTwistedRibbonSdf,\n\t\tsurfaceUV: twistedRibbonSurfaceUV,\n\t\tuvHint: \"twistedRibbonSurfaceUV\",\n\t\tsteps: 128,\n\t\tstepCap: .08,\n\t\thitEps: .002\n\t}\n};\nvar SPIN_DEFAULTS = {\n\ttorus: {\n\t\trotX: -90,\n\t\tspinY: .05\n\t},\n\tbox: {\n\t\trotX: 15,\n\t\tspinY: .1\n\t},\n\tsphere: { spinY: .1 },\n\tcapsule: { spinY: .1 },\n\tmobius: {\n\t\trotX: -30,\n\t\tspinY: .05\n\t}\n};\nconst componentDefinition = defineStd({\n\tname: \"Form3D\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Distortions\",\n\tdescription: \"Wraps child content onto a 3D raymarched shape with lighting.\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tanimatedTime: { speed: \"speed\" },\n\textraFields: packedParamExtraFields(\"_f3p\", [\n\t\t[\n\t\t\t1,\n\t\t\t0,\n\t\t\t1,\n\t\t\t0\n\t\t],\n\t\t[\n\t\t\t1,\n\t\t\t0,\n\t\t\t.35,\n\t\t\t.1\n\t\t],\n\t\t[\n\t\t\t.3,\n\t\t\t.02,\n\t\t\t0,\n\t\t\t0\n\t\t]\n\t]),\n\tprops: {\n\t\tshape3d: {\n\t\t\tdefault: DEFAULT_RIBBON,\n\t\t\tdescription: \"3D shape and its parameters\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape3d\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshape3dType: {\n\t\t\tdefault: \"ribbon\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active shape type — triggers recompile when shape is switched\"\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the shape on screen\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tzoom: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Camera zoom level\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 10,\n\t\t\t\tmax: 200,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Zoom\",\n\t\t\t\tgroup: \"Scene\"\n\t\t\t}\n\t\t},\n\t\tglossiness: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Specular highlight intensity and sharpness\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 200,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Glossiness\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tlighting: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Overall intensity of lighting effects\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 200,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Lighting\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tuvMode: {\n\t\t\tdefault: \"stretch\",\n\t\t\ttransform: transformEdges,\n\t\t\tdescription: \"How to handle UV coordinates at shape boundaries\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"UV Edges\",\n\t\t\t\tgroup: \"Scene\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed — scales all spin rates\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -10,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { childNode, convertToTexture, uniforms, propValues, getCpuValue, onBeforeRender, ctx } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst childTexture = convertToTexture(childNode);\n\t\tconst shapeType = propValues.shape3dType || \"ribbon\";\n\t\tconst shape = SHAPES[shapeType] ?? SHAPES.ribbon;\n\t\tlet spinX = 0, spinY = 0, spinZ = 0;\n\t\tlet lastJson = \"\";\n\t\tlet cfg = (() =\u003e {\n\t\t\ttry {\n\t\t\t\treturn JSON.parse(getCpuValue(\"shape3d\"));\n\t\t\t} catch {\n\t\t\t\treturn {};\n\t\t\t}\n\t\t})();\n\t\tconst num = (k, f) =\u003e typeof cfg[k] === \"number\" ? cfg[k] : f;\n\t\tconst drive = (deltaTime) =\u003e {\n\t\t\tconst raw = getCpuValue(\"shape3d\");\n\t\t\tif (typeof raw === \"string\") {\n\t\t\t\tif (raw !== lastJson) {\n\t\t\t\t\tlastJson = raw;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tcfg = JSON.parse(raw);\n\t\t\t\t\t} catch {}\n\t\t\t\t}\n\t\t\t} else if (raw \u0026\u0026 typeof raw === \"object\") cfg = raw;\n\t\t\tconst speed = getCpuValue(\"speed\") ?? 1;\n\t\t\tif (shapeType === \"ribbon\") {\n\t\t\t\tconst angle = num(\"angle\", 0) * DEG;\n\t\t\t\tconst twist = num(\"twist\", 50) * .03;\n\t\t\t\tconst width = num(\"width\", 40) * .012;\n\t\t\t\tconst halfW = width * .5;\n\t\t\t\tconst thickness = num(\"thickness\", 20) * .001 + .01;\n\t\t\t\tconst seed = num(\"seed\", 0);\n\t\t\t\tconst lipschitz = Math.max(halfW * twist, 1);\n\t\t\t\tparams.setExtraField(\"_f3p0\", [\n\t\t\t\t\tangle,\n\t\t\t\t\ttwist,\n\t\t\t\t\thalfW,\n\t\t\t\t\twidth\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"_f3p1\", [\n\t\t\t\t\tthickness,\n\t\t\t\t\tseed,\n\t\t\t\t\tlipschitz,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"_f3p2\", [\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst dfl = SPIN_DEFAULTS[shapeType] ?? {};\n\t\t\tspinX += deltaTime * speed * num(\"spinX\", dfl.spinX ?? 0) * TAU_RATE;\n\t\t\tspinY += deltaTime * speed * num(\"spinY\", dfl.spinY ?? 0) * TAU_RATE;\n\t\t\tspinZ += deltaTime * speed * num(\"spinZ\", dfl.spinZ ?? 0) * TAU_RATE;\n\t\t\tconst aX = num(\"rotX\", dfl.rotX ?? 0) * DEG + spinX;\n\t\t\tconst aY = num(\"rotY\", dfl.rotY ?? 0) * DEG + spinY;\n\t\t\tconst aZ = num(\"rotZ\", dfl.rotZ ?? 0) * DEG + spinZ;\n\t\t\tconst rot0 = [\n\t\t\t\tMath.cos(aX),\n\t\t\t\tMath.sin(aX),\n\t\t\t\tMath.cos(aY),\n\t\t\t\tMath.sin(aY)\n\t\t\t];\n\t\t\tconst cz = Math.cos(aZ), sz = Math.sin(aZ);\n\t\t\tif (shapeType === \"sphere\") {\n\t\t\t\tparams.setExtraField(\"_f3p0\", rot0);\n\t\t\t\tparams.setExtraField(\"_f3p1\", [\n\t\t\t\t\tcz,\n\t\t\t\t\tsz,\n\t\t\t\t\tnum(\"radius\", 60) * .008 + .1,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"_f3p2\", [\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t} else if (shapeType === \"torus\") {\n\t\t\t\tparams.setExtraField(\"_f3p0\", rot0);\n\t\t\t\tparams.setExtraField(\"_f3p1\", [\n\t\t\t\t\tcz,\n\t\t\t\t\tsz,\n\t\t\t\t\tnum(\"outerRadius\", 60) * .008 + .1,\n\t\t\t\t\tnum(\"tubeRadius\", 25) * .006 + .05\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"_f3p2\", [\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t} else if (shapeType === \"box\") {\n\t\t\t\tparams.setExtraField(\"_f3p0\", rot0);\n\t\t\t\tparams.setExtraField(\"_f3p1\", [\n\t\t\t\t\tcz,\n\t\t\t\t\tsz,\n\t\t\t\t\tnum(\"sizeX\", 50) * .006,\n\t\t\t\t\tnum(\"sizeY\", 50) * .006\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"_f3p2\", [\n\t\t\t\t\tnum(\"sizeZ\", 50) * .006,\n\t\t\t\t\tnum(\"rounding\", 20) * .001,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t} else if (shapeType === \"capsule\") {\n\t\t\t\tparams.setExtraField(\"_f3p0\", rot0);\n\t\t\t\tparams.setExtraField(\"_f3p1\", [\n\t\t\t\t\tcz,\n\t\t\t\t\tsz,\n\t\t\t\t\tnum(\"radius\", 25) * .006 + .05,\n\t\t\t\t\tnum(\"height\", 80) * .005\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"_f3p2\", [\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t} else {\n\t\t\t\tparams.setExtraField(\"_f3p0\", rot0);\n\t\t\t\tparams.setExtraField(\"_f3p1\", [\n\t\t\t\t\tcz,\n\t\t\t\t\tsz,\n\t\t\t\t\tnum(\"ringRadius\", 60) * .008 + .1,\n\t\t\t\t\tnum(\"halfWidth\", 30) * .005\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"_f3p2\", [\n\t\t\t\t\tnum(\"thickness\", 8) * .001 + .005,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\t0\n\t\t\t\t]);\n\t\t\t}\n\t\t};\n\t\tdrive(0);\n\t\tonBeforeRender((fp) =\u003e drive(fp?.deltaTime ?? 0));\n\t\tconst t = animatedTime(params);\n\t\tconst traceRes = call(buildParamThreadedTrace(shape.sdf, {\n\t\t\tsteps: shape.steps,\n\t\t\tstepCap: shape.stepCap,\n\t\t\thitEps: shape.hitEps\n\t\t}), `form3dTrace_${shapeType}`, [\n\t\t\tctx.uv,\n\t\t\tctx.aspect,\n\t\t\tuniforms.center,\n\t\t\tuniforms.zoom,\n\t\t\tuniforms._f3p0,\n\t\t\tuniforms._f3p1,\n\t\t\tuniforms._f3p2,\n\t\t\tt\n\t\t]);\n\t\tconst hitPos = traceRes.member(\"hitPos\");\n\t\tconst normal = traceRes.member(\"normal\");\n\t\tconst rd = traceRes.member(\"rd\");\n\t\tconst hit = traceRes.member(\"hit\");\n\t\tconst uvm = call(applyUVMode3d, \"applyUVMode3d\", [call(shape.surfaceUV, shape.uvHint, [\n\t\t\thitPos,\n\t\t\tnormal,\n\t\t\tuniforms._f3p0,\n\t\t\tuniforms._f3p1,\n\t\t\tuniforms._f3p2,\n\t\t\tt\n\t\t]), uniforms.uvMode]);\n\t\tconst finalUV = uvm.member(\"xy\");\n\t\tconst uvVisible = uvm.member(\"z\");\n\t\treturn call(distortion3dLighting, \"distortion3dLighting\", [\n\t\t\tcall(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(finalUV)]),\n\t\t\tnormal,\n\t\t\trd,\n\t\t\thit,\n\t\t\tuvVisible,\n\t\t\tuniforms.glossiness.mul(.005),\n\t\t\tuniforms.lighting.mul(.005)\n\t\t]);\n\t} }\n});\nvar Form3D_default = componentDefinition;\nexport { componentDefinition as n, Form3D_default as t };\n","import { Cr as sin, Gn as typegpu_default, It as mixColorsLinear, Lt as mixColorsVariants, Mr as vec4f, Or as vec2f, Tr as sqrt, _r as mix, ar as clamp, ct as call, er as select, fr as floor, ft as floatE, hr as max, jr as vec3f, or as cos, pr as fract, pt as mixExpr, qr as f32, t as defineStd, ti as __export, yr as pow } from \"./lower-Bd2jez_2.js\";\nimport { F as shapedSurface, et as cosinePalette } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { i as sdfSpaceUV, r as offsetUV, t as glassGradient } from \"./glass-ABppDbYG.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar thinFilm_exports = /* @__PURE__ */ __export({\n\tapplyThinFilmEffect: () =\u003e applyThinFilmEffect$1,\n\tthinFilmCompose: () =\u003e thinFilmCompose,\n\tthinFilmCustomParams: () =\u003e thinFilmCustomParams,\n\tthinFilmRainbow: () =\u003e thinFilmRainbow,\n\tthinFilmShade: () =\u003e thinFilmShade\n});\nvar DEG_TO_RAD = .017453292519943295;\nvar TWO_PI = 6.283185307179586;\nconst thinFilmShade = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((sdfRaw, scale, gradX, gradY, edgeSoftness, rimWidthUniform, thickness, dispersion, hueShift, lightAngle, animTime, volumetric) =\u003e {\n\t\"use gpu\";\n\tconst sdf = __tsover_div(sdfRaw, scale);\n\tconst sharp = max(__tsover_mul(edgeSoftness, .5), .001);\n\tconst gLen = max(sqrt(__tsover_add(__tsover_mul(gradX, gradX), __tsover_mul(gradY, gradY))), 1e-4);\n\tconst nx = __tsover_div(gradX, gLen);\n\tconst ny = __tsover_div(gradY, gLen);\n\tconst rb1 = clamp(__tsover_mul(__tsover_div(__tsover_mul(sdf, -1), sharp), 32), 0, 1);\n\tconst rimWidth = max(__tsover_mul(rimWidthUniform, .1), .001);\n\tconst depth = clamp(__tsover_div(__tsover_mul(sdf, -1), rimWidth), 0, 1);\n\tconst cosView = __tsover_div(1, sqrt(__tsover_add(__tsover_mul(gLen, gLen), 1)));\n\tconst exponent = mix(7, 1.5, clamp(rimWidthUniform, 0, 1));\n\tconst volRim = __tsover_mul(pow(__tsover_sub(1, cosView), exponent), rb1);\n\tconst rim = select(__tsover_mul(__tsover_mul(__tsover_sub(1, depth), __tsover_sub(1, depth)), rb1), volRim, volumetric \u003e .5);\n\tconst lx = cos(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst ly = sin(__tsover_mul(lightAngle, DEG_TO_RAD));\n\tconst baseCos = __tsover_add(__tsover_mul(nx, lx), __tsover_mul(ny, ly));\n\tconst baseSin = __tsover_sub(__tsover_mul(ny, lx), __tsover_mul(nx, ly));\n\tconst theta = __tsover_mul(animTime, TWO_PI);\n\tconst rotatedDot = __tsover_add(__tsover_mul(baseCos, cos(theta)), __tsover_mul(baseSin, sin(theta)));\n\tconst thickVol = __tsover_mul(__tsover_mul(thickness, max(__tsover_mul(sdf, -1), 0)), 10);\n\tconst thicknessTerm = select(__tsover_mul(__tsover_mul(thickness, depth), 2), thickVol, volumetric \u003e .5);\n\treturn vec2f(__tsover_add(__tsover_add(hueShift, __tsover_mul(dispersion, rotatedDot)), thicknessTerm), rim);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfRaw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gradY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"edgeSoftness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rimWidthUniform\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dispersion\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"hueShift\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lightAngle\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"volumetric\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sdf\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"sdfRaw\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"scale\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sharp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"edgeSoftness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gLen\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gradX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gradY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gradX\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"gLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ny\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"gradY\",\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"gLen\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rb1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\"sharp\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"32\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rimWidth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rimWidthUniform\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t], [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"depth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"rimWidth\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cosView\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.sqrt\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"gLen\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"gLen\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"exponent\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"7\"],\n\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"rimWidthUniform\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"volRim\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cosView\"\n\t\t\t\t\t\t], \"exponent\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"rb1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"flatRim\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"depth\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"depth\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"rb1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rim\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"flatRim\",\n\t\t\t\t\t\t\"volRim\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ly\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"lightAngle\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"DEG_TO_RAD\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseCos\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"lx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ly\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseSin\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"lx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"ly\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"theta\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rotatedDot\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"baseCos\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"baseSin\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[\"theta\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickVol\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sdf\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"10\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thickFlat\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"thickness\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"depth\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"thicknessTerm\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"thickFlat\",\n\t\t\t\t\t\t\"thickVol\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"volumetric\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"phase\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"hueShift\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"dispersion\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"rotatedDot\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"thicknessTerm\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"phase\", \"rim\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.sqrt\": () =\u003e sqrt,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"DEG_TO_RAD\": () =\u003e DEG_TO_RAD,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst thinFilmRainbow = typegpu_default.fn([f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((phase) =\u003e {\n\t\"use gpu\";\n\treturn cosinePalette(phase, 0, .3333, .6667);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"cosinePalette\",\n\t\t\t[\n\t\t\t\t\"phase\",\n\t\t\t\t[5, \"0\"],\n\t\t\t\t[5, \"0.3333\"],\n\t\t\t\t[5, \"0.6667\"]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: { \"cosinePalette\": () =\u003e cosinePalette }\n}) \u0026\u0026 $.f)({}));\nconst thinFilmCustomParams = typegpu_default.fn([f32], vec3f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((phase) =\u003e {\n\t\"use gpu\";\n\tconst t = fract(phase);\n\tconst t3 = __tsover_mul(t, 3);\n\tconst si = fract(t3);\n\tconst floorT3 = floor(t3);\n\treturn vec3f(si, select(f32(0), f32(1), floorT3 \u003c= 1.5), select(f32(0), f32(1), floorT3 \u003c= .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"phase\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"phase\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t3\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"si\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t[\"t3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"floorT3\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t[\"t3\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gate12\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"floorT3\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"1.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"gate01\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"floorT3\",\n\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec3f\",\n\t\t\t\t[\n\t\t\t\t\t\"si\",\n\t\t\t\t\t\"gate12\",\n\t\t\t\t\t\"gate01\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec3f\": () =\u003e vec3f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst thinFilmCompose = typegpu_default.fn([\n\tvec3f,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((baseColor, rim, intensity, saturation) =\u003e {\n\t\"use gpu\";\n\tconst rgb = mix(vec3f(1, 1, 1), baseColor, saturation).mul(rim).mul(intensity);\n\tconst alpha = clamp(rim, 0, 1);\n\treturn vec4f(rgb.x, rgb.y, rgb.z, alpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"baseColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rim\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"saturation\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"white\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"col\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"white\",\n\t\t\t\t\t\t\"baseColor\",\n\t\t\t\t\t\t\"saturation\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"col\",\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"rim\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"intensity\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"rim\",\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"rgb\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"alpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction applyThinFilmEffect$1(params, sdfSampler, options) {\n\tconst { uniforms, propValues, ctx } = params;\n\tconst volumetric = options?.volumetric ?? false;\n\tconst gradSampler = options?.gradSampler ?? sdfSampler;\n\tconst volFlag = floatE(volumetric ? 1 : 0);\n\tconst animTime = params.props.member(\"_animTime\");\n\tconst sdfUV = call(sdfSpaceUV, \"sdfSpaceUV\", [\n\t\tuniforms.center,\n\t\tuniforms.scale,\n\t\tuniforms.rotation,\n\t\tctx.uv,\n\t\tctx.aspect\n\t]);\n\tconst surf0 = sdfSampler(sdfUV);\n\tconst sdfRaw = surf0.member(\"r\");\n\tlet gradX;\n\tlet gradY;\n\tif (options?.bakedGradients) {\n\t\tgradX = surf0.member(\"g\");\n\t\tgradY = surf0.member(\"b\");\n\t} else {\n\t\tconst surfX = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tfloatE(.01),\n\t\t\tfloatE(0)\n\t\t]));\n\t\tconst surfY = gradSampler(call(offsetUV, \"offsetUV\", [\n\t\t\tsdfUV,\n\t\t\tfloatE(0),\n\t\t\tfloatE(.01)\n\t\t]));\n\t\tconst grad = call(glassGradient, \"glassGradient\", [\n\t\t\tsdfRaw,\n\t\t\tsurfX.member(\"r\"),\n\t\t\tsurfY.member(\"r\")\n\t\t]);\n\t\tgradX = grad.member(\"x\");\n\t\tgradY = grad.member(\"y\");\n\t}\n\tconst shade = call(thinFilmShade, \"thinFilmShade\", [\n\t\tsdfRaw,\n\t\tuniforms.scale,\n\t\tgradX,\n\t\tgradY,\n\t\tuniforms.edgeSoftness,\n\t\tuniforms.rimWidth,\n\t\tuniforms.thickness,\n\t\tuniforms.dispersion,\n\t\tuniforms.hueShift,\n\t\tuniforms.lightAngle,\n\t\tanimTime,\n\t\tvolFlag\n\t]);\n\tconst phase = shade.member(\"x\");\n\tconst rim = shade.member(\"y\");\n\tlet baseColor;\n\tif (propValues.mode === \"custom\") {\n\t\tconst mixFn = mixColorsVariants[typeof propValues.colorSpace === \"number\" ? propValues.colorSpace : 0] ?? mixColorsLinear;\n\t\tconst cp = call(thinFilmCustomParams, \"thinFilmCustomParams\", [phase]);\n\t\tconst si = cp.member(\"x\");\n\t\tconst gate12 = cp.member(\"y\");\n\t\tconst gate01 = cp.member(\"z\");\n\t\tconst c01 = call(mixFn, \"mixColors\", [\n\t\t\tuniforms.colorA,\n\t\t\tuniforms.colorB,\n\t\t\tsi\n\t\t]);\n\t\tconst c12 = call(mixFn, \"mixColors\", [\n\t\t\tuniforms.colorB,\n\t\t\tuniforms.colorC,\n\t\t\tsi\n\t\t]);\n\t\tbaseColor = mixExpr(mixExpr(call(mixFn, \"mixColors\", [\n\t\t\tuniforms.colorC,\n\t\t\tuniforms.colorA,\n\t\t\tsi\n\t\t]), c12, gate12), c01, gate01).member(\"rgb\");\n\t} else baseColor = call(thinFilmRainbow, \"thinFilmRainbow\", [phase]);\n\treturn call(thinFilmCompose, \"thinFilmCompose\", [\n\t\tbaseColor,\n\t\trim,\n\t\tuniforms.intensity,\n\t\tuniforms.saturation\n\t]);\n}\nvar { applyThinFilmEffect } = thinFilm_exports;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nconst componentDefinition = defineStd({\n\tname: \"ThinFilm\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Iridescent thin-film edge\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tchord: \"firstLobe\",\n\t\tgradSampler: \"same\",\n\t\tbakedGradients: \"volumetric\",\n\t\tstencil: \"none\",\n\t\tsurface: (frame, params) =\u003e applyThinFilmEffect(params, frame.sampler, {\n\t\t\tvolumetric: frame.volumetric,\n\t\t\tbakedGradients: frame.bakedGradients\n\t\t})\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Rim brightness — values above 1 push the edge past white for HDR bloom\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\trimWidth: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How far inward from the edge the iridescence reaches\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Rim Width\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Softness of the shape boundary\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Film thickness — higher values pack more spectral bands across the rim\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\tdispersion: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How strongly colour separates around the perimeter (warm vs cool sides)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Dispersion\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\tsaturation: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Spectral saturation — 0 = white rim, 1 = full iridescence\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Saturation\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\thueShift: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotate the spectrum to reposition the colours\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Hue Shift\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 300,\n\t\t\tdescription: \"Light angle in degrees — sets which side of the rim runs warm vs cool\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Film\"\n\t\t\t}\n\t\t},\n\t\tmode: {\n\t\t\tdefault: \"rainbow\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Rainbow uses the full iridescent spectrum; Custom cycles through your three chosen colours\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Rainbow\",\n\t\t\t\t\tvalue: \"rainbow\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Custom\",\n\t\t\t\t\tvalue: \"custom\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Mode\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#2b6fff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First colour in the rim cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 1\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second colour in the rim cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 2\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#ff7a21\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Third colour in the rim cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 3\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklch\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Colour space used to blend between custom colours\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Speed at which the colours rotate around the rim (0 = static)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file — when non-empty, activates SVG mode and triggers a shader recompile\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type — triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.\"\n\t\t}\n\t}\n});\nvar ThinFilm_default = componentDefinition;\nexport { componentDefinition as n, ThinFilm_default as t };\n","import { Gn as typegpu_default, Mr as vec4f, Or as vec2f, Tt as srgbToLinear, ct as call, er as select, gr as min, hr as max, jr as vec3f, qr as f32 } from \"./lower-Bd2jez_2.js\";\nimport { i as decodeImageSource, n as createUrlSourceLoader, r as createVideoElementSource, s as registerNaturalSize, t as createSwappableMediaTexture } from \"./mediaLifecycle-BTPb5i1-.js\";\nconst scaleCover = typegpu_default.fn([vec2f, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dims, vp) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(dims.x, dims.y);\n\tconst viewportAspect = __tsover_div(vp.x, vp.y);\n\tconst coverScale = max(__tsover_div(viewportAspect, aspect), 1);\n\treturn vec2f(__tsover_mul(__tsover_div(aspect, viewportAspect), coverScale), coverScale);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dims\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"vp\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"viewportAspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"coverScale\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"viewportAspect\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"viewportAspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"coverScale\"\n\t\t\t\t], \"coverScale\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst scaleContain = typegpu_default.fn([vec2f, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dims, vp) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(dims.x, dims.y);\n\tconst viewportAspect = __tsover_div(vp.x, vp.y);\n\tconst containScale = min(__tsover_div(viewportAspect, aspect), 1);\n\treturn vec2f(__tsover_mul(__tsover_div(aspect, viewportAspect), containScale), containScale);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dims\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"vp\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"viewportAspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"containScale\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"viewportAspect\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"viewportAspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"containScale\"\n\t\t\t\t], \"containScale\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.min\": () =\u003e min,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst scaleFill = typegpu_default.fn([], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = (() =\u003e {\n\t\"use gpu\";\n\treturn vec2f(1, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst scaleScaleDown = typegpu_default.fn([vec2f, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dims, vp) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(dims.x, dims.y);\n\tconst viewportAspect = __tsover_div(vp.x, vp.y);\n\tconst scaleDownScale = min(min(__tsover_div(viewportAspect, aspect), 1), min(__tsover_div(vp.x, dims.x), __tsover_div(vp.y, dims.y)));\n\treturn vec2f(__tsover_mul(__tsover_div(aspect, viewportAspect), scaleDownScale), scaleDownScale);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dims\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"vp\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"viewportAspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"containScale\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"viewportAspect\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"naturalScale\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaleDownScale\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[\"containScale\", \"naturalScale\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"viewportAspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"scaleDownScale\"\n\t\t\t\t], \"scaleDownScale\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.min\": () =\u003e min,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst scaleNone = typegpu_default.fn([vec2f, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((dims, vp) =\u003e {\n\t\"use gpu\";\n\tconst aspect = __tsover_div(dims.x, dims.y);\n\tconst viewportAspect = __tsover_div(vp.x, vp.y);\n\tconst noneScale = min(__tsover_div(vp.x, dims.x), __tsover_div(vp.y, dims.y));\n\treturn vec2f(__tsover_mul(__tsover_div(aspect, viewportAspect), noneScale), noneScale);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"dims\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"vp\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"viewportAspect\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"noneScale\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"vp\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"dims\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"aspect\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\"viewportAspect\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"noneScale\"\n\t\t\t\t], \"noneScale\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.min\": () =\u003e min,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst sampleUV = typegpu_default.fn([vec2f, vec2f], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, uvScale) =\u003e {\n\t\"use gpu\";\n\tconst centeredUV = uv.sub(vec2f(.5, .5));\n\treturn vec2f(__tsover_div(centeredUV.x, uvScale.x), __tsover_div(centeredUV.y, uvScale.y)).add(vec2f(.5, .5));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uvScale\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"centeredUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"scaledUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uvScale\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"centeredUV\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uvScale\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"scaledUV\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst applyMirror = typegpu_default.fn([vec2f, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, mirror) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(select(uv.x, __tsover_sub(1, uv.x), mirror \u003e 0), uv.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"mirror\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"mirroredX\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"mirror\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[\"mirroredX\", [\n\t\t\t\t7,\n\t\t\t\t\"uv\",\n\t\t\t\t\"y\"\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst alphaCutLinear = typegpu_default.fn([vec4f, vec2f], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((color, uv) =\u003e {\n\t\"use gpu\";\n\tconst linear = srgbToLinear(vec3f(color.x, color.y, color.z));\n\tconst outOfBounds = uv.x \u003c 0 || uv.x \u003e 1 || uv.y \u003c 0 || uv.y \u003e 1;\n\tconst alpha = select(color.w, 0, outOfBounds);\n\treturn vec4f(linear.x, linear.y, linear.z, alpha);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"color\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"linear\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"srgbToLinear\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outOfBounds\",\n\t\t\t\t[\n\t\t\t\t\t3,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"||\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"alpha\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\"outOfBounds\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"linear\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"linear\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"linear\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"alpha\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"srgbToLinear\": () =\u003e srgbToLinear,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst OBJECT_FIT_MODES = {\n\tcover: 0,\n\tcontain: 1,\n\tfill: 2,\n\t\"scale-down\": 3,\n\tnone: 2\n};\nconst OBJECT_FIT_MODES_ALLOW_NONE = {\n\tcover: 0,\n\tcontain: 1,\n\tfill: 2,\n\t\"scale-down\": 3,\n\tnone: 4\n};\nfunction mediaSurface(opts) {\n\tconst table = opts.allowNone ? OBJECT_FIT_MODES_ALLOW_NONE : OBJECT_FIT_MODES;\n\tconst fallback = opts.allowNone ? 0 : 2;\n\tconst mode = typeof opts.fit === \"number\" ? opts.fit : table[opts.fit] ?? fallback;\n\tconst dims = opts.texture.dimensions();\n\tlet uvScale;\n\tif (mode === 1) uvScale = call(scaleContain, \"scaleContain\", [dims, opts.viewport]);\n\telse if (mode === 2) uvScale = call(scaleFill, \"scaleFill\", []);\n\telse if (mode === 3) uvScale = call(scaleScaleDown, \"scaleScaleDown\", [dims, opts.viewport]);\n\telse if (mode === 4 \u0026\u0026 opts.allowNone) uvScale = call(scaleNone, \"scaleNone\", [dims, opts.viewport]);\n\telse uvScale = call(scaleCover, \"scaleCover\", [dims, opts.viewport]);\n\tconst fitUV = call(sampleUV, \"mediaSampleUV\", [opts.uv, uvScale]);\n\tconst finalUV = opts.uvPostProcess ? opts.uvPostProcess(fitUV) : fitUV;\n\treturn call(alphaCutLinear, \"mediaAlphaCut\", [opts.texture.sample(finalUV), finalUV]);\n}\nfunction fitSurface(params, slots, texture, extra) {\n\tconst { ctx, propValues, uvContext, effectiveViewportSize } = params;\n\treturn mediaSurface({\n\t\ttexture,\n\t\tuv: uvContext ?? ctx.uv,\n\t\tviewport: effectiveViewportSize ?? ctx.viewportSize,\n\t\tfit: propValues[slots.fit.name],\n\t\tdecode: slots.decode,\n\t\t...extra\n\t});\n}\nfunction imageMedia(opts) {\n\treturn { gpu: { fragment: (params) =\u003e {\n\t\tconst tex = createSwappableMediaTexture(params, { label: opts.label });\n\t\tcreateUrlSourceLoader(params, {\n\t\t\tprop: opts.src.name,\n\t\t\tasync load(url, loadCtx) {\n\t\t\t\tconst decoded = await decodeImageSource(url);\n\t\t\t\tif (loadCtx.isDisposed()) {\n\t\t\t\t\tdecoded.close();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tloadCtx.commit();\n\t\t\t\tregisterNaturalSize(url, decoded.naturalWidth, decoded.naturalHeight);\n\t\t\t\ttex.ensureSize(decoded.width, decoded.height);\n\t\t\t\ttex.write(decoded.source);\n\t\t\t\tdecoded.close();\n\t\t\t},\n\t\t\tonError: opts.onError\n\t\t});\n\t\treturn fitSurface(params, opts, tex.kit);\n\t} } };\n}\nfunction videoMedia(opts) {\n\treturn { gpu: { fragment: (params) =\u003e {\n\t\tconst source = createVideoElementSource(params, {\n\t\t\tsource: {\n\t\t\t\tkind: \"url\",\n\t\t\t\tprop: opts.src.name\n\t\t\t},\n\t\t\tloop: { prop: opts.loop.name },\n\t\t\tmetadataTimeoutMs: opts.metadataTimeoutMs,\n\t\t\tonError: opts.onError\n\t\t});\n\t\treturn fitSurface(params, opts, params.registerExternalTexture(source.getSource));\n\t} } };\n}\nfunction webcamMedia(opts) {\n\treturn { gpu: { fragment: (params) =\u003e {\n\t\tconst source = createVideoElementSource(params, {\n\t\t\tsource: {\n\t\t\t\tkind: \"webcam\",\n\t\t\t\tconstraints: opts.constraints\n\t\t\t},\n\t\t\tnaturalSizeKey: opts.naturalSizeKey,\n\t\t\tautoplayRequired: true,\n\t\t\tonError: opts.onError\n\t\t});\n\t\treturn fitSurface(params, opts, params.registerExternalTexture(source.getSource), {\n\t\t\tallowNone: true,\n\t\t\tuvPostProcess: (uv) =\u003e call(applyMirror, \"applyMirror\", [uv, params.uniforms[opts.mirror.name]])\n\t\t});\n\t} } };\n}\nexport { videoMedia as n, webcamMedia as r, imageMedia as t };\n","import { s as Scalar } from \"./lower-Bd2jez_2.js\";\nimport { D as pow, P as smoothstep, T as neg, n as add, t as abs, w as mul, z as sub } from \"./math-D864seEs.js\";\nfunction softBand(opts) {\n\treturn mul(smoothstep(opts.below.from, opts.below.to, opts.distance), sub(1, smoothstep(opts.above.from ?? 0, opts.above.to, opts.distance)));\n}\nfunction softDisc(opts) {\n\tconst { width, curve } = opts.softness;\n\treturn pow(sub(1, smoothstep(sub(opts.radius, width), add(opts.radius, width), opts.dist)), curve);\n}\nfunction crispFill(opts) {\n\tconst half = mul(opts.footprint, .5);\n\treturn sub(1, smoothstep(neg(half), half, opts.distance));\n}\nfunction crispStroke(opts) {\n\treturn crispFill({\n\t\tdistance: sub(abs(opts.distance), mul(opts.width, .5)),\n\t\tfootprint: opts.footprint\n\t});\n}\nfunction radialMask(slots) {\n\treturn new Scalar({\n\t\tkind: \"radialMask\",\n\t\tcenter: slots.center,\n\t\tradius: slots.radius,\n\t\tfalloff: slots.falloff\n\t});\n}\nexport { softDisc as a, softBand as i, crispStroke as n, radialMask as r, crispFill as t };\n","function pointer(opts) {\n\treturn {\n\t\tkind: \"pointer\",\n\t\tteleportGuard: opts?.teleportGuard ?? \"on\"\n\t};\n}\nfunction pointerSpeed(opts) {\n\treturn {\n\t\tkind: \"pointerSpeed\",\n\t\tmax: opts?.max ?? 2\n\t};\n}\nfunction driveUnitDirection(params, props, fields) {\n\tparams.onBeforeRender(() =\u003e {\n\t\tconst x = params.getCpuValue(props.x);\n\t\tconst y = params.getCpuValue(props.y);\n\t\tconst z = params.getCpuValue(props.z);\n\t\tconst len = Math.sqrt(x * x + y * y + z * z);\n\t\tif (len \u003e 0) {\n\t\t\tparams.setExtraField(fields.x, x / len);\n\t\t\tparams.setExtraField(fields.y, y / len);\n\t\t\tparams.setExtraField(fields.z, z / len);\n\t\t} else {\n\t\t\tparams.setExtraField(fields.x, 0);\n\t\t\tparams.setExtraField(fields.y, 0);\n\t\t\tparams.setExtraField(fields.z, 0);\n\t\t}\n\t});\n}\nfunction cpuHash01(x) {\n\tconst v = Math.sin(x * 12.9898) * 43758.5453;\n\treturn v - Math.floor(v);\n}\nexport { pointerSpeed as i, driveUnitDirection as n, pointer as r, cpuHash01 as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { t as displaceBy } from \"./filter-BrhpSs3Z.js\";\nimport { i as pointerSpeed, r as pointer } from \"./signal-emJuvOI3.js\";\nconst op = {\n\twave(config) {\n\t\treturn {\n\t\t\tkind: \"op.wave\",\n\t\t\tdamping: config.damping\n\t\t};\n\t},\n\tsplat(config) {\n\t\treturn {\n\t\t\tkind: \"op.splat\",\n\t\t\tat: config.at,\n\t\t\tamount: config.amount,\n\t\t\tradius: config.radius\n\t\t};\n\t},\n\tgradient() {\n\t\treturn { kind: \"op.gradient\" };\n\t}\n};\nvar GridSim = class {\n\tconstructor(config) {\n\t\tthis.config = config;\n\t}\n\toutput(name) {\n\t\tif (!(name in this.config.derive)) throw new Error(`std: simulation has no derived output '${name}' (declared: ${Object.keys(this.config.derive).join(\", \")})`);\n\t\treturn {\n\t\t\tkind: \"simOutput\",\n\t\t\tsim: this,\n\t\t\toutput: name\n\t\t};\n\t}\n};\nvar waves = { grid(config) {\n\treturn new GridSim(config);\n} }.grid({\n\tresolution: 128,\n\thistory: 2,\n\tstep: [op.wave({ damping: p(\"decay\") }), op.splat({\n\t\tat: pointer({ teleportGuard: \"on\" }),\n\t\tamount: pointerSpeed({ max: 2 }),\n\t\tradius: p(\"radius\")\n\t})],\n\tderive: { displacement: op.gradient() },\n\trest: { settlesWhen: \"derived-from-damping\" }\n});\nconst componentDefinition = defineStd({\n\tname: \"CursorRipples\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Fluid-like ripple distortion\",\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Strength of the ripple distortion\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdecay: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"How quickly ripples fade (higher = faster)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Decay\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Radius of cursor influence\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tchromaticSplit: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"RGB channel separation along ripple edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Chromatic Split\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"stretch\",\n\t\t\tdescription: \"How to handle edges when distortion pushes content out of bounds\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: displaceBy(waves.output(\"displacement\"), {\n\t\tstrength: p(\"intensity\"),\n\t\tchromatic: p(\"chromaticSplit\"),\n\t\tedges: p(\"edges\")\n\t})\n});\nvar CursorRipples_default = componentDefinition;\nexport { componentDefinition as n, CursorRipples_default as t };\n","import { Ar as vec2u, Br as struct, Cr as sin, Er as step, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Pn as DEG_TO_RAD, Rr as textureStorage2d, X as applyEdgeHandlingExpr, Yn as textureStore, Yr as u32, _r as mix, ar as clamp, at as ZERO, ct as call, dt as expr, ft as floatE, gt as formatFloat, hr as max, i as resolveArg, jr as vec3f, mt as vec4, o as uniformOf, or as cos, pt as mixExpr, q as createGuardedCompute, qr as f32, rt as sampleCatmullRomExpr, st as asLocal, wr as smoothstep } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { D as rgbSplitTaps, E as revealShadow$1, O as rimComposite, S as pagePeelGeom, b as overhangShade, c as curlSheen$1, d as edgeClipSample, j as sphereBulge, k as rimLight, m as flutedGlassGeom, r as blinnHighlight, s as curlShade, x as pagePeelCompose } from \"./warpMaps-Y8xSo-QJ.js\";\nimport { C as intensityToRadius, D as withBloomCompute, O as withFixedBlurCompute, S as glowCompose, T as tiltShiftBlurAmount, _ as channelBlurCompose, a as DEFAULT_COMPUTE_WIDTH, c as buildBokehGraph, d as buildGlowPrepassGraph, f as buildGlowPrepassMapGraph, g as buildTiltShiftFillMapGraph, h as buildTiltShiftFillGraph, i as DEFAULT_COMPUTE_HEIGHT, k as withVariableBlurCompute, l as buildBokehMapGraph, m as buildProgressiveBlurFillMapGraph, n as BOKEH_TAP_COUNT, o as bokehRadiusToPixels, p as buildProgressiveBlurFillGraph, r as CHANNEL_INTENSITY_TO_RADIUS, s as buildBloomExtractGraph, t as BLUR_MAP_FORMAT, u as buildFillBlurMapGraph, v as composeBlurredOverSharp, w as remapWindowValues, x as generateBokehTaps } from \"./blur-7yjVyMvI.js\";\nimport { C as vignetteShade, S as vhsSampleUVs, _ as scatterGather, a as dropShadowComposite, b as vhsAcBeat, d as glitchSplitUVs, f as motionBlurGather, g as scanlineShade, h as rgbSplitCombine, i as distortScanShade, m as pixelateGather, n as beatShade, o as dropShadowUV, p as phosphorShade, r as crtSampleUV, s as fillBarsShade, t as adjustShade, u as glitchGeom, v as sharpenGather, w as yiqRecombine, x as vhsChromaTapUV, y as silhouetteBlur } from \"./motionBlur-g_WSi2iq.js\";\nfunction gatherStack(sample, overlays, opts) {\n\treturn {\n\t\tkind: \"gather\",\n\t\tresultAlpha: opts?.resultAlpha,\n\t\tbuild: (params) =\u003e overlays.reduce((color, stage) =\u003e stage(color, params), sample(params))\n\t};\n}\nfunction frameOf(make) {\n\tconst cache = /* @__PURE__ */ new WeakMap();\n\treturn (params) =\u003e {\n\t\tconst hit = cache.get(params);\n\t\tif (hit) return hit;\n\t\tconst made = make(params);\n\t\tcache.set(params, made);\n\t\treturn made;\n\t};\n}\nfunction rgbSplit(opts) {\n\treturn (params) =\u003e {\n\t\tconst amount = resolveArg(opts.amount, params);\n\t\tconst redUV = call(crtSampleUV, \"crtSampleUV\", [\n\t\t\tparams.ctx.uv,\n\t\t\tamount,\n\t\t\tfloatE(1)\n\t\t]);\n\t\tconst blueUV = call(crtSampleUV, \"crtSampleUV\", [\n\t\t\tparams.ctx.uv,\n\t\t\tamount,\n\t\t\tfloatE(-1)\n\t\t]);\n\t\treturn call(rgbSplitCombine, \"rgbSplitCombine\", [\n\t\t\tparams.texture.sample(redUV),\n\t\t\tparams.texture.sample(params.ctx.uv),\n\t\t\tparams.texture.sample(blueUV)\n\t\t]);\n\t};\n}\nfunction tapeWarp(opts) {\n\treturn (params) =\u003e call(vhsSampleUVs, \"vhsSampleUVs\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.time,\n\t\tresolveArg(opts.speed, params),\n\t\tresolveArg(opts.wobble, params),\n\t\tresolveArg(opts.jitter, params)\n\t]);\n}\nfunction chromaSmearTaps(opts) {\n\treturn (params) =\u003e {\n\t\tconst uvs = asLocal(opts.warp(params), \"tapeUVs\");\n\t\tconst chromaUV = uvs.member(\"zw\");\n\t\tconst lumaSample = params.texture.sample(uvs.member(\"xy\"));\n\t\tconst smearScale = resolveArg(opts.smear, params).mul(.0075);\n\t\tconst tap = (i) =\u003e params.texture.sample(call(vhsChromaTapUV, \"vhsChromaTapUV\", [\n\t\t\tchromaUV,\n\t\t\tsmearScale,\n\t\t\tfloatE(i)\n\t\t]));\n\t\treturn vec4(call(yiqRecombine, \"yiqRecombine\", [\n\t\t\tlumaSample,\n\t\t\ttap(1),\n\t\t\ttap(2),\n\t\t\ttap(3),\n\t\t\ttap(4),\n\t\t\ttap(5)\n\t\t]), lumaSample.member(\"a\"));\n\t};\n}\nfunction adjust(opts) {\n\treturn (color, params) =\u003e call(adjustShade, \"adjustShade\", [\n\t\tcolor,\n\t\tresolveArg(opts.contrast, params),\n\t\tresolveArg(opts.brightness, params)\n\t]);\n}\nfunction scanlines(opts) {\n\treturn (color, params) =\u003e call(scanlineShade, \"scanlineShade\", [\n\t\tcolor,\n\t\tparams.ctx.uv.member(\"y\"),\n\t\tresolveArg(opts.frequency, params),\n\t\tresolveArg(opts.intensity, params)\n\t]);\n}\nfunction phosphorMask(opts) {\n\treturn (color, params) =\u003e call(phosphorShade, \"phosphorShade\", [\n\t\tcolor,\n\t\tparams.ctx.uv,\n\t\tresolveArg(opts.pitch, params)\n\t]);\n}\nfunction vignetteOverlay(opts) {\n\treturn (color, params) =\u003e call(vignetteShade, \"vignetteShade\", [\n\t\tcolor,\n\t\tparams.ctx.uv,\n\t\tparams.ctx.aspect,\n\t\tresolveArg(opts.radius, params),\n\t\tresolveArg(opts.intensity, params)\n\t]);\n}\nfunction opaque() {\n\treturn (color) =\u003e vec4(color, floatE(1));\n}\nfunction beatPulse(opts) {\n\treturn (color, params) =\u003e call(beatShade, \"beatShade\", [color, call(vhsAcBeat, \"vhsAcBeat\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.time,\n\t\tresolveArg(opts.speed, params),\n\t\tresolveArg(opts.wobble, params)\n\t])]);\n}\nconst blurPath = {\n\tlinear: (angle) =\u003e ({\n\t\tkind: \"linear\",\n\t\tfocus: angle\n\t}),\n\torbit: (center) =\u003e ({\n\t\tkind: \"orbit\",\n\t\tfocus: center\n\t}),\n\tzoom: (center) =\u003e ({\n\t\tkind: \"zoom\",\n\t\tfocus: center\n\t})\n};\nfunction motionBlur(opts) {\n\tconst { path, amount } = opts;\n\treturn {\n\t\tkind: \"gather\",\n\t\tbuild: (params) =\u003e motionBlurGather(path.kind, {\n\t\t\tfocus: resolveArg(path.focus, params),\n\t\t\tamount: resolveArg(amount, params),\n\t\t\tuv: params.ctx.uv,\n\t\t\taspect: params.ctx.aspect,\n\t\t\tviewportSize: params.ctx.viewportSize\n\t\t}, (coord) =\u003e params.texture.sample(coord))\n\t};\n}\nfunction scatter(opts) {\n\tconst { amount, edges } = opts;\n\treturn {\n\t\tkind: \"gather\",\n\t\tbuild: (params) =\u003e scatterGather({\n\t\t\tuv: params.ctx.uv,\n\t\t\tamount: resolveArg(amount, params),\n\t\t\tviewportSize: params.ctx.viewportSize,\n\t\t\tedgeMode: params.propValues[edges.name] ?? 0,\n\t\t\tsample: (coord) =\u003e params.texture.sample(coord)\n\t\t})\n\t};\n}\nfunction sharpen(amount) {\n\treturn {\n\t\tkind: \"gather\",\n\t\tbuild: (params) =\u003e sharpenGather({\n\t\t\tuv: params.ctx.uv,\n\t\t\tviewportSize: params.ctx.viewportSize,\n\t\t\tamount: resolveArg(amount, params),\n\t\t\tsample: (coord) =\u003e params.texture.sample(coord)\n\t\t})\n\t};\n}\nfunction pixelate(opts) {\n\tconst { scale, gap, roundness } = opts;\n\treturn {\n\t\tkind: \"gather\",\n\t\tresultAlpha: \"straight\",\n\t\tbuild: (params) =\u003e pixelateGather({\n\t\t\tuv: params.ctx.uv,\n\t\t\taspect: params.ctx.aspect,\n\t\t\tscale: resolveArg(scale, params),\n\t\t\tgap: resolveArg(gap, params),\n\t\t\troundness: resolveArg(roundness, params),\n\t\t\tsampleStraight: params.sampleStraight\n\t\t})\n\t};\n}\nfunction sphereFrame(opts) {\n\treturn frameOf((params) =\u003e asLocal(call(sphereBulge, \"sphereBulge\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.viewportSize,\n\t\tresolveArg(opts.center, params),\n\t\tresolveArg(opts.radius, params),\n\t\tresolveArg(opts.depth, params)\n\t]), \"sphere\"));\n}\nfunction crispTap(frame) {\n\treturn (params) =\u003e call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [sampleCatmullRomExpr(params.texture, frame(params).member(\"uv\"))]);\n}\nfunction rimLit(frame, opts) {\n\treturn (color, params) =\u003e {\n\t\tconst rim = call(rimLight, \"rimLight\", [\n\t\t\tframe(params).member(\"normal\"),\n\t\t\tresolveArg(opts.position, params),\n\t\t\tresolveArg(opts.intensity, params),\n\t\t\tresolveArg(opts.softness, params)\n\t\t]);\n\t\treturn call(rimComposite, \"rimComposite\", [\n\t\t\tcolor,\n\t\t\tresolveArg(opts.color, params).member(\"rgb\"),\n\t\t\trim,\n\t\t\tframe(params).member(\"coverage\")\n\t\t]);\n\t};\n}\nfunction glitchFrame(opts) {\n\treturn frameOf((params) =\u003e asLocal(call(glitchGeom, \"glitchGeom\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.time,\n\t\tresolveArg(opts.intensity, params),\n\t\tresolveArg(opts.speed, params),\n\t\tresolveArg(opts.blockDensity, params),\n\t\tresolveArg(opts.mirrorAmount, params)\n\t]), \"glitch\"));\n}\nfunction glitchRgbSplit(frame, opts) {\n\treturn (params) =\u003e {\n\t\tconst geom = frame(params);\n\t\tconst splitUVs = asLocal(call(glitchSplitUVs, \"glitchSplitUVs\", [\n\t\t\tgeom.member(\"mirroredUV\"),\n\t\t\tresolveArg(opts.shift, params),\n\t\t\tgeom.member(\"spread\")\n\t\t]), \"splitUVs\");\n\t\tconst greenSample = params.texture.sample(geom.member(\"mirroredUV\"));\n\t\treturn vec4(params.texture.sample(splitUVs.member(\"xy\")).member(\"r\"), greenSample.member(\"g\"), params.texture.sample(splitUVs.member(\"zw\")).member(\"b\"), greenSample.member(\"a\"));\n\t};\n}\nfunction colorBarFills(frame, opts) {\n\treturn (color, params) =\u003e {\n\t\tconst geom = frame(params);\n\t\treturn call(fillBarsShade, \"fillBarsShade\", [\n\t\t\tcolor,\n\t\t\tparams.ctx.uv,\n\t\t\tgeom.member(\"bandY1\"),\n\t\t\tgeom.member(\"slowFrame\"),\n\t\t\tresolveArg(opts.intensity, params),\n\t\t\tgeom.member(\"strength\"),\n\t\t\tgeom.member(\"bandGate\"),\n\t\t\tgeom.member(\"blockGate\")\n\t\t]);\n\t};\n}\nfunction distortedScanlines(frame, opts) {\n\treturn (color, params) =\u003e call(distortScanShade, \"distortScanShade\", [\n\t\tcolor,\n\t\tparams.ctx.uv.member(\"y\"),\n\t\tparams.ctx.viewportSize.member(\"y\"),\n\t\tresolveArg(opts.intensity, params),\n\t\tframe(params).member(\"distortion\")\n\t]);\n}\nfunction gaussianBlur(opts) {\n\tconst prop = opts.intensity.name;\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tconst { getCpuValue, getMapInfo } = params;\n\t\t\tconst mapInfo = getMapInfo(prop);\n\t\t\tif (mapInfo) return withVariableBlurCompute(params, {\n\t\t\t\tsource: mapInfo,\n\t\t\t\tbuildFill: (cw, ch) =\u003e buildFillBlurMapGraph(cw, ch, mapInfo.channel),\n\t\t\t\tfillValues: (dims, window) =\u003e ({\n\t\t\t\t\tinputWidth: dims.width,\n\t\t\t\t\tinputHeight: dims.height,\n\t\t\t\t\t...remapWindowValues(window)\n\t\t\t\t})\n\t\t\t});\n\t\t\treturn withFixedBlurCompute(params, { radius: () =\u003e {\n\t\t\t\tconst raw = getCpuValue(prop);\n\t\t\t\treturn typeof raw === \"number\" ? intensityToRadius(raw) : 4;\n\t\t\t} });\n\t\t},\n\t\tgpu: { fragment: (params) =\u003e composeBlurredOverSharp(params, (blurred, sharp) =\u003e vec4(blurred.member(\"rgb\"), sharp.member(\"a\"))) }\n\t};\n}\nfunction channelBlur(opts) {\n\tconst { red, green, blue } = opts;\n\treturn {\n\t\tcompute: (params) =\u003e withFixedBlurCompute(params, { radius: () =\u003e {\n\t\t\tconst r = (params.getCpuValue(red.name) ?? 0) * CHANNEL_INTENSITY_TO_RADIUS;\n\t\t\tconst g = (params.getCpuValue(green.name) ?? 0) * CHANNEL_INTENSITY_TO_RADIUS;\n\t\t\tconst b = (params.getCpuValue(blue.name) ?? 0) * CHANNEL_INTENSITY_TO_RADIUS;\n\t\t\treturn Math.max(r, g, b, .01);\n\t\t} }),\n\t\tgpu: { fragment: (params) =\u003e composeBlurredOverSharp(params, (blurred, sharp) =\u003e call(channelBlurCompose, \"channelBlurCompose\", [\n\t\t\tsharp,\n\t\t\tblurred,\n\t\t\tuniformOf(red, params),\n\t\t\tuniformOf(green, params),\n\t\t\tuniformOf(blue, params)\n\t\t])) }\n\t};\n}\nfunction progressiveBlur(opts) {\n\tconst { intensity, angle, center, falloff } = opts;\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tconst { getCpuValue, getMapInfo } = params;\n\t\t\tconst readGeometry = (dims) =\u003e {\n\t\t\t\tconst centerValue = getCpuValue(center.name);\n\t\t\t\treturn {\n\t\t\t\t\tangle: getCpuValue(angle.name) ?? 0,\n\t\t\t\t\tcenterX: typeof centerValue?.x === \"number\" ? centerValue.x : 0,\n\t\t\t\t\tcenterY: typeof centerValue?.y === \"number\" ? centerValue.y : .5,\n\t\t\t\t\tfalloff: getCpuValue(falloff.name) ?? 1,\n\t\t\t\t\taspect: dims.width / dims.height\n\t\t\t\t};\n\t\t\t};\n\t\t\tconst mapInfo = getMapInfo(intensity.name);\n\t\t\tif (mapInfo) return withVariableBlurCompute(params, {\n\t\t\t\tsource: mapInfo,\n\t\t\t\tbuildFill: (cw, ch) =\u003e buildProgressiveBlurFillMapGraph(cw, ch, mapInfo.channel),\n\t\t\t\tfillValues: (dims, window) =\u003e ({\n\t\t\t\t\t...readGeometry(dims),\n\t\t\t\t\tinputWidth: dims.width,\n\t\t\t\t\tinputHeight: dims.height,\n\t\t\t\t\t...remapWindowValues(window)\n\t\t\t\t})\n\t\t\t});\n\t\t\treturn withVariableBlurCompute(params, {\n\t\t\t\tbuildFill: buildProgressiveBlurFillGraph,\n\t\t\t\tfillValues: (dims) =\u003e ({\n\t\t\t\t\t...readGeometry(dims),\n\t\t\t\t\tmaxRadius: intensityToRadius(getCpuValue(intensity.name) ?? 0)\n\t\t\t\t})\n\t\t\t});\n\t\t},\n\t\tgpu: { fragment: (params) =\u003e composeBlurredOverSharp(params, (blurred, sharp) =\u003e vec4(blurred.member(\"rgb\"), sharp.member(\"a\"))) }\n\t};\n}\nfunction tiltShift(opts) {\n\tconst { intensity, width, falloff, angle, center } = opts;\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tconst { getCpuValue, getMapInfo } = params;\n\t\t\tconst readGeometry = (dims) =\u003e {\n\t\t\t\tconst centerValue = getCpuValue(center.name);\n\t\t\t\treturn {\n\t\t\t\t\tangle: getCpuValue(angle.name) ?? 0,\n\t\t\t\t\tcenterX: typeof centerValue?.x === \"number\" ? centerValue.x : .5,\n\t\t\t\t\tcenterY: typeof centerValue?.y === \"number\" ? centerValue.y : .5,\n\t\t\t\t\twidth: getCpuValue(width.name) ?? .3,\n\t\t\t\t\tfalloff: getCpuValue(falloff.name) ?? .3,\n\t\t\t\t\taspect: dims.width / dims.height\n\t\t\t\t};\n\t\t\t};\n\t\t\tconst mapInfo = getMapInfo(intensity.name);\n\t\t\tif (mapInfo) return withVariableBlurCompute(params, {\n\t\t\t\thalfKernel: 14,\n\t\t\t\tsource: mapInfo,\n\t\t\t\tbuildFill: (cw, ch) =\u003e buildTiltShiftFillMapGraph(cw, ch, mapInfo.channel),\n\t\t\t\tfillValues: (dims, window) =\u003e ({\n\t\t\t\t\t...readGeometry(dims),\n\t\t\t\t\tinputWidth: dims.width,\n\t\t\t\t\tinputHeight: dims.height,\n\t\t\t\t\t...remapWindowValues(window)\n\t\t\t\t})\n\t\t\t});\n\t\t\treturn withVariableBlurCompute(params, {\n\t\t\t\thalfKernel: 14,\n\t\t\t\tbuildFill: buildTiltShiftFillGraph,\n\t\t\t\tfillValues: (dims) =\u003e ({\n\t\t\t\t\t...readGeometry(dims),\n\t\t\t\t\tmaxRadius: intensityToRadius(getCpuValue(intensity.name) ?? 0)\n\t\t\t\t})\n\t\t\t});\n\t\t},\n\t\tgpu: { fragment: (params) =\u003e composeBlurredOverSharp(params, (blurred, sharp) =\u003e {\n\t\t\treturn mixExpr(sharp, blurred, call(tiltShiftBlurAmount, \"tiltShiftBlurAmount\", [\n\t\t\t\tuniformOf(angle, params),\n\t\t\t\tuniformOf(center, params),\n\t\t\t\tuniformOf(width, params),\n\t\t\t\tuniformOf(falloff, params),\n\t\t\t\tparams.ctx.uv,\n\t\t\t\tparams.ctx.aspect\n\t\t\t]));\n\t\t}) }\n\t};\n}\nfunction bloom(opts) {\n\tconst { intensity, threshold, size } = opts;\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tconst { getCpuValue, getMapInfo } = params;\n\t\t\tconst mapInfo = getMapInfo(size.name);\n\t\t\tif (!mapInfo \u0026\u0026 (getCpuValue(size.name) ?? 0) === 0) return null;\n\t\t\treturn withBloomCompute(params, {\n\t\t\t\tmapInfo,\n\t\t\t\tbuildExtract: buildGlowPrepassGraph,\n\t\t\t\tbuildExtractMap: buildGlowPrepassMapGraph,\n\t\t\t\tthreshold: () =\u003e getCpuValue(threshold.name) ?? .5,\n\t\t\t\tradius: () =\u003e getCpuValue(size.name) ?? 25\n\t\t\t});\n\t\t},\n\t\tgpu: { fragment: (params) =\u003e composeBlurredOverSharp(params, (bloomSample, original) =\u003e call(glowCompose, \"glowCompose\", [\n\t\t\toriginal,\n\t\t\tbloomSample,\n\t\t\tuniformOf(intensity, params)\n\t\t])) }\n\t};\n}\nfunction childTap() {\n\treturn (params) =\u003e params.texture.sample(params.ctx.uv);\n}\nfunction shadowOffset(opts) {\n\treturn (params) =\u003e call(dropShadowUV, \"dropShadowUV\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.viewportSize,\n\t\tresolveArg(opts.angle, params),\n\t\tresolveArg(opts.distance, params)\n\t]);\n}\nfunction silhouetteCoverage(opts) {\n\treturn (params) =\u003e silhouetteBlur({\n\t\tat: opts.at(params),\n\t\tuv: params.ctx.uv,\n\t\tviewportSize: params.ctx.viewportSize,\n\t\tblurRadius: resolveArg(opts.blur, params),\n\t\tsample: (coord) =\u003e params.texture.sample(coord),\n\t\tconvertToTexture: params.convertToTexture\n\t});\n}\nfunction shadowComposite(opts) {\n\treturn (original, params) =\u003e {\n\t\tconst shadowAlpha = opts.coverage(params).mul(resolveArg(opts.intensity, params));\n\t\treturn call(dropShadowComposite, \"dropShadowComposite\", [\n\t\t\toriginal,\n\t\t\tresolveArg(opts.color, params),\n\t\t\tshadowAlpha,\n\t\t\tfloatE(params.propValues[opts.cutout.name] === 1 ? 1 : 0)\n\t\t]);\n\t};\n}\nvar PEEL_CORNERS = {\n\t\"top-left\": {\n\t\tcorner: [0, 0],\n\t\topposite: [1, 1]\n\t},\n\t\"top-right\": {\n\t\tcorner: [1, 0],\n\t\topposite: [0, 1]\n\t},\n\t\"bottom-left\": {\n\t\tcorner: [0, 1],\n\t\topposite: [1, 0]\n\t},\n\t\"bottom-right\": {\n\t\tcorner: [1, 1],\n\t\topposite: [0, 0]\n\t}\n};\nfunction fluteFrame(opts) {\n\treturn frameOf((params) =\u003e {\n\t\tconst shapeId = params.propValues[opts.shape.name] ?? 0;\n\t\tconst expHi = shapeId === 0 ? 16 : 8;\n\t\tconst expLo = shapeId === 0 ? 4 : 3;\n\t\tconst wavesFlag = shapeId === 2 ? 1 : 0;\n\t\tconst t = animatedTime(params).mul(-1);\n\t\treturn asLocal(call(flutedGlassGeom, \"flutedGlassGeom\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tt,\n\t\t\tresolveArg(opts.angle, params),\n\t\t\tresolveArg(opts.frequency, params),\n\t\t\tresolveArg(opts.softness, params),\n\t\t\tresolveArg(opts.waveAmplitude, params),\n\t\t\tresolveArg(opts.waveFrequency, params),\n\t\t\tresolveArg(opts.refraction, params),\n\t\t\tresolveArg(opts.aberration, params),\n\t\t\texpr(`vec3f(${formatFloat(expHi)}, ${formatFloat(expLo)}, ${formatFloat(wavesFlag)})`)\n\t\t]), \"flute\");\n\t});\n}\nfunction refractedTaps(frame, opts) {\n\treturn (params) =\u003e {\n\t\tconst edgeMode = params.propValues[opts.edges.name] ?? 2;\n\t\tconst aberrationEnabled = (params.propValues[opts.aberration.name] ?? .2) \u003e 0;\n\t\tconst geom = frame(params);\n\t\tconst sampleAt = (uvE) =\u003e edgeClipSample((uv) =\u003e params.texture.sample(uv), uvE, edgeMode);\n\t\tconst refractedUV = geom.member(\"refractedUV\");\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [aberrationEnabled ? rgbSplitTaps(sampleAt, refractedUV, geom.member(\"chrOff\")) : sampleAt(refractedUV)]);\n\t};\n}\nfunction fluteHighlight(frame, opts) {\n\treturn (color, params) =\u003e {\n\t\tconst specA = call(blinnHighlight, \"blinnHighlight\", [\n\t\t\tframe(params).member(\"slope\"),\n\t\t\tresolveArg(opts.lightAngle, params),\n\t\t\tresolveArg(opts.highlight, params),\n\t\t\tresolveArg(opts.softness, params)\n\t\t]).mul(color.member(\"a\"));\n\t\treturn vec4(color.member(\"rgb\").add(resolveArg(opts.color, params).member(\"rgb\").mul(specA)), color.member(\"a\"));\n\t};\n}\nfunction peelFrame(opts) {\n\treturn frameOf((params) =\u003e {\n\t\tconst cornerGeom = PEEL_CORNERS[params.propValues[opts.corner.name] ?? \"bottom-right\"] ?? PEEL_CORNERS[\"bottom-right\"];\n\t\treturn asLocal(call(pagePeelGeom, \"pagePeelGeom\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.ctx.aspect,\n\t\t\tfloatE(cornerGeom.corner[0]),\n\t\t\tfloatE(cornerGeom.corner[1]),\n\t\t\tfloatE(cornerGeom.opposite[0]),\n\t\t\tfloatE(cornerGeom.opposite[1]),\n\t\t\tresolveArg(opts.amount, params),\n\t\t\tresolveArg(opts.radius, params)\n\t\t]), \"peel\");\n\t});\n}\nfunction curlShading(frame, opts) {\n\treturn (params) =\u003e call(curlShade, \"curlShade\", [frame(params).member(\"theta\"), resolveArg(opts.shading, params)]);\n}\nfunction curlSheen(frame, opts) {\n\treturn (params) =\u003e call(curlSheen$1, \"curlSheen\", [\n\t\tframe(params).member(\"theta\"),\n\t\tresolveArg(opts.highlight, params),\n\t\tresolveArg(opts.softness, params)\n\t]);\n}\nfunction overhangShadow(frame, opts) {\n\treturn (params) =\u003e {\n\t\tconst g = frame(params);\n\t\treturn call(overhangShade, \"overhangShade\", [\n\t\t\tg.member(\"distPastCrease\"),\n\t\t\tg.member(\"flatReach\"),\n\t\t\tresolveArg(opts.amount, params),\n\t\t\tresolveArg(opts.shadow, params)\n\t\t]);\n\t};\n}\nfunction revealShadow(frame, opts) {\n\treturn (params) =\u003e {\n\t\tconst g = frame(params);\n\t\treturn call(revealShadow$1, \"revealShadow\", [\n\t\t\tg.member(\"distIntoPeel\"),\n\t\t\tg.member(\"peelReach\"),\n\t\t\tresolveArg(opts.amount, params),\n\t\t\tresolveArg(opts.shadow, params)\n\t\t]);\n\t};\n}\nfunction peelCompose(frame, parts) {\n\treturn (params) =\u003e {\n\t\tconst g = frame(params);\n\t\treturn call(pagePeelCompose, \"pagePeelCompose\", [\n\t\t\tparams.texture.sample(g.member(\"curlUV\")),\n\t\t\tparams.texture.sample(params.ctx.uv),\n\t\t\tparts.shade(params),\n\t\t\tparts.sheen(params),\n\t\t\tparts.overhang(params),\n\t\t\tparts.reveal(params),\n\t\t\tg.member(\"foldBlend\"),\n\t\t\tg.member(\"showCurl\")\n\t\t]);\n\t};\n}\nconst mirrorRowUV = typegpu_default.fn([vec2f, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, lineY) =\u003e {\n\t\"use gpu\";\n\treturn vec2f(uv.x, __tsover_sub(__tsover_mul(lineY, 2), uv.y));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"lineY\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"d.vec2f\",\n\t\t\t[[\n\t\t\t\t7,\n\t\t\t\t\"uv\",\n\t\t\t\t\"x\"\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"lineY\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"2\"]\n\t\t\t\t],\n\t\t\t\t\"-\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"y\"\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: { \"d.vec2f\": () =\u003e vec2f }\n}) \u0026\u0026 $.f)({}));\nconst planarReflectionCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((original, refl, uvY, lineY, distance, falloff) =\u003e {\n\t\"use gpu\";\n\tconst distBelow = max(__tsover_sub(uvY, lineY), 0);\n\tconst distanceMax = max(distance, .001);\n\tconst fadeWidth = max(__tsover_mul(distanceMax, falloff), 1e-4);\n\tconst fadeStart = __tsover_sub(distanceMax, fadeWidth);\n\tconst visibility = __tsover_sub(1, smoothstep(fadeStart, distanceMax, distBelow));\n\tconst effReflA = __tsover_mul(refl.w, visibility);\n\tconst oneMinusReflA = __tsover_sub(1, effReflA);\n\treturn mix(original, vec4f(refl.xyz.mul(visibility).add(original.xyz.mul(oneMinusReflA)), __tsover_add(effReflA, __tsover_mul(original.w, oneMinusReflA))), vec4f(step(lineY, uvY)));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"original\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"refl\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uvY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"lineY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"distance\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"falloff\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distBelow\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"uvY\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"lineY\"\n\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"distanceMax\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[\"distance\", [5, \"0.001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fadeWidth\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"distanceMax\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"falloff\"\n\t\t\t\t\t], [5, \"0.0001\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fadeStart\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"distanceMax\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"fadeWidth\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"visibility\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"fadeStart\",\n\t\t\t\t\t\t\t\"distanceMax\",\n\t\t\t\t\t\t\t\"distBelow\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"effReflA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"refl\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"visibility\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oneMinusReflA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"effReflA\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"belowRgb\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"refl\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"visibility\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"original\",\n\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"oneMinusReflA\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"belowA\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"effReflA\",\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"original\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"oneMinusReflA\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"belowLine\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\"belowRgb\", \"belowA\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"isBelowLine\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.step\",\n\t\t\t\t\t[\"lineY\", \"uvY\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.mix\",\n\t\t\t\t[\n\t\t\t\t\t\"original\",\n\t\t\t\t\t\"belowLine\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\"isBelowLine\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"std.step\": () =\u003e step,\n\t\t\"std.mix\": () =\u003e mix\n\t}\n}) \u0026\u0026 $.f)({}));\nvar DEPTH_RAMP_RADIUS_PX = 12;\nfunction depthRampFillParams() {\n\treturn struct({\n\t\theight: f32,\n\t\tblurAmount: f32,\n\t\tblurDistance: f32\n\t});\n}\nfunction buildDepthRampFillGraph(computeWidth, computeHeight) {\n\tconst Params = depthRampFillParams();\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tblurMap: { storageTexture: textureStorage2d(BLUR_MAP_FORMAT, \"write-only\") },\n\t\tparams: { uniform: Params }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst p = layout.$.params;\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), computeHeight);\n\t\t\tconst distBelowAtOutput = max(__tsover_sub(p.height, v), 0);\n\t\t\tconst ramp = smoothstep(0, p.blurDistance, distBelowAtOutput);\n\t\t\tconst radius = __tsover_mul(__tsover_mul(p.blurAmount, ramp), DEPTH_RAMP_RADIUS_PX);\n\t\t\ttextureStore(layout.$.blurMap, vec2u(cx, cy), vec4f(radius, 0, 0, 1));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"params\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"computeHeight\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"distBelowAtOutput\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"height\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"v\"\n\t\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"ramp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"blurDistance\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"distBelowAtOutput\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"blurAmount\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"ramp\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"DEPTH_RAMP_RADIUS_PX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"blurMap\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"radius\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"computeHeight\": () =\u003e computeHeight,\n\t\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\t\t\"DEPTH_RAMP_RADIUS_PX\": () =\u003e DEPTH_RAMP_RADIUS_PX,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"depthRampFillBlurMap\"),\n\t\tParams\n\t};\n}\nfunction mirrorAcrossRow(line) {\n\treturn ({ ctx, uniforms }) =\u003e call(mirrorRowUV, \"mirrorRowUV\", [ctx.uv, uniforms[line.name]]);\n}\nfunction depthRampBlur(opts) {\n\treturn { compute: (params) =\u003e withVariableBlurCompute(params, {\n\t\thalfKernel: opts.halfKernel,\n\t\tbuildFill: buildDepthRampFillGraph,\n\t\tfillValues: () =\u003e ({\n\t\t\theight: params.getCpuValue(opts.line.name) ?? .5,\n\t\t\tblurAmount: params.getCpuValue(opts.blur.name) ?? 1,\n\t\t\tblurDistance: Math.max(.01, params.getCpuValue(opts.blurDistance.name) ?? .5)\n\t\t})\n\t}) };\n}\nfunction planarReflection(opts, original, reflection, reflectedUV) {\n\treturn (params) =\u003e {\n\t\tconst { ctx, uniforms, propValues } = params;\n\t\tconst edgeMode = propValues[opts.edges.name] ?? 0;\n\t\treturn call(planarReflectionCompose, \"planarReflectionCompose\", [\n\t\t\toriginal,\n\t\t\tapplyEdgeHandlingExpr(reflectedUV(params), reflection, edgeMode),\n\t\t\tctx.uv.member(\"y\"),\n\t\t\tuniforms[opts.line.name],\n\t\t\tuniforms[opts.distance.name],\n\t\t\tuniforms[opts.falloff.name]\n\t\t]);\n\t};\n}\nconst tintedScreenGlow = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((base, glow, tintStrength) =\u003e {\n\t\"use gpu\";\n\tconst strength = tintStrength.w;\n\tconst bloomC = clamp(glow.xyz.mul(tintStrength.xyz).mul(strength), vec3f(0, 0, 0), vec3f(1, 1, 1));\n\tconst one = vec3f(1, 1, 1);\n\tconst screened = one.sub(one.sub(base.xyz).mul(one.sub(bloomC)));\n\tconst a = __tsover_add(base.w, __tsover_mul(__tsover_mul(glow.w, strength), __tsover_sub(1, base.w)));\n\treturn vec4f(screened.x, screened.y, screened.z, clamp(a, 0, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"base\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"glow\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"tintStrength\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"strength\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"tintStrength\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bloomC\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"glow\",\n\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"tintStrength\",\n\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"strength\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"one\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"screened\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"one\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"one\",\n\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"one\",\n\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\"bloomC\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"a\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"glow\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"strength\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"base\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"screened\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"screened\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"screened\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"a\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"tintedScreenGlow\");\nfunction screenedBloom(slots) {\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tconst { getCpuValue } = params;\n\t\t\tif ((getCpuValue(slots.strength.name) ?? 0) === 0) return null;\n\t\t\treturn withBloomCompute(params, {\n\t\t\t\toutputKey: slots.output,\n\t\t\t\tbuildExtract: (w, h) =\u003e buildBloomExtractGraph(w, h, slots.extractName),\n\t\t\t\tthreshold: () =\u003e slots.threshold,\n\t\t\t\tradius: () =\u003e getCpuValue(slots.radius.name) ?? 28\n\t\t\t});\n\t\t},\n\t\tscreen: (base, at, params) =\u003e {\n\t\t\tconst glowTex = params.computeOutputs?.[slots.output];\n\t\t\treturn call(tintedScreenGlow, \"tintedScreenGlow\", [\n\t\t\t\tbase,\n\t\t\t\tglowTex ? glowTex.sample(at) : expr(\"vec4f(0.0, 0.0, 0.0, 0.0)\"),\n\t\t\t\tvec4(slots.tint[0], slots.tint[1], slots.tint[2], params.uniforms[slots.strength.name])\n\t\t\t]);\n\t\t}\n\t};\n}\nconst swayUV = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, amount, t) =\u003e {\n\t\"use gpu\";\n\tconst amp = __tsover_mul(amount, .006);\n\tconst ox = __tsover_mul(__tsover_add(__tsover_mul(sin(__tsover_mul(t, 1.7)), .5), __tsover_mul(sin(__tsover_add(__tsover_mul(t, .9), 1.3)), .5)), amp);\n\tconst oy = __tsover_mul(__tsover_add(__tsover_mul(sin(__tsover_add(__tsover_mul(t, 1.3), .7)), .5), __tsover_mul(sin(__tsover_mul(t, 2.3)), .5)), amp);\n\tconst ang = __tsover_mul(__tsover_mul(sin(__tsover_mul(t, .6)), amount), .004);\n\tconst c = cos(ang);\n\tconst s = sin(ang);\n\tconst p = uv.sub(vec2f(.5, .5));\n\tconst rx = __tsover_sub(__tsover_mul(p.x, c), __tsover_mul(p.y, s));\n\tconst ry = __tsover_add(__tsover_mul(p.x, s), __tsover_mul(p.y, c));\n\treturn vec2f(__tsover_add(__tsover_add(rx, .5), ox), __tsover_add(__tsover_add(ry, .5), oy));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"amount\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"t\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"amp\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"amount\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.006\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ox\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"1.7\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.9\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"amp\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"oy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1.3\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.7\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"2.3\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"amp\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ang\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.6\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"amount\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.004\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"c\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t[\"ang\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t[\"ang\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0.5\"], [5, \"0.5\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"rx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ry\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"s\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"c\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"rx\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"ox\"\n\t\t\t\t], [\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"ry\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"oy\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"d.vec2f\": () =\u003e vec2f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"swayUV\");\nfunction frameSway(slots) {\n\treturn (params) =\u003e {\n\t\tlet acc = 0;\n\t\tparams.onBeforeRender(({ deltaTime }) =\u003e {\n\t\t\tconst w = params.getCpuValue(slots.amount.name) ?? 0;\n\t\t\tacc += deltaTime * (w \u003e 0 ? 1 : 0);\n\t\t\tparams.setExtraField(slots.field, acc);\n\t\t});\n\t\treturn call(swayUV, \"swayUV\", [\n\t\t\tparams.ctx.uv,\n\t\t\tparams.uniforms[slots.amount.name],\n\t\t\tparams.uniforms[slots.field]\n\t\t]);\n\t};\n}\nvar BOKEH_DEG_TO_RAD = DEG_TO_RAD;\nvar BOKEH_GATHER_FORMAT = \"rgba16float\";\nfunction apertureTable(opts, getCpuValue, tapsUniform) {\n\tlet key = \"\";\n\treturn () =\u003e {\n\t\tconst shape = getCpuValue(opts.shape.name) ?? \"blades\";\n\t\tconst count = getCpuValue(opts.blades.name) ?? 6;\n\t\tconst next = `${shape}|${count}`;\n\t\tif (next === key) return;\n\t\tkey = next;\n\t\ttapsUniform.write(generateBokehTaps(shape, count, 100).map((tap) =\u003e vec4f(tap.x, tap.y, tap.rim, 0)));\n\t};\n}\nfunction bokehDefocus(opts) {\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tconst { childNode, gpu, convertToTexture, registerComputeTexture, getCpuValue, getMapInfo, onCleanup, onResize, dimensions } = params;\n\t\t\tif (!childNode) return null;\n\t\t\tconst root = gpu?.root;\n\t\t\tif (!root) return null;\n\t\t\tconst childTexture = convertToTexture(childNode);\n\t\t\tlet curWidth = Math.max(1, Math.round(dimensions.width));\n\t\t\tlet curHeight = Math.max(1, Math.round(dimensions.height));\n\t\t\tconst LONG_EDGE = Math.max(DEFAULT_COMPUTE_WIDTH, 640);\n\t\t\tconst aspect = curHeight \u003e 0 ? curWidth / curHeight : 1;\n\t\t\tconst computeWidth = Math.max(8, aspect \u003e= 1 ? LONG_EDGE : Math.round(LONG_EDGE * aspect));\n\t\t\tconst computeHeight = Math.max(8, aspect \u003e= 1 ? Math.round(LONG_EDGE / aspect) : LONG_EDGE);\n\t\t\tconst outputTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\t\t\tsize: [computeWidth, computeHeight],\n\t\t\t\tformat: BOKEH_GATHER_FORMAT\n\t\t\t}).$usage(\"storage\", \"sampled\"), \"outputTex\");\n\t\t\tonCleanup(() =\u003e outputTex.destroy());\n\t\t\tconst blurredTexture = registerComputeTexture(outputTex);\n\t\t\tonResize(({ width, height }) =\u003e {\n\t\t\t\tcurWidth = Math.max(1, Math.round(width));\n\t\t\t\tcurHeight = Math.max(1, Math.round(height));\n\t\t\t});\n\t\t\tconst readLook = () =\u003e {\n\t\t\t\tconst rot = (getCpuValue(opts.rotation.name) ?? 0) * BOKEH_DEG_TO_RAD;\n\t\t\t\treturn {\n\t\t\t\t\thighlightGain: getCpuValue(opts.gain.name) ?? 4,\n\t\t\t\t\thighlightThreshold: getCpuValue(opts.threshold.name) ?? .6,\n\t\t\t\t\trotCos: Math.cos(rot),\n\t\t\t\t\trotSin: Math.sin(rot),\n\t\t\t\t\tchromaticFringe: getCpuValue(opts.fringe.name) ?? .2\n\t\t\t\t};\n\t\t\t};\n\t\t\tconst mapInfo = getMapInfo(opts.radius.name);\n\t\t\tif (mapInfo) {\n\t\t\t\tconst graph$1 = buildBokehMapGraph(computeWidth, computeHeight, 100, mapInfo.channel);\n\t\t\t\tconst kernelParams$1 = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph$1.Params), \"kernelParams\");\n\t\t\t\tconst tapsUniform$1 = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph$1.TapArray), \"tapsUniform\");\n\t\t\t\tconst ensureTaps$1 = apertureTable({\n\t\t\t\t\tshape: opts.shape,\n\t\t\t\t\tblades: opts.blades\n\t\t\t\t}, getCpuValue, tapsUniform$1);\n\t\t\t\tlet bokehPass$1 = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\t\t\"use gpu\";\n\t\t\t\t\tgraph$1.kernel(cx, cy);\n\t\t\t\t}), {\n\t\t\t\t\tv: 2,\n\t\t\t\t\tname: void 0,\n\t\t\t\t\tast: {\n\t\t\t\t\t\t\"params\": [{\n\t\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t\t\t}, {\n\t\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t\t\t}],\n\t\t\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"graph.kernel\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t]]]\n\t\t\t\t\t},\n\t\t\t\t\texternals: { \"graph.kernel\": () =\u003e graph$1.kernel }\n\t\t\t\t}) \u0026\u0026 $.f)({}), { size: [computeWidth, computeHeight] });\n\t\t\t\treturn {\n\t\t\t\t\toutputs: { blurredTexture },\n\t\t\t\t\tbindInputs: (resolve) =\u003e {\n\t\t\t\t\t\tconst src = resolve(childTexture.key);\n\t\t\t\t\t\tconst mapSrc = resolve(mapInfo.sourceTexture.key);\n\t\t\t\t\t\tif (!src || !mapSrc) return;\n\t\t\t\t\t\tconst bindGroup = root.createBindGroup(graph$1.layout, {\n\t\t\t\t\t\t\tinput: src.texture,\n\t\t\t\t\t\t\tsource: mapSrc.texture,\n\t\t\t\t\t\t\toutput: outputTex,\n\t\t\t\t\t\t\tparams: kernelParams$1.buffer,\n\t\t\t\t\t\t\ttaps: tapsUniform$1.buffer\n\t\t\t\t\t\t});\n\t\t\t\t\t\tbokehPass$1 = bokehPass$1.with(bindGroup);\n\t\t\t\t\t},\n\t\t\t\t\tgetComputeNodes: () =\u003e {\n\t\t\t\t\t\tensureTaps$1();\n\t\t\t\t\t\tconst w = mapInfo.window();\n\t\t\t\t\t\tkernelParams$1.write({\n\t\t\t\t\t\t\t...readLook(),\n\t\t\t\t\t\t\tinputWidth: curWidth,\n\t\t\t\t\t\t\tinputHeight: curHeight,\n\t\t\t\t\t\t\tinputMin: w.inputMin,\n\t\t\t\t\t\t\tinputMax: w.inputMax,\n\t\t\t\t\t\t\toutputMin: w.outputMin,\n\t\t\t\t\t\t\toutputMax: w.outputMax,\n\t\t\t\t\t\t\tcurve: w.curve\n\t\t\t\t\t\t});\n\t\t\t\t\t\treturn [bokehPass$1];\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t}\n\t\t\tconst graph = buildBokehGraph(computeWidth, computeHeight, 100);\n\t\t\tconst kernelParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph.Params), \"kernelParams\");\n\t\t\tconst tapsUniform = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(graph.TapArray), \"tapsUniform\");\n\t\t\tconst ensureTaps = apertureTable({\n\t\t\t\tshape: opts.shape,\n\t\t\t\tblades: opts.blades\n\t\t\t}, getCpuValue, tapsUniform);\n\t\t\tlet bokehPass = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\t\"use gpu\";\n\t\t\t\tgraph.kernel(cx, cy);\n\t\t\t}), {\n\t\t\t\tv: 2,\n\t\t\t\tname: void 0,\n\t\t\t\tast: {\n\t\t\t\t\t\"params\": [{\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t\t}, {\n\t\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t\t}],\n\t\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"graph.kernel\",\n\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t]]]\n\t\t\t\t},\n\t\t\t\texternals: { \"graph.kernel\": () =\u003e graph.kernel }\n\t\t\t}) \u0026\u0026 $.f)({}), { size: [computeWidth, computeHeight] });\n\t\t\treturn {\n\t\t\t\toutputs: { blurredTexture },\n\t\t\t\tbindInputs: (resolve) =\u003e {\n\t\t\t\t\tconst src = resolve(childTexture.key);\n\t\t\t\t\tif (!src) return;\n\t\t\t\t\tconst bindGroup = root.createBindGroup(graph.layout, {\n\t\t\t\t\t\tinput: src.texture,\n\t\t\t\t\t\toutput: outputTex,\n\t\t\t\t\t\tparams: kernelParams.buffer,\n\t\t\t\t\t\ttaps: tapsUniform.buffer\n\t\t\t\t\t});\n\t\t\t\t\tbokehPass = bokehPass.with(bindGroup);\n\t\t\t\t},\n\t\t\t\tgetComputeNodes: () =\u003e {\n\t\t\t\t\tensureTaps();\n\t\t\t\t\tconst radius = getCpuValue(opts.radius.name) ?? 50;\n\t\t\t\t\tkernelParams.write({\n\t\t\t\t\t\tradius: bokehRadiusToPixels(radius),\n\t\t\t\t\t\t...readLook(),\n\t\t\t\t\t\tinputWidth: curWidth,\n\t\t\t\t\t\tinputHeight: curHeight\n\t\t\t\t\t});\n\t\t\t\t\treturn [bokehPass];\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\tgpu: { fragment: ({ childNode, computeOutputs, ctx, convertToTexture }) =\u003e {\n\t\t\tif (!childNode) return ZERO;\n\t\t\tconst blurred = computeOutputs?.blurredTexture;\n\t\t\tif (!blurred) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [convertToTexture(childNode).sample(ctx.uv)]);\n\t\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [blurred.sample(ctx.uv)]);\n\t\t} }\n\t};\n}\nexport { planarReflection as A, shadowOffset as B, motionBlur as C, peelFrame as D, peelCompose as E, rimLit as F, tiltShift as G, silhouetteCoverage as H, scanlines as I, vignetteOverlay as K, scatter as L, refractedTaps as M, revealShadow as N, phosphorMask as O, rgbSplit as P, screenedBloom as R, mirrorAcrossRow as S, overhangShadow as T, sphereFrame as U, sharpen as V, tapeWarp as W, frameSway as _, bokehDefocus as a, glitchFrame as b, chromaSmearTaps as c, curlShading as d, curlSheen as f, fluteHighlight as g, fluteFrame as h, blurPath as i, progressiveBlur as j, pixelate as k, colorBarFills as l, distortedScanlines as m, beatPulse as n, channelBlur as o, depthRampBlur as p, bloom as r, childTap as s, adjust as t, crispTap as u, gatherStack as v, opaque as w, glitchRgbSplit as x, gaussianBlur as y, shadowComposite as z };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as motionBlur, i as blurPath } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"AngularBlur\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Radial motion blur rotating around a center point\",\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Intensity of the angular blur effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Blur Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point of the rotation\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center Position\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: motionBlur({\n\t\tpath: blurPath.orbit(p(\"center\")),\n\t\tamount: p(\"intensity\")\n\t})\n});\nvar AngularBlur_default = componentDefinition;\nexport { componentDefinition as n, AngularBlur_default as t };\n","import { A as heartSdf, B as vesicaSdf, E as crossSdf, F as roundedRectSdf, L as starSdf, N as polygonSdf, O as ellipseSdf, P as ringSdf, R as teardropSdf, T as crescentSdf, b as circleSdf, ct as call, ft as floatE, h as APERTURE_TO_HALFANGLE, j as parallelogramSdf, k as flowerSdf, v as arcSdf, z as trapezoidSdf } from \"./lower-Bd2jez_2.js\";\nvar toE = (v) =\u003e typeof v === \"number\" ? floatE(v) : v;\nvar field = (fn, hint) =\u003e (...args) =\u003e call(fn, hint, args.map(toE));\nconst circle = field(circleSdf, \"circleSdf\");\nconst ellipse = field(ellipseSdf, \"ellipseSdf\");\nconst roundedRect = field(roundedRectSdf, \"roundedRectSdf\");\nconst polygon = field(polygonSdf, \"polygonSdf\");\nconst star = field(starSdf, \"starSdf\");\nconst flower = field(flowerSdf, \"flowerSdf\");\nconst heart = field(heartSdf, \"heartSdf\");\nconst cross = field(crossSdf, \"crossSdf\");\nconst ring = field(ringSdf, \"ringSdf\");\nconst vesica = field(vesicaSdf, \"vesicaSdf\");\nconst crescent = field(crescentSdf, \"crescentSdf\");\nconst trapezoid = field(trapezoidSdf, \"trapezoidSdf\");\nconst teardrop = field(teardropSdf, \"teardropSdf\");\nconst parallelogram = field(parallelogramSdf, \"parallelogramSdf\");\nconst arc = field(arcSdf, \"arcSdf\");\nconst APERTURE_TO_HALF_ANGLE = APERTURE_TO_HALFANGLE;\nexport { cross as a, heart as c, ring as d, roundedRect as f, vesica as g, trapezoid as h, crescent as i, parallelogram as l, teardrop as m, arc as n, ellipse as o, star as p, circle as r, flower as s, APERTURE_TO_HALF_ANGLE as t, polygon as u };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { w as mul } from \"./math-D864seEs.js\";\nimport { n as arc, t as APERTURE_TO_HALF_ANGLE } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Arc\",\n\tdescription: \"Pie sector (arc wedge) with adjustable radius and aperture angle\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e arc(x, y, u(\"radius\"), mul(u(\"aperture\"), APERTURE_TO_HALF_ANGLE)),\n\t\tcolorDescription: \"Fill color of the arc\",\n\t\tcenterDescription: \"Center position of the arc\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .38,\n\t\t\t\tdescription: \"Radius of the pie sector\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Size\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\taperture: {\n\t\t\t\tdefault: 270,\n\t\t\t\tdescription: \"Aperture angle of the wedge in degrees (360 = full circle)\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 360,\n\t\t\t\t\tstep: 1,\n\t\t\t\t\tlabel: \"Aperture\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Arc_default = componentDefinition;\nexport { componentDefinition as n, Arc_default as t };\n","import { c as p, qr as f32, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as glyphFor, i as charGrid, n as cellSample, o as glyphTint } from \"./stylize-DiuoSq16.js\";\nimport { t as createSwappableMediaTexture } from \"./mediaLifecycle-BTPb5i1-.js\";\nimport { n as createFontDependentRaster, r as createRasterInvalidator, t as createCanvasRasterTarget } from \"./canvasRaster-DDBkrdY8.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nvar ATLAS_TEXTURE_SIZE = 2048;\nvar GOOGLE_FONTS_MAP = {\n\t\"JetBrains Mono\": \"JetBrains+Mono\",\n\t\"Fira Code\": \"Fira+Code\",\n\t\"Source Code Pro\": \"Source+Code+Pro\",\n\t\"IBM Plex Mono\": \"IBM+Plex+Mono\",\n\t\"Space Mono\": \"Space+Mono\",\n\t\"Roboto Mono\": \"Roboto+Mono\",\n\t\"Courier Prime\": \"Courier+Prime\",\n\t\"Geist Mono\": \"Geist+Mono\",\n\t\"VT323\": \"VT323\",\n\t\"Press Start 2P\": \"Press+Start+2P\",\n\t\"Silkscreen\": \"Silkscreen\",\n\t\"Major Mono Display\": \"Major+Mono+Display\",\n\t\"Syne Mono\": \"Syne+Mono\",\n\t\"Nova Mono\": \"Nova+Mono\",\n\t\"Xanh Mono\": \"Xanh+Mono\",\n\t\"Cutive Mono\": \"Cutive+Mono\",\n\t\"Share Tech Mono\": \"Share+Tech+Mono\",\n\t\"Martian Mono\": \"Martian+Mono\",\n\t\"Azeret Mono\": \"Azeret+Mono\"\n};\nvar loadedFonts = /* @__PURE__ */ new Set();\nasync function loadAsciiFont(fontFamily) {\n\tif (loadedFonts.has(fontFamily) || !GOOGLE_FONTS_MAP[fontFamily]) return;\n\tconst googleFontName = GOOGLE_FONTS_MAP[fontFamily];\n\tif (!document.querySelector(`link[href*=\"${googleFontName}\"]`)) {\n\t\tconst link = document.createElement(\"link\");\n\t\tlink.rel = \"stylesheet\";\n\t\tlink.href = `https://fonts.googleapis.com/css2?family=${googleFontName}:wght@400\u0026display=swap`;\n\t\tdocument.head.appendChild(link);\n\t}\n\ttry {\n\t\tif (document.fonts \u0026\u0026 document.fonts.load) {\n\t\t\tfor (const spec of [\n\t\t\t\t`400 12px \"${fontFamily}\"`,\n\t\t\t\t`12px \"${fontFamily}\"`,\n\t\t\t\t`400 12px ${fontFamily}`,\n\t\t\t\t`12px ${fontFamily}`\n\t\t\t]) try {\n\t\t\t\tawait document.fonts.load(spec);\n\t\t\t\tbreak;\n\t\t\t} catch {}\n\t\t\tawait new Promise((r) =\u003e setTimeout(r, 500));\n\t\t} else await new Promise((r) =\u003e setTimeout(r, 1e3));\n\t\tloadedFonts.add(fontFamily);\n\t} catch {}\n}\nvar num = (v, f) =\u003e typeof v === \"number\" ? v : f;\nvar setupGlyphAtlas = (params) =\u003e {\n\tconst { getCpuValue, setExtraField } = params;\n\tconst glyphTex = createSwappableMediaTexture(params, {\n\t\tlabel: \"Ascii:atlas\",\n\t\tinitial: {\n\t\t\twidth: ATLAS_TEXTURE_SIZE,\n\t\t\theight: ATLAS_TEXTURE_SIZE\n\t\t}\n\t});\n\tconst target = createCanvasRasterTarget(params, { contextAttributes: { willReadFrequently: true } });\n\tconst buildAtlas = (characters, spacing, fontFamily) =\u003e {\n\t\tif (glyphTex.disposed || !characters || characters.length === 0) return;\n\t\tconst charCount = characters.length;\n\t\tconst atlasSize = Math.max(2, Math.ceil(Math.sqrt(charCount)));\n\t\tconst baseAtlasCellSize = 128;\n\t\tconst spacingMultiplier = Math.max(1, 2 / spacing);\n\t\tconst actualCellSize = Math.min(baseAtlasCellSize * spacingMultiplier, ATLAS_TEXTURE_SIZE / atlasSize);\n\t\tconst fontSize = actualCellSize * .75;\n\t\tconst c = target.canvas() ? target.context() : target.resize(ATLAS_TEXTURE_SIZE, ATLAS_TEXTURE_SIZE);\n\t\tif (!c) return;\n\t\tc.clearRect(0, 0, ATLAS_TEXTURE_SIZE, ATLAS_TEXTURE_SIZE);\n\t\tc.fillStyle = \"#ffffff\";\n\t\tc.font = `${fontSize}px \"${fontFamily}\", ${fontFamily}, monospace`;\n\t\tif (!c.font.includes(fontFamily) \u0026\u0026 !c.font.includes(\"IBM\") \u0026\u0026 !c.font.includes(\"Plex\")) c.font = `${fontSize}px ${fontFamily}, monospace`;\n\t\tc.textAlign = \"center\";\n\t\tc.textBaseline = \"middle\";\n\t\tfor (let i = 0; i \u003c charCount; i++) {\n\t\t\tconst row = Math.floor(i / atlasSize);\n\t\t\tconst col = i % atlasSize;\n\t\t\tc.fillText(characters[i], col * actualCellSize + actualCellSize / 2, row * actualCellSize + actualCellSize / 2);\n\t\t}\n\t\tglyphTex.write(target.canvas());\n\t\tconst uvScale = atlasSize * actualCellSize / ATLAS_TEXTURE_SIZE;\n\t\tsetExtraField(\"_charCount\", charCount);\n\t\tsetExtraField(\"_atlasScale\", uvScale);\n\t\tsetExtraField(\"_atlasSize\", atlasSize);\n\t};\n\tconst readProps = () =\u003e ({\n\t\tcharacters: String(getCpuValue(\"characters\") ?? componentDefinition.props.characters.default),\n\t\tfontFamily: String(getCpuValue(\"fontFamily\") ?? componentDefinition.props.fontFamily.default),\n\t\tspacing: num(getCpuValue(\"spacing\"), 1.5)\n\t});\n\tconst rebuild = () =\u003e {\n\t\tconst p$1 = readProps();\n\t\tbuildAtlas(p$1.characters, p$1.spacing, p$1.fontFamily);\n\t};\n\tconst font = createFontDependentRaster({\n\t\tkey: () =\u003e readProps().fontFamily,\n\t\tload: () =\u003e loadAsciiFont(readProps().fontFamily),\n\t\tonLoaded: rebuild\n\t});\n\tsetTimeout(() =\u003e {\n\t\trebuild();\n\t\tfont.ensure();\n\t}, 0);\n\tcreateRasterInvalidator(params, {\n\t\tkey: () =\u003e {\n\t\t\tconst p$1 = readProps();\n\t\t\treturn `${p$1.characters}|${p$1.fontFamily}|${p$1.spacing}`;\n\t\t},\n\t\trun: () =\u003e {\n\t\t\trebuild();\n\t\t\tfont.ensure();\n\t\t}\n\t});\n\treturn glyphTex.kit;\n};\nvar grid = charGrid({\n\tcellSize: p(\"cellSize\"),\n\tspacing: p(\"spacing\")\n});\nvar cell = cellSample({ grid });\nconst componentDefinition = defineStd({\n\tname: \"Ascii\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Convert imagery to ASCII character art\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\textraFields: {\n\t\t_charCount: {\n\t\t\tschema: f32,\n\t\t\tinitial: 9\n\t\t},\n\t\t_atlasScale: {\n\t\t\tschema: f32,\n\t\t\tinitial: 1\n\t\t},\n\t\t_atlasSize: {\n\t\t\tschema: f32,\n\t\t\tinitial: 3\n\t\t}\n\t},\n\tprops: {\n\t\tcharacters: {\n\t\t\tdefault: \"@%#*+=-:.\",\n\t\t\tdescription: \"Characters ordered from dense to sparse. First character is used for bright areas, last for dark areas.\",\n\t\t\tui: {\n\t\t\t\ttype: \"text\",\n\t\t\t\tlabel: \"Characters\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcellSize: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Size of each ASCII character cell (normalized to 1080p reference, scales proportionally at other resolutions)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 8,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cell Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfontFamily: {\n\t\t\tdefault: \"JetBrains Mono\",\n\t\t\tdescription: \"Font family for characters\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Azeret Mono\",\n\t\t\t\t\t\tvalue: \"Azeret Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Courier Prime\",\n\t\t\t\t\t\tvalue: \"Courier Prime\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Cutive Mono\",\n\t\t\t\t\t\tvalue: \"Cutive Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Fira Code\",\n\t\t\t\t\t\tvalue: \"Fira Code\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Geist Mono\",\n\t\t\t\t\t\tvalue: \"Geist Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"IBM Plex Mono\",\n\t\t\t\t\t\tvalue: \"IBM Plex Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"JetBrains Mono\",\n\t\t\t\t\t\tvalue: \"JetBrains Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Major Mono Display\",\n\t\t\t\t\t\tvalue: \"Major Mono Display\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Martian Mono\",\n\t\t\t\t\t\tvalue: \"Martian Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Nova Mono\",\n\t\t\t\t\t\tvalue: \"Nova Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Press Start 2P\",\n\t\t\t\t\t\tvalue: \"Press Start 2P\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Roboto Mono\",\n\t\t\t\t\t\tvalue: \"Roboto Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Share Tech Mono\",\n\t\t\t\t\t\tvalue: \"Share Tech Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Silkscreen\",\n\t\t\t\t\t\tvalue: \"Silkscreen\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Source Code Pro\",\n\t\t\t\t\t\tvalue: \"Source Code Pro\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Space Mono\",\n\t\t\t\t\t\tvalue: \"Space Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Syne Mono\",\n\t\t\t\t\t\tvalue: \"Syne Mono\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"VT323\",\n\t\t\t\t\t\tvalue: \"VT323\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Xanh Mono\",\n\t\t\t\t\t\tvalue: \"Xanh Mono\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Font Family\",\n\t\t\t\tgroup: \"Font\"\n\t\t\t}\n\t\t},\n\t\tspacing: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Character size within each cell (1.0 = optimal size, 0.0 = smallest)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Character Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t},\n\t\t\ttransform: (value) =\u003e .1 + value * 1.4\n\t\t},\n\t\tgamma: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Brightness curve adjustment. \u003c1 brightens darks (more light characters), \u003e1 darkens midtones (more dark characters). Use to better fit characters to image brightness range.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .25,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gamma\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\talphaThreshold: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Pixels with alpha below this threshold become fully transparent.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Alpha Threshold\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tpreserveAlpha: {\n\t\t\tdefault: true,\n\t\t\tdescription: \"When enabled, output alpha matches input alpha. When disabled, pixels above the alpha threshold become fully opaque.\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Preserve Alpha\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t},\n\t\t\ttransform: transformBoolean\n\t\t}\n\t},\n\tgpu: { fragment: glyphTint({\n\t\tgrid,\n\t\tcell,\n\t\tglyph: glyphFor({\n\t\t\tgrid,\n\t\t\tcell,\n\t\t\tgamma: p(\"gamma\"),\n\t\t\tatlas: setupGlyphAtlas\n\t\t}),\n\t\talphaThreshold: p(\"alphaThreshold\"),\n\t\tpreserveAlpha: p(\"preserveAlpha\")\n\t}) }\n});\nvar Ascii_default = componentDefinition;\nexport { componentDefinition as n, Ascii_default as t };\n","import { Pn as DEG_TO_RAD$1, o as uniformOf } from \"./lower-Bd2jez_2.js\";\nimport { B as vec2, L as sqrt, N as sin, S as min, T as neg, a as cos, f as fract, n as add, o as div, r as atan2, s as dot, v as length, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nfunction surfaceOf(params) {\n\tconst uv = params.uvContext ?? params.ctx.uv;\n\tconst viewport = params.effectiveViewportSize ?? params.ctx.viewportSize;\n\treturn {\n\t\tuv,\n\t\tviewport,\n\t\taspect: local(div(viewport.member(\"x\"), viewport.member(\"y\")), \"aspect\")\n\t};\n}\nfunction rawSurfaceOf(params) {\n\tconst uv = params.uvContext ?? params.ctx.uv;\n\tconst viewport = params.ctx.viewportSize;\n\treturn {\n\t\tuv,\n\t\tviewport,\n\t\taspect: local(div(viewport.member(\"x\"), viewport.member(\"y\")), \"aspect\")\n\t};\n}\nfunction centredFrame(slots) {\n\treturn (params, surface) =\u003e {\n\t\tconst center = uniformOf(slots.center, params);\n\t\tconst { uv, aspect } = surface;\n\t\tconst delta = local(vec2(sub(mul(uv.member(\"x\"), aspect), mul(center.member(\"x\"), aspect)), sub(uv.member(\"y\"), sub(1, center.member(\"y\")))), \"centred\");\n\t\treturn {\n\t\t\tdelta,\n\t\t\tdist: local(length(delta), \"centredDist\")\n\t\t};\n\t};\n}\nfunction segmentFrame(slots) {\n\treturn (params, surface) =\u003e {\n\t\tconst from = uniformOf(slots.from, params);\n\t\tconst to = uniformOf(slots.to, params);\n\t\tconst { uv, aspect } = surface;\n\t\tconst cx = mul(from.member(\"x\"), aspect);\n\t\tconst cy = sub(1, from.member(\"y\"));\n\t\tconst rel = local(vec2(sub(mul(uv.member(\"x\"), aspect), cx), sub(uv.member(\"y\"), cy)), \"rel\");\n\t\tconst toRel = local(vec2(sub(mul(to.member(\"x\"), aspect), cx), sub(sub(1, to.member(\"y\")), cy)), \"toRel\");\n\t\tconst len = local(max(length(toRel), 1e-4), \"segLen\");\n\t\tconst dir = local(div(toRel, len), \"segDir\");\n\t\treturn {\n\t\t\talong: local(dot(rel, dir), \"along\"),\n\t\t\tacross: local(add(mul(rel.member(\"x\"), neg(dir.member(\"y\"))), mul(rel.member(\"y\"), dir.member(\"x\"))), \"across\"),\n\t\t\tlength: len\n\t\t};\n\t};\n}\nfunction direction(angleDeg, hint = \"dir\") {\n\tconst rad = mul(angleDeg, DEG_TO_RAD);\n\treturn local(vec2(cos(rad), sin(rad)), hint);\n}\nfunction directionFrame(angleDeg, hint = \"grain\") {\n\tconst tangent = direction(angleDeg, `${hint}T`);\n\tconst perp = local(vec2(neg(tangent.member(\"y\")), tangent.member(\"x\")), `${hint}P`);\n\treturn {\n\t\ttangent,\n\t\tperp,\n\t\tcoordsOf(p) {\n\t\t\treturn {\n\t\t\t\talong: local(dot(p, tangent), \"along\"),\n\t\t\t\tacross: local(dot(p, perp), \"across\")\n\t\t\t};\n\t\t}\n\t};\n}\nfunction sectorFold(x, y, sectorAngle, center = .5) {\n\tconst PI = 3.141592653589793;\n\tconst dx = local(sub(x, center), \"kfDx\");\n\tconst dy = local(sub(y, center), \"kfDy\");\n\tconst r = local(sqrt(add(mul(dx, dx), mul(dy, dy))), \"kfR\");\n\tconst inSector = local(mul(fract(div(add(atan2(dy, dx), PI), sectorAngle)), sectorAngle), \"kfInSector\");\n\tconst folded = local(min(inSector, sub(sectorAngle, inSector)), \"kfFolded\");\n\treturn vec2(mul(r, cos(folded)), mul(r, sin(folded)));\n}\nexport { sectorFold as a, rawSurfaceOf as i, direction as n, segmentFrame as o, directionFrame as r, surfaceOf as s, centredFrame as t };\n","import { a as resolveScalar, ct as call, ft as floatE, mt as vec4, o as uniformOf, pt as mixExpr, s as Scalar, st as asLocal } from \"./lower-Bd2jez_2.js\";\nimport { _ as heatDither, b as leakStreaks, d as godraysRayStack, s as coverageOverComposite, u as godraysFrame, v as leakBloom, y as leakDrift } from \"./gradientPaints-5HpJVNfb.js\";\nimport { c as radialFeatherMask, d as screenGlowComposite, g as vignetteMask$1, i as chromaticHeatTaps, n as anisotropicGaussianSpot, p as softRayLobes$1, r as beamLocalFrame, s as radialBurstFrame, u as radialGaussianGlow } from \"./lightfields-DvrUaH_6.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { a as flareHalo$1, c as lensFlareGhost, i as flareGlare$1, n as flareCore$1, o as flareStarburst$1, r as flareFrame$1, s as flareStreak$1, t as flareComposite$1 } from \"./shapePaints-Bg2UwCZo.js\";\nimport { D as pow, E as normalize, N as sin, O as reflect, P as smoothstep, V as vec3, n as add, w as mul, x as max, z as sub } from \"./math-D864seEs.js\";\nfunction rayBands(opts) {\n\tlet arg$1 = add(mul(opts.along, opts.frequency), mul(opts.time, opts.speed));\n\tif (opts.phase !== void 0) arg$1 = add(arg$1, opts.phase);\n\treturn pow(add(mul(sin(arg$1), .5), .5), opts.sharpness);\n}\nfunction glowAt(opts) {\n\tconst e = (v) =\u003e typeof v === \"number\" ? floatE(v) : v;\n\treturn call(radialGaussianGlow, \"glowAt\", [\n\t\topts.uv,\n\t\te(opts.aspect),\n\t\te(opts.x),\n\t\te(opts.y),\n\t\te(opts.sizeSq)\n\t]);\n}\nfunction domeNormal(opts) {\n\tconst tilt = opts.bulge?.tilt ?? .2;\n\tconst drop = opts.bulge?.drop ?? .1;\n\tconst slope = asLocal(smoothstep(0, opts.radius, opts.dist), \"domeSlope\");\n\tconst leaned = add(slope, tilt);\n\treturn normalize(vec3(mul(opts.delta.member(\"x\"), leaned), mul(opts.delta.member(\"y\"), leaned), sub(1, mul(slope, drop))));\n}\nfunction shine(opts) {\n\treturn pow(max(0, reflect(mul(opts.light, -1), opts.normal).member(\"z\")), opts.gloss);\n}\nfunction arg(spec, params) {\n\tif (typeof spec === \"number\") return floatE(spec);\n\tif (spec instanceof Scalar || spec.kind !== \"ctx\") return resolveScalar(spec, params);\n\treturn params.ctx[spec.name];\n}\nfunction paintFrame(params) {\n\treturn {\n\t\tuv: params.uvContext ?? params.ctx.uv,\n\t\tviewport: params.effectiveViewportSize ?? params.ctx.viewportSize\n\t};\n}\nfunction radialFrame(center) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(radialBurstFrame, \"radialFrame\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(center, params)\n\t\t]);\n\t};\n}\nfunction seamlessRadialFrame(center) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(godraysFrame, \"godraysFrame\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(center, params)\n\t\t]);\n\t};\n}\nfunction beamFrame(anchor) {\n\treturn (params) =\u003e call(beamLocalFrame, \"beamFrame\", [\n\t\tparams.ctx.uv,\n\t\tparams.ctx.aspect,\n\t\tuniformOf(anchor, params)\n\t]);\n}\nfunction withFrame(frame, part, hint) {\n\treturn (params) =\u003e {\n\t\treturn part(hint ? asLocal(frame(params), hint) : frame(params), params);\n\t};\n}\nfunction modulate(first, ...rest) {\n\treturn (frame, params) =\u003e rest.reduce((acc, part) =\u003e acc.mul(part(frame, params)), first(frame, params));\n}\nfunction softRayLobes(slots) {\n\treturn (frame, params) =\u003e call(softRayLobes$1, \"softRayLobes\", [\n\t\tframe.member(\"y\"),\n\t\targ(slots.count, params),\n\t\tanimatedTime(params).mul(slots.spin),\n\t\targ(slots.softness, params)\n\t]);\n}\nfunction featherMask(slots) {\n\treturn (frame, params) =\u003e call(radialFeatherMask, \"featherMask\", [\n\t\tframe.member(\"x\"),\n\t\targ(slots.radius, params),\n\t\targ(slots.feather, params)\n\t]);\n}\nfunction noiseRays(slots) {\n\treturn (frame, params) =\u003e call(godraysRayStack, \"godraysRayStack\", [\n\t\tframe,\n\t\tanimatedTime(params),\n\t\targ(slots.density, params),\n\t\targ(slots.intensity, params),\n\t\targ(slots.spotty, params)\n\t]);\n}\nfunction slowDrift(slots) {\n\treturn (clock, params) =\u003e call(leakDrift, \"leakDrift\", [\n\t\tclock,\n\t\targ(slots.seed, params),\n\t\targ(slots.flicker, params)\n\t]);\n}\nfunction beamBloom(slots) {\n\treturn (frame, drift, params) =\u003e call(leakBloom, \"leakBloom\", [\n\t\tframe.member(\"x\"),\n\t\tframe.member(\"y\"),\n\t\targ(slots.spread, params),\n\t\tdrift\n\t]);\n}\nfunction beamStreaks(slots) {\n\treturn (frame, drift, params) =\u003e call(leakStreaks, \"leakStreaks\", [\n\t\tframe.member(\"x\"),\n\t\tframe.member(\"y\"),\n\t\targ(slots.spread, params),\n\t\targ(slots.strength, params),\n\t\tdrift\n\t]);\n}\nfunction dithered(heat, uv, clock) {\n\treturn call(heatDither, \"heatDither\", [\n\t\theat,\n\t\tuv,\n\t\tclock\n\t]);\n}\nfunction glowSpot(du, dv, sharpness) {\n\treturn call(anisotropicGaussianSpot, \"glowSpot\", [\n\t\tdu,\n\t\tdv,\n\t\tsharpness\n\t]);\n}\nfunction flareFrame(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\treturn call(flareFrame$1, \"flareFrame\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tanimatedTime(params),\n\t\t\tuniformOf(slots.position, params),\n\t\t\targ(slots.intensity, params),\n\t\t\targ(slots.edgeFade, params)\n\t\t]);\n\t};\n}\nfunction lensGhost(slots) {\n\treturn (flare, disc, tint, params) =\u003e {\n\t\tconst { uv } = paintFrame(params);\n\t\treturn call(lensFlareGhost, \"lensFlareGhost\", [\n\t\t\tuv,\n\t\t\tflare.member(\"aspect\"),\n\t\t\tflare.member(\"lightPos\"),\n\t\t\tflare.member(\"flareAxis\"),\n\t\t\tanimatedTime(params),\n\t\t\targ(slots.spread, params),\n\t\t\targ(slots.chroma, params),\n\t\t\targ(slots.intensity, params),\n\t\t\tvec4(...disc),\n\t\t\tvec4(...tint)\n\t\t]);\n\t};\n}\nfunction flareHalo(slots) {\n\treturn (flare, params) =\u003e {\n\t\tconst { uv } = paintFrame(params);\n\t\treturn call(flareHalo$1, \"flareHalo\", [\n\t\t\tuv,\n\t\t\tflare.member(\"aspect\"),\n\t\t\tflare.member(\"lightPos\"),\n\t\t\tanimatedTime(params),\n\t\t\targ(slots.intensity, params),\n\t\t\targ(slots.radius, params),\n\t\t\targ(slots.chroma, params),\n\t\t\targ(slots.softness, params)\n\t\t]);\n\t};\n}\nfunction flareStarburst(slots) {\n\treturn (flare, params) =\u003e call(flareStarburst$1, \"flareStarburst\", [\n\t\tflare.member(\"lightAngle\"),\n\t\tflare.member(\"flareAxis\"),\n\t\tflare.member(\"aspect\"),\n\t\tanimatedTime(params),\n\t\tflare.member(\"lightDist\"),\n\t\targ(slots.points, params),\n\t\targ(slots.intensity, params)\n\t]);\n}\nfunction flareStreak(slots) {\n\treturn (flare, params) =\u003e {\n\t\tconst { uv } = paintFrame(params);\n\t\treturn call(flareStreak$1, \"flareStreak\", [\n\t\t\tuv,\n\t\t\tflare.member(\"lightPos\"),\n\t\t\targ(slots.length, params),\n\t\t\targ(slots.intensity, params)\n\t\t]);\n\t};\n}\nfunction flareGlare(slots) {\n\treturn (flare, params) =\u003e call(flareGlare$1, \"flareGlare\", [\n\t\tflare.member(\"lightDist\"),\n\t\targ(slots.size, params),\n\t\targ(slots.intensity, params)\n\t]);\n}\nfunction flareCore(slots) {\n\treturn (flare, params) =\u003e call(flareCore$1, \"flareCore\", [flare.member(\"lightDist\"), arg(slots.intensity, params)]);\n}\nfunction flareComposite(total, flare) {\n\treturn call(flareComposite$1, \"flareComposite\", [total, flare.member(\"masterFade\")]);\n}\nfunction vignetteMask(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\tlet strength = arg(slots.strength, params);\n\t\tif (slots.scale !== void 0) strength = strength.mul(slots.scale);\n\t\treturn call(vignetteMask$1, \"vignetteMask\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tstrength\n\t\t]);\n\t};\n}\nfunction additive(first, ...rest) {\n\treturn rest.reduce((acc, part) =\u003e acc.add(part), first);\n}\nfunction heatRamp(colors) {\n\treturn {\n\t\tkind: \"heatRamp\",\n\t\ttaps: (heat, params) =\u003e call(chromaticHeatTaps, \"chromaticHeatTaps\", [\n\t\t\theat,\n\t\t\tuniformOf(colors.hot, params).member(\"rgb\"),\n\t\t\tuniformOf(colors.mid, params).member(\"rgb\"),\n\t\t\tuniformOf(colors.fringe, params).member(\"rgb\")\n\t\t])\n\t};\n}\nfunction coverageMix(slots) {\n\treturn (params) =\u003e {\n\t\tconst alpha = slots.hint ? asLocal(slots.coverage(params), slots.hint) : slots.coverage(params);\n\t\tconst col = uniformOf(slots.color, params);\n\t\tconst bg = uniformOf(slots.background, params);\n\t\treturn vec4(mixExpr(bg.member(\"rgb\"), col.member(\"rgb\"), alpha), mixExpr(bg.member(\"a\"), col.member(\"a\"), alpha));\n\t};\n}\nfunction coverageOver(slots) {\n\treturn (params) =\u003e call(coverageOverComposite, \"coverageOver\", [\n\t\tuniformOf(slots.color, params),\n\t\tuniformOf(slots.background, params),\n\t\tslots.coverage(params)\n\t]);\n}\nfunction screenGlow(glow) {\n\treturn {\n\t\tkind: \"pointwise\",\n\t\tbody: {\n\t\t\tfn: screenGlowComposite,\n\t\t\thint: \"screenGlowComposite\"\n\t\t},\n\t\targs: (params) =\u003e [glow(params)]\n\t};\n}\nexport { vignetteMask as A, radialFrame as C, shine as D, seamlessRadialFrame as E, slowDrift as O, noiseRays as S, screenGlow as T, glowAt as _, coverageMix as a, lensGhost as b, domeNormal as c, flareCore as d, flareFrame as f, flareStreak as g, flareStarburst as h, beamStreaks as i, withFrame as j, softRayLobes as k, featherMask as l, flareHalo as m, beamBloom as n, coverageOver as o, flareGlare as p, beamFrame as r, dithered as s, additive as t, flareComposite as u, glowSpot as v, rayBands as w, modulate as x, heatRamp as y };\n","import { ct as call, n as paintFrame } from \"./lower-Bd2jez_2.js\";\nimport { r as rgbDither } from \"./tone-BKhfiOBn.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { H as vec4, i as clamp, n as add, o as div, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nfunction layered(layerData, build) {\n\tlet weightedSum;\n\tlet totalWeight;\n\tlayerData.forEach((layer, index) =\u003e {\n\t\tconst { value, weight } = build(layer, index);\n\t\tconst contribution = mul(value, weight);\n\t\tweightedSum = weightedSum === void 0 ? contribution : add(weightedSum, contribution);\n\t\ttotalWeight = totalWeight === void 0 ? weight : add(totalWeight, weight);\n\t});\n\tif (!weightedSum || !totalWeight) throw new Error(\"std: layered([]) needs at least one layer\");\n\treturn {\n\t\tweightedSum,\n\t\ttotalWeight\n\t};\n}\nfunction layers(entries) {\n\tlet acc;\n\tfor (const entry of entries) {\n\t\tconst spec = entry instanceof Object \u0026\u0026 \"paint\" in entry ? entry : { paint: entry };\n\t\tlet term = spec.paint;\n\t\tif (spec.opacity !== void 0) term = mul(term, spec.opacity);\n\t\tif (spec.behind) term = mul(term, spec.behind);\n\t\tacc = acc === void 0 ? term : spec.blend === \"screen\" ? sub(add(acc, term), mul(acc, term)) : add(acc, term);\n\t}\n\tif (!acc) throw new Error(\"std: layers([]) needs at least one layer\");\n\treturn acc;\n}\nfunction emissiveAlpha(rgb, hint = \"emissive\") {\n\tconst c = local(rgb, hint);\n\tconst a = local(clamp(max(max(c.member(\"x\"), c.member(\"y\")), c.member(\"z\")), 0, 1), `${hint}A`);\n\treturn vec4(div(c, max(a, 1e-4)), a);\n}\nfunction dithered(color, params) {\n\tconst { uv, viewport } = paintFrame(params);\n\treturn call(rgbDither, \"rgbDither\", [\n\t\tcolor,\n\t\tuv,\n\t\tviewport,\n\t\tanimatedTime(params)\n\t]);\n}\nexport { layers as i, emissiveAlpha as n, layered as r, dithered as t };\n","import { c as p, o as uniformOf, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { Z as volumeNoiseAt } from \"./materials-4Oqvm_9m.js\";\nimport { t as colorLadder3 } from \"./fields-DgADOKsP.js\";\nimport { k as wavyLine } from \"./noise-d7rmP9yc.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, D as pow, H as vec4, I as splat3, P as smoothstep, V as vec3, c as exp, g as hashPhase, i as clamp, n as add, o as div, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { i as softBand } from \"./mask-CeSwL79Q.js\";\nimport { s as surfaceOf } from \"./frames-BLqt7oaW.js\";\nimport { w as rayBands } from \"./light-D3BIVkxy.js\";\nimport { r as layered } from \"./compose-Dkf3v-xS.js\";\nvar ARC_WAVES = [\n\t{\n\t\tfreq: .7,\n\t\tspeed: .4,\n\t\tamount: .15,\n\t\tsalt: {\n\t\t\tk: 12.9,\n\t\t\tbig: 4758.5\n\t\t}\n\t},\n\t{\n\t\tfreq: 1.6,\n\t\tspeed: .65,\n\t\tamount: .08,\n\t\tsalt: {\n\t\t\tk: 78.2,\n\t\t\tbig: 2847.1\n\t\t}\n\t},\n\t{\n\t\tfreq: 2.9,\n\t\tspeed: .3,\n\t\tamount: .04,\n\t\tsalt: {\n\t\t\tk: 41.6,\n\t\t\tbig: 1593.7\n\t\t}\n\t}\n];\nvar RAY_SALT = {\n\tk: 53.7,\n\tbig: 3847.2\n};\nvar LAYERS = [\n\t{\n\t\ttimeOffset: 0,\n\t\tweight: 1\n\t},\n\t{\n\t\ttimeOffset: 3.1,\n\t\tweight: .65\n\t},\n\t{\n\t\ttimeOffset: 6.7,\n\t\tweight: .45\n\t},\n\t{\n\t\ttimeOffset: 9.4,\n\t\tweight: .3\n\t}\n];\nconst componentDefinition = defineStd({\n\tname: \"Aurora\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Mesmerizing aurora borealis with layered curtains, vertical rays, and flowing light.\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#a533f8\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Edge color at the curtain base\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#22ee88\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Core color in the bright center\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#1694e8\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Tip color at the ray ends\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color C\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Shifts color distribution across the curtain height\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 80,\n\t\t\tdescription: \"Overall aurora brightness\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Aurora\"\n\t\t\t}\n\t\t},\n\t\tcurtainCount: {\n\t\t\tdefault: 4,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Number of aurora curtain layers\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Curtains\",\n\t\t\t\tgroup: \"Aurora\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -10,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Aurora\"\n\t\t\t}\n\t\t},\n\t\twaviness: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"How much the curtains undulate\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 200,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Waviness\",\n\t\t\t\tgroup: \"Aurora\"\n\t\t\t}\n\t\t},\n\t\trayDensity: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Density of vertical ray structures\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Ray Detail\",\n\t\t\t\tgroup: \"Aurora\"\n\t\t\t}\n\t\t},\n\t\theight: {\n\t\t\tdefault: 120,\n\t\t\tdescription: \"How tall the aurora extends\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 10,\n\t\t\t\tmax: 200,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Height\",\n\t\t\t\tgroup: \"Scene\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: 0\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the aurora\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Scene\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Aurora\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst { uv, viewport } = surfaceOf(params);\n\t\tconst aspect = local(div(viewport.member(\"x\"), max(viewport.member(\"y\"), 1e-6)), \"aspect\");\n\t\tconst t = local(animatedTime(params), \"auroraTime\");\n\t\tconst seed = uniformOf(p(\"seed\"), params);\n\t\tconst center = uniformOf(p(\"center\"), params);\n\t\tconst centerX = center.member(\"x\");\n\t\tconst centerY = sub(1, center.member(\"y\"));\n\t\tconst wav = mul(uniformOf(p(\"waviness\"), params), .01);\n\t\tconst rayAmt = mul(uniformOf(p(\"rayDensity\"), params), .01);\n\t\tconst auroraHeight = mul(uniformOf(p(\"height\"), params), .01);\n\t\tconst intens = mul(uniformOf(p(\"intensity\"), params), .018);\n\t\tconst balanceExp = mix(2.5, .4, mul(uniformOf(p(\"balance\"), params), .01));\n\t\tconst curtain = (layerIdx, timeOffset) =\u003e {\n\t\t\tconst tSlow = local(add(mul(t, .06), timeOffset), \"tSlow\");\n\t\t\tconst lSeed = local(add(seed, Math.fround(layerIdx * Math.fround(31.7))), \"lSeed\");\n\t\t\tconst wx = local(mul(mul(sub(uv.member(\"x\"), centerX), aspect), 2), \"wx\");\n\t\t\tconst arc = wavyLine({\n\t\t\t\talong: wx,\n\t\t\t\ttime: tSlow,\n\t\t\t\twaves: ARC_WAVES.map((w) =\u003e ({\n\t\t\t\t\t...w,\n\t\t\t\t\tphase: hashPhase(lSeed, w.salt)\n\t\t\t\t}))\n\t\t\t});\n\t\t\tconst noiseWarp = local(volumeNoiseAt(vec3(mul(wx, .5), mul(tSlow, .25), mul(lSeed, .1))), \"curtainNoise\");\n\t\t\tconst pathY = add(add(centerY, mul(arc, wav)), mul(mul(noiseWarp, .14), wav));\n\t\t\tconst rays = local(rayBands({\n\t\t\t\talong: add(wx, mul(noiseWarp, 2.5)),\n\t\t\t\tfrequency: mul(mix(6, 20, rayAmt), .15),\n\t\t\t\ttime: tSlow,\n\t\t\t\tspeed: .1,\n\t\t\t\tphase: hashPhase(lSeed, RAY_SALT),\n\t\t\t\tsharpness: 1.5\n\t\t\t}), \"curtainRays\");\n\t\t\tconst localHeight = mul(auroraHeight, mix(.4, 1, rays));\n\t\t\tconst distFromPath = local(sub(uv.member(\"y\"), pathY), \"distFromPath\");\n\t\t\tconst topExtent = local(mul(localHeight, add(mul(rays, .4), .6)), \"topExtent\");\n\t\t\tconst envelope = softBand({\n\t\t\t\tdistance: distFromPath,\n\t\t\t\tbelow: {\n\t\t\t\t\tfrom: -.04,\n\t\t\t\t\tto: .015\n\t\t\t\t},\n\t\t\t\tabove: { to: topExtent }\n\t\t\t});\n\t\t\tconst colorT = local(clamp(div(distFromPath, add(topExtent, .001)), 0, 1), \"colorT\");\n\t\t\tconst sectionBright = mix(.4, 1, add(mul(noiseWarp, .5), .5));\n\t\t\tconst coreD = sub(colorT, .2);\n\t\t\tconst coreBright = add(mul(exp(mul(mul(coreD, coreD), -6)), .3), 1);\n\t\t\treturn {\n\t\t\t\tcolorT,\n\t\t\t\talpha: local(mul(mul(mul(envelope, rays), sectionBright), coreBright), \"curtainAlpha\")\n\t\t\t};\n\t\t};\n\t\tconst count = Math.max(1, Math.min(4, Math.round(params.propValues.curtainCount ?? 4)));\n\t\tconst { weightedSum, totalWeight } = layered(LAYERS.slice(0, count), ({ timeOffset, weight }, layerIdx) =\u003e {\n\t\t\tconst { colorT, alpha } = curtain(layerIdx, timeOffset);\n\t\t\treturn {\n\t\t\t\tvalue: colorT,\n\t\t\t\tweight: weight === 1 ? alpha : mul(alpha, weight)\n\t\t\t};\n\t\t});\n\t\tconst total = local(totalWeight, \"auroraAlpha\");\n\t\tconst avgT = local(pow(div(weightedSum, add(total, .001)), balanceExp), \"auroraAvgT\");\n\t\tconst color = colorLadder3({\n\t\t\ta: p(\"colorA\"),\n\t\t\tb: p(\"colorB\"),\n\t\t\tc: p(\"colorC\"),\n\t\t\tspace: p(\"colorSpace\")\n\t\t})(smoothstep(0, .2, avgT), smoothstep(.4, .85, avgT), params);\n\t\tconst brightness = local(mul(total, intens), \"auroraGlow\");\n\t\treturn vec4(clamp(mul(color.member(\"rgb\"), brightness), splat3(0), splat3(1)), clamp(mul(brightness, .5), 0, 1));\n\t}\n});\nvar Aurora_default = componentDefinition;\nexport { componentDefinition as n, Aurora_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"BarnDoors\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Split the content along a center line and wipe outward in both directions\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the doors have opened (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Direction the doors open in degrees (0 = apart horizontally)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Softness of the wipe edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Close in from both edges instead of opening from the center\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.directional(p(\"angle\")).folded(),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"feather\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Barn Doors shader.\"\n});\nvar BarnDoors_default = componentDefinition;\nexport { componentDefinition as n, BarnDoors_default as t };\n","import { a as resolveScalar, ct as call, dt as expr, ft as floatE, m as selectMap, o as uniformOf, p as lerpToIdentity, s as Scalar, tt as sampleRemappedExpr } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { A as sliceWipeUV, C as perspectiveUV, F as waveDistortSawtooth, I as waveDistortSine, L as waveDistortSquare, M as stretchUV, N as twirlUV, P as waveDistortBounce, R as waveDistortTriangle, T as rectCoordsUV, _ as kaleidoscopeUV, a as concentricSpinUV, f as flipUV, g as gridDistortOffsetUV, h as gridCellSnap, i as bulgeUV, l as dmDisplaceLuminance, n as bendRemap, o as cornerPinSample, p as flowFieldUV, t as barShiftUV, u as dmDisplaceRG, v as liquifyOffsetUV, w as polarCoordsUV, y as mirrorReflect } from \"./warpMaps-Y8xSo-QJ.js\";\nfunction arg(spec, params) {\n\tif (typeof spec === \"number\") return floatE(spec);\n\tif (spec instanceof Scalar) return resolveScalar(spec, params);\n\tif (typeof spec === \"object\" \u0026\u0026 spec !== null \u0026\u0026 \"kind\" in spec) {\n\t\tif (spec.kind === \"prop\") return uniformOf(spec, params);\n\t\treturn resolveScalar(spec, params);\n\t}\n\tthrow new Error(\"std/warps: warp slots accept prop bindings, numbers, and Scalar signals\");\n}\nfunction mirrorLine(slots) {\n\treturn (params) =\u003e {\n\t\tconst reflect = (uv, aspect) =\u003e call(mirrorReflect, \"mirrorReflect\", [\n\t\t\targ(slots.center, params),\n\t\t\targ(slots.angle, params),\n\t\t\tuv,\n\t\t\taspect\n\t\t]);\n\t\treturn selectMap((uv) =\u003e uv, (uv, aspect) =\u003e reflect(uv, aspect).member(\"xy\"), (uv, aspect) =\u003e reflect(uv, aspect).member(\"z\"));\n\t};\n}\nfunction flip(slots) {\n\treturn (params) =\u003e ({ map: (uv) =\u003e call(flipUV, \"flipUV\", [\n\t\tuv,\n\t\targ(slots.flipX, params),\n\t\targ(slots.flipY, params)\n\t]) });\n}\nfunction bend(slots) {\n\treturn (params) =\u003e ({ map: (uv, aspect) =\u003e call(bendRemap, \"bendRemap\", [\n\t\targ(slots.strength, params),\n\t\targ(slots.falloff, params),\n\t\targ(slots.angle, params),\n\t\tuv,\n\t\taspect\n\t]) });\n}\nfunction bulge(slots) {\n\treturn (params) =\u003e ({ map: (uv, aspect) =\u003e call(bulgeUV, \"bulgeUV\", [\n\t\targ(slots.center, params),\n\t\targ(slots.strength, params),\n\t\targ(slots.radius, params),\n\t\targ(slots.falloff, params),\n\t\tuv,\n\t\taspect\n\t]) });\n}\nfunction twirl(slots) {\n\treturn (params) =\u003e ({ map: (uv, aspect) =\u003e call(twirlUV, \"twirlUV\", [\n\t\targ(slots.center, params),\n\t\targ(slots.intensity, params),\n\t\tuv,\n\t\taspect\n\t]) });\n}\nfunction kaleidoscope(slots) {\n\treturn (params) =\u003e ({ map: (uv, aspect) =\u003e call(kaleidoscopeUV, \"kaleidoscopeUV\", [\n\t\targ(slots.center, params),\n\t\targ(slots.segments, params),\n\t\targ(slots.angle, params),\n\t\tuv,\n\t\taspect\n\t]) });\n}\nfunction stretch(slots) {\n\treturn (params) =\u003e ({ map: (uv, aspect) =\u003e call(stretchUV, \"stretchUV\", [\n\t\targ(slots.center, params),\n\t\targ(slots.strength, params),\n\t\targ(slots.angle, params),\n\t\targ(slots.falloff, params),\n\t\tuv,\n\t\taspect\n\t]) });\n}\nvar WAVE_MODES = {\n\tsine: 0,\n\ttriangle: 1,\n\tsquare: 2,\n\tsawtooth: 3,\n\tbounce: 4\n};\nfunction waveTypeMode(raw) {\n\tif (typeof raw === \"number\") return raw;\n\treturn WAVE_MODES[raw] ?? 0;\n}\nfunction waveBodyFor(waveType) {\n\tswitch (waveType) {\n\t\tcase 1: return {\n\t\t\tfn: waveDistortTriangle,\n\t\t\thint: \"waveDistortTriangle\"\n\t\t};\n\t\tcase 2: return {\n\t\t\tfn: waveDistortSquare,\n\t\t\thint: \"waveDistortSquare\"\n\t\t};\n\t\tcase 3: return {\n\t\t\tfn: waveDistortSawtooth,\n\t\t\thint: \"waveDistortSawtooth\"\n\t\t};\n\t\tcase 4: return {\n\t\t\tfn: waveDistortBounce,\n\t\t\thint: \"waveDistortBounce\"\n\t\t};\n\t\tdefault: return {\n\t\t\tfn: waveDistortSine,\n\t\t\thint: \"waveDistortSine\"\n\t\t};\n\t}\n}\nfunction wave(slots) {\n\treturn (params) =\u003e {\n\t\tconst { fn, hint } = waveBodyFor(waveTypeMode(params.propValues[slots.waveType.name]));\n\t\tconst t = animatedTime(params).mul(.5);\n\t\treturn { map: (uv, aspect) =\u003e call(fn, hint, [\n\t\t\tuv,\n\t\t\taspect,\n\t\t\targ(slots.angle, params),\n\t\t\targ(slots.frequency, params),\n\t\t\targ(slots.strength, params),\n\t\t\tt\n\t\t]) };\n\t};\n}\nfunction toPolar(slots) {\n\treturn (params) =\u003e lerpToIdentity({ map: (uv, aspect) =\u003e call(polarCoordsUV, \"polarCoordsUV\", [\n\t\targ(slots.center, params),\n\t\targ(slots.wrap, params),\n\t\targ(slots.radius, params),\n\t\tuv,\n\t\taspect\n\t]) }, () =\u003e arg(slots.intensity, params));\n}\nfunction fromPolar(slots) {\n\treturn (params) =\u003e lerpToIdentity({ map: (uv, aspect) =\u003e call(rectCoordsUV, \"rectCoordsUV\", [\n\t\targ(slots.center, params),\n\t\targ(slots.scale, params),\n\t\tuv,\n\t\taspect\n\t]) }, () =\u003e arg(slots.intensity, params));\n}\nfunction cornerPin(slots) {\n\treturn (params) =\u003e ({ map: (uv) =\u003e {\n\t\tconst packed = call(cornerPinSample, \"cornerPinSample\", [\n\t\t\tuv,\n\t\t\targ(slots.amount, params),\n\t\t\targ(slots.topLeft, params),\n\t\t\targ(slots.topRight, params),\n\t\t\targ(slots.bottomRight, params),\n\t\t\targ(slots.bottomLeft, params)\n\t\t]);\n\t\treturn {\n\t\t\tuv: packed.member(\"xy\"),\n\t\t\tcoverage: packed.member(\"z\")\n\t\t};\n\t} });\n}\nfunction perspective(slots) {\n\treturn (params) =\u003e ({ map: (uv) =\u003e call(perspectiveUV, \"perspectiveUV\", [\n\t\targ(slots.center, params),\n\t\targ(slots.pan, params),\n\t\targ(slots.tilt, params),\n\t\targ(slots.fov, params),\n\t\targ(slots.zoom, params),\n\t\targ(slots.offset, params),\n\t\tuv\n\t]) });\n}\nfunction concentricRings(slots) {\n\treturn (params) =\u003e {\n\t\tconst t = animatedTime(params);\n\t\treturn { map: (uv, aspect) =\u003e call(concentricSpinUV, \"concentricSpinUV\", [\n\t\t\targ(slots.center, params),\n\t\t\targ(slots.intensity, params),\n\t\t\targ(slots.rings, params),\n\t\t\targ(slots.smoothness, params),\n\t\t\targ(slots.seed, params),\n\t\t\targ(slots.speedRandomness, params),\n\t\t\tt,\n\t\t\tuv,\n\t\t\taspect\n\t\t]) };\n\t};\n}\nfunction flowNoise(slots) {\n\treturn (params) =\u003e {\n\t\tconst time = animatedTime(params, slots.seed.name).mul(.1);\n\t\tconst evolutionTime = animatedTime(params, slots.seed.name, \"_animTime_evolution\").mul(.1);\n\t\treturn { map: (uv, aspect) =\u003e call(flowFieldUV, \"flowFieldUV\", [\n\t\t\tuv,\n\t\t\taspect,\n\t\t\targ(slots.detail, params),\n\t\t\targ(slots.strength, params),\n\t\t\ttime,\n\t\t\tevolutionTime\n\t\t]) };\n\t};\n}\nfunction slicedSlide(slots) {\n\treturn (params) =\u003e ({ map: (uv, aspect) =\u003e call(sliceWipeUV, \"sliceWipeUV\", [\n\t\tuv,\n\t\taspect,\n\t\targ(slots.angle, params),\n\t\targ(slots.count, params),\n\t\targ(slots.progress, params)\n\t]) });\n}\nfunction barOffset(slots) {\n\treturn (params) =\u003e {\n\t\tconst t = animatedTime(params);\n\t\treturn { map: (uv, aspect) =\u003e call(barShiftUV, \"barShiftUV\", [\n\t\t\targ(slots.count, params),\n\t\t\targ(slots.angle, params),\n\t\t\targ(slots.intensity, params),\n\t\t\targ(slots.seed, params),\n\t\t\tt,\n\t\t\tuv,\n\t\t\taspect\n\t\t]) };\n\t};\n}\nfunction gridCellDisplace(slots) {\n\treturn (params) =\u003e ({ map: (uv, aspect) =\u003e {\n\t\tconst dispTex = params.computeOutputs?.[slots.output];\n\t\tconst gridCellUV = call(gridCellSnap, \"gridCellSnap\", [\n\t\t\tuv,\n\t\t\targ(slots.gridSize, params),\n\t\t\taspect\n\t\t]);\n\t\treturn call(gridDistortOffsetUV, \"gridDistortOffsetUV\", [uv, dispTex ? dispTex.sample(gridCellUV, \"linearClamp\").member(\"xy\") : expr(\"vec2f(0.0, 0.0)\")]);\n\t} });\n}\nfunction liquidDisplace(slots) {\n\treturn (params) =\u003e ({ map: (uv) =\u003e {\n\t\tconst dispTex = params.computeOutputs?.[slots.output];\n\t\treturn call(liquifyOffsetUV, \"liquifyOffsetUV\", [\n\t\t\tuv,\n\t\t\tdispTex ? dispTex.sample(uv, \"linearClamp\").member(\"xy\") : expr(\"vec2f(0.0, 0.0)\"),\n\t\t\targ(slots.intensity, params)\n\t\t]);\n\t} });\n}\nvar DISPLACE_CHANNEL_MODES = {\n\ttwoAxis: 0,\n\tdirectional: 1\n};\nfunction displaceChannelMode(raw) {\n\tif (typeof raw === \"number\") return raw;\n\treturn DISPLACE_CHANNEL_MODES[raw] ?? 0;\n}\nfunction displaceByLayer(slots) {\n\treturn {\n\t\tkind: \"gather\",\n\t\tbuild: (params) =\u003e {\n\t\t\tconst source = params.getLayerTexture(slots.source.name);\n\t\t\tif (!source) return params.texture.sample(params.ctx.uv);\n\t\t\tconst edgeMode = params.propValues[slots.edges.name] ?? 0;\n\t\t\tconst src = source.sample(params.ctx.uv);\n\t\t\tconst distorted = displaceChannelMode(params.propValues[slots.channels.name]) === 1 ? call(dmDisplaceLuminance, \"dmDisplaceLuminance\", [\n\t\t\t\tparams.ctx.uv,\n\t\t\t\tsrc,\n\t\t\t\tparams.ctx.aspect,\n\t\t\t\targ(slots.amount, params),\n\t\t\t\targ(slots.angle, params)\n\t\t\t]) : call(dmDisplaceRG, \"dmDisplaceRG\", [\n\t\t\t\tparams.ctx.uv,\n\t\t\t\tsrc,\n\t\t\t\tparams.ctx.aspect,\n\t\t\t\targ(slots.amount, params)\n\t\t\t]);\n\t\t\treturn sampleRemappedExpr(params.texture, distorted, edgeMode);\n\t\t}\n\t};\n}\nexport { toPolar as _, cornerPin as a, flowNoise as c, kaleidoscope as d, liquidDisplace as f, stretch as g, slicedSlide as h, concentricRings as i, fromPolar as l, perspective as m, bend as n, displaceByLayer as o, mirrorLine as p, bulge as r, flip as s, barOffset as t, gridCellDisplace as u, twirl as v, wave as y };\n","import { c as p, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { r as transformAngle } from \"./transformations-CzFmhZww.js\";\nimport { t as barOffset } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"BarShift\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Slices content into parallel bars, each offset independently for a fractured or glitch-like effect\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcount: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Number of bars across the longest viewport dimension\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Angle of bar orientation in degrees (0 = vertical bars, 90 = horizontal bars)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Maximum displacement per bar\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Randomization seed for per-bar offset variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Animation speed — each bar drifts at its own rate and direction\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"mirror\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: barOffset({\n\t\tcount: p(\"count\"),\n\t\tangle: p(\"angle\"),\n\t\tintensity: p(\"intensity\"),\n\t\tseed: p(\"seed\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the BarShift shader.\"\n});\nvar BarShift_default = componentDefinition;\nexport { componentDefinition as n, BarShift_default as t };\n","import { Bt as mixPreconvertedVariants, It as mixColorsLinear, Lt as mixColorsVariants, a as resolveScalar, ct as call, ft as floatE, jr as vec3f, jt as convertP3ToMixSpaceCPU, mt as vec4, o as uniformOf, s as Scalar, zt as mixPreconvertedLinear } from \"./lower-Bd2jez_2.js\";\nimport { a as colorWheelT, i as colorWheelSelect, n as colorWheelPhase, r as colorWheelRainbow, t as beamField, x as mpgFactors } from \"./gradientPaints-5HpJVNfb.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { y as local } from \"./math-D864seEs.js\";\nfunction arg(spec, params) {\n\tif (typeof spec === \"number\") return floatE(spec);\n\tif (spec instanceof Scalar || spec.kind !== \"ctx\") return resolveScalar(spec, params);\n\treturn params.ctx[spec.name];\n}\nfunction paintFrame(params) {\n\treturn {\n\t\tuv: params.uvContext ?? params.ctx.uv,\n\t\tviewport: params.effectiveViewportSize ?? params.ctx.viewportSize\n\t};\n}\nfunction structural(ref, params) {\n\treturn params.propValues[ref.name];\n}\nfunction solidColor(color) {\n\treturn (params) =\u003e uniformOf(color, params);\n}\nfunction colorWheel(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\tconst animTime = animatedTime(params);\n\t\tconst t = call(colorWheelT, \"colorWheelT\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\targ(slots.direction, params),\n\t\t\targ(slots.scale, params),\n\t\t\tanimTime\n\t\t]);\n\t\tif ((structural(slots.mode, params) ?? \"rainbow\") === \"rainbow\") return call(colorWheelRainbow, \"colorWheelRainbow\", [t]);\n\t\tconst phase = local(call(colorWheelPhase, \"colorWheelPhase\", [t]), \"wheelPhase\");\n\t\tconst si = phase.member(\"x\");\n\t\tconst floorT3 = phase.member(\"y\");\n\t\tconst variant = mixColorsVariants[structural(slots.space, params) ?? 0] ?? mixColorsLinear;\n\t\treturn call(colorWheelSelect, \"colorWheelSelect\", [\n\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\tuniformOf(slots.palette.a, params),\n\t\t\t\tuniformOf(slots.palette.b, params),\n\t\t\t\tsi\n\t\t\t]),\n\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\tuniformOf(slots.palette.b, params),\n\t\t\t\tuniformOf(slots.palette.c, params),\n\t\t\t\tsi\n\t\t\t]),\n\t\t\tcall(variant, \"mixColors\", [\n\t\t\t\tuniformOf(slots.palette.c, params),\n\t\t\t\tuniformOf(slots.palette.a, params),\n\t\t\t\tsi\n\t\t\t]),\n\t\t\tfloorT3\n\t\t]);\n\t};\n}\nfunction pointCloudGradient(slots) {\n\tif (slots.points.length !== 5) throw new Error(\"pointCloudGradient expects exactly 5 points\");\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\tconst factors = local(call(mpgFactors, \"mpgFactors\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\t...slots.points.map((pt) =\u003e uniformOf(pt.position, params)),\n\t\t\targ(slots.smoothness, params)\n\t\t]), \"mpgFactors\");\n\t\tconst variant = mixColorsVariants[structural(slots.space, params) ?? 0] ?? mixColorsLinear;\n\t\tlet acc = uniformOf(slots.points[0].color, params);\n\t\tconst channels = [\n\t\t\t\"x\",\n\t\t\t\"y\",\n\t\t\t\"z\",\n\t\t\t\"w\"\n\t\t];\n\t\tfor (let i = 1; i \u003c 5; i++) acc = call(variant, \"mixColors\", [\n\t\t\tacc,\n\t\t\tuniformOf(slots.points[i].color, params),\n\t\t\tfactors.member(channels[i - 1])\n\t\t]);\n\t\treturn acc;\n\t};\n}\nconst beamPreconvertedFields = {\n\tconvA: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t]\n\t},\n\tconvB: {\n\t\tschema: vec3f,\n\t\tinitial: [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t]\n\t}\n};\nfunction beam(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\tconst mode = structural(slots.space, params) ?? 0;\n\t\tconst field = local(call(beamField, \"beamField\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.from, params),\n\t\t\tuniformOf(slots.to, params),\n\t\t\targ(slots.thickness.start, params),\n\t\t\targ(slots.thickness.end, params),\n\t\t\targ(slots.softness.start, params),\n\t\t\targ(slots.softness.end, params)\n\t\t]), \"beamField\");\n\t\tconst colorT = field.member(\"x\");\n\t\tconst alpha = field.member(\"y\");\n\t\tconst inside = uniformOf(slots.colors.inside, params);\n\t\tconst outside = uniformOf(slots.colors.outside, params);\n\t\tlet beamColorRGB;\n\t\tif (mode !== 0) {\n\t\t\tlet lastKey = \"\";\n\t\t\tparams.onBeforeRender(() =\u003e {\n\t\t\t\tconst a = params.getCpuValue(slots.colors.inside.name);\n\t\t\t\tconst b = params.getCpuValue(slots.colors.outside.name);\n\t\t\t\tif (!a || !b) return;\n\t\t\t\tconst key = `${a.x},${a.y},${a.z}|${b.x},${b.y},${b.z}`;\n\t\t\t\tif (key === lastKey) return;\n\t\t\t\tlastKey = key;\n\t\t\t\tconst ca = convertP3ToMixSpaceCPU(a.x, a.y, a.z, mode);\n\t\t\t\tconst cb = convertP3ToMixSpaceCPU(b.x, b.y, b.z, mode);\n\t\t\t\tparams.setExtraField(\"convA\", [\n\t\t\t\t\tca[0],\n\t\t\t\t\tca[1],\n\t\t\t\t\tca[2]\n\t\t\t\t]);\n\t\t\t\tparams.setExtraField(\"convB\", [\n\t\t\t\t\tcb[0],\n\t\t\t\t\tcb[1],\n\t\t\t\t\tcb[2]\n\t\t\t\t]);\n\t\t\t});\n\t\t\tbeamColorRGB = call(mixPreconvertedVariants[mode] ?? mixPreconvertedLinear, \"mixPreconvertedColors\", [\n\t\t\t\tparams.uniforms.convA,\n\t\t\t\tparams.uniforms.convB,\n\t\t\t\tinside.member(\"a\"),\n\t\t\t\toutside.member(\"a\"),\n\t\t\t\tcolorT\n\t\t\t]).member(\"rgb\");\n\t\t} else beamColorRGB = call(mixColorsLinear, \"mixColors\", [\n\t\t\tinside,\n\t\t\toutside,\n\t\t\tcolorT\n\t\t]).member(\"rgb\");\n\t\tconst avgAlpha = inside.member(\"a\").add(outside.member(\"a\")).mul(.5);\n\t\treturn vec4(beamColorRGB, avgAlpha.mul(alpha));\n\t};\n}\nexport { solidColor as a, pointCloudGradient as i, beamPreconvertedFields as n, colorWheel as r, beam as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { n as beamPreconvertedFields, t as beam } from \"./gradients-CIxKrfME.js\";\nconst componentDefinition = defineStd({\n\tname: \"Beam\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"A beam of light from one point to another.\",\n\tacceptsUVContext: true,\n\textraFields: beamPreconvertedFields,\n\tprops: {\n\t\tstartPosition: {\n\t\t\tdefault: {\n\t\t\t\tx: .2,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Starting point of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Start Position\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tendPosition: {\n\t\t\tdefault: {\n\t\t\t\tx: .8,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Ending point of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"End Position\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tstartThickness: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Thickness at the start of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Start Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tendThickness: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Thickness at the end of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"End Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstartSoftness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Edge softness at the start of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Start Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tendSoftness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Edge softness at the end of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"End Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tinsideColor: {\n\t\t\tdefault: \"#FF0000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the center of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Inside Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\toutsideColor: {\n\t\t\tdefault: \"#0000FF\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the edges of the beam\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Outside Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: beam({\n\t\tfrom: p(\"startPosition\"),\n\t\tto: p(\"endPosition\"),\n\t\tthickness: {\n\t\t\tstart: p(\"startThickness\"),\n\t\t\tend: p(\"endThickness\")\n\t\t},\n\t\tsoftness: {\n\t\t\tstart: p(\"startSoftness\"),\n\t\t\tend: p(\"endSoftness\")\n\t\t},\n\t\tcolors: {\n\t\t\tinside: p(\"insideColor\"),\n\t\t\toutside: p(\"outsideColor\")\n\t\t},\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar Beam_default = componentDefinition;\nexport { componentDefinition as n, Beam_default as t };\n","import { c as p, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { n as bend } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Bend\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Bends the ends of the frame toward you like a curved display — content at the edges swells closer under real perspective, or curls away when the strength goes negative\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tstrength: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How hard the ends bend — positive curls them toward you (edges magnify), negative curls them away (edges recede into the frame)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Concentrates the bend toward the ends — 0 curves the whole frame, higher keeps the middle flat and bends only near the edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Direction of the bend axis in degrees — 0 bends the left/right ends, 90 bends the top/bottom\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"transparent\", \"How to handle edges when the bend pulls content away from the frame border\")\n\t},\n\tmap: bend({\n\t\tstrength: p(\"strength\"),\n\t\tfalloff: p(\"falloff\"),\n\t\tangle: p(\"angle\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Bend shader.\"\n});\nvar Bend_default = componentDefinition;\nexport { componentDefinition as n, Bend_default as t };\n","import { a as resolveScalar, c as p, o as uniformOf, qr as f32, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { b as stops } from \"./fields-DgADOKsP.js\";\nimport { O as waves } from \"./noise-d7rmP9yc.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { H as vec4, P as smoothstep, V as vec3, n as add, w as mul, y as local } from \"./math-D864seEs.js\";\nimport { a as softDisc } from \"./mask-CeSwL79Q.js\";\nimport { n as driveUnitDirection } from \"./signal-emJuvOI3.js\";\nimport { i as rawSurfaceOf, t as centredFrame } from \"./frames-BLqt7oaW.js\";\nimport { D as shine, c as domeNormal } from \"./light-D3BIVkxy.js\";\nvar WOBBLE = [\n\t{\n\t\tamount: .15,\n\t\tschedule: [{ waves: [{\n\t\t\tx: 3.2,\n\t\t\tt: .8\n\t\t}, {\n\t\t\ty: 2.8,\n\t\t\tt: .6\n\t\t}] }, { waves: [{\n\t\t\tx: 4.8,\n\t\t\ty: -3.6,\n\t\t\tt: -.4\n\t\t}] }]\n\t},\n\t{\n\t\tamount: .12,\n\t\tschedule: [{ waves: [{\n\t\t\tx: 5.6,\n\t\t\tt: -.5\n\t\t}, {\n\t\t\ty: 4.4,\n\t\t\tt: .7\n\t\t}] }]\n\t},\n\t{\n\t\tamount: .1,\n\t\tschedule: [{ waves: [{\n\t\t\tx: 7.2,\n\t\t\ty: 6.4,\n\t\t\tt: .3\n\t\t}] }, { waves: [{\n\t\t\tx: 2.4,\n\t\t\tt: -.9\n\t\t}] }]\n\t},\n\t{\n\t\tamount: .04,\n\t\tschedule: [{ waves: [{\n\t\t\tx: 8.8,\n\t\t\tt: .2\n\t\t}, {\n\t\t\ty: 7.6,\n\t\t\tt: -.8\n\t\t}] }]\n\t}\n];\nvar FILL_DRIFT_A = [{ waves: [{\n\tx: 1,\n\tt: .4\n}, {\n\ty: 1,\n\tt: .3\n}] }, { waves: [{\n\tx: .7,\n\ty: .8,\n\tt: .2\n}] }];\nvar FILL_DRIFT_B = [{ waves: [{\n\tx: 1.3,\n\tt: -.5\n}, {\n\ty: 1.1,\n\tt: .6\n}] }, { waves: [{\n\tx: .5,\n\ty: -.6,\n\tt: .3\n}] }];\nconst componentDefinition = defineStd({\n\tname: \"Blob\",\n\trole: \"generator\",\n\tcategory: \"Textures\",\n\tdescription: \"Organic animated blob with 3D lighting and gradients\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\textraFields: {\n\t\tnormLx: {\n\t\t\tschema: f32,\n\t\t\tinitial: 0\n\t\t},\n\t\tnormLy: {\n\t\t\tschema: f32,\n\t\t\tinitial: 0\n\t\t},\n\t\tnormLz: {\n\t\t\tschema: f32,\n\t\t\tinitial: 1\n\t\t}\n\t},\n\tboundingBoxDeclaration: {\n\t\tpropBindings: {\n\t\t\tx: {\n\t\t\t\tprop: \"center\",\n\t\t\t\tas: \"position-x\"\n\t\t\t},\n\t\t\ty: {\n\t\t\t\tprop: \"center\",\n\t\t\t\tas: \"position-y\"\n\t\t\t}\n\t\t},\n\t\tcomputeBounds(props, cw, ch) {\n\t\t\tconst size = props.size ?? .5;\n\t\t\tconst cx = typeof props.center?.x === \"number\" ? props.center.x : .5;\n\t\t\tconst cy = typeof props.center?.y === \"number\" ? props.center.y : .5;\n\t\t\tconst diameter = size * 2 * ch;\n\t\t\treturn {\n\t\t\t\tcenterXPx: cx * cw,\n\t\t\t\tcenterYPx: cy * ch,\n\t\t\t\twidthPx: diameter,\n\t\t\t\theightPx: diameter,\n\t\t\t\trotationDeg: 0\n\t\t\t};\n\t\t},\n\t\twriteBounds(bounds, currentProps, cw, ch) {\n\t\t\tconst newSize = Math.max(0, bounds.widthPx / (2 * ch));\n\t\t\treturn {\n\t\t\t\tcenter: {\n\t\t\t\t\t...currentProps.center ?? {\n\t\t\t\t\t\tx: .5,\n\t\t\t\t\t\ty: .5\n\t\t\t\t\t},\n\t\t\t\t\tx: bounds.centerXPx / cw,\n\t\t\t\t\ty: bounds.centerYPx / ch\n\t\t\t\t},\n\t\t\t\tsize: newSize\n\t\t\t};\n\t\t},\n\t\tsoftnessBinding: {\n\t\t\tprop: \"softness\",\n\t\t\ttoPx: (v, _, ch) =\u003e v * .3 * ch,\n\t\t\tfromPx: (px, _, ch) =\u003e Math.max(0, Math.min(1, px / (.3 * ch)))\n\t\t}\n\t},\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#ff6b35\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Primary color of the blob\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#e91e63\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Secondary color of the blob\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tsize: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Size of the blob\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdeformation: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How organic and blobby the shape is (0 = circle, 1 = very blobby)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Deformation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Softness of the blob edges (combines edge width and transition curve)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\thighlightIntensity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Intensity of specular highlight effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Highlight Intensity\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\thighlightX: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Light direction X component\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Highlight X\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\thighlightY: {\n\t\t\tdefault: -.3,\n\t\t\tdescription: \"Light direction Y component\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Highlight Y\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\thighlightZ: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Light direction Z component\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Highlight Z\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\thighlightColor: {\n\t\t\tdefault: \"#ffe11a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the specular highlight\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Highlight Color\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Adjusts the starting state, useful for variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point of the blob\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center Position\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst { uniforms } = params;\n\t\tconst scalar = (ref) =\u003e resolveScalar(ref, params);\n\t\tdriveUnitDirection(params, {\n\t\t\tx: \"highlightX\",\n\t\t\ty: \"highlightY\",\n\t\t\tz: \"highlightZ\"\n\t\t}, {\n\t\t\tx: \"normLx\",\n\t\t\ty: \"normLy\",\n\t\t\tz: \"normLz\"\n\t\t});\n\t\tconst t = local(animatedTime(params, \"seed\"), \"blobTime\");\n\t\tconst { delta, dist } = centredFrame({ center: p(\"center\") })(params, rawSurfaceOf(params));\n\t\tconst axes = {\n\t\t\tx: delta.member(\"x\"),\n\t\t\ty: delta.member(\"y\"),\n\t\t\tt\n\t\t};\n\t\tconst deform = scalar(p(\"deformation\"));\n\t\tconst radius = local(add(scalar(p(\"size\")), WOBBLE.map(({ schedule, amount }) =\u003e mul(mul(waves(axes, schedule), amount), deform)).reduce((a, b) =\u003e add(a, b))), \"blobRadius\");\n\t\tconst softness = local(scalar(p(\"softness\")), \"blobSoftness\");\n\t\tconst mask = local(softDisc({\n\t\t\tdist,\n\t\t\tradius,\n\t\t\tsoftness: {\n\t\t\t\twidth: mul(softness, .3),\n\t\t\t\tcurve: add(mul(softness, 2), .5)\n\t\t\t}\n\t\t}), \"blobMask\");\n\t\tconst highlight = mul(mul(mul(shine({\n\t\t\tnormal: domeNormal({\n\t\t\t\tdelta,\n\t\t\t\tdist,\n\t\t\t\tradius\n\t\t\t}),\n\t\t\tlight: vec3(uniforms.normLx, uniforms.normLy, uniforms.normLz),\n\t\t\tgloss: 32\n\t\t}), add(mul(smoothstep(0, radius, dist), .5), .5)), scalar(p(\"highlightIntensity\"))), mask);\n\t\tconst fillAxes = {\n\t\t\tx: mul(axes.x, 3),\n\t\t\ty: mul(axes.y, 3),\n\t\t\tt\n\t\t};\n\t\tconst drift = (schedule) =\u003e add(mul(waves(fillAxes, schedule), .5), .5);\n\t\tconst fill = stops(p(\"colorSpace\"))(smoothstep(.1, .9, add(mul(drift(FILL_DRIFT_A), .6), mul(drift(FILL_DRIFT_B), .4))), params);\n\t\tconst highlightColor = uniformOf(p(\"highlightColor\"), params);\n\t\tconst avgAlpha = mul(add(uniforms.colorA.member(\"a\"), uniforms.colorB.member(\"a\")), .5);\n\t\treturn vec4(add(fill.member(\"rgb\"), mul(highlightColor.member(\"rgb\"), highlight)), mul(avgAlpha, mask));\n\t}\n});\nvar Blob_default = componentDefinition;\nexport { componentDefinition as n, Blob_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"BlockDissolve\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Dissolve the content away as a grid of blocks vanishing in random order\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the dissolve has progressed (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tblockSize: {\n\t\t\tdefault: .08,\n\t\t\tdescription: \"Size of each block as a fraction of the frame width\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Block Size\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"How softly each block fades out (0 = hard-edged blocks)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Reverse the order blocks dissolve in\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.cells(p(\"blockSize\")).shuffled(),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"softness\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Block Dissolve shader.\"\n});\nvar BlockDissolve_default = componentDefinition;\nexport { componentDefinition as n, BlockDissolve_default as t };\n","import { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nfunction noiseColorProps() {\n\treturn {\n\t\tcolorA: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\tdescription: \"First color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#000000\",\n\t\t\tdescription: \"Second color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t};\n}\nfunction noiseColorPropsAB() {\n\treturn {\n\t\tcolorA: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\tdescription: \"First color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#000000\",\n\t\t\tdescription: \"Second color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t};\n}\nfunction noiseToneProps() {\n\treturn {\n\t\tcontrast: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Pattern contrast (higher = sharper transitions)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Balance between colors (negative = more colorB, positive = more colorA)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t};\n}\nfunction noiseSpeedProp(defaultValue = 1) {\n\treturn { speed: {\n\t\tdefault: defaultValue,\n\t\tdescription: \"Animation speed\",\n\t\tui: {\n\t\t\ttype: \"range\",\n\t\t\tmin: 0,\n\t\t\tmax: 5,\n\t\t\tstep: .1,\n\t\t\tlabel: \"Speed\",\n\t\t\tgroup: \"Animation\"\n\t\t}\n\t} };\n}\nexport { noiseToneProps as i, noiseColorPropsAB as n, noiseSpeedProp as r, noiseColorProps as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, c as noiseField, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { l as evolving, m as noiseTone, x as seededPlane } from \"./noise-d7rmP9yc.js\";\nimport { i as noiseToneProps, r as noiseSpeedProp, t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"BlockNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Blocky value noise with soft cells that morph over time\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tscale: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Pattern scale (higher = larger patterns)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseToneProps(),\n\t\t...noiseSpeedProp()\n\t},\n\tpaint: rampOver(noiseTone(seededPlane(evolving(noiseField(\"value\"), { rate: .3 }), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar BlockNoise_default = componentDefinition;\nexport { componentDefinition as n, BlockNoise_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { g as pixelGrid, m as noiseTone, n as blueSpeckle } from \"./noise-d7rmP9yc.js\";\nimport { i as noiseToneProps, t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"BlueNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"High-frequency blue noise — even, grainy speckle ideal for dithering\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tgrain: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Grain size in pixels (1 = per-pixel, higher = chunkier speckle)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 32,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Grain Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseToneProps()\n\t},\n\tpaint: rampOver(noiseTone(pixelGrid(blueSpeckle(), {\n\t\tgrain: p(\"grain\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar BlueNoise_default = componentDefinition;\nexport { componentDefinition as n, BlueNoise_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { y as gaussianBlur } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"Blur\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"A simple Gaussian blur effect\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: { intensity: {\n\t\tdefault: 50,\n\t\tdescription: \"Intensity of the blur effect\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 200,\n\t\t\tstep: 1,\n\t\t\tlabel: \"Intensity\",\n\t\t\tgroup: \"Effect\"\n\t\t}\n\t} },\n\t...gaussianBlur({ intensity: p(\"intensity\") })\n});\nvar Blur_default = componentDefinition;\nexport { componentDefinition as n, Blur_default as t };\n","import { Br as struct, Gn as typegpu_default, Ir as atomic, Mr as vec4f, Rr as textureStorage2d, Yr as u32, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { _ as integrator, g as force, n as renderAgents, t as agentSim } from \"./agents-CBSp2UK_.js\";\nimport { G as makeCpuValueGetter, K as readAgentFrame, V as SIZE_REF_RES, q as resolveRenderRes } from \"./porters-OTkIMOyl.js\";\nimport { f as makeClusterFormationInit, v as orientedShapeOptions } from \"./agents-DXoEcto0.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar MAX_AGENTS = 4096;\nvar COUNT_MAX_MOBILE = 1200;\nvar RES = resolveRenderRes({\n\tdesktop: 1024,\n\tmobile: 640\n});\nvar STATE_FORMAT = \"rgba16float\";\nvar SPLAT_R = 16;\nvar BASE_SPEED = .13;\nvar FORCE_RATIO = 3.5;\nvar AGIT_REST = 1.5;\nvar AGIT_GAIN = .4545;\nvar AGIT_COOL = 1.3;\nvar SimParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcolA: vec4f,\n\tcolB: vec4f,\n\tcount: f32,\n\ttrails: f32,\n\tdt: f32,\n\taspect: f32,\n\tdomainX: f32,\n\tmaxSpeed: f32,\n\tmaxForce: f32,\n\tperceptionSq: f32,\n\tsepRadiusSq: f32,\n\tsepW: f32,\n\taliW: f32,\n\tcohW: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\tcursorMode: f32,\n\tcursorRadius: f32,\n\tcursorRadiusSq: f32,\n\tcursorForce: f32,\n\tbodyR: f32,\n\tmargin: f32,\n\tturnForce: f32,\n\tseed: f32\n}), \"SimParams\");\nvar simLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tagents: {\n\t\tstorage: arrayOf(vec4f, MAX_AGENTS),\n\t\taccess: \"mutable\"\n\t},\n\tagit: {\n\t\tstorage: arrayOf(f32, MAX_AGENTS),\n\t\taccess: \"mutable\"\n\t},\n\taccumE: {\n\t\tstorage: arrayOf(atomic(u32), RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\taccumS: {\n\t\tstorage: arrayOf(atomic(u32), RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\ttrailBuf: {\n\t\tstorage: arrayOf(vec4f, RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: SimParams },\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"simLayout\");\nconst boidsInitKernel = makeClusterFormationInit(simLayout, \"boidsInit\");\nconst boidsUpdateKernel = integrator.steering2d(simLayout, {\n\tforces: [\n\t\tforce.flocking(simLayout, { maxAgents: MAX_AGENTS }),\n\t\tforce.cursorSteer(simLayout),\n\t\tforce.wallTurn(simLayout)\n\t],\n\tagitation: {\n\t\trest: AGIT_REST,\n\t\tgain: AGIT_GAIN,\n\t\tcool: AGIT_COOL\n\t},\n\tcruiseFloor: .35,\n\twallRestitution: .6,\n\tname: \"boidsUpdate\"\n});\nfunction boidsRender(shape, colorSpaceMode) {\n\treturn renderAgents.orientedWorld(simLayout, {\n\t\tshape,\n\t\tres: RES,\n\t\tsplatRCap: SPLAT_R,\n\t\theading: \"velocity\",\n\t\tagitation: \"buffer\",\n\t\tcomet: true,\n\t\tramp: {\n\t\t\tcolorSpace: colorSpaceMode,\n\t\t\ttrails: \"on\"\n\t\t},\n\t\tnames: {\n\t\t\tsplat: \"boidsSplat\",\n\t\t\tresolve: \"boidsResolve\"\n\t\t}\n\t});\n}\nconst makeBoidsSplatKernel = (shape) =\u003e boidsRender(shape, 2).splat.kernel;\nconst makeBoidsResolveKernel = (mode) =\u003e boidsRender(\"arrow\", mode).resolve.kernel;\nconst boidsSplatKernel = makeBoidsSplatKernel(\"arrow\");\nconst boidsResolveKernel = makeBoidsResolveKernel(2);\nconst componentDefinition = defineStd({\n\tname: \"Boids\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"A living murmuration of hundreds of flocking agents drawn as crisp arrows, streaks, dots or glowing comets — separation, alignment and cohesion drive fluid, splitting-and-merging ribbons, agents flash toward an excited color when scattered, and the cursor acts as an attractor or a predator\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tusesPointer: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#8ec5ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of agents cruising calmly with the flock\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Rest Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ff7ad9\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color agents flash toward when agitated — scattering from the predator cursor or banking through a hard turn\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Excited Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for the rest→excited color ramp\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tagentShape: {\n\t\t\tdefault: \"arrow\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What each agent is drawn as — a hard-edged arrow, streak or square pointing along its heading, a plain dot, or a soft glowing comet\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: orientedShapeOptions,\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Flock\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 2e3,\n\t\t\tdescription: \"Number of flocking agents\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 100,\n\t\t\t\tmax: 4e3,\n\t\t\t\tstep: 100,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Flock\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Overall cruising speed of the flock\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Flock\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Re-rolls the flock's starting formation — each value spawns the murmuration in a different arrangement\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Flock\"\n\t\t\t}\n\t\t},\n\t\tsize: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Size of each agent\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Flock\"\n\t\t\t}\n\t\t},\n\t\ttrails: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"How long each agent's motion trail persists — 0 draws crisp agents, 1 leaves long ribbons\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Trails\",\n\t\t\t\tgroup: \"Flock\"\n\t\t\t}\n\t\t},\n\t\tseparation: {\n\t\t\tdefault: 1.7,\n\t\t\tdescription: \"How strongly agents steer away from crowding their neighbours\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Separation\",\n\t\t\t\tgroup: \"Flocking\"\n\t\t\t}\n\t\t},\n\t\talignment: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"How strongly agents match their neighbours' heading — the driver of coherent murmuration ribbons\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Alignment\",\n\t\t\t\tgroup: \"Flocking\"\n\t\t\t}\n\t\t},\n\t\tcohesion: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How strongly agents steer toward the local center of the flock\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cohesion\",\n\t\t\t\tgroup: \"Flocking\"\n\t\t\t}\n\t\t},\n\t\tperception: {\n\t\t\tdefault: .12,\n\t\t\tdescription: \"How far each agent can sense its neighbours (in screen heights) — larger sees bigger, smoother flocks\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .05,\n\t\t\t\tmax: .35,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Perception\",\n\t\t\t\tgroup: \"Flocking\"\n\t\t\t}\n\t\t},\n\t\tcursorMode: {\n\t\t\tdefault: \"repel\",\n\t\t\tdescription: \"How the flock reacts to the cursor\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"None\",\n\t\t\t\t\t\tvalue: \"none\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Attract\",\n\t\t\t\t\t\tvalue: \"attract\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Predator\",\n\t\t\t\t\t\tvalue: \"repel\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Cursor\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcursorStrength: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Strength of the cursor's pull or push on the flock\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Strength\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t}\n\t},\n\t...agentSim({\n\t\tlayout: simLayout,\n\t\tparams: SimParams,\n\t\tmaxAgents: MAX_AGENTS,\n\t\tcountCap: {\n\t\t\tdesktop: MAX_AGENTS,\n\t\t\tmobile: COUNT_MAX_MOBILE\n\t\t},\n\t\toutput: {\n\t\t\tkey: \"outTex\",\n\t\t\tname: \"boidsTexture\",\n\t\t\tsize: [RES, RES],\n\t\t\tformat: STATE_FORMAT\n\t\t},\n\t\tbake: ({ getCpuValue }) =\u003e {\n\t\t\tconst render = boidsRender(getCpuValue(\"agentShape\") || \"arrow\", getCpuValue(\"colorSpace\") ?? 2);\n\t\t\treturn {\n\t\t\t\tpipelines: {\n\t\t\t\t\tinit: {\n\t\t\t\t\t\tkernel: boidsInitKernel,\n\t\t\t\t\t\tthreads: \"max\"\n\t\t\t\t\t},\n\t\t\t\t\tupdate: {\n\t\t\t\t\t\tkernel: boidsUpdateKernel,\n\t\t\t\t\t\tthreads: \"agents\"\n\t\t\t\t\t},\n\t\t\t\t\tsplat: render.splat,\n\t\t\t\t\tresolve: render.resolve\n\t\t\t\t},\n\t\t\t\tinitStep: \"init\",\n\t\t\t\tprogram: [\n\t\t\t\t\t\"update\",\n\t\t\t\t\t\"splat\",\n\t\t\t\t\t\"resolve\"\n\t\t\t\t]\n\t\t\t};\n\t\t},\n\t\tframe: (sys, { getCpuValue }) =\u003e {\n\t\t\tconst g = makeCpuValueGetter(getCpuValue);\n\t\t\treturn (frameParams) =\u003e {\n\t\t\t\tconst { dt, aspect, pointerX, pointerY } = readAgentFrame(frameParams);\n\t\t\t\tconst domainX = Math.max(aspect, .01);\n\t\t\t\tconst count = sys.resolveCount(g(\"count\", 2e3));\n\t\t\t\tconst seed = g(\"seed\", 0);\n\t\t\t\tconst maxSpeed = BASE_SPEED * g(\"speed\", 2);\n\t\t\t\tconst maxForce = maxSpeed * FORCE_RATIO;\n\t\t\t\tconst perception = g(\"perception\", .12);\n\t\t\t\tconst cursorModeStr = getCpuValue(\"cursorMode\") ?? \"repel\";\n\t\t\t\tconst cursorMode = cursorModeStr === \"attract\" ? 1 : cursorModeStr === \"repel\" ? 2 : 0;\n\t\t\t\tconst cursorX = pointerX * aspect;\n\t\t\t\tconst cursorY = pointerY;\n\t\t\t\tconst cursorRadius = .22;\n\t\t\t\tconst colA = getCpuValue(\"colorA\");\n\t\t\t\tconst colB = getCpuValue(\"colorB\");\n\t\t\t\tconst bodyR = Math.min(Math.max(g(\"size\", 1.5), .5), 3) * 2 / SIZE_REF_RES;\n\t\t\t\tsys.writeParams({\n\t\t\t\t\tcolA: vec4f(colA?.x ?? .56, colA?.y ?? .77, colA?.z ?? 1, colA?.w ?? 1),\n\t\t\t\t\tcolB: vec4f(colB?.x ?? 1, colB?.y ?? .48, colB?.z ?? .85, colB?.w ?? 1),\n\t\t\t\t\tcount,\n\t\t\t\t\ttrails: Math.min(Math.max(g(\"trails\", .35), 0), 1) * .92,\n\t\t\t\t\tdt,\n\t\t\t\t\taspect,\n\t\t\t\t\tdomainX,\n\t\t\t\t\tmaxSpeed,\n\t\t\t\t\tmaxForce,\n\t\t\t\t\tperceptionSq: perception * perception,\n\t\t\t\t\tsepRadiusSq: perception * .5 * (perception * .5),\n\t\t\t\t\tsepW: g(\"separation\", 1.7),\n\t\t\t\t\taliW: g(\"alignment\", 1.5),\n\t\t\t\t\tcohW: g(\"cohesion\", 1),\n\t\t\t\t\tcursorX,\n\t\t\t\t\tcursorY,\n\t\t\t\t\tcursorMode,\n\t\t\t\t\tcursorRadius,\n\t\t\t\t\tcursorRadiusSq: cursorRadius * cursorRadius,\n\t\t\t\t\tcursorForce: g(\"cursorStrength\", 1.5) * maxSpeed * 12,\n\t\t\t\t\tbodyR,\n\t\t\t\t\tmargin: .07,\n\t\t\t\t\tturnForce: maxSpeed * 2.2,\n\t\t\t\t\tseed\n\t\t\t\t});\n\t\t\t\treturn sys.frame({\n\t\t\t\t\tcount,\n\t\t\t\t\treseed: seed\n\t\t\t\t});\n\t\t\t};\n\t\t},\n\t\tfragment: {\n\t\t\toutput: \"boidsTexture\",\n\t\t\tfallback: \"transparent\"\n\t\t}\n\t})\n});\nvar Boids_default = componentDefinition;\nexport { boidsUpdateKernel as a, makeBoidsSplatKernel as c, boidsSplatKernel as i, boidsInitKernel as n, componentDefinition as o, boidsResolveKernel as r, makeBoidsResolveKernel as s, Boids_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { r as transformAngle } from \"./transformations-CzFmhZww.js\";\nimport { a as bokehDefocus } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"BokehBlur\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Photographic lens blur where bright highlights bloom into aperture-shaped discs\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tradius: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Defocus amount — how far the lens blur spreads\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\thighlightGain: {\n\t\t\tdefault: 4,\n\t\t\tdescription: \"How strongly bright highlights bloom into discs\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Highlight Bloom\",\n\t\t\t\tgroup: \"Highlights\"\n\t\t\t}\n\t\t},\n\t\thighlightThreshold: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Brightness above which a highlight forms a disc\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Highlight Threshold\",\n\t\t\t\tgroup: \"Highlights\"\n\t\t\t}\n\t\t},\n\t\tbladeShape: {\n\t\t\tdefault: \"blades\",\n\t\t\tdescription: \"Aperture shape the highlights bloom into — bladed iris or a novelty cut-out (heart, star, …)\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Blades\",\n\t\t\t\t\t\tvalue: \"blades\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Circle\",\n\t\t\t\t\t\tvalue: \"circle\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Star\",\n\t\t\t\t\t\tvalue: \"star\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Heart\",\n\t\t\t\t\t\tvalue: \"heart\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Flower\",\n\t\t\t\t\t\tvalue: \"flower\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Cross\",\n\t\t\t\t\t\tvalue: \"cross\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Ring\",\n\t\t\t\t\t\tvalue: \"ring\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Blade Shape\",\n\t\t\t\tgroup: \"Aperture\"\n\t\t\t}\n\t\t},\n\t\tbladeCount: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Blade or point count for the Blades, Star and Flower shapes — 0–2 blades is a circular iris\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 9,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Aperture Blades\",\n\t\t\t\tgroup: \"Aperture\"\n\t\t\t}\n\t\t},\n\t\tbladeRotation: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation of the aperture shape (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Blade Rotation\",\n\t\t\t\tgroup: \"Aperture\"\n\t\t\t}\n\t\t},\n\t\tchromaticFringe: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Lens colour fringing on the disc edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Chromatic Fringe\",\n\t\t\t\tgroup: \"Aperture\"\n\t\t\t}\n\t\t}\n\t},\n\t...bokehDefocus({\n\t\tradius: p(\"radius\"),\n\t\tgain: p(\"highlightGain\"),\n\t\tthreshold: p(\"highlightThreshold\"),\n\t\tshape: p(\"bladeShape\"),\n\t\tblades: p(\"bladeCount\"),\n\t\trotation: p(\"bladeRotation\"),\n\t\tfringe: p(\"chromaticFringe\")\n\t})\n});\nvar BokehBlur_default = componentDefinition;\nexport { componentDefinition as n, BokehBlur_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, D as vary, n as brickCourses } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar field = brickCourses({\n\tcellsX: p(\"cellsX\"),\n\tcellsY: p(\"cellsY\"),\n\tmortar: p(\"mortar\"),\n\tsoftness: p(\"softness\"),\n\tvariation: p(\"variation\"),\n\trotation: p(\"rotation\"),\n\toffset: p(\"offset\"),\n\tspeedVariance: p(\"speedVariance\"),\n\tseed: p(\"seed\")\n});\nconst componentDefinition = defineStd({\n\tname: \"BrickPattern\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Classic brick wall pattern with alternating rows and mortar gaps\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorBrick: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Brick color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Brick Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorMortar: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Mortar / gap color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Mortar Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcellsX: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of bricks per row\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Bricks per Row\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcellsY: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Number of brick rows\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rows\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tmortar: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Width of mortar gaps — equal pixel thickness in both directions\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Mortar Gap\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Softness of the brick edges (0 = crisp, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tvariation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Per-brick random lightening/darkening of the brick color\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation of the pattern in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\toffset: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Static horizontal offset — shifts the brick pattern without animating\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Offset\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tspeedVariance: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"How much each row's speed varies — at high values rows move at different speeds and directions\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed Variance\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for per-row speed variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokeOver({\n\t\tfill: p(\"colorMortar\"),\n\t\tstroke: vary(p(\"colorBrick\"), field.shade),\n\t\tmask: field.bricks,\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar BrickPattern_default = componentDefinition;\nexport { componentDefinition as n, BrickPattern_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as brightnessContrast } from \"./color-Do6tU0ry.js\";\nimport { i as isZero, n as crosses, t as allOf } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"BrightnessContrast\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Adjust brightness and contrast of the image\",\n\tprops: {\n\t\tbrightness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Brightness adjustment (-1 to 1)\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Brightness\",\n\t\t\t\tgroup: \"Adjustments\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Contrast adjustment (-1 to 1)\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Adjustments\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: brightnessContrast({\n\t\tbrightness: p(\"brightness\"),\n\t\tcontrast: p(\"contrast\")\n\t}),\n\tidentityWhen: allOf(isZero(\"brightness\"), isZero(\"contrast\")),\n\tmissingChildMessage: \"You must pass a child component into the Brightness Contrast shader.\"\n});\nvar BrightnessContrast_default = componentDefinition;\nexport { componentDefinition as n, BrightnessContrast_default as t };\n","import { at as ZERO, d as glassShellProps, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { B as studioSoftboxes, C as lightVec3, F as shapedSurface, K as tiltNormal, Q as wardAlphas, R as silhouette, V as surfaceField, W as surfacePattern, X as viewRay, d as fresnelBoost, f as geometricNormal, g as guarded, h as grazingOf, p as grainNoise, q as tintRamp, t as anisoSpecular, v as insideShape, z as smearAlong } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, H as vec4, N as sin, O as reflect, i as clamp, n as add, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction, r as directionFrame } from \"./frames-BLqt7oaW.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar BRUSHED_SKY_GAIN = .38;\nconst componentDefinition = defineStd({\n\tname: \"BrushedMetal\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Photorealistic brushed metal — a satin anodised surface combed with fine directional grain that smears the reflected studio and key light into the long anisotropic streaks of real brushed aluminium, steel, gold or copper\",\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the metal shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the metal shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the metal shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tlightColor: {\n\t\t\tdefault: \"#e9ebef\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The bright tone of the polished grain — recolor for gold (#ffe8b0), copper (#ffc8a0) or steel\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Light Color\",\n\t\t\t\tgroup: \"Metal\"\n\t\t\t}\n\t\t},\n\t\tdarkColor: {\n\t\t\tdefault: \"#26282d\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The dark tone the brushed grain falls to in shadow. Tint it warm for gold/bronze, cool for steel.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Dark Color\",\n\t\t\t\tgroup: \"Metal\"\n\t\t\t}\n\t\t},\n\t\tbrushAngle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Direction the surface is brushed, in degrees — the grain and every reflection streak run along this axis\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Brush Angle\",\n\t\t\t\tgroup: \"Brush\"\n\t\t\t}\n\t\t},\n\t\tanisotropy: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How directional the brushing is — 1 = long smeared streaks along the grain, 0 = isotropic satin with no direction\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Anisotropy\",\n\t\t\t\tgroup: \"Brush\"\n\t\t\t}\n\t\t},\n\t\tgrain: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Depth of the individual brush scratches — the fine satin texture combed into the metal\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Grain\",\n\t\t\t\tgroup: \"Brush\"\n\t\t\t}\n\t\t},\n\t\tgrainScale: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Density of the brush lines — higher = finer, tighter scratches\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .25,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Grain Scale\",\n\t\t\t\tgroup: \"Brush\"\n\t\t\t}\n\t\t},\n\t\troughness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Overall satin softness — 0 = near-polished with crisp reflections, 1 = soft matte brushed finish\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Roughness\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\tenvironment: {\n\t\t\t\tdefault: 1.4,\n\t\t\t\tdescription: \"Strength of the reflected studio lighting — the softboxes seen smeared across the metal\",\n\t\t\t\tui: { group: \"Surface\" }\n\t\t\t},\n\t\t\tenvRotation: { ui: { group: \"Surface\" } },\n\t\t\tlightAngle: {\n\t\t\t\tdefault: 215,\n\t\t\t\tdescription: \"Direction of the key light for the anisotropic specular streak, in degrees\",\n\t\t\t\tui: { group: \"Surface\" }\n\t\t\t}\n\t\t}),\n\t\tspeed: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Speed of the slowly drifting reflection — the studio gently orbits the surface. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tbevelWidth: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Width of the edge bevel, relative to the shape — thin for machined jewellery edges, wide for soft pillowed metal\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .005,\n\t\t\t\tmax: .2,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Bevel Width\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tbevelShape: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Bevel profile — 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\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bevel Profile\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ edgeSoftness: { ui: { group: \"Surface\" } } }),\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst nGeo = geometricNormal(frame, field, {\n\t\t\t\tbevelWidth: u.bevelWidth,\n\t\t\t\tbevelShape: u.bevelShape\n\t\t\t});\n\t\t\tconst brush = directionFrame(u.brushAngle, \"brush\");\n\t\t\tconst gc = brush.coordsOf(surfacePattern(frame, field));\n\t\t\tconst aniso = local(u.anisotropy, \"aniso\");\n\t\t\tconst dens = local(mul(u.grainScale, 150), \"dens\");\n\t\t\tconst driftA = local(mul(sin(mul(t, .05)), .35), \"driftA\");\n\t\t\tconst sheenAmt = local(add(mul(aniso, .5), .08), \"sheenAmt\");\n\t\t\tconst sheen = local(grainNoise(gc, {\n\t\t\t\tfreq: [1.3, 6.5],\n\t\t\t\tdrift: driftA\n\t\t\t}), \"sheen\");\n\t\t\tconst lines = local(add(grainNoise(gc, { freq: [4.5, dens] }), mul(grainNoise(gc, {\n\t\t\t\tfreq: [8, mul(dens, 2.3)],\n\t\t\t\toffset: [3.1, 7.7]\n\t\t\t}), .5)), \"lines\");\n\t\t\tconst n = tiltNormal(nGeo, brush, {\n\t\t\t\tacross: local(add(mul(sheen, sheenAmt), mul(lines, mul(u.grain, .16))), \"rAcross\"),\n\t\t\t\talong: local(mul(grainNoise(gc, {\n\t\t\t\t\tfreq: [1.3, 6.5],\n\t\t\t\t\toffset: [15.21, 0],\n\t\t\t\t\tdrift: driftA\n\t\t\t\t}), mul(sheenAmt, .12)), \"rAlong\")\n\t\t\t});\n\t\t\tconst view = viewRay(params, field);\n\t\t\tconst rough = local(clamp(u.roughness, 0, 1), \"rough\");\n\t\t\tconst R = local(reflect(view, n), \"R\");\n\t\t\tconst studio = {\n\t\t\t\trotation: direction(u.envRotation, \"env\"),\n\t\t\t\tkeyRadius: local(mix(.42, .16, sub(1, rough)), \"keyRad\"),\n\t\t\t\tdrift: local(mul(sin(mul(t, .07)), .05), \"drift\"),\n\t\t\t\tstrength: local(u.environment, \"envStr\"),\n\t\t\t\tskyGain: BRUSHED_SKY_GAIN\n\t\t\t};\n\t\t\tconst rgb = tintRamp(local(clamp(mul(add(smearAlong({\n\t\t\t\tcenter: R,\n\t\t\t\taxis: brush.tangent,\n\t\t\t\tspread: mul(mul(aniso, add(mul(rough, .6), .25)), .42),\n\t\t\t\thint: \"envLum\"\n\t\t\t}, (x, y) =\u003e studioSoftboxes(x, y, studio)), anisoSpecular({\n\t\t\t\tnormal: n,\n\t\t\t\ttangent: brush.tangent,\n\t\t\t\tview,\n\t\t\t\tlight: lightVec3(direction(u.lightAngle, \"light\"), -.7),\n\t\t\t\talphas: wardAlphas(rough, aniso),\n\t\t\t\tgain: mix(.45, 1.1, sub(1, rough))\n\t\t\t})), fresnelBoost(grazingOf(n, view), { amount: .6 })), 0, 1.7), \"lit\"), u.darkColor, u.lightColor);\n\t\t\treturn guarded(insideShape(field.sdf, field.pxH), vec4(rgb, silhouette(field, u.edgeSoftness)), ZERO, \"brushedMetal\");\n\t\t}\n\t})\n});\nvar BrushedMetal_default = componentDefinition;\nexport { componentDefinition as n, BrushedMetal_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { r as bulge } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Bulge\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Magnify or pinch content around a center point\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"The center point of the bulge effect\"),\n\t\tstrength: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The intensity of the bulge effect (positive = bulge out, negative = pinch in)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The radius of the bulge effect area\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Controls the smoothness of the transition (0 = hard edge, 1 = very smooth)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"stretch\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: bulge({\n\t\tcenter: p(\"center\"),\n\t\tstrength: p(\"strength\"),\n\t\tradius: p(\"radius\"),\n\t\tfalloff: p(\"falloff\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Bulge shader.\"\n});\nvar Bulge_default = componentDefinition;\nexport { componentDefinition as n, Bulge_default as t };\n","import { Ln as PI$1, at as ZERO, d as glassShellProps, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { B as studioSoftboxes, C as lightVec3, F as shapedSurface, G as tiltAlong, H as surfaceNoise, R as silhouette, V as surfaceField, W as surfacePattern, X as viewRay, f as geometricNormal, g as guarded, h as grazingOf, t as anisoSpecular, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, D as pow, H as vec4, I as splat3, N as sin, O as reflect, P as smoothstep, S as min, d as floor, f as fract, i as clamp, j as select, m as ge, n as add, o as div, s as dot, t as abs, u as float, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction, r as directionFrame } from \"./frames-BLqt7oaW.js\";\nvar PI = PI$1;\nvar TWO_PI_SEVEN = 2 * Math.PI * 7;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nconst componentDefinition = defineStd({\n\tname: \"CarbonFiber\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Photorealistic woven carbon fibre — interlaced tows whose anisotropic sheen flips ninety degrees cell to cell, raised into a quilted weave and finished with a glossy clearcoat that mirrors the studio. Plain or twill, in any shape.\",\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the carbon shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the carbon shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the carbon shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tlightColor: {\n\t\t\tdefault: \"#b9bdc6\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The bright tone of the fibre sheen — recolor for forged/coloured carbon (red, blue, bronze)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Fiber Sheen\",\n\t\t\t\tgroup: \"Carbon\"\n\t\t\t}\n\t\t},\n\t\tdarkColor: {\n\t\t\tdefault: \"#0b0c0e\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The deep resin tone the weave falls to in shadow — near-black for classic carbon\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Resin Color\",\n\t\t\t\tgroup: \"Carbon\"\n\t\t\t}\n\t\t},\n\t\tweaveStyle: {\n\t\t\tdefault: \"twill\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Weave pattern — plain (checkerboard) or 2×2 twill (the diagonal supercar weave)\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Twill (2×2)\",\n\t\t\t\t\tvalue: \"twill\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Plain\",\n\t\t\t\t\tvalue: \"plain\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Weave\",\n\t\t\t\tgroup: \"Carbon\"\n\t\t\t}\n\t\t},\n\t\tweaveScale: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Number of woven tows across the shape — higher = finer, denser weave\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Weave Scale\",\n\t\t\t\tgroup: \"Carbon\"\n\t\t\t}\n\t\t},\n\t\tweaveAngle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotates the whole weave grid in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Weave Angle\",\n\t\t\t\tgroup: \"Carbon\"\n\t\t\t}\n\t\t},\n\t\trelief: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Depth of the quilted weave — how far each tow bulges, catching light on its crown and shadowing the valleys between\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Weave Depth\",\n\t\t\t\tgroup: \"Carbon\"\n\t\t\t}\n\t\t},\n\t\tfiberSheen: {\n\t\t\tdefault: 1.2,\n\t\t\tdescription: \"Strength of the anisotropic fibre sheen — the directional satin glint running along each tow\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Fiber Sheen\",\n\t\t\t\tgroup: \"Carbon\"\n\t\t\t}\n\t\t},\n\t\troughness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Softness of the fibre sheen — 0 = tight crisp glints, 1 = soft matte satin\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Roughness\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tclearcoat: {\n\t\t\tdefault: 1.2,\n\t\t\tdescription: \"Strength of the glossy lacquer coat — the sharp studio reflections of the wet clearcoat over the weave\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Clearcoat\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\tenvironment: {\n\t\t\t\tdefault: 2,\n\t\t\t\tdescription: \"Strength of the reflected studio lighting seen in the clearcoat\",\n\t\t\t\tui: { group: \"Surface\" }\n\t\t\t},\n\t\t\tenvRotation: { ui: { group: \"Surface\" } },\n\t\t\tlightAngle: {\n\t\t\t\tdefault: 215,\n\t\t\t\tdescription: \"Direction of the key light for the fibre sheen, in degrees\",\n\t\t\t\tui: { group: \"Surface\" }\n\t\t\t}\n\t\t}),\n\t\tbevelWidth: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Width of the edge bevel, relative to the shape — thin for machined jewellery edges, wide for soft pillowed metal\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .005,\n\t\t\t\tmax: .2,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Bevel Width\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tbevelShape: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Bevel profile — 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\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bevel Profile\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ edgeSoftness: { ui: { group: \"Surface\" } } }),\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u, propValues } = params;\n\t\t\tconst weaveStyle = (propValues.weaveStyle || \"twill\") === \"plain\" ? \"plain\" : \"twill\";\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { sdf, pxH } = field;\n\t\t\tconst nGeo = geometricNormal(frame, field, {\n\t\t\t\tbevelWidth: u.bevelWidth,\n\t\t\t\tbevelShape: u.bevelShape\n\t\t\t});\n\t\t\tconst weave = directionFrame(u.weaveAngle, \"weave\");\n\t\t\tconst { along: warp, across: weft } = weave.coordsOf(surfacePattern(frame, field));\n\t\t\tconst wA = local(mul(warp, u.weaveScale), \"wA\");\n\t\t\tconst wB = local(mul(weft, u.weaveScale), \"wB\");\n\t\t\tconst cellX = local(floor(wA), \"cellX\");\n\t\t\tconst cellY = local(floor(wB), \"cellY\");\n\t\t\tconst fA = local(sub(fract(wA), .5), \"fA\");\n\t\t\tconst fB = local(sub(fract(wB), .5), \"fB\");\n\t\t\tlet parity;\n\t\t\tif (weaveStyle === \"plain\") {\n\t\t\t\tconst s2 = local(add(cellX, cellY), \"s2\");\n\t\t\t\tparity = local(sub(s2, mul(2, floor(div(s2, 2)))), \"parity\");\n\t\t\t} else {\n\t\t\t\tconst s4 = local(add(sub(cellX, cellY), 64), \"s4\");\n\t\t\t\tparity = local(select(ge(sub(s4, mul(4, floor(div(s4, 4)))), 2), float(1), float(0)), \"parity\");\n\t\t\t}\n\t\t\tconst fiber = local(mix(weave.tangent, weave.perp, parity), \"fiber\");\n\t\t\tconst crossAxis = local(mix(weave.perp, weave.tangent, parity), \"crossAxis\");\n\t\t\tconst acrossLocal = local(mix(fB, fA, parity), \"acrossLocal\");\n\t\t\tconst alongLocal = local(mix(warp, weft, parity), \"alongLocal\");\n\t\t\tconst reliefAmt = mul(u.relief, .32);\n\t\t\tconst bulge = mul(sin(mul(acrossLocal, PI)), reliefAmt);\n\t\t\tconst filJit = mul(surfaceNoise(mul(alongLocal, 2), mul(acrossLocal, 40)), .18);\n\t\t\tconst n = tiltAlong(nGeo, crossAxis, local(add(bulge, mul(add(sin(mul(acrossLocal, TWO_PI_SEVEN)), filJit), .13)), \"crossTilt\"));\n\t\t\tconst ao = mix(.5, 1, smoothstep(0, .05, min(sub(.5, abs(fA)), sub(.5, abs(fB)))));\n\t\t\tconst viewI = viewRay(params, field);\n\t\t\tconst grazing = grazingOf(n, viewI);\n\t\t\tconst R = local(reflect(viewI, n), \"R\");\n\t\t\tconst rough = local(clamp(u.roughness, 0, 1), \"rough\");\n\t\t\tconst L = lightVec3(direction(u.lightAngle, \"light\"), -.7);\n\t\t\tconst baseA = local(mix(.06, .5, rough), \"baseA\");\n\t\t\tconst sheen = anisoSpecular({\n\t\t\t\tnormal: n,\n\t\t\t\ttangent: fiber,\n\t\t\t\tlight: L,\n\t\t\t\tview: viewI,\n\t\t\t\talphas: {\n\t\t\t\t\talong: mul(baseA, 6),\n\t\t\t\t\tacross: baseA\n\t\t\t\t},\n\t\t\t\tgain: u.fiberSheen\n\t\t\t});\n\t\t\tconst bodyLum = clamp(add(add(.035, mul(clamp(add(mul(dot(n, L), .5), .5), 0, 1), .1)), sheen), 0, 1.3);\n\t\t\tconst rgb = add(mul(mix(u.darkColor.member(\"rgb\"), u.lightColor.member(\"rgb\"), splat3(bodyLum)), ao), splat3(local(mul(mul(studioSoftboxes(R.member(\"x\"), R.member(\"y\"), {\n\t\t\t\trotation: direction(u.envRotation, \"env\"),\n\t\t\t\tkeyRadius: .16,\n\t\t\t\tdrift: 0,\n\t\t\t\tstrength: u.environment,\n\t\t\t\tskyGain: .3\n\t\t\t}), add(.05, mul(pow(grazing, 5), .95))), u.clearcoat), \"coat\")));\n\t\t\tconst transition = silhouette(field, u.edgeSoftness);\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(rgb, transition), ZERO, \"carbonFiber\");\n\t\t}\n\t})\n});\nvar CarbonFiber_default = componentDefinition;\nexport { componentDefinition as n, CarbonFiber_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { d as sobelTaps, r as chalkSketch } from \"./stylize-DiuoSq16.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Chalkboard\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Renders content as a chalk drawing on a blackboard, with edge strokes and cross-hatch shading\",\n\tprops: {\n\t\tboardColor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Background board color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Board\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tchalkColor: {\n\t\t\tdefault: \"#eceadb\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Chalk stroke color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Chalk\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tedgeSensitivity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How readily edges are detected and drawn as chalk strokes\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Sensitivity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedgeThickness: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Thickness of the chalk outline strokes\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Edge Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tshading: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Amount of cross-hatch shading filling darker regions\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shading\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\thatchScale: {\n\t\t\tdefault: 16,\n\t\t\tdescription: \"Spacing of the cross-hatch lines in pixels\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 3,\n\t\t\t\tmax: 24,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Hatch Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgrain: {\n\t\t\tdefault: .45,\n\t\t\tdescription: \"Chalk dustiness / grain that breaks up the strokes\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Grain\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: chalkSketch({\n\t\tedges: sobelTaps({ spacing: p(\"edgeThickness\") }),\n\t\tsensitivity: p(\"edgeSensitivity\"),\n\t\thatchScale: p(\"hatchScale\"),\n\t\tshading: p(\"shading\"),\n\t\tgrain: p(\"grain\"),\n\t\tboard: p(\"boardColor\"),\n\t\tchalk: p(\"chalkColor\")\n\t})\n});\nvar Chalkboard_default = componentDefinition;\nexport { componentDefinition as n, Chalkboard_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { o as channelBlur } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"ChannelBlur\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Independent blur for red, green, and blue channels\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tredIntensity: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Blur intensity for red channel\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Red Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgreenIntensity: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Blur intensity for green channel\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Green Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tblueIntensity: {\n\t\t\tdefault: 40,\n\t\t\tdescription: \"Blur intensity for blue channel\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Blue Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\t...channelBlur({\n\t\tred: p(\"redIntensity\"),\n\t\tgreen: p(\"greenIntensity\"),\n\t\tblue: p(\"blueIntensity\")\n\t})\n});\nvar ChannelBlur_default = componentDefinition;\nexport { componentDefinition as n, ChannelBlur_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, i as checkerCells } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Checkerboard\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Classic checkerboard pattern with two alternating colors\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#cccccc\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First color of the checkerboard pattern\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#999999\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second color of the checkerboard pattern\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcells: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of cells along the canvas height (creates square cells). Switch the unit to px in the editor to set an absolute cell size instead.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cells\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tdimensional: \"count-canvas-height\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Smoothness of the transition between colors (0 = hard edges, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokeOver({\n\t\tfill: p(\"colorA\"),\n\t\tstroke: p(\"colorB\"),\n\t\tmask: checkerCells({\n\t\t\tcells: p(\"cells\"),\n\t\t\tsoftness: p(\"softness\")\n\t\t}),\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar Checkerboard_default = componentDefinition;\nexport { componentDefinition as n, Checkerboard_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"CheckerWipe\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Wipe the content away as a checkerboard of fading squares\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the wipe has progressed (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tblockSize: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Size of each square as a fraction of the frame width\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Block Size\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"How softly each square fades out (0 = hard-edged squares)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Reverse the order the squares wipe in\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.cells(p(\"blockSize\")).checker(),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"softness\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Checker Wipe shader.\"\n});\nvar CheckerWipe_default = componentDefinition;\nexport { componentDefinition as n, CheckerWipe_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { A as zigzagBands, C as strokeOver, h as mixOf, k as withAlpha, t as alphaOf } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar bands = zigzagBands({\n\tcount: p(\"count\"),\n\tangle: p(\"angle\"),\n\tbalance: p(\"balance\"),\n\tsoftness: p(\"softness\"),\n\toffset: p(\"offset\")\n});\nconst componentDefinition = defineStd({\n\tname: \"Chevron\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Animated chevron / zigzag stripe pattern\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Number of chevron pairs visible\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation angle of the chevrons\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Ratio of the two colors\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Edge softness\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\toffset: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Phase offset for pattern positioning\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Offset\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: withAlpha(strokeOver({\n\t\tfill: p(\"colorA\"),\n\t\tstroke: p(\"colorB\"),\n\t\tmask: bands,\n\t\tspace: p(\"colorSpace\")\n\t}), mixOf(alphaOf(p(\"colorA\")), alphaOf(p(\"colorB\")), bands))\n});\nvar Chevron_default = componentDefinition;\nexport { componentDefinition as n, Chevron_default as t };\n","function gridSim(build) {\n\treturn { compute: (params) =\u003e {\n\t\tconst { gpu, getCpuValue } = params;\n\t\tconst root = gpu?.root;\n\t\tif (!root) return null;\n\t\tconst cfg = build(params, root);\n\t\tif (!cfg) return null;\n\t\tconst num = (key, fallback) =\u003e {\n\t\t\tconst v = getCpuValue(key);\n\t\t\treturn typeof v === \"number\" ? v : fallback;\n\t\t};\n\t\treturn {\n\t\t\toutputs: cfg.outputs,\n\t\t\t...cfg.bindInputs ? { bindInputs: cfg.bindInputs } : {},\n\t\t\tgetComputeNodes: (frameParams) =\u003e {\n\t\t\t\tfor (const s of cfg.stages) if (s.ready \u0026\u0026 !s.ready()) return null;\n\t\t\t\tconst fp = frameParams;\n\t\t\t\tconst dt = Math.min(fp.deltaTime ?? 0, cfg.clampDt);\n\t\t\t\tif (cfg.zeroDt === \"skip\" \u0026\u0026 dt \u003c= 0) return null;\n\t\t\t\tconst f = {\n\t\t\t\t\tdt,\n\t\t\t\t\tnow: Date.now(),\n\t\t\t\t\tnum,\n\t\t\t\t\tgetCpuValue,\n\t\t\t\t\tframeParams: fp\n\t\t\t\t};\n\t\t\t\tconst nodes = [];\n\t\t\t\tfor (const s of cfg.stages) s.tick?.(f);\n\t\t\t\tfor (const s of cfg.stages) if (s.skip?.(f)) return null;\n\t\t\t\tfor (const s of cfg.stages) s.emit?.(f, nodes);\n\t\t\t\treturn nodes;\n\t\t\t}\n\t\t};\n\t} };\n}\nconst op = {\n\thost(name, run) {\n\t\treturn { tick: run };\n\t},\n\tvalues(name, run) {\n\t\treturn { emit: (f) =\u003e run(f) };\n\t},\n\tsettle(opts) {\n\t\tlet simSinceActive = 0;\n\t\treturn {\n\t\t\ttick(f) {\n\t\t\t\tif (opts.activeWhen(f)) simSinceActive = 0;\n\t\t\t},\n\t\t\tskip(f) {\n\t\t\t\tconst skip = simSinceActive \u003e opts.settleMs(f);\n\t\t\t\tif (!skip) simSinceActive += f.dt * 1e3;\n\t\t\t\treturn skip;\n\t\t\t}\n\t\t};\n\t},\n\treadyWhen(fn) {\n\t\treturn { ready: fn };\n\t},\n\tpass(step) {\n\t\treturn { emit: (_f, nodes) =\u003e nodes.push(step) };\n\t},\n\tcache(step) {\n\t\treturn { emit: (f, nodes) =\u003e nodes.push(step(f)) };\n\t},\n\tpublish(step) {\n\t\treturn { emit: (f, nodes) =\u003e nodes.push(step(f)) };\n\t},\n\tseedOnce(opts) {\n\t\treturn { emit(f, nodes) {\n\t\t\tif (!opts.staleWhen(f)) return;\n\t\t\topts.onSeed?.();\n\t\t\tnodes.push(opts.pass);\n\t\t} };\n\t},\n\titerate(opts) {\n\t\treturn { emit(f, nodes) {\n\t\t\tconst n = opts.count(f);\n\t\t\tfor (let i = 0; i \u003c n; i++) opts.step(i, nodes, f);\n\t\t} };\n\t},\n\tsortPass(opts) {\n\t\tlet cur = \"A\";\n\t\tlet tick = 0;\n\t\treturn {\n\t\t\temit(f, nodes) {\n\t\t\t\tconst n = opts.passes(f);\n\t\t\t\tfor (let i = 0; i \u003c n; i++) {\n\t\t\t\t\tnodes.push(opts.pass(tick % 2, cur));\n\t\t\t\t\tcur = cur === \"A\" ? \"B\" : \"A\";\n\t\t\t\t\ttick++;\n\t\t\t\t}\n\t\t\t},\n\t\t\tside: () =\u003e cur\n\t\t};\n\t}\n};\nfunction trackedViewport(params) {\n\tlet curW = Math.max(1, Math.round(params.dimensions.width));\n\tlet curH = Math.max(1, Math.round(params.dimensions.height));\n\tparams.onResize(({ width, height }) =\u003e {\n\t\tcurW = Math.max(1, Math.round(width));\n\t\tcurH = Math.max(1, Math.round(height));\n\t});\n\treturn {\n\t\ttracked: () =\u003e ({\n\t\t\twidth: curW,\n\t\t\theight: curH\n\t\t}),\n\t\tsafe: (fp) =\u003e ({\n\t\t\twidth: Math.max(1, fp.dimensions?.width ?? curW),\n\t\t\theight: Math.max(1, fp.dimensions?.height ?? curH)\n\t\t})\n\t};\n}\nconst hostStep = (name, run) =\u003e ({\n\tname,\n\trun\n});\nfunction hostGridProgram(opts) {\n\tlet lastTime = Date.now();\n\treturn (fp) =\u003e {\n\t\tconst { pointer } = fp;\n\t\tconst now = Date.now();\n\t\tconst dt = Math.min((now - lastTime) / 1e3, opts.clampDt);\n\t\tlastTime = now;\n\t\tconst f = {\n\t\t\tdt,\n\t\t\tnow,\n\t\t\tpointer,\n\t\t\tframeParams: fp\n\t\t};\n\t\tfor (const s of opts.steps) if (s.run(f) === \"skip\") return;\n\t};\n}\nfunction hostFieldTexture(params, opts) {\n\tconst texData = new Uint16Array(opts.size * opts.size * 4);\n\tconst tex = params.createDataTexture({\n\t\twidth: opts.size,\n\t\theight: opts.size,\n\t\tformat: \"rgba16float\",\n\t\tdata: texData,\n\t\tlabel: opts.label\n\t});\n\tparams.onCleanup(() =\u003e tex.destroy());\n\treturn {\n\t\ttexData,\n\t\ttexture: params.registerMediaTexture(() =\u003e tex.texture),\n\t\tupload: () =\u003e tex.write(texData)\n\t};\n}\nexport { op as a, hostStep as i, hostFieldTexture as n, trackedViewport as o, hostGridProgram as r, gridSim as t };\n","import { V as toHalfFloat, ct as call, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { d as flowDirectionColor } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, n as add } from \"./math-D864seEs.js\";\nimport { i as hostStep, n as hostFieldTexture, r as hostGridProgram } from \"./grids-Cv99xcJg.js\";\nvar GRID_SIZE = 128;\nvar num = (v, f) =\u003e typeof v === \"number\" ? v : f;\nconst componentDefinition = defineStd({\n\tname: \"ChromaFlow\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Interactive liquid flow effect that follows your cursor\",\n\tusesPointer: true,\n\tprops: {\n\t\tbaseColor: {\n\t\t\tdefault: \"#0066ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Base liquid color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Base Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tupColor: {\n\t\t\tdefault: \"#00ff00\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color for upward movement\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Up Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tdownColor: {\n\t\t\tdefault: \"#ff0000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color for downward movement\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Down Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tleftColor: {\n\t\t\tdefault: \"#0000ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color for leftward movement\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Left Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\trightColor: {\n\t\t\tdefault: \"#ffff00\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color for rightward movement\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Right Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Strength of the liquid effect\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Radius of the liquid effect\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tmomentum: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"How much momentum colors retain in their flow direction\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 10,\n\t\t\t\tmax: 60,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Momentum\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { uniforms, ctx, uvContext, onBeforeRender, dimensions, getCpuValue } = params;\n\t\tconst fieldData = new Float32Array(GRID_SIZE * GRID_SIZE * 4);\n\t\tconst tempFieldData = new Float32Array(GRID_SIZE * GRID_SIZE * 4);\n\t\tconst field = hostFieldTexture(params, {\n\t\t\tsize: GRID_SIZE,\n\t\t\tlabel: \"chromaflow-field\"\n\t\t});\n\t\tconst fieldKit = field.texture;\n\t\tlet mouseVelX = 0, mouseVelY = 0;\n\t\tlet prevX = .5, prevY = .5;\n\t\tlet fieldMax = 0;\n\t\tlet aspect = 1;\n\t\tlet injecting = false;\n\t\tlet newMax = 0;\n\t\tlet intensity = 1;\n\t\tlet radius = .15;\n\t\tonBeforeRender(hostGridProgram({\n\t\t\tclampDt: .016,\n\t\t\tsteps: [\n\t\t\t\thostStep(\"cursorVelocity\", (f) =\u003e {\n\t\t\t\t\taspect = dimensions.width / Math.max(1, dimensions.height);\n\t\t\t\t\tconst velX = f.dt \u003e 0 ? (f.pointer.x - prevX) / f.dt : 0;\n\t\t\t\t\tconst velY = f.dt \u003e 0 ? (f.pointer.y - prevY) / f.dt : 0;\n\t\t\t\t\tmouseVelX = mouseVelX * .85 + velX * .15;\n\t\t\t\t\tmouseVelY = mouseVelY * .85 + velY * .15;\n\t\t\t\t\tprevX = f.pointer.x;\n\t\t\t\t\tprevY = f.pointer.y;\n\t\t\t\t\tinjecting = Math.abs(velX) + Math.abs(velY) \u003e .01;\n\t\t\t\t}),\n\t\t\t\thostStep(\"idleSkip\", () =\u003e !injecting \u0026\u0026 fieldMax \u003c 1e-4 ? \"skip\" : void 0),\n\t\t\t\thostStep(\"advect+decay\", (f) =\u003e {\n\t\t\t\t\tintensity = num(getCpuValue(\"intensity\"), 1);\n\t\t\t\t\tradius = num(getCpuValue(\"radius\"), 3) * .05;\n\t\t\t\t\tconst momentum = num(getCpuValue(\"momentum\"), 30);\n\t\t\t\t\tconst flowFadeRate = 1 - f.dt / Math.max(.1, 1);\n\t\t\t\t\tconst liquidFadeRate = 1 - f.dt;\n\t\t\t\t\tconst flowSpeed = momentum * 50 * f.dt;\n\t\t\t\t\tnewMax = 0;\n\t\t\t\t\tfor (let i = 0; i \u003c GRID_SIZE; i++) for (let j = 0; j \u003c GRID_SIZE; j++) {\n\t\t\t\t\t\tconst idx = (i * GRID_SIZE + j) * 4;\n\t\t\t\t\t\tconst fx0 = fieldData[idx];\n\t\t\t\t\t\tconst fy0 = fieldData[idx + 1];\n\t\t\t\t\t\ttempFieldData[idx] = fx0 * flowFadeRate;\n\t\t\t\t\t\ttempFieldData[idx + 1] = fy0 * flowFadeRate;\n\t\t\t\t\t\ttempFieldData[idx + 2] = fieldData[idx + 2] * liquidFadeRate;\n\t\t\t\t\t\tif (Math.abs(fx0) \u003e .001 || Math.abs(fy0) \u003e .001) {\n\t\t\t\t\t\t\tconst advectX = j - fx0 * flowSpeed;\n\t\t\t\t\t\t\tconst advectY = i - fy0 * flowSpeed;\n\t\t\t\t\t\t\tconst x0 = Math.floor(advectX);\n\t\t\t\t\t\t\tconst y0 = Math.floor(advectY);\n\t\t\t\t\t\t\tconst x1 = x0 + 1;\n\t\t\t\t\t\t\tconst y1 = y0 + 1;\n\t\t\t\t\t\t\tif (x0 \u003e= 0 \u0026\u0026 y0 \u003e= 0 \u0026\u0026 x1 \u003c GRID_SIZE \u0026\u0026 y1 \u003c GRID_SIZE) {\n\t\t\t\t\t\t\t\tconst fx = advectX - x0;\n\t\t\t\t\t\t\t\tconst fy = advectY - y0;\n\t\t\t\t\t\t\t\tconst idx00 = (y0 * GRID_SIZE + x0) * 4;\n\t\t\t\t\t\t\t\tconst idx01 = (y0 * GRID_SIZE + x1) * 4;\n\t\t\t\t\t\t\t\tconst idx10 = (y1 * GRID_SIZE + x0) * 4;\n\t\t\t\t\t\t\t\tconst idx11 = (y1 * GRID_SIZE + x1) * 4;\n\t\t\t\t\t\t\t\tconst sampledLiquid = fieldData[idx00 + 2] * (1 - fx) * (1 - fy) + fieldData[idx01 + 2] * fx * (1 - fy) + fieldData[idx10 + 2] * (1 - fx) * fy + fieldData[idx11 + 2] * fx * fy;\n\t\t\t\t\t\t\t\ttempFieldData[idx + 2] = sampledLiquid * liquidFadeRate;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tconst m = Math.max(Math.abs(tempFieldData[idx]), Math.abs(tempFieldData[idx + 1]), tempFieldData[idx + 2]);\n\t\t\t\t\t\tif (m \u003e newMax) newMax = m;\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\thostStep(\"inject(brush)\", (f) =\u003e {\n\t\t\t\t\tif (!injecting) return;\n\t\t\t\t\tconst speed = Math.sqrt(mouseVelX * mouseVelX + mouseVelY * mouseVelY);\n\t\t\t\t\tconst speedScale = Math.min(speed * speed * 20, 1);\n\t\t\t\t\tconst effectiveRadius = radius * speedScale;\n\t\t\t\t\tconst maxDistSq = effectiveRadius * 2 * (effectiveRadius * 2);\n\t\t\t\t\tconst radSq = effectiveRadius * effectiveRadius;\n\t\t\t\t\tconst addScale = intensity * 100 * f.dt * .01;\n\t\t\t\t\tconst speedMultiplier = Math.min(speed * 10, 1);\n\t\t\t\t\tfor (let i = 0; i \u003c GRID_SIZE; i++) for (let j = 0; j \u003c GRID_SIZE; j++) {\n\t\t\t\t\t\tconst cellX = (j + .5) / GRID_SIZE;\n\t\t\t\t\t\tconst cellY = (i + .5) / GRID_SIZE;\n\t\t\t\t\t\tconst dx = aspect \u003e= 1 ? (cellX - f.pointer.x) * aspect : cellX - f.pointer.x;\n\t\t\t\t\t\tconst dy = aspect \u003e= 1 ? cellY - f.pointer.y : (cellY - f.pointer.y) / aspect;\n\t\t\t\t\t\tconst distSq = dx * dx + dy * dy;\n\t\t\t\t\t\tif (distSq \u003c maxDistSq) {\n\t\t\t\t\t\t\tconst idx = (i * GRID_SIZE + j) * 4;\n\t\t\t\t\t\t\tconst influence = Math.exp(-distSq / radSq);\n\t\t\t\t\t\t\ttempFieldData[idx] += mouseVelX * influence * addScale;\n\t\t\t\t\t\t\ttempFieldData[idx + 1] += mouseVelY * influence * addScale;\n\t\t\t\t\t\t\ttempFieldData[idx + 2] += influence * addScale * speedMultiplier;\n\t\t\t\t\t\t\ttempFieldData[idx] = Math.max(-1, Math.min(1, tempFieldData[idx]));\n\t\t\t\t\t\t\ttempFieldData[idx + 1] = Math.max(-1, Math.min(1, tempFieldData[idx + 1]));\n\t\t\t\t\t\t\ttempFieldData[idx + 2] = Math.max(0, Math.min(1, tempFieldData[idx + 2]));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\thostStep(\"publish(halfFloat)\", () =\u003e {\n\t\t\t\t\tfieldMax = injecting ? 1 : newMax;\n\t\t\t\t\tfieldData.set(tempFieldData);\n\t\t\t\t\tfor (let k = 0; k \u003c field.texData.length; k++) field.texData[k] = toHalfFloat(fieldData[k]);\n\t\t\t\t\tfield.upload();\n\t\t\t\t})\n\t\t\t]\n\t\t}));\n\t\tconst uv = uvContext ?? ctx.uv;\n\t\tconst px = 1 / GRID_SIZE;\n\t\tconst clamp = \"linearClamp\";\n\t\tconst tap = (dx, dy) =\u003e fieldKit.sample(add(uv, vec2(dx, dy)), clamp);\n\t\treturn call(flowDirectionColor, \"flowDirectionColor\", [\n\t\t\ttap(0, 0),\n\t\t\ttap(px, 0),\n\t\t\ttap(0, px),\n\t\t\ttap(-px, 0),\n\t\t\ttap(0, -px),\n\t\t\tuniforms.baseColor,\n\t\t\tuniforms.upColor,\n\t\t\tuniforms.downColor,\n\t\t\tuniforms.leftColor,\n\t\t\tuniforms.rightColor\n\t\t]);\n\t} }\n});\nvar ChromaFlow_default = componentDefinition;\nexport { componentDefinition as n, ChromaFlow_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as chromaticFan } from \"./lens-DJQNJKCW.js\";\nimport { r as transformAngle } from \"./transformations-CzFmhZww.js\";\nimport { v as gatherStack } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"ChromaticAberration\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Separate RGB channels for a prismatic distortion effect\",\n\tprops: {\n\t\tstrength: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Overall strength of the chromatic aberration effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Direction of the chromatic aberration in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tredOffset: {\n\t\t\tdefault: -1,\n\t\t\tdescription: \"Red channel offset multiplier\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Red Offset\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgreenOffset: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Green channel offset multiplier\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Green Offset\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tblueOffset: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Blue channel offset multiplier\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Blue Offset\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(chromaticFan({\n\t\tstrength: p(\"strength\"),\n\t\tangle: p(\"angle\"),\n\t\tred: p(\"redOffset\"),\n\t\tgreen: p(\"greenOffset\"),\n\t\tblue: p(\"blueOffset\")\n\t}), [])\n});\nvar ChromaticAberration_default = componentDefinition;\nexport { componentDefinition as n, ChromaticAberration_default as t };\n","import { En as perlin12d, Pn as DEG_TO_RAD$1, at as ZERO, ct as call, d as glassShellProps, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { $ as bevel_exports, D as nudgeNormal, E as neutralTone, F as shapedSurface, R as silhouette, V as surfaceField, W as surfacePattern, X as viewRay, g as guarded, h as grazingOf, k as perlinSlope, tt as lighting_exports, v as insideShape, w as marchedNormal } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration, w as sdf3d_exports } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, H as vec4, I as splat3, L as sqrt, N as sin, O as reflect, P as smoothstep, S as min, V as vec3, a as cos, c as exp, i as clamp, n as add, o as div, t as abs, u as float, v as length, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nvar { bevelSin } = bevel_exports;\nvar { fieldGradient } = lighting_exports;\nvar { isMobileGpuViewport } = sdf3d_exports;\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"roundedRectSDF\",\n\twidth: .42,\n\theight: .3,\n\trounding: .12\n});\nfunction chromeStudio(exIn, eyIn, ezIn, boxSoftIn, stripSoft, spectral, shadows, warmC, coolC) {\n\tconst ex = local(exIn, \"ex\");\n\tconst ey = local(eyIn, \"ey\");\n\tconst ez = local(ezIn, \"ez\");\n\tconst horiz = local(div(ex, add(length(vec2(ex, ey)), 1e-4)), \"horiz\");\n\tconst warmSide = local(add(.35, mul(.65, smoothstep(-.7, .7, horiz))), \"warmSide\");\n\tconst coolSide = local(add(.45, mul(.55, smoothstep(-.7, .7, mul(horiz, -1)))), \"coolSide\");\n\tconst up = local(smoothstep(-.65, 1, ey), \"up\");\n\tconst graphite = add(mul(coolC, .03), vec3(.003, .003, .004));\n\tlet env = mix(mix(vec3(.17, .175, .19), graphite, splat3(shadows)), vec3(.56, .57, .6), splat3(mul(up, up)));\n\tconst ceil = smoothstep(.3, .9, ey);\n\tenv = add(env, mul(vec3(.55, .55, .56), ceil));\n\tconst cd = local(div(add(ey, .45), .2), \"cd\");\n\tconst coolBand = exp(mul(mul(cd, cd), -1));\n\tenv = add(env, mul(coolC, mul(mul(mul(coolBand, spectral), .2), coolSide)));\n\tconst facing = local(smoothstep(.18, -.1, ez), \"facing\");\n\tconst pz = local(max(sub(.32, ez), .06), \"pz\");\n\tconst px = local(div(ex, pz), \"px\");\n\tconst py = local(div(ey, pz), \"py\");\n\tconst bx = local(sub(abs(px), .62), \"bx\");\n\tconst by = local(sub(abs(sub(py, .3)), .28), \"by\");\n\tconst inside = min(max(bx, by), 0);\n\tconst dbox = local(add(length(max(vec2(bx, by), vec2(0, 0))), inside), \"dbox\");\n\tconst boxSoft = local(add(.05, mul(boxSoftIn, .4)), \"boxSoft\");\n\tconst box = mul(smoothstep(boxSoft, mul(boxSoft, -.6), dbox), facing);\n\tenv = add(env, mul(vec3(2.9, 2.87, 2.82), box));\n\tconst flagMask = smoothstep(.5, .92, abs(ex));\n\tconst flagDepth = mix(.55, .07, shadows);\n\tenv = mul(env, mix(float(1), flagDepth, flagMask));\n\tconst gw = local(add(.065, mul(stripSoft, .05)), \"gw\");\n\tconst dOut = local(max(dbox, 0), \"dOut\");\n\tconst warmGlow = mul(exp(mul(mul(div(dOut, gw), div(dOut, gw)), -1)), smoothstep(-.06, .1, dbox));\n\tenv = add(env, mul(warmC, mul(mul(mul(mul(warmGlow, spectral), 1.3), warmSide), facing)));\n\tconst fb = local(div(add(ey, .12), .05), \"fb\");\n\tenv = add(env, mul(warmC, mul(mul(mul(mul(exp(mul(mul(fb, fb), -1)), spectral), .5), warmSide), sub(1, facing))));\n\tconst cbx = local(sub(abs(px), .7), \"cbx\");\n\tconst cby = local(sub(abs(add(py, .78)), .05), \"cby\");\n\tconst dcard = local(add(length(max(vec2(cbx, cby), vec2(0, 0))), min(max(cbx, cby), 0)), \"dcard\");\n\tconst card = mul(smoothstep(boxSoft, mul(boxSoft, -.6), dcard), facing);\n\treturn add(env, mul(vec3(.5, .5, .52), card));\n}\nconst componentDefinition = defineStd({\n\tname: \"Chrome\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Studio-lit mirror chrome — 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\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst vol = frame.volumetric;\n\t\t\tconst mobile = isMobileGpuViewport();\n\t\t\tconst EPS = .01;\n\t\t\tconst PR = .0081;\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { s0, sX, sY, sdf, pxH } = field;\n\t\t\tconst pat = surfacePattern(frame, field);\n\t\t\tconst fx = pat.member(\"x\");\n\t\t\tconst fy = pat.member(\"y\");\n\t\t\tlet nGeo;\n\t\t\tif (vol) nGeo = marchedNormal(field);\n\t\t\telse {\n\t\t\t\tconst grad = local(call(fieldGradient, \"fieldGradient\", [\n\t\t\t\t\ts0,\n\t\t\t\t\tsX,\n\t\t\t\t\tsY,\n\t\t\t\t\tfloat(EPS)\n\t\t\t\t]), \"grad\");\n\t\t\t\tconst glen = local(max(length(grad), 1e-4), \"glen\");\n\t\t\t\tconst gx = local(div(grad.member(\"x\"), glen), \"gx\");\n\t\t\t\tconst gy = local(div(grad.member(\"y\"), glen), \"gy\");\n\t\t\t\tconst bw = max(u.bevelWidth, .003);\n\t\t\t\tconst depth = local(mul(sdf, -1), \"depth\");\n\t\t\t\tconst t0 = local(clamp(div(depth, bw), 0, 1), \"t0\");\n\t\t\t\tconst sBev = local(call(bevelSin, \"bevelSin\", [clamp(add(t0, mul(mul(mul(mul(mul(local(call(perlin12d, \"perlin12d\", [vec2(mul(fx, 21), mul(fy, 21))]), \"rimN\").member(\"x\"), u.waviness), .22), t0), sub(1, t0)), 4)), 0, 1), u.bevelShape]), \"sBev\");\n\t\t\t\tconst sPillow = mul(mul(u.curvature, .14), div(PR, add(mul(depth, depth), PR)));\n\t\t\t\tconst flen = local(length(vec2(fx, fy)), \"flen\");\n\t\t\t\tconst dgx = local(div(fx, max(flen, 1e-4)), \"dgx\");\n\t\t\t\tconst dgy = local(div(fy, max(flen, 1e-4)), \"dgy\");\n\t\t\t\tconst sSphere = local(mul(mul(u.curvature, .75), smoothstep(0, .5, flen)), \"sSphere\");\n\t\t\t\tconst sEdge = local(max(sBev, sPillow), \"sEdge\");\n\t\t\t\tconst txy = local(vec2(add(mul(gx, sEdge), mul(dgx, sSphere)), add(mul(gy, sEdge), mul(dgy, sSphere))), \"txy\");\n\t\t\t\tconst tl = local(min(length(txy), .9995), \"tl\");\n\t\t\t\tconst tn = local(mul(txy, div(tl, max(length(txy), 1e-4))), \"tn\");\n\t\t\t\tconst cz = sqrt(sub(1, mul(tl, tl)));\n\t\t\t\tnGeo = local(vec3(tn.member(\"x\"), tn.member(\"y\"), mul(cz, -1)), \"nGeo\");\n\t\t\t}\n\t\t\tconst wg = local(perlinSlope(vec2(add(mul(fx, 1.05), mul(t, .08)), mul(fy, 1.05)), 1), \"wg\");\n\t\t\tconst wAmt = local(mul(u.waviness, .2), \"wAmt\");\n\t\t\tconst n = nudgeNormal(nGeo, mul(wg.member(\"x\"), wAmt), mul(wg.member(\"y\"), wAmt));\n\t\t\tconst viewI = viewRay(params, field, .55);\n\t\t\tconst R = local(reflect(viewI, n), \"R\");\n\t\t\tconst tiltV = grazingOf(n, viewI);\n\t\t\tconst rotA = local(add(mul(u.envRotation, DEG_TO_RAD), mul(sin(mul(t, .23)), .05)), \"rotA\");\n\t\t\tconst envC = local(cos(rotA), \"envC\");\n\t\t\tconst envS = local(sin(rotA), \"envS\");\n\t\t\tconst upY = local(mul(R.member(\"y\"), -1), \"upY\");\n\t\t\tconst rx0 = local(sub(mul(R.member(\"x\"), envC), mul(upY, envS)), \"rx0\");\n\t\t\tconst ry0 = local(add(mul(R.member(\"x\"), envS), mul(upY, envC)), \"ry0\");\n\t\t\tconst orbit = local(add(mul(sin(mul(t, .5)), .4), mul(sin(add(mul(t, .19), 1.7)), .2)), \"orbit\");\n\t\t\tconst oc = local(cos(orbit), \"oc\");\n\t\t\tconst os = local(sin(orbit), \"os\");\n\t\t\tconst rx = local(add(mul(rx0, oc), mul(R.member(\"z\"), os)), \"rx\");\n\t\t\tconst rz0 = local(sub(mul(R.member(\"z\"), oc), mul(rx0, os)), \"rz0\");\n\t\t\tconst nod = local(mul(sin(add(mul(t, .31), .9)), .12), \"nod\");\n\t\t\tconst nc = local(cos(nod), \"nc\");\n\t\t\tconst ns = local(sin(nod), \"ns\");\n\t\t\tconst ry = local(sub(mul(ry0, nc), mul(rz0, ns)), \"ry\");\n\t\t\tconst rz = local(add(mul(rz0, nc), mul(ry0, ns)), \"rz\");\n\t\t\tconst faceness = smoothstep(.75, 1, mul(n.member(\"z\"), -1));\n\t\t\tconst soft = local(u.softness, \"soft\");\n\t\t\tconst softEff = local(add(soft, mul(faceness, .2)), \"softEff\");\n\t\t\tconst spectral = local(u.spectral, \"spectral\");\n\t\t\tconst shadows = local(u.shadows, \"shadows\");\n\t\t\tconst warmC = local(u.warmColor.member(\"rgb\"), \"warmC\");\n\t\t\tconst coolC = local(u.coolColor.member(\"rgb\"), \"coolC\");\n\t\t\tconst envG = local(chromeStudio(rx, ry, rz, softEff, soft, spectral, shadows, warmC, coolC), \"envG\");\n\t\t\tlet envR;\n\t\t\tlet envB;\n\t\t\tif (mobile) {\n\t\t\t\tenvR = envG.member(\"x\");\n\t\t\t\tenvB = envG.member(\"z\");\n\t\t\t} else {\n\t\t\t\tconst delta = local(mul(u.dispersion, add(.004, mul(mul(tiltV, tiltV), .06))), \"delta\");\n\t\t\t\tconst envRt = local(chromeStudio(rx, add(ry, delta), rz, softEff, soft, spectral, shadows, warmC, coolC), \"envRt\");\n\t\t\t\tconst envBt = local(chromeStudio(rx, sub(ry, delta), rz, softEff, soft, spectral, shadows, warmC, coolC), \"envBt\");\n\t\t\t\tenvR = envRt.member(\"x\");\n\t\t\t\tenvB = envBt.member(\"z\");\n\t\t\t}\n\t\t\tconst rgb = neutralTone(mul(mul(vec3(envR, envG.member(\"y\"), envB), u.environment), u.tint.member(\"rgb\")));\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(rgb, silhouette(field, u.edgeSoftness)), ZERO, \"chrome\");\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the chrome shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the chrome shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the chrome shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\ttint: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Metal tint multiplied into the reflection — white for silver chrome, warm ivory for gold, dusky rose for copper\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tint\",\n\t\t\t\tgroup: \"Metal\"\n\t\t\t}\n\t\t},\n\t\twarmColor: {\n\t\t\tdefault: \"#ffa94d\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the warm strip light hugging the studio horizon — the amber band that fringes the reflections\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Warm Light\",\n\t\t\t\tgroup: \"Metal\"\n\t\t\t}\n\t\t},\n\t\tcoolColor: {\n\t\t\tdefault: \"#82a7e6\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the cool wash below the horizon — the steel-blue zone the darker reflections fall into\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Cool Light\",\n\t\t\t\tgroup: \"Metal\"\n\t\t\t}\n\t\t},\n\t\tbevelWidth: {\n\t\t\tdefault: .028,\n\t\t\tdescription: \"Width of the polished edge bevel, relative to the shape — thin for machined jewellery edges, wide for soft pillowed metal\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .005,\n\t\t\t\tmax: .2,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Bevel Width\",\n\t\t\t\tgroup: \"Bevel\"\n\t\t\t}\n\t\t},\n\t\tbevelShape: {\n\t\t\tdefault: .55,\n\t\t\tdescription: \"Bevel profile — 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\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bevel Profile\",\n\t\t\t\tgroup: \"Bevel\"\n\t\t\t}\n\t\t},\n\t\tcurvature: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Convex doming of the faces — sweeps the big soft studio gradients across otherwise flat metal\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Curvature\",\n\t\t\t\tgroup: \"Bevel\"\n\t\t\t}\n\t\t},\n\t\twaviness: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Pressed-metal imperfection — gently bends the face reflections and wobbles the bevel light lines so the surface reads as real\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Waviness\",\n\t\t\t\tgroup: \"Bevel\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\tenvironment: {\n\t\t\t\tdescription: \"Exposure of the reflected studio — the overall brilliance of the chrome\",\n\t\t\t\tui: { group: \"Studio\" }\n\t\t\t},\n\t\t\tenvRotation: {\n\t\t\t\tdescription: \"Rotates the whole reflected studio — spins where the softbox, flags and strips fall\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\t\tgroup: \"Studio\"\n\t\t\t\t}\n\t\t\t}\n\t\t}),\n\t\tsoftness: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Softness of the studio edges — 0 = razor polished reflections, 1 = satin diffusion\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Studio\"\n\t\t\t}\n\t\t},\n\t\tspectral: {\n\t\t\tdefault: .9,\n\t\t\tdescription: \"The coloured accent lights: an amber glow hugging the softbox edge and an ice-blue wash below it. 0 = a fully achromatic black-and-white studio.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Accent Lights\",\n\t\t\t\tgroup: \"Studio\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ dispersion: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Prismatic RGB splitting concentrated on the fast-curving bevel — thin rainbow micro-fringes along the edge highlights, distinct from the broad accent lights\",\n\t\t\tui: { group: \"Studio\" }\n\t\t} }),\n\t\tshadows: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Depth of the dark studio reflections — how hard the black side flags and floor crush toward graphite. 0 lifts them to a soft gray studio.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shadows\",\n\t\t\t\tgroup: \"Studio\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Speed of the studio orbit — the whole lighting environment slowly wanders around the piece, sliding the reflections across faces and edges. 0 freezes it.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Studio\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ edgeSoftness: { ui: { group: \"Surface\" } } }),\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar Chrome_default = componentDefinition;\nexport { componentDefinition as n, Chrome_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { w as mul } from \"./math-D864seEs.js\";\nimport { r as circle } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Circle\",\n\tdescription: \"Generate a circle with adjustable size and softness\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e circle(x, y, mul(u(\"radius\"), .5)),\n\t\trotatable: false,\n\t\tcolorDescription: \"The color of the circle\",\n\t\tcenterDescription: \"The center point of the circle\",\n\t\tcenterLabel: \"Center Position\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\",\n\t\t\tas: \"canvas-height\"\n\t\t} },\n\t\tshapeProps: { radius: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The radius of the circle. A value of one (1) is sets the circle to fit the canvas.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t} },\n\t\tstroke: {\n\t\t\tstrokeColorDescription: \"The color of the stroke outline\",\n\t\t\tstrokePositionDescription: \"Position of the stroke relative to the circle edge\"\n\t\t},\n\t\tcolorSpaceDescription: \"Color space for blending fill and stroke colors in soft edges\",\n\t\tpropOverrides: {\n\t\t\tsoftness: {\n\t\t\t\tdefault: 0,\n\t\t\t\tdescription: \"Edge softness. Lower values like zero (0) are sharp, higher values like one (1) are softer.\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Softness\",\n\t\t\t\t\tgroup: \"Effect\",\n\t\t\t\t\tdimensional: \"canvas-height\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tstrokeThickness: {\n\t\t\t\tdefault: 0,\n\t\t\t\tdescription: \"The thickness of the stroke outline. Zero (0) means no stroke.\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: .5,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Stroke Thickness\",\n\t\t\t\t\tgroup: \"Stroke\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tpropOrder: [\n\t\t\t\"origin\",\n\t\t\t\"color\",\n\t\t\t\"radius\",\n\t\t\t\"softness\",\n\t\t\t\"center\",\n\t\t\t\"strokeThickness\",\n\t\t\t\"strokeColor\",\n\t\t\t\"strokePosition\",\n\t\t\t\"colorSpace\"\n\t\t]\n\t}\n});\nvar Circle_default = componentDefinition;\nexport { componentDefinition as n, Circle_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { r as colorWheel } from \"./gradients-CIxKrfME.js\";\nconst componentDefinition = defineStd({\n\tname: \"ColorWheel\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"A directional gradient that smoothly cycles through rainbow colors or a custom set of three colors\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tmode: {\n\t\t\tdefault: \"rainbow\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Rainbow cycles through the full spectrum; Custom loops through your three chosen colors\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Rainbow\",\n\t\t\t\t\tvalue: \"rainbow\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Custom\",\n\t\t\t\t\tvalue: \"custom\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Mode\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#ff0000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First color in the cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 1\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#00ff88\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second color in the cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 2\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#0066ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Third color in the cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 3\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Number of color cycles across the viewport\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Direction the gradient flows\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Speed at which the gradient cycles\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklch\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for blending between custom colors\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { mode: \"custom\" }\n\t\t\t}\n\t\t}\n\t},\n\tpaint: colorWheel({\n\t\tmode: p(\"mode\"),\n\t\tdirection: p(\"angle\"),\n\t\tscale: p(\"scale\"),\n\t\tpalette: {\n\t\t\ta: p(\"colorA\"),\n\t\t\tb: p(\"colorB\"),\n\t\t\tc: p(\"colorC\")\n\t\t},\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar ColorWheel_default = componentDefinition;\nexport { componentDefinition as n, ColorWheel_default as t };\n","import { Ot as unpremultiplyAlpha, at as ZERO, c as p, ct as call, mt as vec4, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { f as makeJpegBlockRgb, r as buildBlockQuantizeGraph, u as createGridKernelPass } from \"./porters-OTkIMOyl.js\";\nimport { B as vec2, d as floor, i as clamp, n as add, o as div, w as mul, y as local } from \"./math-D864seEs.js\";\nvar N_LUMA = 6;\nvar SCALE_N = 4;\nvar STRIDE = SCALE_N;\nvar MAX_CELLS = 1024;\nvar CELL_FORMAT = \"rgba16float\";\nconst buildCompressionGraph = () =\u003e buildBlockQuantizeGraph({\n\tnLuma: N_LUMA,\n\tscaleN: SCALE_N,\n\tformat: CELL_FORMAT,\n\tnamePrefix: \"compression\"\n});\nconst jpegBlockRgb = makeJpegBlockRgb(N_LUMA);\nfunction cellFetchComposite(cellTex, sharp, params) {\n\tconst { ctx } = params;\n\tconst center = call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [sharp.sample(ctx.uv)]);\n\tconst pPix = local(floor(mul(ctx.uv, ctx.viewportSize)), \"pPix\");\n\tconst cellX = clamp(floor(div(pPix.member(\"x\"), STRIDE)), 0, MAX_CELLS - 1);\n\tconst cellY = clamp(floor(div(pPix.member(\"y\"), STRIDE)), 0, MAX_CELLS - 1);\n\tconst cellUV = vec2(div(add(cellX, .5), MAX_CELLS), div(add(cellY, .5), MAX_CELLS));\n\treturn vec4(cellTex.sample(cellUV, \"nearestClamp\").member(\"rgb\"), center.member(\"a\"));\n}\nfunction jpegCompress(opts) {\n\treturn {\n\t\tcompute: (params) =\u003e {\n\t\t\tconst { childNode, gpu, convertToTexture, registerComputeTexture, getCpuValue, onCleanup, onResize, dimensions } = params;\n\t\t\tif (!childNode) return null;\n\t\t\tconst root = gpu?.root;\n\t\t\tif (!root) return null;\n\t\t\tconst childTexture = convertToTexture(childNode);\n\t\t\tconst cellTex = root.createTexture({\n\t\t\t\tsize: [MAX_CELLS, MAX_CELLS],\n\t\t\t\tformat: CELL_FORMAT\n\t\t\t}).$usage(\"storage\", \"sampled\");\n\t\t\tonCleanup(() =\u003e cellTex.destroy());\n\t\t\tconst jpegCellTexture = registerComputeTexture(cellTex);\n\t\t\tconst graph = buildCompressionGraph();\n\t\t\tconst compParams = root.createUniform(graph.Params);\n\t\t\tlet curW = Math.max(1, Math.round(dimensions.width));\n\t\t\tlet curH = Math.max(1, Math.round(dimensions.height));\n\t\t\tconst cellsFor = (w, h) =\u003e [Math.min(Math.ceil(w / STRIDE), MAX_CELLS), Math.min(Math.ceil(h / STRIDE), MAX_CELLS)];\n\t\t\tlet [cellsX, cellsY] = cellsFor(curW, curH);\n\t\t\tconst pipeline = createGridKernelPass(root, graph.kernel);\n\t\t\tlet bound = pipeline;\n\t\t\tlet inputBound = false;\n\t\t\tonResize(({ width, height }) =\u003e {\n\t\t\t\tcurW = Math.max(1, Math.round(width));\n\t\t\t\tcurH = Math.max(1, Math.round(height));\n\t\t\t\t[cellsX, cellsY] = cellsFor(curW, curH);\n\t\t\t});\n\t\t\treturn {\n\t\t\t\toutputs: {\n\t\t\t\t\tchildTexture,\n\t\t\t\t\tjpegCellTexture\n\t\t\t\t},\n\t\t\t\tbindInputs: (resolve) =\u003e {\n\t\t\t\t\tconst src = resolve(childTexture.key);\n\t\t\t\t\tif (src) {\n\t\t\t\t\t\tconst bg = root.createBindGroup(graph.layout, {\n\t\t\t\t\t\t\tinput: src.texture,\n\t\t\t\t\t\t\tcellTex,\n\t\t\t\t\t\t\tparams: compParams.buffer\n\t\t\t\t\t\t});\n\t\t\t\t\t\tbound = pipeline.with(bg);\n\t\t\t\t\t\tinputBound = true;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tgetComputeNodes: () =\u003e {\n\t\t\t\t\tconst q = getCpuValue(opts.quality.name);\n\t\t\t\t\tcompParams.write({\n\t\t\t\t\t\tinputWidth: curW,\n\t\t\t\t\t\tinputHeight: curH,\n\t\t\t\t\t\tquality: typeof q === \"number\" ? q : 12\n\t\t\t\t\t});\n\t\t\t\t\treturn [() =\u003e {\n\t\t\t\t\t\tif (inputBound) bound.dispatchThreads(cellsX, cellsY);\n\t\t\t\t\t}];\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\tgpu: { fragment: (params) =\u003e {\n\t\t\tconst { childNode, ctx, computeOutputs, convertToTexture } = params;\n\t\t\tif (!childNode) return ZERO;\n\t\t\tconst cellTex = computeOutputs?.jpegCellTexture;\n\t\t\tconst sharp = computeOutputs?.childTexture;\n\t\t\tif (!cellTex || !sharp) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [convertToTexture(childNode).sample(ctx.uv)]);\n\t\t\treturn cellFetchComposite(cellTex, sharp, params);\n\t\t} }\n\t};\n}\nconst componentDefinition = defineStd({\n\tname: \"CompressionArtifacts\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Simulates lossy JPEG compression — 8×8 DCT block quantization, blockiness, ringing and color bleed\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: { quality: {\n\t\tdefault: 12,\n\t\tdescription: \"JPEG quality (1 = heavily destroyed, 100 = near lossless)\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 1,\n\t\t\tmax: 100,\n\t\t\tstep: 1,\n\t\t\tlabel: \"Quality\",\n\t\t\tgroup: \"Effect\"\n\t\t}\n\t} },\n\t...jpegCompress({ quality: p(\"quality\") })\n});\nvar CompressionArtifacts_default = componentDefinition;\nexport { jpegBlockRgb as i, buildCompressionGraph as n, componentDefinition as r, CompressionArtifacts_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { i as concentricRings } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"ConcentricSpin\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Concentric rings that each rotate the underlying image by different amounts\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Maximum rotation angle per ring\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trings: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of concentric rings\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rings\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsmoothness: {\n\t\t\tdefault: .03,\n\t\t\tdescription: \"Softness of transitions between rings\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Smoothness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Randomization seed for per-ring rotation variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Speed of continuous ring rotation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tspeedRandomness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How much each ring varies in rotation speed and direction\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed Randomness\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"mirror\", \"How to handle edges when distortion pushes content out of bounds\"),\n\t\tcenter: centerPropConfig(\"Center point of the concentric rings\", { label: \"Center Position\" })\n\t},\n\tmap: concentricRings({\n\t\tcenter: p(\"center\"),\n\t\tintensity: p(\"intensity\"),\n\t\trings: p(\"rings\"),\n\t\tsmoothness: p(\"smoothness\"),\n\t\tseed: p(\"seed\"),\n\t\tspeedRandomness: p(\"speedRandomness\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the ConcentricSpin shader.\"\n});\nvar ConcentricSpin_default = componentDefinition;\nexport { componentDefinition as n, ConcentricSpin_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { S as tiles, b as stops, f as rampOver, r as dist } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"ConicGradient\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Colors sweep in a full circle around a center point, like a color wheel\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#FF0080\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Starting color of the sweep\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#00BFFF\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Ending color of the sweep (wraps back to Color A)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center point of the sweep\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation offset in degrees — shifts where Color A begins\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trepeat: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Number of times the gradient repeats around the circle. Values above 1 create a starburst pattern.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 24,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Repeat\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: rampOver(tiles(dist.conic({\n\t\tcenter: p(\"center\"),\n\t\trotation: p(\"rotation\")\n\t}), p(\"repeat\")), stops(p(\"colorSpace\")))\n});\nvar ConicGradient_default = componentDefinition;\nexport { componentDefinition as n, ConicGradient_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { l as isolines } from \"./color-Do6tU0ry.js\";\nimport { a as transformColor, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nvar transformSource = (value) =\u003e value === \"alpha\" ? 1 : 0;\nvar transformColorMode = (value) =\u003e value === \"custom\" ? 1 : 0;\nconst componentDefinition = defineStd({\n\tname: \"ContourLines\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Draw topographical contour lines based on luminance or alpha\",\n\tblendWithChildren: false,\n\tprops: {\n\t\tlevels: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Number of contour levels\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Levels\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlineWidth: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Width of the contour lines in pixels\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Line Width\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Edge softness of the lines (0 = sharp, 1 = soft)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgamma: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Contour distribution. \u003c1 clusters in bright, \u003e1 clusters in dark\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gamma\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\tdescription: \"Invert the source values\",\n\t\t\ttransform: transformBoolean,\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsource: {\n\t\t\tdefault: \"luminance\",\n\t\t\tdescription: \"Use luminance or alpha channel for contours\",\n\t\t\ttransform: transformSource,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Luminance\",\n\t\t\t\t\tvalue: \"luminance\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Alpha\",\n\t\t\t\t\tvalue: \"alpha\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Source\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorMode: {\n\t\t\tdefault: \"source\",\n\t\t\tdescription: \"Use source image colors or custom colors\",\n\t\t\ttransform: transformColorMode,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Source\",\n\t\t\t\t\tvalue: \"source\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Custom\",\n\t\t\t\t\tvalue: \"custom\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Color Mode\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tlineColor: {\n\t\t\tdefault: \"#000000\",\n\t\t\tdescription: \"Color of the contour lines (custom mode)\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Line Color\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { colorMode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tbackgroundColor: {\n\t\t\tdefault: \"transparent\",\n\t\t\tdescription: \"Background color (custom mode)\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Background Color\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { colorMode: \"custom\" }\n\t\t\t}\n\t\t}\n\t},\n\teffect: isolines({\n\t\tsource: p(\"source\"),\n\t\tlevels: p(\"levels\"),\n\t\tlineWidth: p(\"lineWidth\"),\n\t\tsoftness: p(\"softness\"),\n\t\tgamma: p(\"gamma\"),\n\t\tinvert: p(\"invert\"),\n\t\tcolorMode: p(\"colorMode\"),\n\t\tlineColor: p(\"lineColor\"),\n\t\tbackgroundColor: p(\"backgroundColor\")\n\t})\n});\nvar ContourLines_default = componentDefinition;\nexport { componentDefinition as n, ContourLines_default as t };\n","import { c as p, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { a as cornerPin } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"CornerPin\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Pin each corner of the content to an arbitrary position for a free perspective warp\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\ttopLeft: {\n\t\t\tdefault: {\n\t\t\t\tx: 0,\n\t\t\t\ty: 0\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of the top-left corner\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Top Left\",\n\t\t\t\tgroup: \"Corners\"\n\t\t\t}\n\t\t},\n\t\ttopRight: {\n\t\t\tdefault: {\n\t\t\t\tx: 1,\n\t\t\t\ty: 0\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of the top-right corner\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Top Right\",\n\t\t\t\tgroup: \"Corners\"\n\t\t\t}\n\t\t},\n\t\tbottomLeft: {\n\t\t\tdefault: {\n\t\t\t\tx: 0,\n\t\t\t\ty: 1\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of the bottom-left corner\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Bottom Left\",\n\t\t\t\tgroup: \"Corners\"\n\t\t\t}\n\t\t},\n\t\tbottomRight: {\n\t\t\tdefault: {\n\t\t\t\tx: 1,\n\t\t\t\ty: 1\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of the bottom-right corner\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Bottom Right\",\n\t\t\t\tgroup: \"Corners\"\n\t\t\t}\n\t\t},\n\t\tamount: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Blends the warp in and out — 0 returns the content to its original rectangle, 1 fully pins the corners\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Amount\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"transparent\", \"How to handle areas outside the pinned quad\")\n\t},\n\tmap: cornerPin({\n\t\ttopLeft: p(\"topLeft\"),\n\t\ttopRight: p(\"topRight\"),\n\t\tbottomRight: p(\"bottomRight\"),\n\t\tbottomLeft: p(\"bottomLeft\"),\n\t\tamount: p(\"amount\")\n\t})\n});\nvar CornerPin_default = componentDefinition;\nexport { componentDefinition as n, CornerPin_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { i as crescent } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Crescent\",\n\tdescription: \"Crescent moon shape — an outer circle with an inner circle subtracted\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e crescent(x, y, u(\"radius\"), u(\"innerRatio\"), u(\"offset\")),\n\t\tcolorDescription: \"Fill color of the crescent\",\n\t\tcenterDescription: \"Center position of the crescent\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .3,\n\t\t\t\tdescription: \"Outer circle radius\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .05,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Size\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tinnerRatio: {\n\t\t\t\tdefault: .8,\n\t\t\t\tdescription: \"Inner (bite) circle radius as a fraction of outer radius\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .3,\n\t\t\t\t\tmax: 1.2,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Bite Size\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\toffset: {\n\t\t\t\tdefault: .2,\n\t\t\t\tdescription: \"Horizontal distance the bite circle is shifted from center\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: .5,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Bite Offset\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Crescent_default = componentDefinition;\nexport { componentDefinition as n, Crescent_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as cross } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Cross\",\n\tdescription: \"Plus / cross shape with adjustable arm length, width, and rounding\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e cross(x, y, u(\"radius\"), u(\"thickness\"), u(\"rounding\")),\n\t\tcolorDescription: \"Fill color of the cross\",\n\t\tcenterDescription: \"Center position of the cross\",\n\t\trotationDescription: \"Rotation in degrees (45° turns a plus into an ×)\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .35,\n\t\t\t\tdescription: \"Arm half-length — distance from center to the end of each arm\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Arm Length\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tthickness: {\n\t\t\t\tdefault: .08,\n\t\t\t\tdescription: \"Arm half-width — controls how wide each arm is\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: .5,\n\t\t\t\t\tstep: .005,\n\t\t\t\t\tlabel: \"Arm Width\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\trounding: {\n\t\t\t\tdefault: 0,\n\t\t\t\tdescription: \"Corner rounding — rounds the arm ends and concave corners\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: .2,\n\t\t\t\t\tstep: .005,\n\t\t\t\t\tlabel: \"Rounding\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Cross_default = componentDefinition;\nexport { componentDefinition as n, Cross_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { I as scanlines, K as vignetteOverlay, O as phosphorMask, P as rgbSplit, t as adjust, v as gatherStack, w as opaque } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"CRTScreen\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Retro CRT monitor simulation with scanlines\",\n\tprops: {\n\t\tpixelSize: {\n\t\t\tdefault: 128,\n\t\t\tdescription: \"Size of individual TV pixels (lower = more pixels)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 8,\n\t\t\t\tmax: 128,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Pixel Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorShift: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Chromatic aberration amount\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Color Shift\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tscanlineIntensity: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Strength of horizontal scanlines\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scanline Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tscanlineFrequency: {\n\t\t\tdefault: 200,\n\t\t\tdescription: \"Number of scanlines across screen\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 100,\n\t\t\t\tmax: 800,\n\t\t\t\tstep: 10,\n\t\t\t\tlabel: \"Scanline Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbrightness: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Screen brightness boost\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Brightness\",\n\t\t\t\tgroup: \"Adjustments\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Screen contrast enhancement\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Adjustments\"\n\t\t\t}\n\t\t},\n\t\tvignetteIntensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Strength of corner darkening effect (0 = off)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Vignette Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tvignetteRadius: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the vignette extends inward (0 = edges only, 1 = reaches center)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Vignette Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(rgbSplit({ amount: p(\"colorShift\") }), [\n\t\tadjust({\n\t\t\tbrightness: p(\"brightness\"),\n\t\t\tcontrast: p(\"contrast\")\n\t\t}),\n\t\tscanlines({\n\t\t\tfrequency: p(\"scanlineFrequency\"),\n\t\t\tintensity: p(\"scanlineIntensity\")\n\t\t}),\n\t\tphosphorMask({ pitch: p(\"pixelSize\") }),\n\t\tvignetteOverlay({\n\t\t\tradius: p(\"vignetteRadius\"),\n\t\t\tintensity: p(\"vignetteIntensity\")\n\t\t}),\n\t\topaque()\n\t])\n});\nvar CRTScreen_default = componentDefinition;\nexport { componentDefinition as n, CRTScreen_default as t };\n","import { Bn as TWO_PI$1, Dt as blend_exports, Pn as DEG_TO_RAD$1, ct as call, d as glassShellProps, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { F as shapedSurface, V as surfaceField, W as surfacePattern, c as fdSlope, l as fieldSlope, m as grazingFlat, r as cellNoiseAt, tt as lighting_exports, w as marchedNormal, x as keyLightXY } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, I as splat3, L as sqrt, N as sin, O as reflect, P as smoothstep, V as vec3, a as cos, d as floor, f as fract, h as gt, i as clamp, j as select, k as refract, n as add, o as div, s as dot, t as abs, u as float, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { a as sectorFold } from \"./frames-BLqt7oaW.js\";\nvar { insideMask } = lighting_exports;\nvar { unpremultiplyAlpha } = blend_exports;\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nvar TWO_PI = TWO_PI$1;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"polygonSDF\",\n\tradius: .35,\n\tsides: 10\n});\nconst componentDefinition = defineStd({\n\tname: \"Crystal\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Diamond-like crystal lens with faceted refraction.\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\t...shapedSurface({\n\t\tpattern: \"triplanar\",\n\t\tchild: \"required\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u, propValues, ctx } = params;\n\t\t\tconst childTexture = frame.childTexture;\n\t\t\tconst vol = frame.volumetric;\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst suv = local(frame.sdfUV, \"suv\");\n\t\t\tconst aspect = local(div(ctx.viewportSize.member(\"x\"), ctx.viewportSize.member(\"y\")), \"aspect\");\n\t\t\tconst sharp = local(max(mul(u.edgeSoftness, .5), .001), \"sharp\");\n\t\t\tconst { sdf, pxH } = field;\n\t\t\tconst cpx = local(u.center.member(\"x\"), \"centerPosX\");\n\t\t\tconst cpy = local(sub(1, u.center.member(\"y\")), \"centerPosY\");\n\t\t\tconst grad = fieldSlope(field);\n\t\t\tconst gradX = grad.member(\"x\");\n\t\t\tconst gradY = grad.member(\"y\");\n\t\t\tconst rb1 = local(call(insideMask, \"insideMask\", [\n\t\t\t\tsdf,\n\t\t\t\tsharp,\n\t\t\t\tpxH,\n\t\t\t\tfloat(1.5)\n\t\t\t]), \"rb1\");\n\t\t\tconst lightRad = mul(u.lightAngle, DEG_TO_RAD);\n\t\t\tconst lx = local(add(cos(lightRad), mul(sub(cpx, .5), 3)), \"lx\");\n\t\t\tconst ly = local(add(sin(lightRad), mul(sub(cpy, .5), 3)), \"ly\");\n\t\t\tconst kl1 = keyLightXY(lx, ly, -.75, \"kl1\");\n\t\t\tconst L = kl1.member(\"L\");\n\t\t\tconst H = kl1.member(\"H\");\n\t\t\tconst kl2 = keyLightXY(mul(ly, -1), lx, -.4, \"kl2\");\n\t\t\tconst L2 = kl2.member(\"L\");\n\t\t\tconst H2 = kl2.member(\"H\");\n\t\t\tconst depthNorm = clamp(div(mul(sdf, -1), .15), 0, 1);\n\t\t\tconst outerWarp = local(mul(sub(1, smoothstep(0, .03, sdf)), .4), \"outerWarp\");\n\t\t\tconst refrScale = mul(u.refraction, .15);\n\t\t\tconst haloOffX = local(div(mul(mul(mul(gradX, -1), refrScale), outerWarp), aspect), \"haloOffX\");\n\t\t\tconst haloOffY = local(mul(mul(mul(gradY, -1), refrScale), outerWarp), \"haloOffY\");\n\t\t\tconst pat = surfacePattern(frame, field, { uv: suv });\n\t\t\tconst pdx = pat.member(\"x\");\n\t\t\tconst pdy = pat.member(\"y\");\n\t\t\tconst sAngle = local(div(TWO_PI, u.facets), \"sAngle\");\n\t\t\tconst fUv = local(sectorFold(add(pdx, .5), add(pdy, .5), sAngle), \"fUv\");\n\t\t\tconst crystalRNorm = local(div(sqrt(add(mul(pdx, pdx), mul(pdy, pdy))), .35), \"crystalRNorm\");\n\t\t\tconst tableMask = local(sub(1, smoothstep(.22, .32, crystalRNorm)), \"tableMask\");\n\t\t\tconst radialDensity = add(1, mul(clamp(crystalRNorm, 0, 1), .6));\n\t\t\tconst tableSuppress = local(sub(1, mul(tableMask, .9)), \"tableSuppress\");\n\t\t\tlet nSurf;\n\t\t\tif (vol) nSurf = marchedNormal(field, 4, \"nSurf\");\n\t\t\telse {\n\t\t\t\tconst bevelSlope = local(mul(mul(sub(1, smoothstep(0, 1, depthNorm)), 1.7), sub(1, tableMask)), \"bevelSlope\");\n\t\t\t\tnSurf = local(normalize(vec3(mul(gradX, bevelSlope), mul(gradY, bevelSlope), -1)), \"nSurf\");\n\t\t\t}\n\t\t\tconst grazing = grazingFlat(nSurf);\n\t\t\tconst feps = .02;\n\t\t\tconst vScale1 = local(mul(mul(u.facets, 1.2), radialDensity), \"vScale1\");\n\t\t\tconst fUvS1 = local(mul(fUv, vScale1), \"fUvS1\");\n\t\t\tconst facet1 = fdSlope(cellNoiseAt, fUvS1, feps, \"facet1\");\n\t\t\tconst gx1 = facet1.dx;\n\t\t\tconst gy1 = facet1.dy;\n\t\t\tconst gLen1 = local(max(sqrt(add(mul(gx1, gx1), mul(gy1, gy1))), .001), \"gLen1\");\n\t\t\tconst nx1 = local(div(gx1, gLen1), \"nx1\");\n\t\t\tconst ny1 = local(div(gy1, gLen1), \"ny1\");\n\t\t\tconst cellId1 = local(floor(fUvS1), \"cellId1\");\n\t\t\tconst cellRand = local(fract(mul(sin(add(mul(cellId1.member(\"x\"), 12.9898), mul(cellId1.member(\"y\"), 78.233))), 43758.5453)), \"cellRand\");\n\t\t\tconst nF1 = local(normalize(add(nSurf, vec3(mul(nx1, .55), mul(ny1, .55), 0))), \"nF1\");\n\t\t\tconst ndlS = local(dot(nSurf, L), \"ndlS\");\n\t\t\tconst ndl1 = local(mul(sub(dot(nF1, L), ndlS), 2.2), \"ndl1\");\n\t\t\tconst facet2 = fdSlope(cellNoiseAt, local(add(mul(fUv, mul(vScale1, 1.7)), vec2(3.7, 1.2)), \"fUvS2\"), feps, \"facet2\");\n\t\t\tconst gx2 = facet2.dx;\n\t\t\tconst gy2 = facet2.dy;\n\t\t\tconst gLen2 = local(max(sqrt(add(mul(gx2, gx2), mul(gy2, gy2))), .001), \"gLen2\");\n\t\t\tconst nx2 = local(div(gx2, gLen2), \"nx2\");\n\t\t\tconst ny2 = local(div(gy2, gLen2), \"ny2\");\n\t\t\tconst nF2 = local(normalize(add(nSurf, vec3(mul(nx2, .4), mul(ny2, .4), 0))), \"nF2\");\n\t\t\tconst ndl2 = local(mul(sub(dot(nF2, L2), dot(nSurf, L2)), 2.2), \"ndl2\");\n\t\t\tconst I = vec3(0, 0, 1);\n\t\t\tconst facetRefrAmp = local(clamp(mul(u.refraction, .8), 0, 1.6), \"facetRefrAmp\");\n\t\t\tconst refr = local(refract(I, local(normalize(add(add(nSurf, vec3(mul(mul(mul(nx1, .75), facetRefrAmp), tableSuppress), mul(mul(mul(ny1, .75), facetRefrAmp), tableSuppress), 0)), vec3(mul(mul(nx2, .55), facetRefrAmp), mul(mul(ny2, .55), facetRefrAmp), 0))), \"nRefr\"), div(1, add(1, mul(u.refraction, .55)))), \"refr\");\n\t\t\tconst thickEff = local(vol ? clamp(mul(field.s0.member(\"x\"), -1), 0, .6) : mul(clamp(mul(field.s0.member(\"x\"), -1), 0, .12), 1.6), \"thickEff\");\n\t\t\tconst offMag = local(mul(mul(mul(thickEff, add(.55, mul(cellRand, .9))), u.scale), rb1), \"offMag\");\n\t\t\tconst totalOffX = local(add(div(mul(div(refr.member(\"x\"), max(refr.member(\"z\"), .25)), offMag), aspect), haloOffX), \"totalOffX\");\n\t\t\tconst totalOffY = local(add(mul(div(refr.member(\"y\"), max(refr.member(\"z\"), .25)), offMag), haloOffY), \"totalOffY\");\n\t\t\tconst bounce = local(reflect(refr, local(normalize(vec3(mul(nx2, .7), mul(ny2, .7), -1)), \"nBack\")), \"bounce\");\n\t\t\tconst bounceMag = local(mul(mul(mul(thickEff, u.scale), rb1), .8), \"bounceMag\");\n\t\t\tconst bounceOffX = div(mul(div(bounce.member(\"x\"), max(abs(bounce.member(\"z\")), .3)), bounceMag), aspect);\n\t\t\tconst bounceOffY = mul(div(bounce.member(\"y\"), max(abs(bounce.member(\"z\")), .3)), bounceMag);\n\t\t\tconst innerW = local(mul(mul(add(mul(grazing, .5), .18), add(mul(cellRand, .7), .3)), rb1), \"innerW\");\n\t\t\tconst pbx = add(pdx, mul(mul(div(refr.member(\"x\"), max(refr.member(\"z\"), .25)), thickEff), 1.2));\n\t\t\tconst pby = add(pdy, mul(mul(div(refr.member(\"y\"), max(refr.member(\"z\"), .25)), thickEff), 1.2));\n\t\t\tconst fUvS3 = local(add(mul(sectorFold(add(pbx, .5), add(pby, .5), sAngle), mul(vScale1, 1.4)), vec2(9.1, 4.7)), \"fUvS3\");\n\t\t\tconst facet3 = fdSlope(cellNoiseAt, fUvS3, feps, \"facet3\");\n\t\t\tconst gx3 = facet3.dx;\n\t\t\tconst gy3 = facet3.dy;\n\t\t\tconst gLen3 = local(max(sqrt(add(mul(gx3, gx3), mul(gy3, gy3))), .001), \"gLen3\");\n\t\t\tconst nx3 = local(div(gx3, gLen3), \"nx3\");\n\t\t\tconst ny3 = local(div(gy3, gLen3), \"ny3\");\n\t\t\tconst cellId3 = local(floor(fUvS3), \"cellId3\");\n\t\t\tconst cellRand3 = local(fract(mul(sin(add(mul(cellId3.member(\"x\"), 31.727), mul(cellId3.member(\"y\"), 57.131))), 43758.5453)), \"cellRand3\");\n\t\t\tconst w3 = local(mul(mul(clamp(mul(thickEff, 2.5), 0, 1), clamp(mul(u.refraction, 1.2), 0, 1)), rb1), \"w3\");\n\t\t\tconst wedgeLit = local(add(mul(add(mul(nx3, lx), mul(ny3, ly)), .5), .5), \"wedgeLit\");\n\t\t\tconst mosaicMul = mul(mul(add(mul(cellRand3, .9), .55), add(mul(wedgeLit, .7), .65)), add(mul(smoothstep(.15, .7, gLen3), .45), .55));\n\t\t\tconst mosaicFire = mul(mul(smoothstep(.75, 1, mul(wedgeLit, add(cellRand3, .4))), w3), .8);\n\t\t\tconst zoomedX = add(cpx, div(sub(ctx.uv.member(\"x\"), cpx), u.innerZoom));\n\t\t\tconst zoomedY = add(cpy, div(sub(ctx.uv.member(\"y\"), cpy), u.innerZoom));\n\t\t\tconst lensX = local(add(zoomedX, totalOffX), \"lensX\");\n\t\t\tconst lensY = local(add(zoomedY, totalOffY), \"lensY\");\n\t\t\tconst lit1 = clamp(ndl1, 0, 1);\n\t\t\tconst shadow1 = clamp(mul(ndl1, -1), 0, 1);\n\t\t\tconst bright1 = max(sub(add(1, mul(lit1, u.highlights)), mul(shadow1, u.shadows)), .02);\n\t\t\tconst lit2 = clamp(ndl2, 0, 1);\n\t\t\tconst shadow2 = clamp(mul(ndl2, -1), 0, 1);\n\t\t\tconst bright2 = sub(add(1, mul(lit2, mul(u.highlights, .5))), mul(shadow2, mul(u.shadows, .5)));\n\t\t\tconst surfBright = sub(add(1, mul(mul(clamp(ndlS, 0, 1), u.highlights), .4)), mul(mul(clamp(mul(ndlS, -1), 0, 1), u.shadows), .6));\n\t\t\tconst combinedBright = mul(mul(bright1, bright2), surfBright);\n\t\t\tconst chrScale = mul(u.dispersion, .12);\n\t\t\tconst chrOffX = local(mul(totalOffX, chrScale), \"chrOffX\");\n\t\t\tconst chrOffY = local(mul(totalOffY, chrScale), \"chrOffY\");\n\t\t\tconst edgeDarken = add(mul(mix(smoothstep(.2, .8, gLen1), 1, tableMask), .4), .6);\n\t\t\tconst facetMul = mul(mul(mul(add(combinedBright, mul(tableMask, .25)), edgeDarken), mix(float(1), mosaicMul, w3)), u.brightness);\n\t\t\tconst ndh1 = local(clamp(dot(nF1, H), 0, 1), \"ndh1\");\n\t\t\tconst ndh2 = clamp(dot(nF2, H2), 0, 1);\n\t\t\tconst spec1 = mul(pow(ndh1, 110), 2.2);\n\t\t\tconst spec2 = mul(pow(ndh2, 56), .9);\n\t\t\tconst glint = mul(smoothstep(.965, .995, ndh1), 3);\n\t\t\tconst flashContrib = local(mul(mul(add(add(add(spec1, spec2), glint), mosaicFire), u.highlights), u.brightness), \"flashContrib\");\n\t\t\tconst fresnelRim = mul(mul(mul(pow(grazing, mix(float(6), float(1.5), clamp(mul(u.fresnelSoftness, .5), 0, 1))), u.fresnel), 2), rb1);\n\t\t\tconst fresnelContrib = mul(u.fresnelColor.member(\"rgb\"), fresnelRim);\n\t\t\tconst lightFacing = add(mul(add(mul(gradX, lx), mul(gradY, ly)), .5), .5);\n\t\t\tconst rb2 = local(mul(mul(sub(clamp(mul(div(mul(sub(sdf, pxH), -1), sharp), 16), 0, 1), clamp(mul(div(mul(sdf, -1), sharp), 16), 0, 1)), lightFacing), .35), \"rb2\");\n\t\t\tconst transition = local(smoothstep(0, 1, rb1), \"transition\");\n\t\t\tconst cutoutOn = Number(propValues.cutout) \u003e 0;\n\t\t\tconst outerUV = vec2(add(ctx.uv.member(\"x\"), haloOffX), add(ctx.uv.member(\"y\"), haloOffY));\n\t\t\tconst baseSampleUV = cutoutOn ? ctx.uv : outerUV;\n\t\t\tconst sampledR = local(call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(vec2(add(lensX, chrOffX), add(lensY, chrOffY)))]), \"sampledR\");\n\t\t\tconst sampledG = local(call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(vec2(lensX, lensY))]), \"sampledG\");\n\t\t\tconst sampledB = local(call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(vec2(sub(lensX, chrOffX), sub(lensY, chrOffY)))]), \"sampledB\");\n\t\t\tconst innerSample = local(call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(vec2(add(lensX, bounceOffX), add(lensY, bounceOffY)))]), \"innerSample\");\n\t\t\tconst baseColor = local(call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTexture.sample(baseSampleUV)]), \"baseColor\");\n\t\t\tconst refractedRgb = mix(vec3(sampledR.member(\"x\"), sampledG.member(\"y\"), sampledB.member(\"z\")), vec3(innerSample.member(\"x\"), innerSample.member(\"y\"), innerSample.member(\"z\")), splat3(innerW));\n\t\t\tconst refractedA = sampledG.member(\"w\");\n\t\t\tconst litRgb = local(mul(refractedRgb, facetMul), \"litRgb\");\n\t\t\tconst lumWeights = vec3(.299, .587, .114);\n\t\t\tconst origLum = dot(litRgb, lumWeights);\n\t\t\tconst tinted = local(mix(litRgb, u.tintColor.member(\"rgb\"), splat3(u.tintIntensity)), \"tinted\");\n\t\t\tconst lumPreserved = mul(tinted, div(origLum, max(dot(tinted, lumWeights), 1e-4)));\n\t\t\tconst composited = local(mix(baseColor, vec4(add(add(add(select(gt(u.tintPreserveLuminosity, .5), lumPreserved, tinted), splat3(flashContrib)), fresnelContrib), splat3(rb2)), refractedA), vec4(transition)), \"composited\");\n\t\t\tconst cutoutAlpha = cutoutOn ? transition : float(1);\n\t\t\treturn vec4(composited.member(\"xyz\"), mul(composited.member(\"w\"), cutoutAlpha));\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the crystal shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the crystal shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the crystal shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcutout: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Cut out alpha outside the crystal shape\",\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Cutout\",\n\t\t\t\tgroup: \"Crystal\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\trefraction: {\n\t\t\t\tdescription: \"How strongly the crystal refracts content beneath\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmax: 3,\n\t\t\t\t\tgroup: \"Crystal\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tdispersion: {\n\t\t\t\tdefault: .5,\n\t\t\t\tdescription: \"Prismatic rainbow dispersion — splits light into spectral colors\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmax: 2,\n\t\t\t\t\tgroup: \"Crystal\"\n\t\t\t\t}\n\t\t\t}\n\t\t}),\n\t\tfacets: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Symmetry order — how many times the facet pattern repeats around the center\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 3,\n\t\t\t\tmax: 24,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Facets\",\n\t\t\t\tgroup: \"Crystal\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\tfresnel: {\n\t\t\t\tdefault: .05,\n\t\t\t\tdescription: \"Fresnel rim glow intensity around the crystal boundary\",\n\t\t\t\tui: { type: \"range\" }\n\t\t\t},\n\t\t\tfresnelSoftness: {\n\t\t\t\tdefault: 1,\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmax: 2\n\t\t\t\t}\n\t\t\t},\n\t\t\tfresnelColor: true,\n\t\t\tedgeSoftness: {\n\t\t\t\tdefault: 0,\n\t\t\t\tdescription: \"Softness of the crystal boundary edge\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tgroup: \"Crystal\"\n\t\t\t\t}\n\t\t\t}\n\t\t}),\n\t\tinnerZoom: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Magnification of content seen through the crystal\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Inner Zoom\",\n\t\t\t\tgroup: \"Crystal\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ lightAngle: {\n\t\t\tdefault: 270,\n\t\t\tdescription: \"Light direction angle in degrees\",\n\t\t\tui: { group: \"Lighting\" }\n\t\t} }),\n\t\thighlights: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Additive brightness on light-facing facets — never darkens\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Highlights\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tshadows: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Darkening on shadow-facing facets — never brightens\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shadows\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tbrightness: {\n\t\t\tdefault: 1.2,\n\t\t\tdescription: \"Overall crystal brightness — higher values push facets toward brilliant white\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Brightness\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\ttintColor: {\n\t\t\tdefault: \"#e8e0ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Crystal body tint color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tint Color\",\n\t\t\t\tgroup: \"Tint\"\n\t\t\t}\n\t\t},\n\t\ttintIntensity: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"How much tint color is applied to the crystal interior\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Tint Intensity\",\n\t\t\t\tgroup: \"Tint\"\n\t\t\t}\n\t\t},\n\t\ttintPreserveLuminosity: {\n\t\t\tdefault: true,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Preserve original brightness when tinting\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Preserve Luminosity\",\n\t\t\t\tgroup: \"Tint\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar Crystal_default = componentDefinition;\nexport { componentDefinition as n, Crystal_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { m as noiseTone, s as curlSpeed, x as seededPlane } from \"./noise-d7rmP9yc.js\";\nimport { i as noiseToneProps, r as noiseSpeedProp, t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"CurlNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Swirling divergence-free flow field that drifts over time\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tscale: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Pattern scale (higher = larger patterns)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseToneProps(),\n\t\t...noiseSpeedProp()\n\t},\n\tpaint: rampOver(noiseTone(seededPlane(curlSpeed({ rate: .2 }), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar CurlNoise_default = componentDefinition;\nexport { componentDefinition as n, CurlNoise_default as t };\n","import { At as colorMixing_exports, U as createPointerVelocityTracker, V as toHalfFloat, at as ZERO, ct as call, mt as vec4, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { Dt as mixColorStopsRuntime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { h as makeStrokePolylineScan } from \"./agents-DXoEcto0.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar MAX_POINTS = 64;\nvar HALF_ONE = toHalfFloat(1);\nvar WIDTH_MIN = .2;\nvar SPEED_FULL = 1.5;\nconst cursorTrailScan = makeStrokePolylineScan({\n\tmaxPoints: MAX_POINTS,\n\tsubdivisions: 3,\n\tname: \"cursorTrailScan\"\n});\nfunction polylineRecorder(params) {\n\tconst { createDataTexture, registerMediaTexture, onBeforeRender, onCleanup, onResize, getCpuValue, dimensions } = params;\n\tconst pts = [];\n\tconst texData = new Uint16Array(MAX_POINTS * 4);\n\tfor (let i = 0; i \u003c MAX_POINTS; i++) texData[i * 4 + 2] = HALF_ONE;\n\tconst dataTex = createDataTexture({\n\t\twidth: MAX_POINTS,\n\t\theight: 1,\n\t\tformat: \"rgba16float\",\n\t\tdata: texData,\n\t\tlabel: \"cursortrail-points\"\n\t});\n\tonCleanup(() =\u003e dataTex.destroy());\n\tconst pointsKit = registerMediaTexture(() =\u003e dataTex.texture);\n\tconst tracker = createPointerVelocityTracker({\n\t\tminDrag: .001,\n\t\tteleportGuard: Number.POSITIVE_INFINITY\n\t});\n\tlet curW = Math.max(1, Math.round(dimensions.width));\n\tlet curH = Math.max(1, Math.round(dimensions.height));\n\tonResize(({ width, height }) =\u003e {\n\t\tcurW = Math.max(1, Math.round(width));\n\t\tcurH = Math.max(1, Math.round(height));\n\t});\n\tlet headDist = 0;\n\tlet wasActive = false;\n\tonBeforeRender((fp) =\u003e {\n\t\tconst { pointer, deltaTime } = fp;\n\t\tconst rawDt = Math.max(0, deltaTime ?? 0);\n\t\tconst dt = Math.min(rawDt, .1);\n\t\tconst length = getCpuValue(\"length\") ?? .5;\n\t\tconst drawRadius = (getCpuValue(\"radius\") ?? .5) * .1;\n\t\tconst aspect = curW / curH;\n\t\tconst move = tracker.update(pointer, dt);\n\t\tconst ageRate = Math.min(rawDt, .25) / Math.max(.1, length);\n\t\tfor (const p of pts) p.age = Math.min(1, p.age + ageRate);\n\t\twhile (pts.length \u003e 0 \u0026\u0026 pts[0].age \u003e= 1) pts.shift();\n\t\tif (move.dragDist \u003e .001) {\n\t\t\tconst stepDist = Math.sqrt(move.dx * aspect * (move.dx * aspect) + move.dy * move.dy);\n\t\t\tconst widthNow = Math.min(1, Math.max(WIDTH_MIN, Math.sqrt(move.smoothSpeed / SPEED_FULL)));\n\t\t\tif (pts.length === 0) {\n\t\t\t\tpts.push({\n\t\t\t\t\tx: move.prevX,\n\t\t\t\t\ty: move.prevY,\n\t\t\t\t\tage: 0,\n\t\t\t\t\tlink: 0,\n\t\t\t\t\twidth: widthNow\n\t\t\t\t});\n\t\t\t\tpts.push({\n\t\t\t\t\tx: move.x,\n\t\t\t\t\ty: move.y,\n\t\t\t\t\tage: 0,\n\t\t\t\t\tlink: 1,\n\t\t\t\t\twidth: widthNow\n\t\t\t\t});\n\t\t\t\theadDist = stepDist;\n\t\t\t} else {\n\t\t\t\tconst head = pts[pts.length - 1];\n\t\t\t\thead.x = move.x;\n\t\t\t\thead.y = move.y;\n\t\t\t\thead.age = 0;\n\t\t\t\thead.width = widthNow;\n\t\t\t\theadDist += stepDist;\n\t\t\t\tif (headDist \u003e= Math.max(.006, drawRadius * .5)) {\n\t\t\t\t\tconst n = pts.length;\n\t\t\t\t\tif (n \u003e= 3 \u0026\u0026 pts[n - 2].link === 1) {\n\t\t\t\t\t\tpts[n - 2].x = .25 * pts[n - 3].x + .5 * pts[n - 2].x + .25 * pts[n - 1].x;\n\t\t\t\t\t\tpts[n - 2].y = .25 * pts[n - 3].y + .5 * pts[n - 2].y + .25 * pts[n - 1].y;\n\t\t\t\t\t}\n\t\t\t\t\tpts.push({\n\t\t\t\t\t\tx: move.x,\n\t\t\t\t\t\ty: move.y,\n\t\t\t\t\t\tage: 0,\n\t\t\t\t\t\tlink: 1,\n\t\t\t\t\t\twidth: widthNow\n\t\t\t\t\t});\n\t\t\t\t\theadDist = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\twhile (pts.length \u003e MAX_POINTS - 1) pts.shift();\n\t\t}\n\t\tconst active = pts.length \u003e 0;\n\t\tif (active || wasActive) {\n\t\t\tconst count = pts.length \u003e 0 ? pts.length + 1 : 0;\n\t\t\tfor (let i = 0; i \u003c MAX_POINTS; i++) {\n\t\t\t\tconst base = i * 4;\n\t\t\t\tif (i \u003c count) {\n\t\t\t\t\tconst p = pts[Math.min(i, pts.length - 1)];\n\t\t\t\t\ttexData[base] = toHalfFloat(p.x);\n\t\t\t\t\ttexData[base + 1] = toHalfFloat(p.y);\n\t\t\t\t\ttexData[base + 2] = toHalfFloat(p.age);\n\t\t\t\t\ttexData[base + 3] = toHalfFloat(i === pts.length || p.link === 1 ? p.width : -p.width);\n\t\t\t\t} else {\n\t\t\t\t\ttexData[base] = 0;\n\t\t\t\t\ttexData[base + 1] = 0;\n\t\t\t\t\ttexData[base + 2] = HALF_ONE;\n\t\t\t\t\ttexData[base + 3] = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t\tdataTex.write(texData);\n\t\t}\n\t\twasActive = active;\n\t});\n\treturn pointsKit;\n}\nfunction ageColorRamp(params, trailAge) {\n\tconst { propValues, uniforms } = params;\n\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\tif ((propValues.stopCount ?? 0) \u003e 1) return mixColorStopsRuntime(trailAge, {\n\t\tcolorsArray: uniforms.colorsArray,\n\t\tpositionsArray: uniforms.positionsArray,\n\t\tconvertedColorsArray: uniforms.convertedColorsArray,\n\t\tstopCount: uniforms.stopCount\n\t}, colorSpaceMode);\n\tconst cm = colorMixing_exports;\n\treturn call(cm.mixColorsVariants[colorSpaceMode] ?? cm.mixColorsLinear, \"mixColors\", [\n\t\tuniforms.colorA,\n\t\tuniforms.colorB,\n\t\ttrailAge\n\t]);\n}\nconst componentDefinition = defineStd({\n\tname: \"CursorTrail\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Animated trail effect that tracks cursor movement\",\n\tusesPointer: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#00aaff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of fresh trails\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Start Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ff00aa\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color trails transition to as they fade\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"End Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tradius: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Base radius of the trail stroke\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlength: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How long the trail persists (in seconds)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Trail Length\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshrink: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How much the stroke tapers as it fades out (0 = no taper, 1 = full taper)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Shrink Amount\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Edge softness of the trail (0 = crisp paint edge, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { ctx, uniforms, gpu } = params;\n\t\tif (!gpu?.root) return ZERO;\n\t\tconst scan = call(cursorTrailScan, \"cursorTrailScan\", [\n\t\t\tpolylineRecorder(params).accessor(),\n\t\t\tctx.uv,\n\t\t\tctx.aspect,\n\t\t\tuniforms.radius,\n\t\t\tuniforms.shrink,\n\t\t\tuniforms.softness,\n\t\t\tctx.viewportSize.member(\"y\")\n\t\t]);\n\t\tconst trailAge = scan.member(\"x\");\n\t\tconst coverage = scan.member(\"y\");\n\t\tconst trailColor = ageColorRamp(params, trailAge);\n\t\treturn vec4(trailColor.member(\"rgb\"), trailColor.member(\"a\").mul(coverage));\n\t} }\n});\nvar CursorTrail_default = componentDefinition;\nexport { componentDefinition as n, cursorTrailScan as r, CursorTrail_default as t };\n","import { F as createFluidKernelPass, St as createFeedbackTrailSim } from \"./porters-OTkIMOyl.js\";\nfunction feedbackSim(build) {\n\treturn { compute: (params) =\u003e {\n\t\tconst { childNode, gpu } = params;\n\t\tif (!childNode) return null;\n\t\tconst root = gpu?.root;\n\t\tif (!root) return null;\n\t\tconst cfg = build(params, root);\n\t\tconst paramsU = root.createUniform(cfg.paramsSchema);\n\t\tconst sim = createFeedbackTrailSim(params, {\n\t\t\tsize: cfg.size,\n\t\t\tformat: cfg.format,\n\t\t\textraSlots: cfg.extraSlots,\n\t\t\ttextures: cfg.textures,\n\t\t\tspeedProp: cfg.speedProp,\n\t\t\tmaxDeltaTime: cfg.maxDeltaTime,\n\t\t\tbindGroups: (ctx, read, write) =\u003e cfg.bindGroups({\n\t\t\t\t...ctx,\n\t\t\t\tparamsBuffer: paramsU.buffer\n\t\t\t}, read, write),\n\t\t\tstaticGroups: cfg.staticGroups ? (ctx) =\u003e cfg.staticGroups({\n\t\t\t\t...ctx,\n\t\t\t\tparamsBuffer: paramsU.buffer\n\t\t\t}) : void 0\n\t\t});\n\t\tif (!sim) return null;\n\t\tconst pipeline = createFluidKernelPass(root, cfg.step, {\n\t\t\tn: cfg.size,\n\t\t\tbindGroup: void 0\n\t\t});\n\t\treturn {\n\t\t\toutputs: {\n\t\t\t\tchildTexture: sim.childTexture,\n\t\t\t\tdisplay: sim.display,\n\t\t\t\t...cfg.outputs ?? {}\n\t\t\t},\n\t\t\tbindInputs: sim.bindInputs,\n\t\t\tgetComputeNodes: (frameParams) =\u003e sim.tick(frameParams, (t) =\u003e {\n\t\t\t\tif (cfg.skip?.(t)) return null;\n\t\t\t\tparamsU.write(cfg.values(t));\n\t\t\t\treturn [pipeline.with(t.groups)];\n\t\t\t})\n\t\t};\n\t} };\n}\nexport { feedbackSim as t };\n","import { Ot as unpremultiplyAlpha, at as ZERO, ct as call, pt as mixExpr, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { o as buildMacroblockAdvectKernel } from \"./porters-OTkIMOyl.js\";\nimport { t as feedbackSim } from \"./feedback-Dro_hxd4.js\";\nvar STATE_RES = 768;\nvar STATE_FORMAT = \"rgba16float\";\nvar decoder = buildMacroblockAdvectKernel({\n\tres: STATE_RES,\n\tformat: STATE_FORMAT,\n\tnamePrefix: \"dataMosh\",\n\tblockMix: {\n\t\tcoarseScale: 2.6,\n\t\tcoarsePick: .35\n\t},\n\tgenerationLoss: {\n\t\tlevels: 18,\n\t\tamount: .12,\n\t\tdecay: .9985\n\t}\n});\nconst moshKernel = decoder.kernel;\nconst componentDefinition = defineStd({\n\tname: \"DataMosh\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Corrupted-codec motion smearing — macroblocks lock in place and drag their pixels across the frame in liquid trails, each recovering on its own clock, like a video stream that lost its keyframes\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"How much of the image locks and smears — the fraction of corrupted macroblocks\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Mosh\"\n\t\t\t}\n\t\t},\n\t\tblockSize: {\n\t\t\tdefault: 48,\n\t\t\tdescription: \"Macroblock size — the granularity of the corruption\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 30,\n\t\t\t\tmax: 150,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Block Size\",\n\t\t\t\tgroup: \"Mosh\"\n\t\t\t}\n\t\t},\n\t\tdrift: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Motion vector strength — how fast corrupted areas drag their pixels away\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Drift\",\n\t\t\t\tgroup: \"Mosh\"\n\t\t\t}\n\t\t},\n\t\tchurn: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How often each block re-rolls its fate — low values let corrupted regions melt for a long time before recovering\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Churn\",\n\t\t\t\tgroup: \"Mosh\"\n\t\t\t}\n\t\t},\n\t\tblend: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Blend between the live image and the moshed stream\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Blend\",\n\t\t\t\tgroup: \"Mosh\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Simulation speed. 0 freezes the decay in place.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for the corruption layout\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\t...feedbackSim((params, root) =\u003e {\n\t\tconst { getCpuValue } = params;\n\t\treturn {\n\t\t\tsize: STATE_RES,\n\t\t\tformat: STATE_FORMAT,\n\t\t\tspeedProp: \"speed\",\n\t\t\tparamsSchema: decoder.Params,\n\t\t\tbindGroups: ({ childTexture, display, paramsBuffer }, read, write) =\u003e root.createBindGroup(decoder.layout, {\n\t\t\t\tsrc: childTexture,\n\t\t\t\tprev: read.state,\n\t\t\t\tnext: write.state,\n\t\t\t\tdisplay,\n\t\t\t\tparams: paramsBuffer\n\t\t\t}),\n\t\t\tstep: moshKernel,\n\t\t\tvalues: ({ dt, localTime }) =\u003e ({\n\t\t\t\ttime: localTime,\n\t\t\t\tdt,\n\t\t\t\tseed: getCpuValue(\"seed\") ?? 0,\n\t\t\t\tintensity: getCpuValue(\"intensity\") ?? .7,\n\t\t\t\tblockSize: getCpuValue(\"blockSize\") ?? 48,\n\t\t\t\tdrift: getCpuValue(\"drift\") ?? .35,\n\t\t\t\tchurn: getCpuValue(\"churn\") ?? .4\n\t\t\t})\n\t\t};\n\t}),\n\tgpu: { fragment: ({ childNode, ctx, computeOutputs, uniforms, convertToTexture }) =\u003e {\n\t\tif (!childNode) return ZERO;\n\t\tconst display = computeOutputs?.display;\n\t\tconst live = (computeOutputs?.childTexture ?? convertToTexture(childNode)).sample(ctx.uv);\n\t\tif (!display) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [live]);\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [mixExpr(live, display.sample(ctx.uv, \"linearClamp\"), uniforms.blend)]);\n\t} }\n});\nvar DataMosh_default = componentDefinition;\nexport { componentDefinition as n, moshKernel as r, DataMosh_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { b as stops, f as rampOver, p as rings, r as dist } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"DiamondGradient\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Diamond-shaped gradient radiating from a center point using Manhattan distance\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#4ffb4a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the center of the diamond\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A (Center)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#4f1238\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the outer edges of the diamond\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B (Edge)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center point of the diamond\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tsize: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Extent of the gradient — controls how far Color A reaches before transitioning to Color B\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation in degrees — tilts the diamond into a rhombus\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trepeat: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Number of times the gradient repeats outward. Values above 1 create concentric diamond or square bands.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 16,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Repeat\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\troundness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Morphs from a sharp diamond (0) to a square (1)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Roundness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: rampOver(rings(dist.diamond({\n\t\tcenter: p(\"center\"),\n\t\tsize: p(\"size\"),\n\t\trotation: p(\"rotation\"),\n\t\troundness: p(\"roundness\")\n\t}), p(\"repeat\")), stops(p(\"colorSpace\")))\n});\nvar DiamondGradient_default = componentDefinition;\nexport { componentDefinition as n, DiamondGradient_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"DiamondWipe\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Wipe the content away through a lattice of growing diamonds\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the diamonds have grown (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tsize: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Size of each diamond cell as a fraction of the frame width\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Softness of each diamond edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Wipe from the cell corners inward instead\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.cells(p(\"size\")).diamond(),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"feather\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Diamond Wipe shader.\"\n});\nvar DiamondWipe_default = componentDefinition;\nexport { componentDefinition as n, DiamondWipe_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { L as scatter } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"DiffuseBlur\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Grain-like pixel displacement at random\",\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Intensity of the diffuse blur effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"stretch\",\n\t\t\tdescription: \"How to handle edges when distortion pushes content out of bounds\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: scatter({\n\t\tamount: p(\"intensity\"),\n\t\tedges: p(\"edges\")\n\t})\n});\nvar DiffuseBlur_default = componentDefinition;\nexport { componentDefinition as n, DiffuseBlur_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { o as displaceByLayer } from \"./warps-P5O3NWLe.js\";\nvar CHANNEL_MODES = {\n\ttwoAxis: 0,\n\tdirectional: 1\n};\nconst componentDefinition = defineStd({\n\tname: \"DisplacementMap\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tcategory: \"Distortions\",\n\tdescription: \"Distorts child content using another layer's pixels as a displacement map\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tsource: {\n\t\t\tdefault: \"\",\n\t\t\tdescription: \"The layer whose pixels drive the displacement — its red/green (or luminance) push the content around\",\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"layer\",\n\t\t\t\tlabel: \"Source Layer\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tamount: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Overall displacement strength\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Amount\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tchannelMode: {\n\t\t\tdefault: \"twoAxis\",\n\t\t\tdescription: \"How the source drives the push — red→X / green→Y, or luminance along a fixed angle\",\n\t\t\tcompileTime: true,\n\t\t\ttransform: (value) =\u003e CHANNEL_MODES[value] ?? 0,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Red / Green\",\n\t\t\t\t\tvalue: \"twoAxis\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Luminance\",\n\t\t\t\t\tvalue: \"directional\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Channels\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Push direction in degrees (used by the Luminance channel mode)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { channelMode: \"directional\" }\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"mirror\",\n\t\t\tdescription: \"How to handle edges when distortion pushes content out of bounds\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: displaceByLayer({\n\t\tsource: p(\"source\"),\n\t\tamount: p(\"amount\"),\n\t\tchannels: p(\"channelMode\"),\n\t\tangle: p(\"angle\"),\n\t\tedges: p(\"edges\")\n\t})\n});\nvar DisplacementMap_default = componentDefinition;\nexport { componentDefinition as n, DisplacementMap_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { _ as pixelGrid, s as ditherInks, v as quantise } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nvar transformPattern = (value) =\u003e {\n\treturn {\n\t\tbayer2: 0,\n\t\tbayer4: 1,\n\t\tbayer8: 2,\n\t\tclusteredDot: 3,\n\t\tblueNoise: 4,\n\t\twhiteNoise: 5,\n\t\tfloydSteinberg: 6\n\t}[value] ?? 1;\n};\nvar transformColorMode = (value) =\u003e value === \"source\" ? 1 : 0;\nvar grid = pixelGrid({ size: p(\"pixelSize\") });\nconst componentDefinition = defineStd({\n\tname: \"Dither\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tcategory: \"Stylize\",\n\tdescription: \"Dithering effect with multiple pattern options\",\n\tblendWithChildren: false,\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tpattern: {\n\t\t\tdefault: \"bayer4\",\n\t\t\ttransform: transformPattern,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Dithering pattern algorithm\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bayer 2x2\",\n\t\t\t\t\t\tvalue: \"bayer2\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bayer 4x4\",\n\t\t\t\t\t\tvalue: \"bayer4\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bayer 8x8\",\n\t\t\t\t\t\tvalue: \"bayer8\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Clustered Dot\",\n\t\t\t\t\t\tvalue: \"clusteredDot\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Blue Noise\",\n\t\t\t\t\t\tvalue: \"blueNoise\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"White Noise\",\n\t\t\t\t\t\tvalue: \"whiteNoise\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Floyd-Steinberg\",\n\t\t\t\t\t\tvalue: \"floydSteinberg\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Pattern\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tpixelSize: {\n\t\t\tdefault: 4,\n\t\t\tdescription: \"Size of dithering pixels\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Pixel Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthreshold: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Luminance threshold for dithering\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How much of the luminance range participates in dithering (lower = more solid areas)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorMode: {\n\t\t\tdefault: \"custom\",\n\t\t\ttransform: transformColorMode,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"How colors are determined\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Custom Colors\",\n\t\t\t\t\tvalue: \"custom\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Source Colors\",\n\t\t\t\t\tvalue: \"source\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Color Mode\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"transparent\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Dark color for dithering\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Dark Color\",\n\t\t\t\tcondition: { colorMode: \"custom\" },\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Light color for dithering\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Light Color\",\n\t\t\t\tcondition: { colorMode: \"custom\" },\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: ditherInks({\n\t\tgrid,\n\t\tlevels: quantise({\n\t\t\tgrid,\n\t\t\tpattern: p(\"pattern\"),\n\t\t\tthreshold: p(\"threshold\"),\n\t\t\tspread: p(\"spread\")\n\t\t}),\n\t\tmode: p(\"colorMode\"),\n\t\tcolors: [p(\"colorA\"), p(\"colorB\")]\n\t})\n});\nvar Dither_default = componentDefinition;\nexport { componentDefinition as n, Dither_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as dotLattice, k as withAlpha, x as sampleMapsAtCellCentres } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"DotGrid\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Grid of dots with optional twinkling animation\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\tdescription: \"The color of the dot\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tdensity: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"The number of dots on the longest canvas edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 200,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Density\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdotSize: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"The size of each dot, zero (0) being invisible, one (1) filled the grid with no gaps\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Dot Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\toffset: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Horizontal stagger of alternating rows (0.5 = classic polka-dot brick offset)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Row Offset\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Animates the rows drifting horizontally (0 = static)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -3,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tspeedVariance: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Per-row random speed variance for irregular drifting motion\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed Variance\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\ttwinkle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Intensity of the twinkle effect (0 = off, 1 = full twinkle)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Twinkle\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tmapSampleUVs: sampleMapsAtCellCentres({\n\t\tcells: p(\"density\"),\n\t\tprops: [\"dotSize\", \"twinkle\"]\n\t}),\n\tpaint: withAlpha(p(\"color\"), dotLattice({\n\t\tdensity: p(\"density\"),\n\t\tdotSize: p(\"dotSize\"),\n\t\toffset: p(\"offset\"),\n\t\tspeedVariance: p(\"speedVariance\"),\n\t\ttwinkle: p(\"twinkle\")\n\t}))\n});\nvar DotGrid_default = componentDefinition;\nexport { componentDefinition as n, DotGrid_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nimport { B as shadowOffset, H as silhouetteCoverage, s as childTap, v as gatherStack, z as shadowComposite } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"DropShadow\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Adds a soft shadow behind the child content based on its alpha silhouette\",\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Shadow color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tdistance: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"How far the shadow is offset from the content\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Distance\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 135,\n\t\t\tdescription: \"Direction the shadow is cast (compass degrees: 0=up, 90=right, 135=lower-right, 180=down)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tblur: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Shadow softness (blur radius in pixels)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Blur\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Shadow intensity — how strong/visible the shadow is\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcutout: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Hide the original layer and show only the shadow\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Cutout\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(childTap(), [shadowComposite({\n\t\tcoverage: silhouetteCoverage({\n\t\t\tat: shadowOffset({\n\t\t\t\tangle: p(\"angle\"),\n\t\t\t\tdistance: p(\"distance\")\n\t\t\t}),\n\t\t\tblur: p(\"blur\")\n\t\t}),\n\t\tcolor: p(\"color\"),\n\t\tintensity: p(\"intensity\"),\n\t\tcutout: p(\"cutout\")\n\t})])\n});\nvar DropShadow_default = componentDefinition;\nexport { componentDefinition as n, DropShadow_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as duotone } from \"./color-Do6tU0ry.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Duotone\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Map colors to two tones based on luminance\",\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#ff0000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First color (used for darker areas)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#023af4\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second color (used for brighter areas)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tblend: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Blend point between the two colors\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Blend\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: duotone({\n\t\tcolorA: p(\"colorA\"),\n\t\tcolorB: p(\"colorB\"),\n\t\tblend: p(\"blend\"),\n\t\tcolorSpace: p(\"colorSpace\")\n\t})\n});\nvar Duotone_default = componentDefinition;\nexport { componentDefinition as n, Duotone_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { o as ellipse } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Ellipse\",\n\tdescription: \"Ellipse with independently adjustable horizontal and vertical radii\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e ellipse(x, y, u(\"radiusX\"), u(\"radiusY\")),\n\t\tcolorDescription: \"Fill color of the ellipse\",\n\t\tcenterDescription: \"Center position of the ellipse\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radiusX\",\n\t\t\theight: \"radiusY\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradiusX: {\n\t\t\t\tdefault: .35,\n\t\t\t\tdescription: \"Horizontal semi-axis radius\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Width\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tradiusY: {\n\t\t\t\tdefault: .2,\n\t\t\t\tdescription: \"Vertical semi-axis radius\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Height\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Ellipse_default = componentDefinition;\nexport { componentDefinition as n, Ellipse_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as linework } from \"./stylize-DiuoSq16.js\";\nimport { a as transformColor, c as transformPosition, r as transformAngle } from \"./transformations-CzFmhZww.js\";\nvar transformStyle = (value) =\u003e value === \"spiral\" ? 2 : value === \"line\" ? 0 : 1;\nconst componentDefinition = defineStd({\n\tname: \"Engraving\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Copper-plate line engraving — the image is redrawn as flowing line work whose weight swells with darkness, lines displaced by the form like a banknote portrait: a single plate, cross-hatched shadow plates, or one continuous spiral cut\",\n\tblendWithChildren: false,\n\tprops: {\n\t\tstyle: {\n\t\t\tdefault: \"crosshatch\",\n\t\t\ttransform: transformStyle,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"The engraving cut: a single line plate, cross-hatched plates building up the shadows, or one continuous spiral\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Line\",\n\t\t\t\t\t\tvalue: \"line\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Cross-Hatch\",\n\t\t\t\t\t\tvalue: \"crosshatch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Spiral\",\n\t\t\t\t\t\tvalue: \"spiral\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Style\",\n\t\t\t\tgroup: \"Lines\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 90,\n\t\t\tdescription: \"Line density — how many engraved lines span the height of the canvas\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 20,\n\t\t\t\tmax: 300,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Lines\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 8,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Direction of the base line work (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Lines\",\n\t\t\t\tcondition: { style: \"line\" }\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center the spiral coils outward from\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Lines\",\n\t\t\t\tcondition: { style: \"spiral\" }\n\t\t\t}\n\t\t},\n\t\trelief: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How strongly the image brightness displaces the lines — the engraved 'lines climb over the form' effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Relief\",\n\t\t\t\tgroup: \"Lines\"\n\t\t\t}\n\t\t},\n\t\twaviness: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Organic meander of the line work, like a hand-pulled burin stroke\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Waviness\",\n\t\t\t\tgroup: \"Lines\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: 1.15,\n\t\t\tdescription: \"Tonal contrast applied before the lines are cut — higher pushes mid-tones toward pure line or pure paper\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .25,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Tone\"\n\t\t\t}\n\t\t},\n\t\tinkColor: {\n\t\t\tdefault: \"#1a1410\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the engraved ink\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Ink\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpaperColor: {\n\t\t\tdefault: \"#f4eee2\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Paper color shown between the lines\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Paper\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: linework({\n\t\tstyle: p(\"style\"),\n\t\tfrequency: p(\"frequency\"),\n\t\tangle: p(\"angle\"),\n\t\tcenter: p(\"center\"),\n\t\trelief: p(\"relief\"),\n\t\twaviness: p(\"waviness\"),\n\t\tcontrast: p(\"contrast\"),\n\t\tink: p(\"inkColor\"),\n\t\tpaper: p(\"paperColor\")\n\t})\n});\nvar Engraving_default = componentDefinition;\nexport { componentDefinition as n, Engraving_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { E as unitized, c as erosionRidges, m as noiseTone, x as seededPlane } from \"./noise-d7rmP9yc.js\";\nimport { i as noiseToneProps, t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"ErosionNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Branching, hydraulic-erosion ridges carved into noise\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tscale: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Pattern scale (higher = larger patterns)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseToneProps()\n\t},\n\tpaint: rampOver(noiseTone(seededPlane(unitized(erosionRidges()), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar ErosionNoise_default = componentDefinition;\nexport { componentDefinition as n, ErosionNoise_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { r as exposure } from \"./color-Do6tU0ry.js\";\nimport { n as crosses, r as isValue } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"Exposure\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Multiplicative exposure (gain) on the child. Unlike additive brightness, it scales values around black — blacks stay black while highlights can be pushed past 1.0 to feed HDR bloom and tone-mapping roll-off. Pointwise, so no extra render pass is needed.\",\n\tprops: { exposure: {\n\t\tdefault: 1,\n\t\tdescription: \"Brightness multiplier (gain). 1 = unchanged, \u003e1 pushes highlights past white for HDR bloom, \u003c1 darkens.\",\n\t\trecompile: crosses(1),\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 8,\n\t\t\tstep: .1,\n\t\t\tlabel: \"Exposure\",\n\t\t\tgroup: \"Adjustments\"\n\t\t}\n\t} },\n\teffect: exposure(p(\"exposure\")),\n\tidentityWhen: isValue(\"exposure\", 1),\n\tmissingChildMessage: \"You must pass a child component into the Exposure shader.\"\n});\nvar Exposure_default = componentDefinition;\nexport { componentDefinition as n, Exposure_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, k as withAlpha, t as alphaOf, u as fallingStreaks, w as times } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar streaks = fallingStreaks({\n\tangle: p(\"angle\"),\n\tdensity: p(\"density\"),\n\tspeedVariance: p(\"speedVariance\"),\n\ttrailLength: p(\"trailLength\"),\n\tstrokeWidth: p(\"strokeWidth\"),\n\trounding: p(\"rounding\"),\n\tbalance: p(\"balance\")\n});\nvar streakColor = strokeOver({\n\tfill: p(\"colorB\"),\n\tstroke: p(\"colorA\"),\n\tmask: streaks.fade,\n\tspace: p(\"colorSpace\")\n});\nconst componentDefinition = defineStd({\n\tname: \"FallingLines\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Directional falling lines with a leading-to-trailing color fade\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the leading edge of each line\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Lead Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff00\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the trailing edge (transparent by default)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Trail Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for interpolation between lead and trail colors\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 90,\n\t\t\tdescription: \"Direction of movement in degrees (90=down, 270=up, 0=right, 180=left)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Movement speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tspeedVariance: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Per-line speed variance (0=uniform, 1=high variance)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed Variance\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tdensity: {\n\t\t\tdefault: 15,\n\t\t\tdescription: \"Number of line columns across the canvas\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 60,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Density\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\ttrailLength: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Streak length relative to spacing (0=point, 1=continuous)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Trail Length\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Color mix midpoint (0.5=linear, 0=all trailing/colorB, 1=all leading/colorA)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstrokeWidth: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Line thickness as fraction of column width (0=hairline, 1=full width)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .02,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .02,\n\t\t\t\tlabel: \"Stroke Width\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trounding: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Rounds the leading edge (0=flat/square, 1=fully rounded cap)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Rounding\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: withAlpha(streakColor, times(alphaOf(streakColor), streaks.mask))\n});\nvar FallingLines_default = componentDefinition;\nexport { componentDefinition as n, FallingLines_default as t };\n","import { c as p, qr as f32, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { i as filmGrain } from \"./color-Do6tU0ry.js\";\nimport { i as isZero, n as crosses } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"FilmGrain\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Analog film grain texture overlay, weighted toward darker areas\",\n\textraFields: { animTime: {\n\t\tschema: f32,\n\t\tinitial: 0\n\t} },\n\tprops: {\n\t\tstrength: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Intensity of the film grain noise\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .025,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbias: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Concentrates grain in darker areas. Higher values focus grain more heavily on shadows; 0 applies grain uniformly.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Bias\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tanimated: {\n\t\t\tdefault: false,\n\t\t\tdescription: \"When enabled, the grain pattern changes each frame for a dynamic film effect\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Animated\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t},\n\t\t\ttransform: (value) =\u003e value ? 1 : 0\n\t\t}\n\t},\n\teffect: filmGrain({\n\t\tstrength: p(\"strength\"),\n\t\tbias: p(\"bias\"),\n\t\tanimated: p(\"animated\")\n\t}),\n\tidentityWhen: isZero(\"strength\")\n});\nvar FilmGrain_default = componentDefinition;\nexport { componentDefinition as n, FilmGrain_default as t };\n","import { Ot as unpremultiplyAlpha, at as ZERO, c as p, ct as call, qr as f32, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { u as lutAtlasGrade } from \"./color-Do6tU0ry.js\";\nimport { n as crosses } from \"./slots-BqIef2iV.js\";\nimport { R as screenedBloom, _ as frameSway } from \"./blurs-d4B9aUyx.js\";\nconst STOCK_OPTIONS = [\n\t{\n\t\tlabel: \"Portrait 400\",\n\t\tvalue: \"portrait400\"\n\t},\n\t{\n\t\tlabel: \"Vivid 100\",\n\t\tvalue: \"vivid100\"\n\t},\n\t{\n\t\tlabel: \"Chrome 64\",\n\t\tvalue: \"chrome64\"\n\t},\n\t{\n\t\tlabel: \"Slide 100\",\n\t\tvalue: \"slide100\"\n\t},\n\t{\n\t\tlabel: \"Velvet 50\",\n\t\tvalue: \"velvet50\"\n\t},\n\t{\n\t\tlabel: \"Everyday 400\",\n\t\tvalue: \"everyday400\"\n\t},\n\t{\n\t\tlabel: \"Pastel 400\",\n\t\tvalue: \"pastel400\"\n\t},\n\t{\n\t\tlabel: \"Warm 200\",\n\t\tvalue: \"warm200\"\n\t},\n\t{\n\t\tlabel: \"Instant\",\n\t\tvalue: \"instant\"\n\t},\n\t{\n\t\tlabel: \"Mono 400\",\n\t\tvalue: \"mono400\"\n\t}\n];\nconst STOCK_LUTS = {\n\tportrait400: \"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jZnZpJ7bt6Peyani2rDl6rfp8rXo+rPn/7Pk/7PkAJ3KAJ7LAJ3LAJzKK5zKTZ3NaaDQgqLTmKXYr6vbw7Lf1bjj57/n8L/n9r3m/r3k/73kAK3OAK3OAK3OHqzONqzOSqvNXarMb6nMi63QpbLWu7jbz7/g4sfl7cnn8sbk/cbk/8fkCLzSHL3TKr3TObzTSrzSWrzSarvSerrRirrQmLnPsL3Ux8Xb3M3i6tHm8dDk+8/k/9DkOM3XP83YRczXUMzXXMzXaszXeMzXhsvWlMvWosrWsMrVvcrV09Ld5tnj79jj+Nji/9fhVN3cWN3dXd3dZN3cbt3ced3dhdzcktzcn93drN3dut3dx97e1N7e4N/f69/f99/f/97eaO7ia+7ib+7ide7ifu7ih+7iku7jnu7jqu7jt+7kwu7kzOzj1unh2+Pc5eXc9Ofb/+XYf/rkgvrlhfrlifrkj/nllvrlnvnkp/nksfjkuvbjxPXizfPi1vDg2Ovc4Ovb7u/c/vLciP/jif/ji//jkP/jlf/jnP/jpP/krP/jtf7kvv3kx/3k0Pvk1fri3Pni4/ji7vri+v3iajrrbDnqcjnqfDrrhzvslD3toj/usEPvvkjwzU/x21fy6mH092v1/3L1/3P1/3P0/3bxaD7pbEDqckDqe0Drh0Hsk0PsoUTsr0juvU3vzFTx2lzy6GXz9nD0/3b1/3f1/3b0/3nwZ0jpa0npckrqeknqhkvrkkzsoE/sr1LuvVfvy17w2WXx523z9Xf0/371/330/330/3/wZVToaVXpcFbpeFbphFfqkVnrnlzsrV/tu2PuyWrw13Dx5nnz9IH0/4j1/4f0/4b0/4fwYWLnZWPobGPodWTogWbpjmfqnGrrqm3suXLtx3fv1X3w5IXy8Y3z/ZP0/5Hz/5D0/5DvWW/mX3HnZnHncHLnfHPoiXXomHjqp3vqtoDsxITu04vv4ZHx75jy+570/5zz/5vz/5ruTnzkVH3lXH7lZ3/ldIHmg4Pnk4Xoo4jpso3qwZHs0Jfu353w7aPx+anz/6fz/6Ty/6TuSY3hUI3iVo3iXIvjaozke47ljJDmnZTnrpjpvZzqzaHs3Kfu6q3x+LPz/rHy/6/y/67tM5jeO5jeRZjfUpjfYpngcprigpnjlZ3lqKHmuaXpyavr2bDt57bv9rzy/bry/7jx/7ftAKHYA6LZH6LaNqLaTKLbYqPed6Tfi6binqjksq3mxLPp1bjr5L7u88Tx+8Tx/8Lw/8HtAK3ZAK7ZAK3ZH6zYNazYR6vYYavZe63ck7DfqLPjvbnm0L/p4Mbt78zw+M3x/srv/8rtB7vcGrzcJ7vcNbvcRLvbVLrbY7nbcrjagbfZmrrdsr/hyMXm28zq7NPv9tXw+tPt/9PtMsrfOMrgP8rfSsnfVcngYsnfcMjffcjei8femMbdpcXcu8jf09Hm59nr897v+dzu/9ztTNjjUNnjVdnjXdnkZtjjcdjkfdjjidfjltfjotfir9fivNbhyNXg3t3o8eXu+OTt/+PtYujoZenoaejob+jod+jogOjniujolujooujorefnuujoxujo0+np3+np6+rr9enq/+npdfjsd/fsevfsgPjth/jsjvftmPfso/jtrvjtufjuxfju0Pfu2fbt4fPr5u/n8PHo/vLmiP/tiv/tjf/ukf/ulv/tnf/upP/urP/utP/uvf/tx//u0P7t2f3t4vzs5vrq7/vq/P3re1D1flD2glD1iVH1klL2nFT2p1b3s1n3wF34zGL52Gj55W768nf7/4D8/4T8/4T8/4T8elT1fVX1glX2iVb1kVf2m1j1pln2slz3v2H4y2X52Gv55XL68Xr7/oL8/4f8/4b7/4f8eVv0fVz0gl31iF31kV/2m2D2pmL2smT2vmn4ymz413L543j68ID7/Yj8/4z8/4z8/4z7eWb0fGf0gGj1h2j1kGn1mWr1pWz2sG/2vXL3ynf41nz544L574j6/JD7/5T8/5P8/5P8d3LzeXLzfnP0hHP0jXX0l3X0onj1r3r2u332x4H31If44Yz57pL5+5n7/538/pv7/5r7cX3ydX7yeX7ygX/ziYDzlILzn4P0rIb0uYn1xY320pH34Jf47Jz5+KL6/6X6/6P6/6P6a4jxcInxdIrxe4rxhYzykI3ynI/zqZH0tpT0w5j10Zz23aH36qX496v5/6/6/636/6z6Y5PvZpPva5TvdJXwfpXwi5fxmJnypZvys57zwKL0zqX126r36K739bT5/7j6/7b6/7T6XaDtYqHtZ6Dtb6HueKDugaDvkKHwn6TxrqbyvKrzy6702bL25rb28rz4/sD5/775/735SqnqUKrqVqrqYKrrbKrseqrtiKvtlavvpq7wt7HxxrXy1br047728MP3/Mn5/8f5/8b5JrLmMLLmOrLnR7LnV7LoaLLperPqjLTsnrbtrrfvwLzx0cHz4Mb17sv3+tH4/9D4/8/4M77oOr/pP77oR77oUr3oXb3oabznervokLzqpL7st8Hvysbx3Mz069L299j4/9n5/9f3QsvrRsvrSsvqUsvrW8rrZcrqcMnpfMjpiMfplMXoqcfqwMzu1NLx5tj09d/3/eH4/+D3UtjuVNjtWNjtXtjtZ9jtcNftetfthdbtkdbsndXsqNTrtNPqyNXs393x8eX2++j4/+f2YeXwY+bwZuXwbOXwdObxfOXwheXwkOXwm+XwpuTwsuTvvePvyOLu1OHt6unz+e/3/+72cfTzc/T0dfTzevTzgfTziPPzkfT0m/PzpvTzsPPzvPPzyPPz0/Pz3/T06vT09fT1/vT0ff/1f//2gv/2hv/1jP/2k//1nP/1pf/2r//2u//2xv/20f/23P/35P/37P318vz0/f70jm//kG//k2//l2//nXD/pXH/rnP/t3X/wnf/zHr/2H3/44H/7oX/+ov//5H//5T//5T/jXH/j3H/k3L/l3L/nXP/pXT/rXX/uHf/wnn/zHz/13//4oP/7oj/+Y3//pL+/5b//5b/jXf/j3j/knj/l3n/nXn/pHn/rXv/t3z/wX7/y4H/14X/4oj/7o3/+JH//5f//5n//5r/jX//j3/+koD+l4D/nYH/pIH/rYP/toT/wYb/y4n/1ov/4pD/7ZP/95f//53//5///5//jYj+jon+kYn+lon+nIr+o4v/rIz/tY3/wI//ypH/1ZT/4Jf/7Jv/95///6T//6b//6X/ipD9jJH9kJL+lJL+m5L+opP+q5T+tJb+vpf+yZr/1Jz/35//66P/9qb//6v//63//6z/h5r8i5v9jZv9kpv9mJz9oJ39qZ79sp/+vaH+yKP+06X+3qj/6av/9K///7P//7X//7T/hKP8h6T8iqT8j6T8laT8naX9pqb9sKj9u6n9xqv+0a7/3LD+6LP/87b//br//73//7z/hK77hq77iK77iq37j6z7mK38oq78rK/8t7D9w7P9z7X+2rf+5rr/8b7//ML//8X//8T/e7X6frX5gbb6hrb6jLX6lLb7m7X7prX7s7f8v7n9zLz92L7+5MH+78X/+sr//8z//8v/cL34c774d774fL75g775jL75lr76ob76rL77ucD8x8L81cX94sn+7cz++NH+/9X//9T/acf4asf3bcj3ccf4d8f4gMb4jMb5mMb6pcb6tMj7wcn80Mz83s/96tP999j//93//9z/bNL5bdL5cNL5c9H5eNH5f9H5htD4j9D5ms/5qc/5udD7yNH82db859n99N/+/uP+/+P/cNz6ct37dN37eNz7fdz6g9z6itz6k9v6ndv7ptr6r9n5vtn60dz84t/88eX+++n+/+v/dOj8def8eej9fOj8gef8h+j8j+f8l+j8oOf8quf8tOf8veb8x+T72OX87Or9+vD+//L/efT+evP9ffT+gPP9hvT+jPP9lPT+nPP+pfP+r/P9ufP9w/P9zfL92PL94vH99PP9//j+ff7+f//+gf7+hf/+iv/+kf/+mf7+ov//q//+tf//vv7+yf7+1P7+3/7+6f/+9P//////\",\n\tvivid100: \"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\",\n\tchrome64: \"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tZDKwpDKz5DJ3I7I3Y7IOJfSO5fSQZfSSZjSVJnSYJrSbJvSeZzShp3Skp7Rn57Rq5/RuKDRxaDR0qDQ4J/P4Z/PRaXYSKbYTabYVKbYXafYaKjYc6nYf6rYi6vYl6zYo63Yr63XvK7Xya/X1q/X467W5a7WUrTeVLTeWLTeX7TeZ7XecLbeerfehbjekLnenLnep7res7vewLzezL3d2b3d573d6L3dXsHkYMHkZMLkacLkcMPkeMPkgcTki8XklsbkocfkrMjkt8nkw8rk0Mrk3cvk68vj7Mvjas/qbM/qb8/qc9DqedDqgNHqidLqktPqnNPrptTrsNXrvNbrx9fr09jr4Nnr79rq8Nrqdd3xd93xed7xfd7xgt7xid/xkODxmeDxouHxq+LytePywOTyzOXy1+by5Ofy9Ojy9ujygPD6gvD6hPD6h/D6i/H6kfH6mPL6oPP6qPT7sfX7uvb7xff80Pn82/r96Pz9/P7+//7+AACMAACMAACMAACMAQCMGQCLLgCLQACLUQCLYgCLcQCLgACLjgCLnACLqgCKuQCKuwCKAACUAACUAACUAACUBQCUIACTNACTRgCTVgCTZgCSdACSggCRjwCRmwCQqACPtwCOuACOAACZAACZAACZAACZDQCZJwCZOQCYSgGYWgGYaQGXdwGXhACWkQCVngCVqwCTtwCSuACRAASgAAWgAAWgAgagFwifLgqfQAufTwueXwuebQqdewmciAiblAaboAWarQOYugGXuwGWABqnABqnAhunDR2nIh+nNyCnRyGmViGmZiGldCCkgR+kjRyjmRmipRWgsQ+evQmcvgmcBDqxBjqxDTuxGz2xLD+wPkCwT0CwXkCvbT+vez2uiDutlDesoDOqrC6puCinwyCkxB+kB1G5ClG5D1K4HlS4M1W4RFa4VFe4ZFi4c1m3gVm3j1i2nFe2qFW1tFGzwEqxyz6uzD2tAmW/Cma/G2a/LGe/O2i/S2m/Wmq/aWu/eGy/hm2+k22+oG2+rWy9umu8x2m71GS51WO5G3jGH3jGKHjGNXnGQ3rGUXvGYHzGbn3GfH7Gin/Fl3/FpIDFsYDEvn/Ey37D2HvC2nvCKYjLLYjLNYnLP4nLS4rLWIvLZozLdI3LgY7Ljo/Lm5DLqJDLtZDKwpDKz5DJ3I7I3Y7IOJfSO5fSQZfSSZjSVJnSYJrSbJvSeZzShp3Skp7Rn57Rq5/RuKDRxaDR0qDQ4J/P4Z/PRaXYSKbYTabYVKbYXafYaKjYc6nYf6rYi6vYl6zYo63Yr63XvK7Xya/X1q/X467W5a7WUrTeVLTeWLTeX7TeZ7XecLbeerfehbjekLnenLnep7res7vewLzezL3d2b3d573d6L3dXsHkYMHkZMLkacLkcMPkeMPkgcTki8XklsbkocfkrMjkt8nkw8rk0Mrk3cvk68vj7Mvjas/qbM/qb8/qc9DqedDqgNHqidLqktPqnNPrptTrsNXrvNbrx9fr09jr4Nnr79rq8Nrqdd3xd93xed7xfd7xgt7xid/xkODxmeDxouHxq+LytePywOTyzOXy1+by5Ofy9Ojy9ujygPD6gvD6hPD6h/D6i/H6kfH6mPL6oPP6qPT7sfX7uvb7xff80Pn82/r96Pz9/P7+//7+\",\n\tslide100: \"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\",\n\tvelvet50: \"AAAAAwAACwAAFgAAKAAAPQAAUQAAYwAAdAAAhQAAmAAAqgAAugAAyQAA2gAA6wAA/AAAAAQAAwMACwIAFgEAKAEAPQAAUQAAYwAAdAAAhQAAmAAAqQAAugAAyQAA2QAA6gAA/AAAAg0BBQwBCgoAFwkBKQYBPgMBUgIBYwEAdAABhgABmAAAqgAAugAAyQAA2QAA6gAA/AAABRsCCBoCDRkCFxgCKxQCQBECUw4CZAsCdQgChwUCmQIBqgEBuwABygAB2gAA6wAA/AAACDIEDDEEEjAEHC4ELCsEQCgEUyUEZSIEdh8EhxwDmhgDqxQDuxACygwC2wgB7AQB/QIABkgGCkcGEUYGGkUGKUIGP0AGUj0GZDoGdTcGiDQFmjEFqy0FuyoEyycD2yMD7B4C/hkBAVwJAlsJBloJDVgJJFYJPVQJUVIJY08JdU0JiEoImkcIq0QHvEEGyz0G3DoE7TYD/jICAG0NAG0NAGwNCmoNJGkNO2cNT2UNYmINdWAMiF0LmloLq1gKu1UJy1II3E8G7UsF/kcEAIAQAIAQAH8QB34QGXwQNnoQTHkQYHcQc3QPh3IPmm8OqmwNu2oMy2cL3GQJ7WAH/10FAJQTAJMTAJITAJETF5ATLo8TR40TXIsTcokShocSmIQRqYIQun8Pyn0O23oM7XYJ/nMHAKYWAKUWAKUWAKQXAqMXJqEXQqAXWp4WcJwWhJoWl5cVqJUUuZMTyZAR244P7YsM/ocJALcYALYYALYZALUZALQZGLMZPrEZWbAZb64Zg6wYlaoYp6cXuKUWyaMU26AS7Z4P/5sMAMgXAMgXAMcXAMcXAsYYEsQYOsMYV8EZbcAZgb4ZlLwZpboYt7gXyLUW2rMU7bAR/q0NANkbANkbANgbANgbANcbBtYbNNUbU9MbatEaftAZkc4Xo8wVtcoVx8gU2cYT7MMR/sANAOshAOshAOshAOohAOohAOkhK+chTeYgZOUfeuMejeEdoOAbs94YxdwT2NkM69cL/dQJAP4lAP4lAP0lAP0lAPwlAPslHvolQ/kkXfgkdPYjifUinfMgsfEdxO8Z1+0R6usA/OgAAP8oAP8oAP8oAP8oB/8nE/8nOP8nUf8mZv8mef8kjP8jn/8hsv8ew/8a1v8T6f0D+vsAAAABAwABCgABFgACKAACPQACUQACYwABdAAChgABmQABqgABugABygAA2gAA6wAA/QAAAAMDAwMDCgIDFgEDKAADPQADUQADYwADdAADhgADmAADqgACugACyQAB2gAB6wAA/AAAAgwEBQsECgoEFwkEKQYEPgMEUgIEZAEEdAAEhgAEmQADqgADugADygAC2gAC6wAB/QAABRsGCBoGDRkGFxcGKxQGQBEGUw4GZQoGdQcGhwQFmgIFqwEFuwAEygAD2wAD7AAC/QABCDIIDDEJEjAJHC4JLCsJQCgJUyUIZSIIdh8IiBsHmhgHqxQGuxAGywwF2wgE7AQD/gICBkgLCkcLEUYLGkULKUILP0ALUj0LZDoLdjcLiDQKmjEKrC0JvCoIyycH3CMG7R4E/hkDAVwOAlsOBloODVgOJFYPPVQPUVIOY08OdU0OiEoNm0cNrEQMvEELyz0J3DoI7TYG/jIEAG4SAG0SAGwSCmsSJGkSO2cSUGUSYmMSdWARiF0RmloQq1gPvFUOy1IM3E8K7UsI/kcGAIAVAIAVAH8VB34VGXwWNnsVTHkVYHcVdHQUh3IUmm8Tq2wSu2oRy2cP3GQN7WEL/10IAJQZAJMZAJMZAJIZF5AZLo8ZR40ZXIsZcokYhocYmIQXqYIWun8Uyn0T23oR7XcO/nMKAKYbAKUbAKUbAKQcAqMcJqIcQqAcWp4ccJwchZobl5gaqJUZuZMYyZEW244U7YsR/ogNALccALYcALYdALUdALQdGbMdPrIdWbAdb64dg6wdlaodp6gcuKUbyaMZ26AX7Z4U/5sPAMgfAMgfAMcgAMcgAsYgEsUgOsMfV8EfbcAfgb4elLwdpboct7gcyLUb2rMZ7bAW/q4RANklANklANglANglANclBtYlNNUlU9MlatIkftAkkc4jo8whtcofx8gb2sYX7MMV/sASAOspAOspAOspAOopAOopAOkpK+goTeYoZOUoeuMnjeImoOAks94ixtwf2NkZ69cP/dQMAP4rAP4rAP0rAP0rAPwrAPsrHvorQ/krXfgqdPYqifUpnfMosfEmxO8i1+0d6usT/OgAAP8vAP8vAP8vAP8vB/8uFP8uOP8tUf8tZv8sef8rjP8qn/8osv8mxP8i1v8d6f0U+/sAAAAFAwAFCgAFFQAFKAAFPQAFUQAFYwAFdAAFhgAFmQAEqgAEuwADygAD2wAC7AAB/QABAAMIAwMICgIIFgEIKAAIPQAIUQAIYwAIdAAIhgAHmQAHqgAGugAFygAF2gAE6wAD/QACAgwKBQsKCgoKFggKKQYKPgMKUgIKZAEKdQAKhgAJmQAJqgAIuwAHygAG2gAF7AAE/QACBRsNCBoNDRkNFxcNKxQNQBANUw4NZQoMdgcMhwQMmgILqwEKuwAJygAI2wAH7AAF/QADCDEQDDEQEjAQHC4QLCsQQCgQVCUQZSIQdh8PiBsOmxcOrBQNvBALywwK3AcJ7QQH/gEFBkgTCUcTEUYTGkUTKUITP0ATUz0TZToTdjcSiDQSmzERrC0QvCoPyyYN3CIL7R4J/hkHAVwWAlsWBloWDVgXJFYXPVQXUVIXY08WdU0WiEoVm0cUrEQTvEESzD0Q3DoO7jYM/jIJAG4aAG0aAGwaCmsaI2kaO2caUGUaYmMadWAZiF0Zm1oYrFgXvFUVy1IT3E8R7ksO/0cLAIAeAIAeAH8eBn4eGXweNnseTHkeYHcedHQeiHIdmm8cq20bu2oZy2cX3GQV7mES/10OAJQhAJMhAJMhAJIhF5AiLo8iR40iXYwicokhhochmIQgqYIfun8eyn0c3HoZ7ncV/nMRAKYjAKUjAKUjAKQkAqMkJqIkQqAkWp4kcZwkhZokl5gjqJUiuZMhypEg244d7Ysa/4gVALcoALcpALYpALUpALQpGbMpPrIpWbApb64og6wolqonp6gluKUkyaMi26Eg7Z4d/5sZAMgtAMgtAMctAMctAsYtEcUtOsMtV8ItbcAsgb4slLwrpboqt7goyLYl27Mi7bAe/64aANkxANkxANkxANgxANcxBtYxNNUxU9MxatIwftAwkc4vo80utcosx8gp2sYm7MMg/sEZAOw0AOs0AOs0AOs0AOo0AOk0K+g0TOY0ZOU0euMzjeIyoeAxs94wxtwt2dop69ck/dUYAP42AP42AP42AP02APw2APs2Hvs2Q/k2Xfg2dPc1ifU1nfMzsfEyxO8w1+0s6usm/OkZAP86AP86AP85AP85CP85FP85OP84Uf84Zv83ev82jf81n/8zsv8xxP8u1v8p6f4j+/sVAAAMAwAMCgAMFQAMJwAMPQAMUQAMZAAMdQAMhwALmQAKqwAKuwAJywAH2wAG7AAF/gADAAMRAwMRCgIRFgERJwARPQARUQAQYwAQdAAQhgAPmQAOqwANuwAMygAL2wAJ7AAH/gAFAgwUBQsUCgoUFggUKQYUPgMUUgIUZAATdQAThwASmQARqwAQuwAPygAN2wAL7AAJ/gAHBRoXCBoWDRkWFxcXKxQXQBAXUw0XZQoWdgcWiAQVmgIUqwETvAASywAQ2wAO7QAM/gAJCDEbDDEbEjAbHC4bLCsbQCgbVCUbZSIadh8aiBsZmxcYrBMXvBAVzAwT3AcR7QQP/wEMBkgfCUcfEUYfGkUfKUIfPz8fUz0fZTofdjcfiTQemzEdrC0bvCoazCYY3SIV7h4S/xkOAVwjAlskBlokDVgkJFYkPVQkUVIkZE8kdk0jiEojm0cirEQgvEEezD0c3ToZ7jYW/jESAG4oAG0oAGwoCmsoI2koO2coUGUoYmModWAoiF0nm1smrFglvFUkzFIh3U8e7ksb/0cWAIErAIArAH8rBn4rGH0rNnssTHksYHcsdHUriHIrmm8qq20pvGooy2cm3WQj7mEg/10aAJQvAJQvAJMvAJIvFpEvLo8vR44vXYwvcokvhocumYUuqoItuoAry30p3Hon7nck/3MfAKYzAKYzAKUzAKQzAqMzJqI0QqAzWp4zcZwzhZozl5gyqZYxuZMvypEt3I4r7osn/4gjALc3ALc3ALY4ALY4ALU4GbM4PrI4WbA4b643hKw3lqo2p6g1uaY0yaMy26Ev7p4r/5slAMg7AMg7AMg7AMc7AsY7EcU8OsQ8V8I7bcA7gr47lLw6pro5t7g4ybY227M07bAv/64oANk/ANk/ANk/ANg/ANc/BNY/NNU/U9Q/atI/ftA+kc8+o809tss8x8g62sY37cMz/sEsAOxCAOxCAOtCAOtCAOpCAOlCK+hCTOdCZOVCeuRBjuJBoeBAs94/xtw92do77Nc3/tUvAP5EAP5EAP5EAP1EAP1EAPxEHvtEQvpEXfhEdPdDifVDnfRCsfJBxPA/1+096us4/OkwAP9HAP9HAP9GAP9GCP9GFP9GOP9GUf9FZv9Fev9Ejf9DoP9Csv9BxP8+1v876f41+/wqAAAXAwAXCgAXFQAXJwAYPQAYUQAXZAAXdQAXhwAVmgAUqwATvAASywAQ3AAO7QAM/wAJAAMdAwMdCgIdFQEdJwAdPQAdUQAdYwAddQAchwAbmQAaqwAYuwAXywAV2wAT7QAQ/gANAgwhBQshCgohFgghKQUhPgMhUgIhZAAhdQAghwAfmgAeqwAduwAbywAZ2wAW7QAT/gAPBRomCBkmDRgmFxcmKxMmQBAmUw0mZQkmdgYliAQkmwIjrAEivAAgywAd3AAb7QAX/wATCTEqDDAqEi8rHC0rKysrQCcrVCQrZiErdx4qiRsqmxcorBMnvQ8lzAsj3Qcg7gMc/wEXBkgvCUcvEEYvGkUvKEIvPz8vUz0vZTovdjcviTQunDAtrS0svSorzCYo3SIl7h0h/xgcAVwzAlszBlozDVgzJFYzPVQ0UVI0ZE80dk0ziUoznEcyrUMxvUAwzD0u3Tor7zYn/zEiAG43AG03AGw3CWs3I2k4O2c4UGU4YmM4dWA4iV03m1s2rFg1vVU0zFIy3U8w70ss/0coAIE7AIA7AIA7BX47GH08Nns8THk8YHc8dHU8iHI7mm86q206vGo4zGc23WQ072Ex/10sAJQ/AJQ/AJM/AJI/FpE/Lo8/R44/XYw/coo/h4c/mYU+qoI9u4A8y3073Xo47nc1/3MwAKZCAKZDAKVDAKVDAqNDJqJDQqFDW59DcZxDhZpCl5hCqZZBupRAypE/3I487os5/4g1ALdGALdGALdGALZGALVGGLRGPrJHWbBGcK5GhKxGlqpGp6hFuaZEyqND3KFB7p49/5s5AMlKAMhKAMhKAMdKAcZKEcVKOsRKV8JKbcBKgr5KlL1JprpJuLhIybZH27NF7rFC/649ANpNANpNANlNANlNANhNA9dNM9VNU9RNatJNftFNkc9No81MtstLyMlK2sZI7cRF/8FBAOxQAOxQAOxQAOtQAOpQAOlQK+hQTOdQZOVQeuRQjuJQoeBPtN5OxtxN2dpL7NhI/tVEAP9RAP5RAP5SAP5SAP1SAPxSHvtSQvpSXflSdPdSifZRnvRRsfJQxPBP2O5N6+tJ/elEAP9UAP9UAP9UAP9UCP9UFP9UOf9UUv9TZ/9Tev9Tjf9SoP9Rs/9QxP9O1/9L6v5H+/xAAAAmAwAmCgAmFQAmJwAmPQAmUQAmZAAmdQAlhwAkmgAjrAAhvAAgywAd3AAa7QAX/wATAAQtAwMtCgItFQEtJwAuPQAuUQAtZAAtdQAthwAsmgArqwApvAAoywAl3AAi7QAe/wAZAgwxBAsyCgoyFggyKQYyPgMyUgEyZAAydQAyhwAxmgAwrAAuvAAtywAr3AAo7QAk/wAeBRo2Bxk2DRg2FxY2KxM3QA83VAw3ZQk2dgY2iAM2mwI1rAAzvAAyzAAw3AAt7gAp/wAkCTA6DDA6ES86Gy07Kyo7QCc7VCQ7ZiE7dx47iRo6nBY6rRI4vQ43zAo13QYz7gMv/wEqBkg+CUc+EUY/GkQ/KEI/Pz8/Uzw/ZTo/dzc/iTM/nDA+rS09vSk8zSY63SI47x01/xgwAVxCAltCBlpDDVlDI1ZDPVRDUVJDZE9Ddk1DiUlDnEZCrUNBvUBAzT0/3jk97zU6/zE1AG5GAG1GAGxGCWtHI2lHOmdHUGVHY2NHdmBHiV1HnFtGrVhFvVVEzVJD3k9B70s+/0c6AIFKAIFKAIBKBX9KF31KNntKTHlLYHdLdHVLiHJKm29KrG1JvGpIzGdH3mRF72FD/10/AJRNAJRNAJNNAJJOFZFOLZBOR45OXYxOcopOh4dOmYVNqoJNu4BMy31L3XpJ73dH/3NDAKZQAKZQAKZQAKVRAqRRJqJRQqFRW59RcZ1RhZpRmJhRqZZQupRQy5FP3Y5N74tL/4hHALhUALdUALdUALZUALVUGLRUPrJUWbBUcK5UhKxUlqpUqKhUuaZTyqNS3KFR7p5P/5tMAMlXAMlXAMhXAMhXAMdXEMZYOsRYV8JYbcFYgr9YlL1YprtXuLhXybZW3LNV7rFT/65PANpaANpaANpaANlaANhbAtdbM9ZbU9RbatNbftFbkc9bpM1atstayMlZ28ZY7cRW/8FSAO1dAOxdAOxdAOxdAOtdAOpdKuleTOdeZOZeeuRejuNdoeFdtN9cxt1c2dpa7NhY/tVUAP9fAP9fAP5fAP5fAP1fAPxgHvtgQfpgXflgdPhfifZfnvRfsfJexfBd2O5c6+xZ/elVAP9iAP9iAP9iAP9iCP9iFP9iOf9hUv9hZ/9hev9hjf9goP9fs/9exf9d1/9b6v5Y/PxSAAA2AwA2CgA3FQA3JwA3PQA3UQA3ZAA3dQA3iAA2mgA1rAAzvAAyzAAw3QAt7gAp/wAkAAM9AwM9CgI9FQE9JwE+PQA+UQA+ZAA+dQA9hwA9mgA8rAA7vAA6zAA43AA17gAy/wAtAgtBBAtBCglBFghCKAVCPgNCUgFCZABCdgBCiABBmgBArAA/vAA+zAA93AA67gA3/wAzBRlFBxlFDBhGFhZGKhNGQA9GUwxGZQlGdwVGiQNFmwFFrABEvQBDzABB3QA/7gA8/wA4CTBJCy9JES9KGy1KKypKQCdKVCNKZiBKdx1KiRlKnBVJrRJIvQ5HzQpG3gZE7wNB/wA+BkdNCkdNEUZNGURNKEJOPz9OUzxOZTlOdzZOijNOnC9NrSxNvilMzSVK3iFJ7xxG/xdDAVxQAltQBVpRDVhRI1ZRPVRRUVFRZE9RdkxRiUlRnEZRrUNQvkBQzT1P3jlN8DVL/zFIAG5UAG1UAGxUCGtUImlVOmdVUGVVY2NVdmBViV1VnFpVrVhUvVVTzVJT3k9R8EtP/0dMAIFXAIFXAIBYBH9YFX1YNXtYTHlYYHdYdHVYiXJYm3BYrG1YvWpXzWdW3mRV8GFT/11RAJVbAJRbAJRbAJNbFJFbLZBbR45cXYxcc4pch4dcmYVcq4Jbu4BbzH1a3XpZ73dX/3NVAKdeAKZeAKZeAKVeAqRfJaJfQqFfWp9fcZ1fhZpfmJhfqZZfupRey5Fe3Y5d74tb/4hZALhiALdiALdiALZiALViF7RiPbJiWbFjcK9jhK1jlqpjqKhiuaZiyqNh3aFg755f/5tcAMllAMllAMllAMhmAMdmD8ZmOcRmVsNmbcFmgr9mlL1mprtmuLllyrZl3LRk77Fi/65fANppANppANppANlpANhpAtdpMtZpUtRpadNpftFpkc9ppM5ptstpyMlo28dn7sRl/8FiAO1sAO1sAOxsAOxsAOtsAOpsKelsS+hsZOZseeVsjuNsoeFstN9rx91r2ttp7dho/9VkAP9uAP9uAP9uAP5uAP5uAP1uHfxuQPtuXPlvdPhuifZunvVusvNtxfFt2O5r6+xp/uplAP9xAP9xAP9xAP9xB/9xFP9xOf9wUv9wZ/9wev9wjv9vof9vs/9uxf9t2P9r6v9o/P1jAABFAwBGCgBGFQBGJgBGPQBGUQBGZABGdQBGiABGmwBFrABEvQBDzABB3QA/7wA8/wA4AQNMAwJMCgJMFQFMJgBMPABNUQBNZABNdQBNhwBMmgBMrABLvABKzABI3QBG7gBE/wBAAgtPBApQCglQFQdQKAVQPgNQUgFRZABRdgBQiABQmwBQrABPvQBOzABN3QBL7gBI/wBFBBlTBxhTDBdTFhVTKhJUQA9UUwtUZQhUdwVUiQNUnAFTrQBTvQBSzQBR3QBP7wBN/wBKCS9XCy9XEC5XGixXKilXQCZYVCNYZiBYdxxYihhYnBVXrRFXvg1WzQlV3gVU7wJS/wBPBkdaCkZaEEVaGURbKEFbPz5bUztbZTlbdzZbijJbnS9britbvihaziRZ3iBY8BtW/xZUAVxeAlteBVpeDVheIlZePFNfUVFfZE9fdkxfiklfnEZfrUNfvj9ezjxd3zhc8DRb/zBZAG5hAG1hAGxhBmtiIWliOmdiT2ViY2NjdmBjiV1jnFpjrVhivlVizVJh305g8Etf/0ddAIFlAIFlAIBlBH9lFH1lNXtmTHlmYHdmdXVmiXJmm29mrG1mvWpmzWdl3mRk8GBj/11hAJVoAJRoAJRpAJNpE5FpLJBpRo5pXYxqc4pqh4dqmoVqq4JqvIBpzH1p3npo8Hdn/3NlAKdsAKdsAKZsAKVsAaRtJKNtQaFtWp9tcZ1thppumJhtqZZtu5Rty5Fs3Y5s8Itq/4hoALhwALhwALdwALZwALVwFbRxPbNxWLFxcK9xhK1xlqtxqKhxuqZxy6Rw3aFv755u/5tsAMl0AMl0AMl0AMh0AMd0DsZ0OMR1VsN1bcF1gr91lL11prt1uLl0yrZ03LRz77Fx/65vANt3ANt3ANp4ANp4ANl4Adh4MdZ4UtV4adN4ftF4kdB4pM54t8x4ycl328d27sR1/8JyAO17AO17AO17AOx7AOt7AOp7J+l7Suh7Y+d7eeV7juN7oeF7tN97x9162tt57dh4/9Z1AP99AP99AP99AP99AP59AP19G/x9P/t+XPp+dPh+ifd+nvV9svN9xfF82e977Ox5/up2AP+AAP+AAP+AAP+AB/+AFP+AOP+AUv+AZ/9/e/9/jv9/of9+tP9+xv992P976/95/P11AABTAwBTCgBUFABUJgBUPABVUQBVZABVdgBViABUmwBUrQBTvQBSzQBR3gBQ7wBN/wBKAANZAwJZCQJZFAFZJgBaPABaUQBaYwBadQBaiABamwBZrABZvQBYzABX3QBW7wBU/wBSAgpcBApcCQlcFQddJwVdPQJdUgFeZABedgBeiABdmwBdrABdvQBczABb3QBa7wBZ/wBWBBhgBxdgCxZgFRVgKRFhPw5hUwphZQdhdwRhiQJhnAFhrQBhvQBgzQBf3gBe7wBd/wBbCC5jCy5kEC1kGitkKihkQCVlVCJlZh5ldxtlihdlnBRlrg9lvgxkzgdk3gRj8AFh/wBfB0ZnCkZnEEVnGENoJ0BoPj5oUztpZThpdzVpijJpnS5pritpvidoziNo3x9n8Bpm/xVkAVtrAltrBVprDFhrIFZsPFNsUVFsZE5td0ttikhtnUVtrkJtvj9szjts3zhr8TRq/y9oAG5vAG1vAGxvA2tvIGlwOWdwT2VwYmJwdmBxiV1xnFpxrVdxvlRwzlFw305v8Upu/0ZsAIFzAIFzAIBzA39zE31zNHt0THl0YHd0dXR0iXJ1m291rGx0vWp0zWd032Rz8WBy/11wAJV3AJR3AJR3AJN3EpF3K5B4Ro54XYx4cop4h4d4moV4q4J4vIB4zH143np38HZ2/3N0AKd7AKd7AKZ7AKV7AKR7I6N8QaF8Wp98cZ18hZp8mJh8qpZ8u5R8zJF83o578It6/4h4ALh/ALh/ALd/ALd/ALZ/ErR/PLOAWLGAb6+AhK2AlquAqKiAuqaAy6R/3aF/8J59/5t8AMqCAMmDAMmDAMiDAMeDDMaDN8WDVcODbcGEgb+ElL2EpruEubmDyraD3bSC77GB/65/ANuGANuGANqGANqGANmGAdiGMNaHUdWHadOHftKHkdCHpM6Ht8yHycqG3MeG78SE/8KCAO6JAO6JAO2JAO2JAOyJAOuJJeqJSeiKY+eKeeWKjeSKoeKKtOCJx92J29uI7tmH/9aFAP+LAP+LAP+LAP+LAP+LAP6MGP2MPvyMW/qMc/mMifeMnvWMsvOMxfGL2e+K7O2J/uqGAP+OAP+OAP+OAP+OBv+OFP+OOP+OUf+OZ/+Oe/+Ojv+Oof+NtP+Nxv+M2f+L6/+J/f2GAABfAwBgCQBgFABgJQBhPABhUQBhZABhdgBhiABhmwBhrQBhvQBgzQBf3gBe8ABd/wBaAANlAwJlCQJmFAFmJQBmOwBnUABnYwBndQBniABnmwBnrABnvQBmzQBm3gBl7wBj/wBhAgppBAlpCQhpFAZqJgRqPQJqUQFrZABrdgBriABrmwBrrQBrvQBqzQBq3gBp7wBn/wBmBBdtBhZtCxVtFRNtKBBuPg1uUgluZQZvdwRviQJvnABvrQBvvgBuzQBu3gBt7wBs/wBqBy1xCixxDyxxGSpxKSdyPyNyUyByZh1zdxpzihZznRJzrg5zvgpzzgZy3wNx8AFw/wBuCEV1CkV1D0R1F0J1J0B2Pj12Ujp3ZTd3dzR3ijB3nS13ril3vyZ3ziJ23x528Rl1/xNzAVt5Alp5BVl5DFd6H1V6O1J6UFB7ZE17dkt7ikd7nUR7rkF7vj57zjp73zd68TN5/y53AG59AG19AGx9Amt+Hml+OGd+TmR/YmJ/dl9/iVx/nFl/rVd/vlR/zlF/301+8Up9/0V7AIGBAIGBAICBAn6CEn2CM3uCS3mDYHeDdHSDiXGDm2+DrWyDvWmDzmaD32OC8WCB/1yAAJWFAJSFAJSFAJOGEJGGKpCGRY6GXIyHcomHh4eHmoSHq4KHvH+HzXyH33mG8XaF/3KEAKeJAKeJAKaJAKWJAKSJIaOKQKGKWZ+KcZ2KhZqLmJiLqpaLu5OLzJGK3o6K8YuJ/4eHALiNALiNALiNALeNALaNELSNO7ONV7GOb6+OhK2OlquOqKiOuqaOy6OO3qGN8J6N/5uLAMqQAMqQAMmQAMmQAMiQCsaRNsWRVcORbMGRgb+RlL2RpruRubmRyraR3bSR8LGQ/66OANuTANuTANuTANqTANmTAdiULteUUNWUaNSUftKUkdCUpM6Ut8yUycqU3MeU78WT/8KRAO6WAO6WAO6WAO2WAOyWAOuWIuqWSOmWYueXeeaXjeSXoeKXtOCXx96X29uW7tmV/9aTAP+YAP+YAP+YAP+YAP+YAP6YFf2ZPfyZWvuZc/mZiPiZnvaZsvSZxvKZ2e+Y7e2X/uuVAP+bAP+bAP+bAP+bBf+bE/+bN/+bUf+bZ/+be/+bjv+bof+btP+bx/+a2f+Z7P+Y/f6VAABsAwBtCQBtEwBtJABuOwBuUABvYwBvdgBviABvmwBvrQBvvgBuzQBu3gBt8ABs/wBqAAJyAgJzCAFzEwF0IwB0OgB0TwB1YwB1dQB1iAB1mwB1rAB1vQB1zQB03gB08ABy/wBxAgl2BAh3CAd3EwZ3JAR4OwJ4UAF5YwB5dQB5iAB5mwB5rQB5vQB5zQB43gB48AB3/wB1BBZ7BhV7CxR7FBJ8Jw98PQt8Ugh9ZAV9dgN9iQF9nAB9rQB9vgB9zQB93gB88AB7/wB5Byt/CSt/Dip/GCiAJyWAPiKAUx6BZRuBdxiBihSCnRCCrgyCvgiBzgSB3wKA8QB//wB+B0SDCUSDDkODFkGEJj6EPTyEUjmFZTWFdzKFii+GnSuGriiGvySFziCF4ByF8ReE/xGCAVqHAlmHBViHDFeIHVSIOlKIUE+JY02JdkqJikeKnUOKrkCKvz2KzzmJ4DaJ8TGI/y2HAG2LAG2LAGyLAGqMHGiMN2aMTmSNYmGNdl+NiVyNnFmNrlaOvlONzlCN4EyN8kmM/0WLAIGPAICPAICPAn6PEn2QMXuQSnmQX3aQdHSRiHGRm26RrWyRvmmRzmaR4GKQ8l+Q/1uPAJWSAJSTAJSTAJKTDZGTKI+TRI6UXIyUcomUh4eUmoSUq4KVvH+VzXyU33mU8XaT/3KSAKeWAKeWAKaWAKWWAKSXH6KXP6GXWZ+XcJyXhZqYmJiYqpaYu5OYzJGY346X8YqX/4eWALiZALiZALiZALeZALaaDbSaOrOaV7Gabq+bg62blqubqKibuqabzKOb3qGb8Z6a/5uZAMqcAMqdAMmdAMmdAMidCcadNMWdVMOebMGegb+elL2eprueubmey7ae3rSe8LGd/66cANygANugANugANqgANmgAdigK9egT9WhaNShfdKhkdChpM6ht8yhycqh3ceh8MWg/8KfAO+jAO6jAO6jAO2jAO2jAOyjH+qjRumjYeekeOakjeSkoeKktOCkyN6k29yk7tmj/9aiAP+lAP+lAP+lAP+lAP+lAP+mEf2mOvymWfumcvqmiPinnfansvSnxvKm2fCm7e2l/uukAP+oAP+oAP+oAP+oBP+oEv+oNf+pUP+pZv+pev+pjv+pof+ptf+ox/+o2v+n7P+m/v6kAAB6AwB7CQB7EgB7IwB8OgB8TwB9YwB9dQB9iAB9mwB9rQB+vgB9zgB93wB88AB7/wB5AAKBAgKBCAGBEgGCIgCCOQCDTwCDYgCDdQCEhwCEmwCErQCEvQCEzQCD3gCD8ACC/wCAAQiFAwiFCAeFEgWGIwOGOgGGTwCHYwCHdQCHiACImwCIrQCIvQCIzQCH3gCH8ACG/wCEAxSJBRSJCROJExGJJQ6KPAqKUQeLZASLdgKLiQGLnACMrQCMvgCLzgCL3wCL8ACK/wCIBimNCCmNDSiNFiaNJiOOPSCOUh2PZRmPdxaPihKPnQ2PrgmQvwaPzgOP3wGP8QCO/wCNBkORCEKRDUGRFECRJT2SPDqSUTeSZDSTdzGTii2TnSmTriaTvyKTzx6T4BqT8hWS/w+RAVmUAlmUBFiVDFaVG1OVOVGWT06WY0uWdkmXikWXnUKXrj+XvzyXzziX4DSX8jCW/yuVAG2YAGyYAGuYAGqYGmiYNWaZTWOZYWGZdV6aiVuanFiarlWav1Kaz0+a4Eya8kiZ/0SYAIGbAICbAH+bAX6cEHycL3qcSXidX3addHOdiHCdm26erWuevmiezmWe4GKd8l6d/1ucAJWfAJSfAJOfAJKfCpGfJ4+gQ42gW4ugcomgh4ahmoShq4GhvX6hzXyh33ih8nWg/3GgAKeiAKeiAKaiAKWjAKSjHaKjPaGjWJ+kcJykhZqkmJikqpWku5OlzZCk342k8Yqk/4ejALimALimALimALemALamCLSmOLOnVrGnbq+ng62nlqqoqKiouqaozKOo3qGo8Z6n/5qmAMqpAMqpAMmpAMmpAMiqB8eqMcWqUsOqa8GrgL+rlL2rprurubmry7ar3rSr8bGr/66qANysANysANutANutANqtANmtKNetTdatZ9SufdKukdCupM6ut8yuysqu3ceu8MWu/8KtAO+wAO+wAO6wAO6wAO2wAOywG+uwROmxYOixd+axjOSxoeKxtOCyyN6y29yx79mx/9awAP+zAP+zAP+zAP+zAP+zAP+zDP6zOP2zWPu0cfq0h/i0nfa0svW0xvK02vC07e60/+uyAP+2AP+2AP+2AP+2Av+2Ef+2M/+2T/+2Zf+3ev+3jv+3of+3tf+3x/+22v+27f+1/v6zAACIAgCIBwCJEQCJIQCKOACKTgCLYgCLdQCLiACMmwCMrQCMvgCLzgCL3wCL8QCK/wCJAAKOAgKOBwGPEAGPIACPNwCQTgCQYQCRdACRhwCRmwCRrQCRvQCRzQCR3gCQ8ACQ/wCPAQeSAweSBwaSEQWTIQOTOAGTTgCUYgCUdACUhwCVmwCVrQCVvQCVzQCV3gCU8ACT/wCTAxOVBRKWCRGWEQ+WIw2XOgmXUAaXYwOYdQGYiACYmwCYrQCYvgCYzgCY3wCY8QCX/wCWBieZByaZDCaZFCSaJCGaPB6bURqbZBabdhOciQ+cnAucrgecvwSczgKc4ACc8QCb/wCaBkGdB0GdC0CdEz6dJDueOjieUDWfZDKfdi+fiiufnSigriSgvyCgzxyg4Bef8hKf/wyeAVigAlihBVehC1WhGVKhN1CiTk2iYkqidkejiUSjnUGjrj2jvzqjzzaj4DKj8i6j/ymiAG2kAGykAGukAGmlFmelM2WlTGKmYWCmdV2miVqmnFenrlSnv1Gnz06n4Eqn8kem/0KmAICoAICoAH+oAX2oD3yoLHqpSHepXnWpc3KqiHCqm22qrWqqvmeqzmSq4GGq8l2q/1mpAJSrAJSrAJOrAJKrB5CsJY+sQo2sWoutcYithoatmYOuq4CuvX6uznuu4Hiu8nSt/3CtAKevAKevAKavAKWvAKSvGaKvPKCwV56wb5ywhJmxmJexqpWxu5KxzZCx342x8omx/4awALiyALiyALiyALezALazBbSzNbOzVLG0ba+0gqy0lqq1qKi1uqW1zKO136C18p21/5q0AMq2AMq2AMq2AMm2AMi2Bse3LsW3UcO3asG3gL+4lL24pru4ubm4y7a53rO48bC4/664ANy5ANy5ANu6ANu6ANq6ANm6I9e6S9a7ZdS7fNK7kNC8o868t8y8ysq83ce88MW8/8K7AO+9AO+9AO+9AO69AO29AOy+Fuu+Qem+Xui+dua/jOW/oOO/tOC/yN6/3Ny/79m//9a+AP/AAP/AAP/AAP/AAP/BAP/BCf7BNP3BVvzCb/rChvnCnPfCsfXDxvPD2vDD7u7C/+vBAP/EAP/EAP/EAP/EAP/EDv/EL//ETf/FZP/Fef/Fjf/Fof/Ftf/Fx//F2v/F7f/E/v/DAACVAgCVBwCWDwCWHwCXNgCXTQCXYQCYdACYhwCYmwCYrQCZvgCYzgCY3wCY8QCX/wCWAAGaAQGbBgGbDwCcHgCcNQCdTACdYQCdcwCehwCemgCerACevQCezQCe3wCe8QCd/wCcAQaeAgaeBgWfDwSfHwKfNwGgTQCgYQChdAChhwChmgChrACivQCizQCh3wCh8QCh/wCgAhGiBBCiBw+iEA6jIQujOAejTgSkYgKkdQGkiAClmwClrQClvgClzgCl3wCl8QCk/wCkBSSlBiSmCyOmEyGmIh6nOhunUBenYxOodhCoiQyonAeorgSpvgKpzgGp4ACp8gCo/wCnBT+pBj+pCj6pETyqIzmqOTaqTzOrYzCrdiysiSmsnCWsriGsvx2szxms4BSs8g+s/wmrAVetAlatBVWtClStGVGuNU6uTUuuYkivdUWviUKvnD+wrjuwvziwzzSw4TCw8yyw/yavAGywAGuwAGqxAGixEWaxMWSxSmGyYF+ydFyziFmznFazrlOzv1C0z0y04Um080Wz/0GzAIC0AH+0AH60AH20Dnu1KXm1R3e1XXS2c3K2h2+2m2y3rWm3vma3z2O34V+381y3/1i3AJS4AJO4AJO4AJG4ApC4Io65QIy5WYq5cIe6hoW6mYK6q4C7vX27znq74He783O7/2+6AKe7AKa7AKa8AKW8AKO8E6K8OaC9VZ69bpu9hJm+l5e+qZS+u5K+zY+/34y/8om//4W+ALi/ALi/ALe/ALfAALXAArTAMrLAUrDBbK7BgqzBlarCqKfCuqXCzKLC36DC8p3C/5nCAMrDAMrDAMnDAMnDAMjEBMbEKsXETsPEacHFf7/Fk73FprvGubjGy7bG3rPG8rDG/63GANzHANzHANzHANvHANrHANnHHNfISNbIZNTIe9LJj9DJo87JtszKysrK3cfK8cTK/8HJAPDKAO/KAO/KAO7KAO7LAOzLD+vLPurLXOjMdebMi+XMn+PNtOHNyN7N3NzN79nN/9bMAP/OAP/OAP/OAP/OAP/OAP/OBv/PLv3PU/zPbvvPhfnQm/fQsfXQxvPR2vHR7u7Q/+zPAP/SAP/SAP/SAP/SAP/SDP/SKf/SSv/TYv/TeP/TjP/ToP/TtP/Tx//T2//T7v/T///SAAChAQCiBQCiDgCiHQCjNACjSwCkYACkdACkhwClmwClrQClvgClzgCl3wCl8QCk/wCkAAGnAQGnBQCnDQCoHACoMwCpSgCpXwCqcwCqhgCqmgCqrACrvQCrzQCr3wCr8QCq/wCpAQWqAgWqBQSrDgOrHAKsNAGsSwCsYACtcwCthgCumgCurACuvQCuzQCu3wCu8QCu/wCtAg+uAw6uBg2uDgyvHgqvNgawTAOwYQGwdACxhwCxmgCxrQCxvgCyzgCy3wCy8QCx/wCxBCGyBSCyCR+yEB6yHxyzOBizThS0YhC0dQy0iAi1nAW1rQK1vgG1zgC14AC18gC1/wC1BDy1BTy1CDu2EDq2ITe2NzO3TTC3Yi24dSm4iSW4nCG5rh25vxq5zxW54RC58wu5/wW4AlW5A1S5BFS5CFK6GE+6Mky6S0m7YUa7dUO8iEC8nDy8rjm9vzW9zzK94S298ym9/yO8AGu9AGq9AGm9AGe9CWW+LmO+SGC+X12/c1q/iFfAm1TArVHAv07Bz0vB4UfB80PB/z/AAH/BAH/BAH3BAHzBDHrBJXjCRHXCXHPDcnDDh23DmmrErGjEvmXEz2HF4V7F81rF/1bEAJPEAJPFAJLFAJHFAI/FH43GPovGWInGb4fHhYTHmYHHq37IvXzIznnI4HXI83LI/27IAKbIAKbJAKXJAKTJAKPJDKHJNp/KVJ3KbJvLg5jLl5bLqZPMu5HMzY7M4IvM84jM/4TMALjMALjNALfNALbNALXNAbTNLrLOULDOaq7OgavPlanPp6fQuqTQzKLQ35/Q8pzQ/5jQAMrQAMrQAMnQAMnQAMjRA8bRI8XRS8PSZ8HSfr/SkrzTpbrTuLjTy7XU3rLU8q/U/6zUANzUANzUANzUANvUANrVANnVEdfVRNbVYdTWedLWjtDXos7XtszXysnY3cfY8cTY/8HXAPDYAPDYAO/YAO/YAO7YAO3ZB+vZOOrZWejac+baieXan+Pbs+Dbx97b3Nzc8Nnc/9bbAP/cAP/cAP/cAP/cAP/cAP/cAv/dJf7dT/zda/veg/nemvfesPXfxfPf2vHf7u7f/+zfAP/gAP/gAP/gAP/gAP/gB//hHv/hRf/hX//hdf/ii//in//is//ix//j2//j7v/i///iAACtAQCuBACuDACvGgCvMQCwSQCwXwCxcwCxhgCxmgCxrACyvgCyzgCy3wCy8gCx/wCxAAGzAQCzBAC0DAC0GQC1MAC1SAC1XgC2cgC2hQC3mQC3rAC3vQC3zQC33wC38QC3/wC3AAS2AQS3BAO3DAK3GQG4MQC4SAC5XgC5cgC6hQC6mQC6rAC7vQC7zQC73wC78QC7/wC6AQ26Agy6BQu7DAq7Gwi7MwS8SgK8XwG9cwC9hgC+mgC+rAC+vQC+zgC/3wC/8QC+/wC+Ax2+BB2+Bxy+Dhq/HBi/NRTATBDAYQzBdAjBhwXBmwLCrQHCvgDCzgDC4ADC8gDC/wDCAznCBDnCBzjCDjbDHzTDNDDDSyzEYSnEdCXFiCHFnB3FrhnGvxXGzxDG4QvG8wbG/wLGAlLGAlLGA1HGB1DGF03HL0rHSUfIYEPIdEDIiD3JmznJrjbKvzLKzy7K4SrK8yXK/x/KAGnKAGnKAGjKAGbKAmTLKmHLRl7LXVvMcljMh1XNm1LNrU/OvkzOz0jO4UXO80HO/zzOAH7OAH3OAHzOAHvOCHnPIXfPQnTPWnHQcG/QhmzRmmnRrGbRvmPSz1/S4VzS81jS/1TSAJPSAJLSAJHSAJDSAI7SGYzTO4rTVojUbYXUhILVmIDVqn3VvHrWznfW4HPW83DW/2zWAKbVAKbVAKXWAKTWAKLWBKDWMp7XUZzXaprYgZfYlpXYqZLZu5DZzY3a4Ira84ba/4LaALjZALjaALfaALbaALXaALPaKLHbTK/baK3cf6vclKjcp6bduaPdzKDe357e8pve/5feAMreAMreAMneAMjeAMfeAcbeGsTfR8LfZMDgfL7gkbzgpLnhuLfhy7Ti3rHi8q7i/6viANziANziANziANviANriANniBtfjP9XjXtTkd9LkjdDkoc7ltcvlycnm3cbm8cPm/8DmAPDmAPDmAO/mAO/mAO7mAO3mAOvnMOrnVejocOboiOToneLpsuDpx97q29vq8Njq/9bqAP/qAP/qAP/qAP/qAP/qAP/qAP/rGP7rSf3rZ/vsgfnsmPftrvXtxPPt2fHu7u7u/+vuAP/uAP/uAP/uAP/uAP/vAP/vEv/vPP/vWf/wcv/wiP/wnf/xsv/xxv/x2v/y7v/y///xAAC5AAC6AwC6CgC7GAC7LgC8RwC8XQC9cQC9hQC+mQC+rAC+vQC+zgC/4AC/8gC+/wC+AAC/AQDABADACgDAFgDBLADBRQDCXADCcADDhADDmADEqwDEvQDEzQDE3wDF8QDF/wDEAAPDAQPDAwLECgLEFwHFLQDFRQDGXADGcADGhADHmADHqwDIvQDIzQDI3wDI8QDI/wDIAQrHAgrHBAnHCgjIGAbILgPJRwHJXQDKcQDKhQDKmQDLqwDLvQDMzQDM3wDM8QDM/wDMAhnLAxnLBhjLDBfMGRTMMRDMSQzNXgjNcgXOhgPOmgHPrADPvQDPzgDQ4ADQ8gDQ/wDQAjTPBDTPBjPPDjLQHC/QMCzQSSjRXyTRcyDShxzSmxfTrRPTvg/TzwrU4AXU8wLU/wDUAU/TAk/TA07TB03TFkrUK0fURkPVXkDVcjzWhjnWmzXXrTHXvi7XzynY4SXY8yDY/xrYAGfXAGfXAGbXAGTXAmLYJF/YQ1zZW1nZcVbahlPamk/brEzbvknbz0Xc4UHc9D3c/zjcAH3bAHzbAHvbAHrbBHfcHXXcPnLdWG/db23ehGremWbfq2PfvWDfzl3g4Vng9FXg/1HgAJLfAJHfAJDfAI/fAI3fDYvgNojgU4bha4PhgoDil33iqnvjvHjjzXTj4HHk823k/2nkAKXjAKXjAKTjAKPjAKHjAp/kLZ3kTpvlaJjlgJbmlZPmqJHnuo7nzIvn4Ijo84To/4DoALfnALfnALbnALXnALTnALLoHrDoSK7pZazpfanqkqfqpqTruaLry5/r35zs85ns/5XsAMrrAMnrAMnrAMjrAMfsAMXsEMPsQcHtYL/teb3uj7vuo7jvt7bvyrPv3rDw8q3w/6rwANzvANzvANvvANrvANnwANjwAdfwNdXxWdPxdNHyi8/yn83ytMrzyMjz3cX08cL0/7/1APDzAPDzAO/zAO/zAO70AO30AOv0I+n1T+j1bOb1hOT2m+L2sN/3xt3329r48Nf4/9T5AP/3AP/3AP/3AP/3AP/3AP/4AP/4Cv74Pv35Yfv5fPn6lff6rPX7wvP72PD87u78/+v8AP/7AP/7AP/8AP/8AP/8AP/8Bv/8KP/8T//9av/9gv/9mP/+rv/+w///2P//7f//////\",\n\teveryday400: \"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4p7O6qHN9aXO/63QAITMAIXNAIbNHofOQYjOXIrOdo7OjpTOoZjOsp3OwaLOzajO16rO4anO6qzO9LDP/rXRAJrLAZvMGJzML5zMQ5zMVZvMaJvNgZ7NnKTOr6jOwK3PzbPP17XP37XO6bjP87rQ/b7SMa/LOrDLQrDLTLDMWbDMZrDMdbDMhLDNk6/NqLLOvrjPzL3Q18DR38HQ6cLR9MTS/sXRV7/LXcHMYcHMZ8HMcMHMesHMhsHNksLNn8LOrMLOusPPy8fR18vS4MzS68zT9MvR/szRds3Mec7NfM7Ngc7NiM/Nj8/OmM/Oos/OrdDPuNDQw9LRztPS2NXU4dTT69TS9dTR/tXRlNjOltnPmNjPnNnPodnQp9rQrtrRttrSvtvTxtzUzdzV1NzV2NzW4uDX7OHV9dzP/9rNr+PUsePVsuPVtOPVtuPWuuPWvuPWw+TXyOTYzeTY0uTY1+TZ2uPY4ObZ6+vc9e7d/OrXv+vbwOvbwevbwuzbxOzcxuzcyevczezd0ezd1eze2ezf2+zd3uzd4u3e6e/f8fLg+vTizfPizvPhz/Pi0PTi0PPi0vPi1fTj1/Tj2vTk3fTl4PTl4fTk5PTk5/Tl7Pbm8vjn9/nnTR3cUh7cWB7cYiDcbyPcfifbjCzbnDPbqz3auUjZx1XZ02PZ3m3Y6G7Y8m/Y+HLV/4HWTCPbUyTbWSXcYyfcbynbfi3bjDHbnDnbq0HauUzZx1jZ02bY3W/X6HDX83LY+HTV/4LWTi7bVTDdWzDcZTLccjTcfzjcjjzbnULbrEvbulXax1/Z02zZ3XXY6HbY8nfZ93nV/4fWUDrbVz3cXT3cZ0Ddc0LcgETcj0ncnk/brFfaul/ax2nZ03XZ3n3Z537Y8n/Z94HV/43XUkvcV0zcXU3cZ0/cc1HcgFTcjljbnV3brGTaumzax3TZ037Z3YfZ54fZ8YfZ9orW/5TXTFnbVV3cW13bZV/ccmHcf2TbjmfbnGzaq3LaunnaxoDZ0onZ3JHY5pHZ75HZ9JPV/53YRmraUG3cWG7cYm/cb3HbfXPbjHfbnHvbqoDauIXZxo3a0pTZ3JzZ5JvY7pvZ9J7W/qbYHXLaM3bbQ3nbV3zbaYDaeYPbiYXamYjaqY3auJLZxZjZ0Z/Z26bZ5KbZ7aXZ86jX/a/ZAITZCIXaJYbaPIbaUYjaaYzag5LalZXappnatp7ZxKPZ0KnZ2q/a47Da7K/a8rLZ/LjaAJbYAJjZCZfZJ5bYQJfYWpjZcZrZiZ7ZoaTZs6jZwq3Zz7La2rna4rra6rra8rza+8HbJ6zXMqzYOq3YRazYUqzYYKvYb6vYfqrZla3ZrrPav7jazbza2cLa4sTb6MTa8sfb+srcT77XVb/YWb/XYL7Yab7Yc77Yf7/YjL7Zmb7Zpr3YuMDazMba2cvb4s7c6c/c8tDc+9Lebs3Xcc3YdM3Xec3Yf83Yh87Ykc7Ym87Yps7Zsc7ZvM7Zx8/a19Pc4tfd6tje8tje/NjeidnYjNrYjtnYktnYltnYndrZpNrZrNrZtdvavtvbx9zb0d3d2d7d4t/f69/e9N/e+9/dpuTbp+TbqeTbq+Tbr+TbtOTcueTcwOXdxuXezeXf1OXf2ubg4Ofh4+bh6+rj9Ovi/ObbwOzgwe3hwuzhw+zgxezhyO3hy+3izu3i0u3j1u3j2u3k3+7k4+7l5e3k6u/l8vLn+vXoz/Tmz/Tmz/Pm0fTn0vTm0/Pm1vTn2PTn2/To3fTo4fXp5PTp5vXp6vXq7fbq8vfr9/nsZSvoZyvnbSzndS/ofzLoizbnmDznpUPmskzmwFfmzGHk127k4Xrj6YLi84Tj/IXj/4niYi7maTLobjPodTXogDjoizvml0DmpUfmsk/lv1nly2Tk1nDk4Hzi6YTi8oXj+4bj/4rhZDjnajvobzzodj7ngUHojETnmEnmpk/ms1fmwGHmzGrk13bk4IHj6Ynj8onj+orj/4/iZkXna0jocEnod0rngU3njVDnmVXnplvms2Hlv2nlzHPk133k4Ijj6Y/j8pDj+5Hk/5TiaFTna1bocFfneFjnglvnjV7nmWLnpmfms23mv3Tly33l1obk34/j6Jbj8Jfj+pjk/5nhY2HmamXnb2Xod2bngGnni2vmmG/mpXPlsnnmv3/ly4fl1o/k35fj557j8J7j+Z/k/aHhYHDmZnPna3Tnc3XnfXfmiXrml33mpIHlsYblvovlypLk1Znk3qDj56fj76fj96bk/KnhVX7mXoHnZYLmboPmeYXmhofmk4nloo3lsJLlvZbkyZzk1KLk3qnj5rDj7a/j96/k+7LhN4bmP4jmSYjmVonmao3lf5PljpXlnpjlrZzku6Dkx6bk06vk3bHj5bjj7bjk9bjk+rriCJTlI5blM5blRZflV5jla5nlfpzll6PlqKbkt6rkxq/k0bTj3Lrk5MDj7MDk9MDk+cPjJKjjL6nkN6nkQajjTqjkXKfkcajkh6rkna7ks7Tkw7nk0L3k28Lk5Mjk7Mnl8snk+czkTLzjUbzjVrzjXLzjZbzjb7vkervjhrrjk7njqLzkvcLkzcbk2srk5M/l69Ll8NLk+NTlaszibczjcMzidczjfMzjg8zjjMzjlsvjoMvjq8vjtsrjx83k2NLk49fl69rm8dvm+N3nhtnih9niitnjjdnjktnjmNrjntrjptnjr9rjuNrkwdrkytrk1Nrl4t7m7OLo8uPo+eTonuTjoOTkoeTkpOTkqOXkrOTjseTkt+XkvuXlxeXkzebm1ebm3efn5Ojo7Orp8uno+unnt+3mt+3lue3lvO7mvu3mwe3mxe3myu7nz+7o1O7o2u/p3+7p5O/q6e/r7O/r8/Lt+vLrzvTqz/Tr0PXr0fXr0vTq1PTr1/Xr2fXs3PXs3/Xs4vXt5fXt6fbu7fbv7vbu8/fv+Pnxez/yfUDygUHxh0Pxj0fxmUzxpFHxr1jwu2Dwxmnw0HPv2n3u5Int7JTt85ns+prs/5ztekLxfUTygkbyiEjykEvymE7wo1Twr1rwumPwxmvv0HXu23/t44rt65Xs8prs+prs/53tekrxfkzxg07yiE/xkFPymlfxpFzxr2Hwu2nwxnHv0Hru2oPu447t65js8p3s+p7s/6DtfFXygFjyhFnyilvykV3ymmHxpWXxr2rwu3Hwxnnw0IHv24ru45Pt653t8qLs+aLs/6XtfWLyf2PxhGXyiWbxkWnxmmvxpG/wr3Twu3rvxoHv0Inv2pDu4pnt66Pt8qft+Kfs/6jtem7xfnDxgXHxiHLxj3TxmXfwo3rwrn/vuoTvxYrvz5Hu2pju4qDt6afs8K3s+K3s/67sd3vwfH3xgH7xhn/xjoHwmIPwoobwrYrwuY/vxJTuz5ru2aDt4aft6a7s8LTs97Ps/7Xtcofwd4nwe4rwgovxio3wlY/woJLwrJXvt5nvw53uzaLu2Kju4a7t6bXs77rs9rrt/rvtXo7wZJDxbJHwd5Twg5fwj5nwm5vvqJ/vtaLvwabuzKvu17Du37Xt6Lzs7sHs9cDs/MHtSZjwUZnwWJrwYpvwb5zwf57wk6Tvo6jvsKvuvq7uyrPt1bjt3r3t58Pt7sjt9Mjt+8ntMKbvOqfvQ6fwUKfvYKjvcanvgqvvlK3vqrTuurfux7vu08Dt3sXt5srt7c/t9M/t+tDtULruVrvvWbruX7ruZ7rvcLnverjvibjunbrur73uw8Tu0cjt3Mzu5tHu7dXt89fu+dfubcvtb8vuccvtdsvte8vug8rui8rtlMntncntp8ftucruzM/u2tPu5dju7dzu897v+N7uiNntidnti9ntjtntktntl9ntndntpdnurNjutdjuvdfuxtfu1Nnu497u7OPv8+Xv9+Xvn+TtoOXtoeTtpOTtp+Xuq+XtsOXttuXuvOXuwuXuyeXu0OXu2OXu4OXv7Onw8+zw+OzwtO7ute7ute7ut+7uuu7uvO7uwO/uxO7uye/vz+/u1O7u2u/v4O/v5/Dw7fHw8/Lx+fHxx/Xvx/XvyPXvyfXvy/XvzfXv0PXv1PXw1/Xw3Pbx4Pbx5fbx6vby7vfz8ffz9fj0+fn1k1/7lWD7mGH7nGP6omb6qWr6sm/6u3X6xXz5zoP514v435P35pz27qX19K31+rH1/7L1kmD6lGL6l2P7nGX7omj6qWz6sXD5u3f5xX35zYT414z33pT255327aX18630+rL0/7P1kmb7lWj7mGn7nWz7om76qnH5snb6u3v5xYH4zoj415D435j35qD27af186/0+bT0/7X1k2/7lnD6mXH6nXP6o3b6qnn5s336u4H5xYf4zo7415T335z35qP17ar187P1+bf1/7j1lXn6lnr6mXv6nnz6o376qoH6s4X5u4n5xI74zpT41pr33qH25qj27a/187f1+br1/rv0koH6lYP6mIT6nYb6o4f6qYn6so35u5H4xJX4zZv41qH33qb25a317LP18rr0+L70/r/0kIv5lI36l476nI/6oZH5qZP5sZb5upn5w574zKL31af33a325bL17Ln18r/098P0/sT1jpb6kZj6lJj6mZn5n5r5ppz5r5/5uaL4wqb4y6r31K/33LP25Ln27L718cT098j1/cj1h576ip/6j6H6lKH5mqL5o6T5rKf5tqr4wK34ybH307X327n25L7268P18cn19s31/M31caH6d6L5e6P6gqT6jqf5m6v5pq74sbD4vLT4x7f30bv32r/248T26sn18M719tL0+9L1ZKv5aaz5b635dq36gK/6i7D5mLL5qbf4uLv4xL/3zsL32cb24sv26c/279P19dj1+tj1Yrr5ZLr5Z7r5a7r5c7n5gLr5jrv5nr35rL/4vsX4y8n318334NH36NX18Nn29d72+t72esz4fMz4f8z4gsv4hsv4i8v4kcr4mcn5pMn5s8v4w83409P33tf359r279/29OL1+eP2k9r3ldr4ldr4mNr3m9n3n9n3pNn3qtn4sdn4uNj4v9b4y9j429345eH37uT39Of2+en2qOb3qOX3qub3rOb3rub3seb3teb3uub3vuX3xOb4yuX40OX41uT44eX47er49e33+u/3u/D3uu/2vPD3ve/3v/D3we/3xPD3yPD3y/D30PD31PD32fD33u/35PD46vD48/H3+fT4yfb3yvf3yvb3y/f3zff3z/f30ff31Pf41/f32vj43ff34vf35vf36/j48Pj49fn5+vr6\",\n\tpastel400: \"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822e/XOf/3uhAGKYC2SZJGSaO2WbUmedbm6fgnCglXShpnijtHmkvniizXii23ih5nug8X+h+4Oh/4mjAHiaCHqcJHqcOnqcTnucY3ucen+fkoSho4ijsYqkvYmjy4mi2Iqi442i7o+j+JKj/5amAI+eEJCeKJCfPpCeUpCfZ5CfepGfjJKgoJeir5mkvJmkyZmk1Zuk4Jyl656l9aGn/6OpDaKgJKOhNKSiRqShWKSia6SifaSjjqWjnqakraeluqelxqek0qak3aej6aej9Kej/6mkLLWjN7akQrakULakYLakcLalgbWkkLSkn7OkqbCjtbCjw7Chz66e266d566d9K+e/6+fR8KjTsKkVcKjX8Gka8CjecCkhb6kk72koLylprqisLmhvbqgy7uf2Lqc5bia8reX/7iZWsujXsujY8qja8qjdMmjf8mkisiklcelmsWio8OhrMGgt8KfxcOe1cWe4sWb78SZ/sOXZ9Ska9SkbtSkdNOle9OlhNKljtGmktCjmM+hoc2hqcugtMygwM2fzs6f39Ge7dCc+9Gcc92ndt6ned6ofd6og92oit2pjdymj9ujl9qjoNmjqNejstejvtijy9qi2dqh6dug+d2gf+msgemtg+ith+itiemsiuiqjOiok+eomuaoouapq+WptOWqv+Wpy+ep2Oeo5uin9ummiPWyifWyifWxivWxi/WwjfWukvSvmfSvofSwqfOxsvSzu/O1xfS00PW03Pa06fez9/izQg+qRw+rTw2rWwyragusewqtjQuung+vrxmwvSOxyh6y1haz3Ryt6iKt9ymr/zCp/0GpQhmqRxmqUBmrXBisaxisexetjRmunhyvriOwvSyxyimy1SOy3Cet6iut9zGs/zap/0apQyaqSSarUierXSasbCesfCetjSmuniyvrjGwvTqyyTey1TOz3TWu6jmt9j2r/0Kq/1CpQzWqSTasUjasXTasbDetfDitjTqunj2vrUKwvEqyyEiy1EWy3Eeu6Umt9k2s/1Cq/12qQkarR0arUEerW0esa0ite0qtjEyunFCvrFSwuluxxlqy0liy21mu6Fut9F2s/2Cr/2qrNVSpQFeqTFirWFmraFqseFusil6tmmKuqmawuGyxxGyyz2qx2Wuu5myu822s/nGr/3msHGKoKWOpN2SpSWWqYmurdW6sh3Ctl3Oup3ivtn2xwn6yy3yw13yv5Hyu8X6t+4Gs/4iuEHWnIXaoMHaoQXenVXipanqqg4GslIStpIevs4ywv42yyIyv1oyv44yu746u+ZCu/5WvGYupJoupNIupRIupVouqZ4ypeYyqjZCsoZWusJmwvZuyx5ux1Jqw4Zuv7Jyw956w/6KxJZ6rMZ6sPZ6sS56sW5+sa5+sfJ+sjJ+sm6CtraWwu6iyx6ex06ix3qmx6amx9Kuz/6+1N7CuP7GuSLCuVLGvYrGvcbGvgLGwj7GwnrGwrLOxubSyxbSy0LSx3LSx57Sx87Sx/7WyR8GwTcKxVMKxXcGxasKxd8KyhMKyksGyoMCyrb6ytryxwb2wzb2u2bqr5rqr8rqr/7usWM2wXM2wYc2xaM2wcs2xfcyxicuxlcqxocixrMexssWvu8SuyMWt1sas48Wq8MSn/sOmZdavadawbdawc9awetWwhNWxjdSwmNOxotKyp9Gvr86ut82tw86t0NCs4NGr7tGq/NGpceCxdOCxd9+xfOCygt+yid+ykt6zm92zoNyxpduvrdqvtdivwNmuzdqu29ut692t+t6sfeq0f+q1geq1heq1ium1kem2mOm3nOi1nuiypueyruazt+Wzweazzeey2eey5+ix9+mwiva6ivW6jfa6kPW7lPa7mfW7m/W6nfW4o/W4q/S5tPS6vfO7xvS80fS83fa76ve79/i6VRS5WRS5YBO5ahO5dhO6hRS7lBa7oxu7sSO9vi29yzi+1jS/4jG/5zS59Dm5/z+4/0e2VB24Wh25YB65ah25dh65hR+6kyC6oiW7sCu8vjS9yz6+1ju/4Ti/5zq58z65/0O3/0u3Vim4Wyq5YSq5ayu5dyu6hSy7ky67ojK7sDi8vkC9y0i+1Ua/4UPA5kW580i5/024/1S3VTi4Wjm5YTm5ajq5djq6hTy6kz67oUG7sEe8vU69yVa+1FS/4FG/5VK68lW6/lm4/163VEi4WUm4X0m4aUq5dUu5g026kU+6oFK7rle8u169x2W+02O/3mG/5WK68WS5/Wa4/2q3Tli2VFq4XFq4Zlu4cly4gV65kGC6nmS6rGi7uW69xXS90HO+3HG+43K68HO5/HS4/3e3NmK1QGS2TWe3YGu3b224fW+4jHG5m3S6qXi7t328w4O9zoO+2IG94YG77oK6+oK5/4a4K3OzNXW0P3W0Tna1X3e2dX23iIG4l4S5poe6tIu7wZG9zJG+1Y+84JC77ZC6+Y+5/5O5K4e0M4i0PYe0Soi0WYe0aoi0fYu2k5G4o5S5sZi7vp28yp6+0py835y77Jy79526/6C6Mpm1Opq2RJq2T5q2XZq1bJq2e5q2ipu2m564rqO6vKi8yKq+0am836i86qm79qq8/6y9Pqu3Rau3Tau4Vqu4Y6u4cKu4fqu4jay4m6y4qa25ubK8xrW+0bS93rW96bW99Le+/7i/S7u6ULy6Vry6X7y7ary6dry7g7y7kb27nr28q769uL++xcC/0MC+28C+5sC+8sC9/cC9V8y9Wsy8YMy9Z8y9cMy9fMy9h829lM2+oM2+rMu+uMq+wci8y8i82Mi65Ma48ca3/ca4Y9m9Z9m9atm9cdi9edi9gte9jNe9l9a9otW9rdS9uNK9vdC7xtC609G64tK57tG3/tG2b+K8cuK8deK8euG8gOG9iOG9keC9muC9pN6+rt6+s928u9u7w9m6z9u63dy67d65+964e+y+fey+f+y+g+u/iOu/j+u/l+q/n+q/qOrArum/sui9u+e9w+W9zua92+e86ei7+eq7hvfCiPfCiffCjPbDkfbCl/fDnvbEpfbEq/bErfbBtfXCv/XDyPXE0vXE3vbE6/fE+PjDaBzGahzGcB3GeB3Ggx7GjiDGmiPGpyjHtC/IwDjIzELJ1kvK4UnK7EbL8UfF/UzE/1TEZyTEayTFcCXFeCbGgibGjijGmivGpy/HtDbIvz7Iy0fJ10/K4E3K60rK8EvF/FDE/1bDZzDFazDFcDHGeDHFgjLGjjPGmjbHpjrHs0DIv0fIy1DJ1lfK31XK61PK8FPF/FfE/17EZz7Faz7FcD/Fdz/FgkDGjULGmUTGpkjHs03IvlPIylzJ1GPJ32DK6l7K71/F+2LE/2fEZU3EaU7Ebk7Fdk/FgFDFjFHFmFTGpFfGsVzHvWLHyGnJ03DK3W7K6GvK7mzF+m7E/3LEYlzDZl3Ea17Ec17EfWDEiWLFlmTFomfFrmvGu3DHxnfI0X3J3HvK5njK7HnF+XrE/37EWGrCX2zDZm3Db27Dem/DhnHEknTFn3fFrHrGuH/GxITIz4rJ2YnJ5IfJ64bF+IjF/4nEQ3TBSnXBUnbBXXfCcHzCgYDDjoLDnITEqYjFtYzGwZHHzZbI15XJ4ZPJ6pPG95PF/5XFOYS+P4W/SIW/VIa/Y4fAcojBhYzCl5HDpZTEs5jFv5zHy6HI1aHJ35/I6Z/G9p/G/5/FPZa/Q5bASpfAVJfAYJbAbZa/e5bAjJnBoJ/Dr6PEvabGyavI1KzJ3KvH6KrH9qrG/6vGRafBSqfBUKfBWafBZKfBcKfBfafBi6fBmKfBqKvDubDFx7TH07fJ3LbI6LXH9bbH/7fITrfDU7fDWbjDYLfDarfDdbfDgrfDjrfDm7jEp7jEtLnExL7H0sLK3MHJ6cHJ88LJ/sPLWMfFXMfGYcfGaMfGccfGe8fGhsfGksfHnsjHqsjHt8nIw8rJ0MzK28vK5svJ8svJ/czKYdbHZdfIaNfIb9fId9fIgNfIitfIltfJodjJrdjKudfJxNXJzNPI1tPH49PF8dLE/tLEbeTIcOTIc+TIeOTJf+TIh+TJkOPJmePJpOLJruHJud/Jw97JydzG0tvG393G7t7F/N7EeO7Ieu7Ife7Jge7Jh+7Jje3JlezJnuzKqOzKsevLu+rLwOnIyOjI0efH3efH6ujG+uvGgvjKg/jKhvjLivnLjvjLlPfLm/jMo/fNrPfNtffOvffNwfbLyvXM0/XN3/bN7PjN+vnNeCjReynRfynRhSrRjSzSmC/SojLSrDfSuD3TwkXTzU7U11jU4V7V61zV9lnV+1jR/1/PeC/Rei/RfzDRhTHRjTLRlzXSoTfSrD3Tt0LTwUnSzFLT1lvU4GHU6l/U9lzV+lzQ/2HPeDnRezrRfzrRhTvSjTzSlz/SoUHSq0XSt0vTwVHTzFnT1mLU4GfU6WXV9WPW+mLQ/2fPd0XQekbRfkbRhUjRjUnRlUrRoE3Sq1HStVbSwFzTymPT1WvU33DV6G7U9GzV+WvQ/3DPdlPQeFTQfFTQg1XRi1fRlFjRnlvRqV7RtGPSvmjSyW7T03XU3XvU53nU8nbV+HbQ/3nPcmHPdmPQemPPgGTQiWXQkmfQnGnQp2zRsnDRvXXSx3rS0oHT3IbU5oTU8YHU9oDP/4TQbnDOcXHPdnLPfHPPhHTPjnXPmXjQpHrQr37RuoLRxYfS0IzT25LU5I/U743V9YzQ/47QWnfNYXrOaXvOdH7Of4HOioPPlYTPoIfPrIrQuI7Qw5LRzpfS2ZzT45rU7pjU9JjQ/5nQT4XMVIbMWobMY4bMb4fMfovOkJHOnJLOqZbPtZnQwJ3RzKHS16bT4aTU66LU9KLR/6PRSJTKTZTLU5TLWpTKZZTKc5XLgpfMk5rNpJ/OsaLPvqbQyqrS1q/T4K/U6a3T9K3S/63RTKTLUaTMVqTMXaTLZ6TLcaPLfaPLiqPLmqbMrKzOuq/Qx7PQ1LfT37nU5rjS9LfS/7fSU7PNV7TOW7TNY7TNbLPNdrTNgbTNjLPNmbTMpLTMs7fOxLzQ0sHT3sPU58LT9MHT/8LTW8POXsPPYsPOaMLPccPPesPPhcPPj8LOm8PPp8PPssPPv8TPz8nS3c3V6MzU88zU/87VY9LRZtLRatLRb9LRdtLRf9LRidLRk9LRntPSqtPSttTSwtXTz9XU3NfV59fV8tfV/tfVa+LTbeLTceLUduLTfOLThOLTjuLUmOPUo+PUruPVuePVxeLV0eHV2N/T49/T8N/S/t7QdO/Td/DUevDUfu/UhO/UjO/VlO/Vne/Vp+7Vse3Vu+3VxuzV0OrV1enT3+jS7OnS/ezSfvrVf/rUgvrUhvrVi/rVkfnVmPnVofnVqvjWs/jWvvjXx/fXzvfV1/fW4PbW7ffW/PnWiDveijrdjTvdkj3emT/eoEHeqUXeskneu07exFXezlze12Tf4Gzf6nDf9G7f/2vg/2vchz7cikDdjUDdkkLdmUPen0XdqEjdsUzdulHdxFjezV/e1mfe4G/e6nPf9HHf/23f/23ch0bciUjdjUndkUndmEven03dp1DdsFTeulnew1/ezGXe1mze33Te6njf83Xf/nLf/3PchlHciVPdjFPdkFTcl1Xdn1jdp1rdsF7duWLdwmfey23d1XTe33ve6X/f83zf/nrg/3nchV7ch1/cil/cj2DclWLcnWPdpWbdrmndt23dwXLdynfe1H3e3YPe6Ife8YXf/YLg/4HbgmrbhWzciGzcjW3ck27cmnDcpHLcrHXctnjdv3zdyYHd04be3Izd5pDe8I3f/Ivg/4rbf3jbgXnbhHrbiXrbkHvbl33boH7cqoHcs4TcvYfcx4zd0ZHd25Xd5Zne75ff+pTf/5Tad4Pae4Taf4XahIbai4falIjbnYrap4zbsY/bu5LcxZbc0Jrd2p7d5aPe7qDe+Z7f/p3bZYnZaYnZbYrZdYvZgY7ZjpLamJTao5barZnauJzbw5/czqPc2Kbd46ve7anf+Kff/qbbWpTXX5XYY5XYa5bYdJbYf5fZjJrZnZ/ZqaLZtaTawKjby6vb16/d4rPe7LLf9rDe/rDcV6PXW6PXX6PXZKPXbaLXdqLXg6PXkaXYoKjZsK3ZvbDaybTb1bfd4bve67vf9Lre/rrdW7HYXrLYYrLYZ7LYb7LYeLHYgrHYjbHXmLHXp7PYt7jZxrza07/c38Te6sXf8sTd/sPdYMDZY8DZZsDZbMDZc8DZe8DZhb/Zj7/Zmr/YpL/Yr7/YvsLZz8jb3czd6s/g8s7f/87eZs7aaM7aa87bcc/bd87bf8/biM/bks7anM/bp8/bss/bvc/ays/a29Td6dng89jg/9ngbN7db97dcd7ddt7dfN7dg97djN7dlt/doN/dqt7dtt/ewt/ez+Df2+Hf6OPh8+Lg/uLgc+7fdO3ed+3ffO7fgu7fiO3fke7fmu7gpO7gr+7gu+/hxu7h0u3h3Ozg5Orf7+ve/uvdevvfe/vgfvvggvvgh/vfjvvglvvgn/rgqPrhsvrhvPrhx/nh0vnh3Pjh4/ff7/jg/vrgllHpmFLpmlLpnVPpolXpqVjpr1vpt17pv2Ppx2jpz27p2HTo4Xvo64Lp9ITp/YHp/3/qllTpl1XpmlfpnVfpo1npqFrorl3otmHovmXoxmrpznDo2Hbo4Xzp6oPp84Xp/YLp/4DqlVrol1zoml3pnV3ool/pqGHpr2Tptmfovmvpxm/oznTo13ro4IDo6ofp84np/Yfp/4TqlWTplmXomWbpnWfpoWjpp2rprmzptW/ovXLpxXbpznvp14Do4Ibo6ozp847p/Yzp/4rqlG7olW7omHDom3DooHHopXPorHXotHjovHvoxH7ozYPo1Yfo343o6ZPp85Xp+5Hp/4/qkXjnk3nnlXrnmXronnzopH3nqn7nsoHnuoTnw4foy4vo1Y/o3pTo6Jjo8Zvo+5jp/5bpjoPnkITnk4XnloXnm4bnoYfnqYnnsIvnuY7nwZDnypTo1Jjo3Zvo55/o8aLo+qDp/57qio3mjI7mj4/mk4/nmJDmn5HnppPnr5Xnt5fnv5nnyJzn0p/o3KPo56fo8Kro+qfp/6Xqf5PmgpTmhpXmjJfmk5nmm5rmopvmq53mtJ/mvaHmx6Tn0afn2qrn5a7o77Ho+K/p/63qc5rldpvmeZvlfpzmhZzmj57mnKPmpqXmsKfmuqnmxKzmz6/n2bLn5LXo77np+Lfp/7XqaaXka6Xkb6XldabkfKblhablkKflm6nlqq/ltrHmwbPmzLbn2Lnn473o7sHp97/p/77qarLkbLPlb7LkdLPlerLlgbLliLLkkrLkn7PlrLblvLvmyb7m1sHn4sXo7cjp98nq/8fpbMDlbsDmcMDldcDle8Dlgb/lib/kkr/km7/kpb7kssDlw8Xm0sjn4Mzo7NDp9tLq/tHpb83ncM3mc83md83mfc3ng83ni83mlM3mnc3mps3msMzlu8zlys7m3NTn6tjp9dvr/tnpctvndNzodtvnetvngNzohtznjdzoltzooNzoqdzotNznvtznytzn1tzn6ODp9eTr/+Prdevqd+vqeevpfevpguvqievpkOvqmOvpouvqrOvqt+vpw+zqzuvp2+zq5+3r9O7s/+7sePrrefrre/rrf/nrhfrri/nrk/nrnPrspfrrsPrsuvrrxvrr0vrs3frs6Pns8vns//rspHD1pXH1p3L1qXL0rHP0sXX0t3j0vXr0xH70y4H004X024n0447z7JPz9pjz/5j0/5b0o3L0pHL0pnT1qXT1rHX0sXf0tnn0vXz0xH/0yoL00obz2orz44/z7JPz9Zjy/pnz/5f0o3f0pHj0pnj0qXn1rHr0sXv0t370vYD0w4P0yob00or02o7045Lz7Jbz9Zry/pzz/5r0o330pH70pn70qH/0rID0sIH0toP0vIX0w4jzyov00o7z2pL045Xz65nz9Z7z/p/0/530o4X0pIX0pYb0qIf0q4f0sIn0tor0u4zzwo7zypH00ZTz2pfz45vz7J/z9aPz/qP0/6H0oYz0oo3zpI30p470q4/0r4/0tZH0u5PzwpXzyZfz0Zrz2Z3z4qDz66Py9Kfz/ajz/6X0n5TzoZX0o5bzppb0qZfzrpjzs5nzuprzwJzzyJ7z0KHz2KPz4abz66nz9Kzz/a7z/6z0nZ30n570oZ70o57zp57zrJ/zsqDzuKLzv6Pzx6Xzz6fz16nz4azz6q/z87Lz/LT0/7H0maT0m6T0naX0oKXzpKXzqabzr6fztanzvarzxKzzzq3z1rDz4LLz6bXz87jz/Lr0/7j0jKXzjqbzkaf0laj0m6rzo6zzq67zsq7zurDzwrLzy7Tz1bbz37jz6Lvz8r7z+8Dz/770hq7ziK7ziq7zjq/0kq/0mbDzoLH0q7Tztrfzv7nzybrz073z3r/06ML08cTz+8f0/8b0gbjzgrjzhLnzh7jzjLjzkrjzmrnzorr0rLvzur/0xcL00cT03Mb05sjz8cz0+8/1/871gMTzgcT0hMT0hsT0isTzkMT0lsPzncT0psT0sMX0vMb0zMr02M305M/08NP1+dX0/9b1gND1gtH1hND1h9D1i9D1kND1ltD0ndD1pdD1rdD1ts/0w9D009T14df17tr1+d31/972gN72gd31hN72ht72it32kN72lt72nd72pd31rt72t972wd32y9z12d326+L2+OX2/+f3gOv3gOv2g+z3hev3iuv3j+v3luz3nez3pez3ruz3uOv3wuv3zev32Ov35Ov39e33//D4ffn3f/n4gPn3hPn3iPn3jvn4lfn3nfr4pfr4r/r4uPn3w/r4z/n42vr45vr49Pv5//v5\",\n\twarm200: \"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\",\n\tinstant: \"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AJTpEZTpL5TpRpXqXpfrdJrri57tnqPtsKjuwa7wzrPx2rjy5b707Lvz87fx+bPuAKbnAKboAqXnIKTnN6TnS6PnZaTofqjplqzrq7HsvbbuzLvw2cDx48bz68Tz8b/w97vtKLfnL7jnNrfoQLfnTrbnXbbobLXofLXnjLTno7jpuL3sycLu1sfw4s3y6c3y78jv9cPsU8XoVsXpWsXoYcXoasXodMXpgMTpjMTpmcTppsPpssPpw8fr083u39Tw6Nfy7tLv9Mzsc9LqddHpd9Lpe9LqgdHqidHqktHqm9HqptHqsNLqu9LrxdLrz9Ts3Nvv5+Dy69ru9NLqit/ri9/rjd7rkN7rld/rmt7rod7rqd/ssd/sut/sw+Hty+Lt1OPu3OXv5Onw6uPt897qnuvtnuvsn+vso+ztpuvtquvtr+vttuzuvO3uwu3uyu7v0O7v1e/v2u/u3+7s6PHt8PPvsPjvsfjvsvjwtPjvtffvuPjvu/jvvvjvwvnwxfnvyfrvzfrv0vvu1vvt3Pvr5f3r7//uVyf7Wyf8YSb7aib7dib7hCf8kyj8oiv8sjD9wDf9zkH92k395Vv972v+93P9/nT8/3X7XC/8YC/8ZS/8bi78eS78hS77ky/8ozL8sjf9wD79zkf92lP95WH97nD99nj9/nj8/3n7XTf7YTj7Zzj8bzf7ejj8hzn8lDr8oz38skL9wEj8zVD92Vv95Gn97Xf99X/9/n/8/3/7YET7ZET7aUT8cUT8e0X8iEX8lkf8pEr8sk/8wFX9zV792Wj843T87IL99In8/Ij7/4f7YVD6Y1D6alH7cVH6fFP6iFT6llf7pFr7sl/7wGX8zG382Hf84oL8647885T8+pL6/5D6Y2H6Z2L6a2L6c2P6fWT6iWX6lmj6pGv6snD6v3b7y3771of74JH76Jr78J/7+Jz6/5r5YXH5ZXL5anL5cXL5fHT5iHX5lXj5o3z6sYH6vYf6yY761Jb63p3656T676n796b6/6P5XID4YIH3ZYH3bYL4eIP3hYX4koj4oIz4rpD5u5X4x5v506H63aj55q767rL69a/5/av5UY/2Vo/2XI/2ZZD2cZH2gJP3jpb3nZr3q573uaL3xaf40az527H45bb57br69Lf5+7X4RJz0SZ31T530Wp31Z571dqD1h6L1mKX2p6j2tqz2xLD30LX42rn45L757MP588D4+r34KajyMajyOqjzR6nyV6nzaarzfKvzj670obD1srT1wbj2zrz32cH448b468v58sj4+MX3RLnxSLnyS7jxUrjyXLfyZ7fyc7XyhLXxmLfyq7rzvb/0y8P12Mj34s346tL48dL49833YcbyY8byZcXxasXyccXxesXyg8TxjcPxmMPxo8LxtsTyx8j01c724NT36dv479v49df2etPye9LyfdLygNLyhdLyi9LyktHym9HypNHyrtDyt9DywdDyz9Pz3Nr15+H37eP38971jN7yjt/yj97ykd7ylt/zmt/yoN7yqN/zr97zt97zv9/yxt/zz9/z2ODz5Of17Oz38eb0nevznezznuvzoOvzpOvzp+vzrOzzsevzuOzzvuzzxezzzO300+7z2/D14vH16vT28e/zrPf0rPj0rff0rvfzsfj0tPfzuPj0vfj0wvn0x/r1zPr10vr12Pv13fz24f315v/07//1fUX/gEb/hEb/iUb/kUf/mkn/pUz/sE//vFT/xln/0WH/22r/5HT/7ID/84v/+pH//5P/gEz/gkz/hk3/i03/kk3/m0//plH/sVX/vFn/xl//0Wb/2m//5Hn/64P/8o7++pT//5X/gVT/hFT/h1T/jVX/k1X/nFb/pln/sVz/vGD/xmb/0W3/23b/43//64n/8pP/+Zj//5n/g17/hV//iF//jV//lGD/nWH/p2P/sWb/vGv/xnH/0Hf/2n//4of/6ZD/8Zr/+Z7//57/hGr/hmr/iWr/jmv/lWz/nm7/p3H/sXT/vHj/xn3/z4P/2Yv/4ZL/6Zr/8aH/+KX//qT/hnn/iHr/i3r/kHv/l3z/nn3/p4D/sYL/u4f/xYz/z5H/15f/4J3/6KP/76n/9qz//av/hYf/iIn/i4n/j4n/lor/nYz/p47/sJH/upT/xJj/zZ3/1qH/3qb/56z/7rD/9bP//bL/hJX/h5b/iZb/jZb/lJf/nJn/pZr/r53/uaD/w6P/zKf/1ar+3q//5rL+7bf+9br//Lj+gKL/gqH/haL/iqL+kaP+maT+o6b+raf+uKr+wqz+y7D+1LP+3bf+5br+7b7+9ML/+8D+fKv9fqz9gaz+hqz9jaz9lq39oK/9q7D9trL+wLT9y7f91Lr+3b395cH+7Mb+8sj++cf+dbT8eLT8e7X8f7X9h7X9kLX8m7b9prj8srn9vrz9yL7908H93MX95Mj968z98tH9+M/9db/8dr/7eL/7e777gL37ir77lb78ob/8rsD8usL9xsX80cj82sv94s/86tT98dn999f9hMr7hsv7h8v7isr7jcn7ksn7mMj7n8j7qMj8tcn7wsv8zs782NL84db86tz97+D89d/8ktb7k9f7lNb7ltb7mdb7ndX7otX6qNX7r9X7ttT7vdP7yNT71dj83t375+L87eb89Of8nuP7nuL6oOP7oeL7pOL6p+L7q+L6seL7teH6vOL7wuL7yOH7z+D72eL75ej87e788vD8qe/7qe76qu/7q+76ru/7sO76tO/7uO/7vO/7wu/6xu/6zO/70u/62fD74O/76fP78Pj7s/r6s/v6tPr6tfr6t/r6ufv6vPv6wPv7w/z7yPz7zPz60fz61/363f774//76f/88P/8\",\n\tmono400: \"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SkpKT09PWFhYY2NjbW1teXl5ioqKKCgoKCgoKioqMDAwNTU1PT09QEBAQ0NDRUVFSUlJUFBQWFhYYGBgampqdXV1gYGBkZGRNjY2Nzc3ODg4OTk5PDw8QEBARERESkpKT09PVVVVW1tbY2NjampqdHR0f39/ioqKmpqaS0tLTExMS0tLSkpKR0dHTExMVVVVWlpaXl5eZGRkaWlpcHBweHh4gYGBi4uLlpaWpaWlWVlZWVlZWVlZV1dXU1NTVVVVXl5eaWlpb29vdXV1enp6gICAh4eHkJCQmpqapKSksbGxZ2dnaGhoZ2dnZGRkYWFhXl5eZ2dncXFxf39/hISEioqKkZGRmZmZoaGhqampsrKyvb29dnZ2dnZ2dXV1cnJyb29va2trcHBwenp6hISEkpKSmpqaoaGhqKior6+vt7e3vr6+x8fHg4ODhISEg4ODgYGBfn5+e3t7e3t7g4ODjY2Nl5eXpKSkrq6utLS0u7u7wsLCysrK09PTk5OTlJSUk5OTkZGRj4+Pi4uLiIiIj4+PmJiYoaGhqqqqtLS0wcHBxsbGzMzM09PT3NzcoqKipKSkpKSkoqKioKCgnp6empqanZ2dpKSkrKystbW1vLy8xcXF0dHR19fX3Nzc4+Pjs7OztLS0s7OzsrKysbGxrq6urKysqampsLCwt7e3vr6+xsbGzMzM09PT39/f5OTk6urqw8PDxMTEw8PDwsLCwcHBv7+/vb29u7u7vr6+xMTEysrK0NDQ1tbW3Nzc4uLi6urq8PDw09PT1NTU1NTU09PT0tLS0dHRz8/Pzc3Nzc3N0tLS19fX3Nzc4eHh5ubm6urq7+/v9PT04+Pj5OTk5OTk5OTk4+Pj4uLi4eHh39/f3t7e4eHh5eXl6enp7Ozs7+/v8vLy9fX19/f38PDw8PDw8PDw8PDw7+/v8PDw7u7u7u7u7e3t7e3t8PDw8vLy9PT09/f3+Pj4+vr6/Pz8ICAgIiIiJSUlKioqMTExNzc3PDw8SkpKWVlZWlpaW1tbXl5eYWFhZmZma2trcnJygYGBJCQkJiYmKSkpLS0tNDQ0OTk5Pj4+TExMWFhYWVlZW1tbXl5eYmJiZmZmampqdHR0g4ODKioqKysrLi4uMjIyODg4PT09QkJCUFBQWFhYWlpaXFxcXl5eYmJiZmZmbm5uenp6iYmJKioqLi4uMzMzNzc3PDw8QkJCSUlJVlZWV1dXWlpaW1tbX19fYmJia2trdXV1gYGBkZGRNzc3Nzc3OTk5Ozs7Q0NDSEhIUVFRVVVVV1dXWVlZXFxcY2Nja2trdXV1f39/ioqKmZmZR0dHSEhISkpKS0tLTk5OUVFRVVVVWVlZXl5eZGRkaWlpcXFxeHh4gYGBi4uLlpaWpaWlYmJiY2NjYmJiYWFhYGBgXFxcYmJiampqcHBwdXV1enp6gICAh4eHkJCQmZmZo6OjsbGxcHBwcXFxcHBwcHBwbW1taWlpa2trdHR0gICAhYWFi4uLkpKSmJiYoKCgqKiosbGxvb29f39/f39/f39/fn5+e3t7d3d3dHR0fX19h4eHlZWVm5uboaGhqKior6+vtra2vr6+x8fHjY2Njo6OjY2Ni4uLiYmJhYWFgYGBh4eHkJCQmpqap6enr6+vtbW1vLy8w8PDysrK0tLSm5ubnJycnJycmpqamJiYlZWVkZGRkpKSm5ubpKSkra2ttra2wcHBx8fHzc3N1NTU3NzcqqqqrKysq6urqqqqqKiopqamoqKioKCgp6enrq6utra2vr6+xsbG0dHR19fX3d3d5OTkubm5ubm5uLi4uLi4t7e3tbW1srKyr6+vsrKyubm5wMDAx8fHzc3N1NTU39/f5OTk6+vrx8fHyMjIx8fHx8fHxsbGxcXFwsLCwMDAv7+/xcXFy8vL0dHR19fX3d3d4uLi6+vr8fHx1tbW19fX19fX1tbW1tbW1NTU09PT0dHRz8/P09PT2NjY3d3d4uLi5ubm6+vr7+/v9fX15eXl5eXl5eXl5eXl5eXl5OTk4+Pj4uLi4ODg4eHh5eXl6enp7e3t8PDw8/Pz9fX19/f38fHx8vLy8fHx8fHx8fHx8PDw8PDw7+/v7u7u7e3t8PDw8vLy9fX19/f3+fn5+vr6+/v7KSkpKysrLi4uMzMzOTk5QUFBRkZGSkpKWVlZaWlpcHBwcnJydXV1eXl5fn5+g4ODioqKLCwsLy8vMTExNjY2Ozs7QkJCR0dHTExMW1tba2trcHBwcnJydXV1eXl5fX19gYGBioqKMjIyNDQ0NjY2OTk5Pz8/RUVFS0tLUFBQX19fbm5ucHBwcnJydXV1eXl5fn5+g4ODi4uLNjY2OTk5Ozs7Pz8/RERES0tLUFBQVlZWZGRkb29vcHBwcnJydnZ2eXl5fn5+goKCj4+POTk5Ojo6Pj4+RUVFSkpKUVFRV1dXXV1da2trbm5ucHBwcnJydXV1eXl5f39/iYmJmJiYSEhISkpKS0tLTU1NT09PWFhYXl5eZ2dna2trbW1tb29vcnJyeHh4gYGBioqKlJSUpKSkW1tbXV1dXV1dX19fYWFhY2NjZmZmampqbm5udHR0eXl5gICAh4eHj4+PmZmZoqKir6+veXl5e3t7e3t7enp6eHh4dnZ2cnJyeHh4gYGBhoaGi4uLkZGRmJiYoKCgp6ensLCwvLy8iIiIiYmJiIiIh4eHhoaGhISEf39/gYGBioqKlpaWnJycoqKiqampr6+vtra2vb29xsbGlZWVl5eXlpaWlpaWlJSUkZGRjY2Ni4uLk5OTnZ2dqqqqsLCwtra2vLy8w8PDycnJ0tLSpKSkpaWlpaWlpKSkoqKin5+fnJycl5eXnp6epqamrq6uubm5wcHBx8fHzc3N1NTU3NzcsbGxtLS0s7OzsrKysLCwrq6uq6urp6enqampsLCwuLi4wMDAyMjI0tLS19fX3d3d5OTkv7+/wMDAv7+/v7+/vb29u7u7ubm5tra2tLS0urq6wcHByMjIzs7O1dXV39/f5OTk6urqzMzMzc3Nzc3NzMzMy8vLycnJyMjIxcXFwsLCxsbGzMzM0tLS2NjY3d3d4uLi7Ozs8fHx2tra29vb29vb2tra2dnZ2NjY1tbW1dXV09PT1NTU2dnZ3d3d4uLi5+fn6+vr7+/v9fX16Ojo6Ojo6Ojo6Ojo5+fn5ubm5ubm5eXl4+Pj4uLi5eXl6enp7e3t8PDw8/Pz9vb2+Pj48vLy8vLy8vLy8vLy8vLy8vLy8fHx8fHx8PDw7+/v8PDw8vLy9fX19/f3+fn5+/v7/Pz8MzMzNTU1Nzc3Ozs7QUFBSEhIUVFRV1dXW1tbaWlpeXl5iYmJi4uLj4+Pk5OTmJiYoKCgNzc3ODg4Ojo6Pj4+RERES0tLU1NTWFhYXFxcampqe3t7iIiIi4uLjo6OkpKSlpaWoKCgOzs7PT09Pz8/QkJCR0dHTk5OVlZWXFxcX19fbW1tfn5+iYmJi4uLjo6Ok5OTmJiYoaGhQUFBQkJCRUVFSEhITExMU1NTW1tbYGBgZGRkcnJygoKCiIiIi4uLj4+Pk5OTmJiYoKCgQkJCRUVFSkpKT09PU1NTWVlZYGBgZmZmampqeXl5hoaGiIiIi4uLj4+PkpKSlpaWnp6eSkpKTExMTU1NUFBQWVlZYGBgZmZmbGxsc3NzgICAhYWFh4eHioqKjY2NkJCQlJSUoaGhXFxcXl5eX19fYGBgY2NjZWVlbm5udHR0fX19gYGBhISEhoaGiYmJj4+Pl5eXoKCgra2tb29vcXFxcnJyc3NzdXV1d3d3enp6fX19gYGBhYWFioqKkJCQl5eXnp6epqamrq6uurq6j4+PkZGRkZGRkpKSkZGRj4+PjY2NiYmJjo6Ol5eXnZ2doqKiqKiorq6utLS0vLy8xcXFnp6eoKCgn5+fn5+fnp6enZ2dm5ublpaWl5eXoKCgq6ursLCwtra2vLy8wsLCyMjI0dHRq6urra2tra2trKysq6urqqqqp6eno6OjoaGhqampsbGxvLy8wsLCyMjIzs7O1NTU3Nzcubm5urq6urq6ubm5ubm5t7e3tLS0sbGxrKyss7Ozurq6wcHBysrK0tLS2NjY3d3d5OTkxsbGx8fHxsbGxcXFxMTEw8PDwMDAvr6+urq6vLy8w8PDycnJ0NDQ19fX4ODg5eXl6urq0tLS0tLS0tLS0dHR0NDQz8/Pzs7Oy8vLyMjIx8fHzs7O09PT2dnZ39/f5OTk7Ozs8fHx3t7e39/f3t7e3t7e3d3d3Nzc29vb2dnZ19fX1dXV2dnZ3t7e4+Pj5+fn7Ozs8PDw9vb26urq6+vr6urq6urq6urq6enp6Ojo5+fn5ubm5OTk5eXl6enp7e3t8PDw8/Pz9fX1+Pj49PT09PT09PT08/Pz8/Pz8/Pz8/Pz8vLy8vLy8PDw8PDw8/Pz9fX19/f3+fn5+vr6/Pz8Pj4+Pz8/QkJCRkZGS0tLUlJSWlpaY2NjaGhobW1teXl5iYmJm5ubpKSkqKiorKystLS0QUFBQkJCRERESEhITU1NVFRUXFxcZWVlampqbm5uenp6i4uLnJycpKSkpqamq6urs7OzRkZGR0dHSUlJTExMUVFRV1dXX19faGhobGxscHBwfX19jo6On5+fpKSkqKiorKystLS0S0tLTU1NTk5OUlJSV1dXXFxcY2Nja2trcHBwdHR0goKCkpKSoaGhpKSkqKiorKystLS0UFBQU1NTVlZWWVlZXV1dYmJiaWlpcHBwdnZ2eXl5h4eHl5eXoaGhpKSkqKiorKyss7OzUFBQU1NTV1dXXV1dZGRkaWlpb29vdnZ2e3t7gICAjo6OnZ2doKCgo6OjpqamqqqqsbGxXV1dX19fYWFhYmJiZWVlbm5udnZ2fX19g4ODiYmJlpaWnJycn5+foqKipaWlqKior6+vcHBwcnJyc3NzdXV1dnZ2eHh4e3t7hYWFioqKk5OTmJiYm5ubnZ2dn5+fpKSkq6urt7e3hYWFhoaGh4eHiIiIiYmJi4uLjY2NkJCQk5OTl5eXnJycoaGhpqamrKyssrKyubm5wsLCoqKipKSkpKSkpaWlpqampqampKSkoqKinp6epKSkrKyssbGxtra2u7u7wMDAx8fH0NDQs7OztbW1tLS0tLS0s7OzsrKysbGxr6+vq6urrKystLS0vb29w8PDyMjIzs7O09PT29vbv7+/wcHBwcHBwMDAwMDAvr6+vb29u7u7t7e3tbW1vLy8w8PDzc3N09PT2NjY3d3d5OTky8vLzMzMzMzMy8vLy8vLysrKyMjIxcXFw8PDvr6+xcXFy8vL0tLS2dnZ4ODg5eXl6+vr1tbW19fX19fX19fX1tbW1dXV09PT0tLSz8/PzMzMz8/P1NTU2tra4ODg5eXl7Ozs8fHx4uLi4uLi4uLi4uLi4uLi4ODg4ODg3t7e3d3d2tra2tra39/f5OTk6Ojo7e3t8PDw9/f37Ozs7u7u7e3t7e3t7Ozs7Ozs6+vr6urq6enp6Ojo5ubm6urq7e3t8PDw9PT09vb2+Pj49fX19fX19vb29fX19fX19fX19PT09PT08/Pz8vLy8fHx8vLy9fX19/f3+fn5+/v7/Pz8SkpKS0tLTU1NUVFRVlZWXFxcZGRkbW1tdnZ2enp6f39/iYmJm5ubrKysurq6vr6+xcXFS0tLTU1NUFBQU1NTWFhYXl5eZWVlbm5ud3d3e3t7f39/i4uLnJycrKysubm5vb29xMTEUVFRUlJSVFRUV1dXXFxcYmJiaWlpcXFxeXl5fn5+goKCjY2Nnp6er6+vurq6vr6+xsbGVlZWWFhYWlpaXV1dYWFhZmZmbW1tdXV1fX19goKChoaGkZGRoqKisrKyurq6vr6+xsbGXl5eX19fYWFhY2NjZ2dnbGxscnJyeXl5gYGBhoaGioqKl5eXpqamtbW1urq6vr6+xMTEXl5eYmJiZWVlampqbm5ucnJyeHh4f39/h4eHjIyMj4+PnZ2dq6urtra2ubm5vLy8xMTEYGBgYmJiZWVlampqcXFxenp6f39/hoaGjY2NkpKSlpaWpKSksrKytra2ubm5u7u7wsLCcnJydHR0dXV1dnZ2eHh4e3t7hYWFjY2NlJSUmZmZn5+fq6ursrKytLS0t7e3ubm5v7+/hoaGiIiIiIiIiYmJi4uLjY2Nj4+PkpKSm5uboKCgqKiora2tr6+vsbGxs7Oztra2v7+/mZmZnJycnJycnZ2dnp6en5+foaGho6OjpaWlqKiorKysr6+vtLS0ubm5vr6+xMTEzc3Ns7Oztra2tra2t7e3uLi4ubm5ubm5uLi4tra2srKyt7e3vr6+w8PDyMjIzMzM0tLS2dnZxcXFx8fHx8fHx8fHxsbGxsbGxMTEw8PDwcHBvb29v7+/xsbGzs7O09PT2NjY3t7e5OTk0NDQ0dHR0dHR0NDQ0NDQ0NDQz8/Pzs7Oy8vLyMjIx8fHzc3N09PT3Nzc4eHh5ubm6+vr29vb29vb29vb29vb29vb2tra2tra2NjY1tbW1NTU0NDQ1tbW29vb4eHh5+fn7e3t8vLy5eXl5ubm5ubm5ubm5eXl5eXl5OTk4+Pj4uLi39/f3d3d39/f5eXl6enp7e3t8fHx9vb27+/v8PDw7+/v7+/v7+/v7u7u7u7u7u7u7e3t6+vr6urq6urq7e3t8fHx8/Pz9vb2+fn59/f39/f39/f39/f39/f39vb29fX19fX19fX19PT09PT08/Pz9fX19/f3+vr6+/v7/Pz8V1dXWFhYW1tbXl5eY2NjaGhocHBwd3d3gYGBioqKjo6OkpKSm5ubrKysurq6ycnJ09PTWVlZW1tbXV1dYGBgZWVlampqcXFxeXl5goKCi4uLj4+Pk5OTnJycrKysu7u7yMjI09PTXl5eYGBgYWFhZGRkaGhobm5udHR0fHx8hISEjo6OkZGRlpaWnp6er6+vvb29y8vL09PTYmJiZWVlZ2dnampqbW1tcnJyeHh4f39/iIiIkZGRlJSUmJiYoqKisbGxwMDAzMzM1NTUampqa2trbW1tb29vc3Nzd3d3fX19hISEjIyMlJSUmJiYnJycpqamtbW1w8PDzc3N09PTbm5ucXFxc3NzdnZ2eXl5fX19g4ODiYmJkZGRmZmZnZ2doKCgq6urubm5xsbGzc3N09PTbm5ucXFxdHR0eXl5gICAhISEiYmJkJCQl5eXnp6eo6OjpaWlsbGxvr6+ycnJzMzM0tLSdXV1d3d3eHh4eXl5f39/h4eHkZGRl5eXnZ2dpKSkqKiorKyst7e3w8PDyMjIy8vL0NDQiYmJioqKi4uLjIyMjo6Oj4+PkpKSm5uboqKiqamprq6us7Ozvr6+xMTExsbGycnJzc3NnJycnp6enp6en5+foKCgoaGho6OjpaWlp6enr6+vtLS0u7u7wMDAwcHBw8PDxcXFysrKra2tsLCwsLCwsLCwsbGxsrKytLS0tLS0tra2uLi4u7u7vr6+wcHBxsbGysrKz8/P19fXxMTExsbGxsbGxsbGyMjIycnJysrKysrKycnJx8fHxMTEycnJz8/P09PT19fX3Nzc4uLi1tbW19fX1tbW1tbW1tbW1tbW1NTU1NTU0tLS0dHRzs7O0NDQ1dXV3d3d4eHh5ubm6+vr39/f4ODg4ODg4ODg39/f39/f3t7e3t7e3d3d29vb2NjY19fX3d3d4uLi6enp7u7u8vLy6enp6enp6enp6enp6enp6enp6Ojo5+fn5ubm5eXl4+Pj4eHh5ubm6urq7u7u8vLy9vb28fHx8vLy8vLy8vLy8fHx8vLy8vLy8fHx8PDw7+/v7u7u7Ozs7u7u8vLy9PT09/f3+fn5+fn5+Pj4+Pj4+Pj4+Pj4+Pj49/f39/f39/f39vb29vb29PT09fX19/f3+fn5+/v7/Pz8Z2dnaGhoampqbm5ucnJyd3d3fX19hYWFjY2NlpaWn5+foqKipqamq6uru7u7ycnJ2NjYaWlpa2trbW1tb29vc3NzeXl5f39/hoaGjo6Ol5eXoKCgo6Ojp6enq6uru7u7ycnJ2NjYbW1tb29vcHBwc3Nzd3d3fHx8goKCiYmJkZGRmZmZoqKipaWlqKiorq6uvb29y8vL2tracXFxc3NzdXV1d3d3e3t7gICAhYWFjIyMlJSUnJycpKSkqKioq6ursbGxwMDAzc3N29vbeHh4eXl5enp6fX19gICAhYWFioqKkZGRmJiYoKCgp6enq6urrq6utbW1w8PDz8/P3NzcfX19gICAgICAg4ODhoaGioqKkJCQlpaWnZ2dpKSkq6urrq6usbGxuLi4xsbG0dHR3t7efn5+goKChISEiYmJjY2NkZGRlpaWm5uboqKiqKior6+vsrKytbW1vr6+ysrK1dXV3t7efn5+gYGBg4ODiIiIjo6OlpaWnJycoaGhp6enra2ttLS0t7e3ubm5w8PDzs7O2NjY3t7ejY2Njo6Ojo6Oj4+PkJCQlJSUnZ2dp6enrKyssrKyt7e3u7u7vb29yMjI0tLS2NjY3Nzcn5+foaGhoaGhoqKio6OjpKSkpqamp6enr6+vtra2vLy8wMDAxMTEzs7O1NTU1tbW2trasLCwsrKysrKys7OztLS0tLS0tbW1tra2uLi4ubm5wcHBxsbGzMzM0NDQ0tLS1NTU19fXwMDAwcHBwsLCwsLCwsLCw8PDxMTExcXFxsbGyMjIysrKzMzMz8/P0tLS1tbW2tra39/f09PT09PT1NTU1NTU1dXV1tbW19fX2NjY2dnZ2NjY19fX1NTU2NjY3d3d4uLi5ubm6urq4+Pj5OTk5OTk5OTk5OTk4+Pj4+Pj4+Pj4uLi4eHh4ODg3d3d39/f5OTk6urq7u7u8/Pz7Ozs7e3t7Ozs7Ozs7Ozs7Ozs6+vr6+vr6+vr6+vr6enp5+fn5ubm6+vr7+/v9PT09/f39PT09PT09PT09PT09PT09PT08/Pz8/Pz8/Pz8vLy8fHx8PDw7u7u8fHx9fX19/f3+vr6+fn5+vr6+fn5+fn5+fn5+fn5+fn5+fn5+fn5+Pj4+Pj49/f39/f39/f3+vr6+/v7/Pz8enp6e3t7fX19f39/g4ODiIiIjo6OlZWVnJycpKSkrKyss7Oztra2uLi4u7u7ysrK2NjYe3t7fX19fn5+gYGBhISEiYmJj4+PlpaWnp6epaWlra2ts7OztbW1uLi4u7u7ycnJ2NjYfn5+gICAgoKChISEh4eHjIyMkpKSmJiYoKCgp6enr6+vtbW1t7e3urq6vb29y8vL2tragoKChISEhoaGiIiIi4uLkJCQlZWVm5uboqKiqampsbGxt7e3urq6vLy8wMDAzc3N29vbiIiIiYmJi4uLjY2NkJCQlJSUmZmZn5+fpqamrKyss7Ozurq6vLy8vr6+wsLC0NDQ3d3djY2Nj4+PkJCQk5OTlpaWmZmZnp6eo6Ojqampr6+vtra2vLy8vr6+wMDAxcXF0tLS39/fkpKSlJSUlpaWmJiYm5ubn5+fo6OjqKiora2ts7Ozurq6v7+/wcHBxMTEycnJ1dXV4eHhkJCQk5OTlpaWmpqan5+fpKSkqKiora2tsrKyt7e3vb29wsLCxcXFx8fHzs7O2dnZ5OTkkJCQkpKSlJSUmJiYnZ2dpKSkrKyssbGxtra2u7u7wMDAxcXFyMjIysrK0tLS3Nzc5ubmoqKipaWlpaWlpqamp6enp6enqampsbGxurq6v7+/xMTEycnJzMzMzs7O19fX4ODg5+fntLS0tbW1tra2tra2t7e3t7e3uLi4ubm5urq6wcHByMjIzc3N0dHR1NTU3d3d4uLi5eXlw8PDxMTExcXFxcXFxsbGxsbGxsbGx8fHyMjIycnJy8vL0tLS1tbW29vb39/f4eHh5OTk0NDQ0dHR0dHR0dHR0tLS0tLS09PT1NTU1NTU1tbW19fX2dnZ29vb3d3d4ODg5OTk6enp39/f4ODg4ODg4eHh4uLi4uLi4+Pj5OTk5eXl5+fn5ubm5eXl4+Pj5ubm6urq7+/v8vLy7+/v7+/v7+/v8PDw7+/v7+/v7+/v7+/v7+/v7+/v7u7u7e3t6+vr7Ozs8PDw9fX19/f39vb29vb29vb29vb29vb29vb29fX19vb29vb29fX19fX19PT08/Pz8vLy9fX19/f3+vr6+vr6+vr6+vr6+/v7+vr6+vr6+/v7+vr6+vr6+vr6+vr6+fn5+Pj49/f3+vr6/Pz8/f39j4+PkJCQkZGRlJSUmJiYnJycoaGhp6enra2ts7Ozurq6wMDAxMTEx8fHycnJy8vL2dnZkJCQkZGRk5OTlZWVmJiYnZ2doqKiqKiora2ts7Ozurq6v7+/xMTExsbGycnJy8vL2NjYkpKSlJSUlpaWmJiYm5ubn5+fpKSkqampr6+vtbW1u7u7wcHBxsbGyMjIysrKzMzM2tralpaWmJiYmZmZm5ubnp6eoqKip6enrKyssbGxuLi4vb29w8PDyMjIycnJzMzMzs7O29vbm5ubnJycnZ2dn5+foqKipaWlqampr6+vtLS0urq6v7+/xcXFysrKy8vLzc3N0NDQ3d3dnp6eoKCgoqKio6Ojpqamqampra2tsrKyt7e3vLy8wcHBx8fHy8vLzc3Nzs7O0tLS39/fo6OjpqampqamqKioqqqqra2tsbGxtbW1urq6v7+/xMTEycnJzs7Oz8/P0dHR1dXV4uLipKSkpqamqKioq6urrq6usrKytbW1ubm5vb29wsLCx8fHy8vL0NDQ0tLS09PT2dnZ5OTkoqKipaWlpqamqqqqrq6utLS0ubm5vLy8wcHBxMTEycnJzs7O09PT1NTU1tbW3d3d5ubmp6enqampqampqampq6ursLCwt7e3vr6+w8PDyMjIzMzM0dHR1dXV19fX2tra4eHh6urqt7e3ubm5urq6urq6urq6urq6urq6vLy8w8PDy8vLz8/P1NTU2NjY3Nzc3d3d5eXl7e3txsbGyMjIyMjIyMjIycnJycnJysrKysrKy8vLzMzM0tLS19fX3Nzc39/f4uLi6urq7+/v09PT1dXV1dXV1dXV1dXV1dXV1tbW19fX2NjY2NjY2dnZ2tra39/f4+Pj6Ojo7Ozs7u7u39/f39/f39/f39/f4ODg4ODg4ODg4eHh4uLi4+Pj5OTk5eXl5ubm6Ojo6+vr7u7u8PDw7Ozs7Ozs7Ozs7Ozs7e3t7e3t7u7u7+/v8PDw8fHx8fHx8fHx8fHx7+/v8fHx9fX19/f39/f3+Pj4+Pj49/f39/f3+Pj4+Pj4+Pj4+Pj4+Pj49/f39/f39/f39fX19vb2+Pj4+/v7/Pz8+/v7+/v7/Pz8+/v7+/v7/Pz8+/v7+/v7+/v7+/v7+/v7+vr6+vr6+vr6+/v7/Pz8p6enp6enqKioq6urra2tsbGxtbW1ubm5vr6+w8PDx8fHzc3N0dHR1dXV19fX2dnZ3NzcpqamqKioqampq6urrq6usbGxtbW1ubm5vb29w8PDyMjIzMzM0dHR1dXV19fX2NjY3NzcqKioqqqqrKysra2tsLCwsrKytra2u7u7wMDAxMTEycnJzs7O0tLS1tbW19fX2dnZ3d3dq6urra2trq6ur6+vsrKytbW1ubm5vb29wcHBxsbGysrKz8/P1NTU2NjY2dnZ29vb3t7er6+vsLCwsbGxsrKytbW1uLi4u7u7v7+/w8PDyMjIzMzM0NDQ1dXV2dnZ2tra3Nzc39/fsbGxs7OztbW1tra2uLi4urq6vr6+wcHBxcXFycnJzs7O0tLS1tbW2tra29vb3d3d4ODgtbW1t7e3uLi4ubm5u7u7vr6+wcHBxMTEyMjIzMzMz8/P1NTU2NjY3Nzc3d3d39/f4uLit7e3urq6u7u7vLy8vr6+wcHBw8PDxsbGysrKzc3N0dHR1tbW2tra3t7e39/f4eHh5OTktra2uLi4ubm5u7u7v7+/w8PDxcXFycnJzMzMz8/P09PT19fX29vb4ODg4eHh4+Pj5ubmsrKytbW1tra2ubm5vLy8wcHBxsbGy8vLzs7O0tLS1tbW2dnZ3t7e4eHh4+Pj5eXl6urqvLy8vr6+vb29vb29vr6+vr6+wsLCycnJz8/P1NTU2NjY3Nzc4ODg5OTk5ubm5+fn7e3ty8vLzc3NzMzMzc3Nzc3Nzc3Nzc3Nzc3Nzc3N1NTU29vb39/f4uLi5ubm6enp6urq8PDw2NjY2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2tra2tra29vb29vb4ODg5eXl6enp7Ozs7+/v9PT04uLi4+Pj4+Pj4+Pj4+Pj5OTk5OTk5OTk5eXl5ubm5+fn5+fn6Ojo7Ozs8PDw8/Pz9vb27Ozs7Ozs7Ozs7Ozs7e3t7Ozs7e3t7u7u7u7u7u7u7+/v8PDw8fHx8vLy8/Pz9fX19vb29fX19fX19fX19vb29vb29vb29vb29/f3+Pj4+Pj4+fn5+fn5+fn5+Pj4+Pj4+fn5+/v7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8+/v7+/v7/f39vr6+v7+/v7+/wMDAwsLCxcXFyMjIy8vLzs7O0tLS1tbW2tra3t7e4uLi5OTk5eXl5+fnvb29v7+/wMDAwcHBw8PDxMTEx8fHysrKzs7O0tLS1dXV2dnZ3d3d4eHh5OTk5eXl5+fnvr6+wMDAwsLCwsLCxcXFx8fHycnJzMzM0NDQ09PT1tbW2tra3t7e4uLi5eXl5ubm6OjowcHBwsLCxMTExcXFx8fHycnJy8vLzs7O0dHR1NTU2NjY29vb39/f4+Pj5eXl5+fn6enpxMTExMTExcXFxsbGyMjIysrKzMzMz8/P0tLS1dXV2dnZ3Nzc4ODg5OTk5+fn5+fn6urqxMTExsbGx8fHyMjIycnJy8vLzc3N0NDQ09PT1tbW2tra3d3d4eHh5OTk5ubm6Ojo6urqxsbGyMjIycnJysrKy8vLzc3N0NDQ0tLS1dXV2NjY3Nzc39/f4uLi5ubm6Ojo6enp7OzsycnJysrKy8vLzMzMzc3Nz8/P0dHR1NTU19fX2dnZ3d3d4eHh5OTk5+fn6enp6+vr7e3tycnJysrKy8vLzc3Nz8/P0dHR0tLS1dXV2NjY29vb3t7e4eHh5eXl6Ojo6+vr7Ozs7u7uxcXFx8fHyMjIysrKzc3N0NDQ1NTU1tbW2dnZ3Nzc39/f4+Pj5ubm6enp7Ozs7u7u7+/vwsLCw8PDxcXFx8fHysrKzc3N0dHR1tbW29vb3t7e4eHh5OTk6Ojo6+vr7u7u7+/v8PDw0dHR0tLS0dHR0tLS0dHR0tLS0dHR09PT2dnZ3t7e4+Pj5ubm6urq7e3t8PDw8vLy8/Pz3t7e3t7e3t7e3t7e3t7e3t7e3d3d3d3d3t7e3d3d4uLi6Ojo7Ozs7+/v8vLy9PT09fX16Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6Ojo6enp6enp6enp6enp6enp7e3t8fHx9PT09vb29/f38PDw8PDw8PDw8PDw8fHx8fHx8fHx8fHx8fHx8vLy8vLy8vLy8/Pz8/Pz9vb2+Pj4+vr69vb29/f39vb29vb29/f39vb29/f39vb29/f39/f39/f3+Pj4+Pj4+fn5+fn5+vr6+vr6+/v7+/v7+/v7+/v7+/v7+/v7+/v7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/f39/Pz8/f39/f391dXV1dXV1tbW1tbW19fX2dnZ29vb3d3d4ODg4uLi5eXl6Ojo6urq7e3t7+/v8fHx8vLy09PT1NTU1dXV1tbW19fX2dnZ2tra3d3d39/f4uLi5OTk5+fn6urq7Ozs7+/v8fHx8vLy1dXV1tbW1tbW2NjY2NjY2dnZ3Nzc3t7e4ODg4+Pj5ubm6Ojo6+vr7e3t7+/v8fHx8/Pz1tbW19fX2NjY2NjY2tra29vb3d3d3t7e4eHh5OTk5ubm6enp6+vr7e3t8PDw8vLy8/Pz2NjY2NjY2dnZ2tra29vb3Nzc3t7e39/f4uLi5OTk5+fn6enp7Ozs7u7u8fHx8vLy8/Pz2NjY2dnZ2tra29vb3Nzc3d3d39/f4ODg4uLi5eXl5+fn6urq7Ozs7u7u8fHx8vLy8/Pz2dnZ29vb29vb3Nzc3d3d3t7e4ODg4uLi4+Pj5ubm6Ojo6urq7e3t7+/v8fHx8/Pz9fX129vb3Nzc3Nzc3Nzc3t7e39/f4eHh4uLi5OTk5+fn6enp6+vr7u7u8PDw8vLy9PT09fX13Nzc3Nzc3d3d3t7e3t7e4ODg4eHh4+Pj5eXl5+fn6urq7Ozs7+/v8fHx8/Pz9fX19vb22NjY2dnZ29vb3Nzc3t7e4ODg4uLi4+Pj5ubm6Ojo6+vr7e3t7+/v8vLy9PT09vb29/f31dXV19fX2NjY2dnZ29vb3t7e4eHh5OTk5+fn6enp6+vr7u7u8fHx8/Pz9fX19/f3+Pj42NjY2NjY2dnZ2NjY2NjY29vb3t7e4uLi5ubm6urq7e3t7+/v8vLy9PT09/f3+fn5+fn55eXl5eXl5eXl5OTk5OTk5OTk4+Pj4+Pj5OTk6Ojo7Ozs8PDw8/Pz9fX1+Pj4+fn5+vr67u7u7+/v7u7u7u7u7u7u7u7u7u7u7u7u7u7u7e3t7Ozs7+/v9PT09vb2+fn5+fn5+/v79fX19fX19vb29fX19fX19fX19fX19vb29fX19vb29vb29fX19PT09/f3+vr6+/v7/Pz8+vr6+fn5+vr6+fn5+vr6+fn5+vr6+vr6+vr6+vr6+vr6+vr6+vr6+vr6+/v7+/v7/Pz8/Pz8/Pz8+/v7/Pz8/Pz8/Pz8/Pz8/Pz8/Pz8/f39/Pz8/Pz8/Pz8/f39/f39/f39/f39\"\n};\nfunction decodeStockLut(slug) {\n\tconst b64 = STOCK_LUTS[slug] ?? STOCK_LUTS.portrait400;\n\tconst bin = atob(b64);\n\tconst n = 17;\n\tconst out = new Uint8Array(n * n * n * 4);\n\tfor (let b = 0; b \u003c n; b++) for (let g = 0; g \u003c n; g++) for (let r = 0; r \u003c n; r++) {\n\t\tconst src = ((b * n + g) * n + r) * 3;\n\t\tconst dst = (g * n * n + b * n + r) * 4;\n\t\tout[dst] = bin.charCodeAt(src);\n\t\tout[dst + 1] = bin.charCodeAt(src + 1);\n\t\tout[dst + 2] = bin.charCodeAt(src + 2);\n\t\tout[dst + 3] = 255;\n\t}\n\treturn out;\n}\nvar HAL_TINT = [\n\t1,\n\t.38,\n\t.16\n];\nvar HALATION_THRESHOLD = .62;\nvar weaveStage = frameSway({\n\tamount: p(\"weave\"),\n\tfield: \"weaveTime\"\n});\nvar gradeStage = lutAtlasGrade({\n\tselect: p(\"stock\"),\n\tstrength: p(\"strength\"),\n\tsize: 17,\n\tdecode: decodeStockLut,\n\tfallback: \"portrait400\",\n\tlabel: \"filmstock-lut\"\n});\nvar halationStage = screenedBloom({\n\tstrength: p(\"halation\"),\n\tradius: p(\"halationRadius\"),\n\ttint: HAL_TINT,\n\tthreshold: HALATION_THRESHOLD,\n\toutput: \"halationTexture\",\n\textractName: \"filmStockHalationExtract\"\n});\nconst componentDefinition = defineStd({\n\tname: \"FilmStock\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Real analog film color from measured film-emulation LUTs — ten classic stock looks with emulsion halation and projector gate weave\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\textraFields: { weaveTime: {\n\t\tschema: f32,\n\t\tinitial: 0\n\t} },\n\tprops: {\n\t\tstock: {\n\t\t\tdefault: \"portrait400\",\n\t\t\tdescription: \"Film stock — each look is a real measured film-emulation color LUT\",\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [...STOCK_OPTIONS],\n\t\t\t\tlabel: \"Stock\",\n\t\t\t\tgroup: \"Stock\"\n\t\t\t}\n\t\t},\n\t\tstrength: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How strongly the stock's color grade is applied\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Stock\"\n\t\t\t}\n\t\t},\n\t\thalation: {\n\t\t\tdefault: .4,\n\t\t\ttransform: (value) =\u003e value * 10,\n\t\t\tdescription: \"Strength of the red-orange highlight glow (film emulsion backscatter)\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Halation\",\n\t\t\t\tgroup: \"Halation\"\n\t\t\t}\n\t\t},\n\t\thalationRadius: {\n\t\t\tdefault: 28,\n\t\t\tdescription: \"Spread of the halation glow in pixels\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Halation Radius\",\n\t\t\t\tgroup: \"Halation\"\n\t\t\t}\n\t\t},\n\t\tweave: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Gate weave — subtle projector-like frame jitter and rotation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gate Weave\",\n\t\t\t\tgroup: \"Weave\"\n\t\t\t}\n\t\t}\n\t},\n\tcompute: halationStage.compute,\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { childNode, computeOutputs, convertToTexture } = params;\n\t\tif (!childNode) {\n\t\t\tconsole.error(\"You must pass a child component into the FilmStock shader.\");\n\t\t\treturn ZERO;\n\t\t}\n\t\tconst childTex = computeOutputs?.childTexture ?? convertToTexture(childNode);\n\t\tconst wovenUv = weaveStage(params);\n\t\tconst straight = call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTex.sample(wovenUv)]);\n\t\treturn halationStage.screen(gradeStage(straight, params), wovenUv, params);\n\t} }\n});\nvar FilmStock_default = componentDefinition;\nexport { componentDefinition as n, FilmStock_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nimport { s as flip } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Flip\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Mirror content horizontally, vertically, or both\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tflipX: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Mirror the content horizontally (left ↔ right)\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Flip X\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tflipY: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Mirror the content vertically (top ↔ bottom)\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Flip Y\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tmap: flip({\n\t\tflipX: p(\"flipX\"),\n\t\tflipY: p(\"flipY\")\n\t}),\n\tedges: \"none\",\n\tmissingChildMessage: \"You must pass a child component into the Flip shader.\"\n});\nvar Flip_default = componentDefinition;\nexport { componentDefinition as n, Flip_default as t };\n","import { Br as struct, Gn as typegpu_default, Ir as atomic, Ln as PI, Mr as vec4f, Pn as DEG_TO_RAD$1, Rr as textureStorage2d, Yr as u32, ct as call, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { _ as integrator, g as force, m as drift, n as renderAgents, o as expDecay, t as agentSim, y as pointSlot } from \"./agents-CBSp2UK_.js\";\nimport { G as makeCpuValueGetter, K as readAgentFrame, V as SIZE_REF_RES, q as resolveRenderRes } from \"./porters-OTkIMOyl.js\";\nimport { b as pointShapeOptions, g as makeUniformScatterInit, w as straightAlphaOver } from \"./agents-DXoEcto0.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nvar MAX_MOTES = 8192;\nvar COUNT_MAX_MOBILE = 3e3;\nvar RES = resolveRenderRes({\n\tdesktop: 1024,\n\tmobile: 512\n});\nvar STATE_FORMAT = \"rgba16float\";\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nvar BASE_DRIFT = .12;\nvar ORBIT_RAD = .035;\nvar ORBIT_RATE = 1.4;\nvar TWINKLE_FREQ = 2;\nvar CURSOR_FORCE_K = 3.5;\nvar CURSOR_DRAG = 1.1;\nvar ANGLE_FLIP = PI;\nvar SimParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcolor: vec4f,\n\tcount: f32,\n\tdt: f32,\n\ttime: f32,\n\taspect: f32,\n\tdomainX: f32,\n\tdriftBase: f32,\n\tangleRad: f32,\n\tspeedVar: f32,\n\tangleVarRad: f32,\n\trandomness: f32,\n\ttwinkle: f32,\n\tsoftness: f32,\n\tbodyR: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\tcursorRadSq: f32,\n\tcursorForce: f32,\n\tdragMul: f32\n}), \"SimParams\");\nvar simLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tagents: {\n\t\tstorage: arrayOf(vec4f, MAX_MOTES),\n\t\taccess: \"mutable\"\n\t},\n\taccumE: {\n\t\tstorage: arrayOf(atomic(u32), RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: SimParams },\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"simLayout\");\nconst floatingParticlesInitKernel = makeUniformScatterInit(simLayout, \"floatingParticlesInit\");\nconst floatingParticlesUpdateKernel = integrator.drift2d(simLayout, {\n\tdrift: drift.variedHeading(simLayout),\n\tgust: force.cursorGust(simLayout),\n\tname: \"floatingParticlesUpdate\"\n});\nfunction floatingParticlesRender(shape) {\n\treturn renderAgents.pointWorld(simLayout, {\n\t\tshape,\n\t\tres: RES,\n\t\tplace: pointSlot.orbitalPlace(simLayout, {\n\t\t\tradius: ORBIT_RAD,\n\t\t\trate: ORBIT_RATE\n\t\t}),\n\t\tbrightness: pointSlot.twinkleBrightness(simLayout, { freq: TWINKLE_FREQ }),\n\t\tbodyRadius: pointSlot.presenceRadius(simLayout),\n\t\tnames: {\n\t\t\tsplat: \"floatingParticlesSplat\",\n\t\t\tresolve: \"floatingParticlesResolve\"\n\t\t}\n\t});\n}\nconst makeFloatingParticlesSplatKernel = (shape) =\u003e floatingParticlesRender(shape).splat.kernel;\nconst floatingParticlesSplatKernel = makeFloatingParticlesSplatKernel(\"dot\");\nconst floatingParticlesResolveKernel = floatingParticlesRender(\"dot\").resolve.kernel;\nconst particleOverChild = straightAlphaOver;\nconst componentDefinition = defineStd({\n\tname: \"FloatingParticles\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Textures\",\n\tdescription: \"Drifting, twinkling motes — thousands of real simulated particles floating in a shared heading with per-particle wander and variance, and a cursor that stirs the field with a gust that settles back into the drift\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tusesPointer: true,\n\tprops: {\n\t\tparticleColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the particles\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Particle Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: \"dot\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What each particle is drawn as — a crisp dot or square (softness still feathers them), or a soft glow puff\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: pointShapeOptions,\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 1200,\n\t\t\tdescription: \"Number of particles\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 100,\n\t\t\t\tmax: MAX_MOTES,\n\t\t\t\tstep: 100,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tparticleSize: {\n\t\t\tdefault: 1.2,\n\t\t\tdescription: \"Size of the particles (each also varies slightly for depth)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Particle Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Edge softness of each particle — 0 is a crisp shape, 1 a soft glow puff\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Speed of the shared drift\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 90,\n\t\t\tdescription: \"Drift heading in degrees (0 = left, 90 = up, 180 = right, 270 = down — the classic default floats upward)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tspeedVariance: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Per-particle speed variance around the shared drift (0 = everything moves in lockstep)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Speed Variance\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tangleVariance: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Per-particle heading variance in degrees (0 = one shared direction, 180 = every which way)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle Variance\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\trandomness: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Orbital wander — each particle circles lazily around its drift path instead of gliding straight\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Randomness\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\ttwinkle: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Intensity of the twinkle (0 = steady, 1 = full shimmer)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Twinkle\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcursorStrength: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"How strongly the cursor stirs the field — 0 (default) leaves the drift undisturbed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Gust\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t}\n\t},\n\t...agentSim({\n\t\tlayout: simLayout,\n\t\tparams: SimParams,\n\t\tmaxAgents: MAX_MOTES,\n\t\tcountCap: {\n\t\t\tdesktop: MAX_MOTES,\n\t\t\tmobile: COUNT_MAX_MOBILE\n\t\t},\n\t\toutput: {\n\t\t\tkey: \"outTex\",\n\t\t\tname: \"particleTexture\",\n\t\t\tsize: [RES, RES],\n\t\t\tformat: STATE_FORMAT\n\t\t},\n\t\tbake: ({ getCpuValue }) =\u003e {\n\t\t\tconst render = floatingParticlesRender(getCpuValue(\"shape\") || \"dot\");\n\t\t\treturn {\n\t\t\t\tpipelines: {\n\t\t\t\t\tinit: {\n\t\t\t\t\t\tkernel: floatingParticlesInitKernel,\n\t\t\t\t\t\tthreads: \"max\"\n\t\t\t\t\t},\n\t\t\t\t\tupdate: {\n\t\t\t\t\t\tkernel: floatingParticlesUpdateKernel,\n\t\t\t\t\t\tthreads: \"agents\"\n\t\t\t\t\t},\n\t\t\t\t\tsplat: render.splat,\n\t\t\t\t\tresolve: render.resolve\n\t\t\t\t},\n\t\t\t\tinitStep: \"init\",\n\t\t\t\tprogram: [\n\t\t\t\t\t\"update\",\n\t\t\t\t\t\"splat\",\n\t\t\t\t\t\"resolve\"\n\t\t\t\t]\n\t\t\t};\n\t\t},\n\t\tframe: (sys, { getCpuValue }) =\u003e {\n\t\t\tconst g = makeCpuValueGetter(getCpuValue);\n\t\t\tlet localTime = 0;\n\t\t\treturn (frameParams) =\u003e {\n\t\t\t\tconst { dt, aspect, pointerX, pointerY } = readAgentFrame(frameParams);\n\t\t\t\tlocalTime += dt;\n\t\t\t\tconst domainX = Math.max(aspect, .01);\n\t\t\t\tconst count = sys.resolveCount(g(\"count\", 1200));\n\t\t\t\tconst cursorX = pointerX * aspect;\n\t\t\t\tconst cursorY = pointerY;\n\t\t\t\tconst cursorRadius = .22;\n\t\t\t\tconst col = getCpuValue(\"particleColor\");\n\t\t\t\tconst bodyR = Math.min(Math.max(g(\"particleSize\", 1.2), .3), 4) * 2 / SIZE_REF_RES;\n\t\t\t\tsys.writeParams({\n\t\t\t\t\tcolor: vec4f(col?.x ?? 1, col?.y ?? 1, col?.z ?? 1, col?.w ?? 1),\n\t\t\t\t\tcount,\n\t\t\t\t\tdt,\n\t\t\t\t\ttime: localTime,\n\t\t\t\t\taspect,\n\t\t\t\t\tdomainX,\n\t\t\t\t\tdriftBase: Math.min(Math.max(g(\"speed\", .25), 0), 1.5) * BASE_DRIFT / .25,\n\t\t\t\t\tangleRad: g(\"angle\", 90) * DEG_TO_RAD + ANGLE_FLIP,\n\t\t\t\t\tspeedVar: Math.min(Math.max(g(\"speedVariance\", .3), 0), 1),\n\t\t\t\t\tangleVarRad: Math.min(Math.max(g(\"angleVariance\", 30), 0), 180) * DEG_TO_RAD,\n\t\t\t\t\trandomness: Math.min(Math.max(g(\"randomness\", .25), 0), 1),\n\t\t\t\t\ttwinkle: Math.min(Math.max(g(\"twinkle\", .5), 0), 1),\n\t\t\t\t\tsoftness: Math.min(Math.max(g(\"softness\", .1), 0), 1),\n\t\t\t\t\tbodyR,\n\t\t\t\t\tcursorX,\n\t\t\t\t\tcursorY,\n\t\t\t\t\tcursorRadSq: cursorRadius * cursorRadius,\n\t\t\t\t\tcursorForce: Math.min(Math.max(g(\"cursorStrength\", 0), 0), 1) * CURSOR_FORCE_K,\n\t\t\t\t\tdragMul: expDecay(CURSOR_DRAG, dt)\n\t\t\t\t});\n\t\t\t\treturn sys.frame({ count });\n\t\t\t};\n\t\t},\n\t\tfragment: {\n\t\t\toutput: \"particleTexture\",\n\t\t\tfallback: \"child\",\n\t\t\tcompose: (field, { childNode }) =\u003e childNode ? call(particleOverChild, \"particleOverChild\", [field, childNode]) : field\n\t\t}\n\t})\n});\nvar FloatingParticles_default = componentDefinition;\nexport { floatingParticlesSplatKernel as a, particleOverChild as c, floatingParticlesResolveKernel as i, componentDefinition as n, floatingParticlesUpdateKernel as o, floatingParticlesInitKernel as r, makeFloatingParticlesSplatKernel as s, FloatingParticles_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as flower } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Flower\",\n\tdescription: \"Petal shape with N lobes and adjustable inner-to-outer radius ratio\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e flower(x, y, u(\"radius\"), u(\"sides\"), u(\"innerRatio\")),\n\t\tcolorDescription: \"Fill color of the flower\",\n\t\tcenterDescription: \"Center position of the flower\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .4,\n\t\t\t\tdescription: \"Outer petal tip radius in UV space\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Radius\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tsides: {\n\t\t\t\tdefault: 5,\n\t\t\t\tdescription: \"Number of petals\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 3,\n\t\t\t\t\tmax: 12,\n\t\t\t\t\tstep: 1,\n\t\t\t\t\tlabel: \"Petals\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tinnerRatio: {\n\t\t\t\tdefault: .4,\n\t\t\t\tdescription: \"Inner valley radius as a ratio of outer radius — lower values make deeper notches\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .1,\n\t\t\t\t\tmax: .95,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Inner Ratio\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Flower_default = componentDefinition;\nexport { componentDefinition as n, Flower_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { c as flowNoise } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"FlowField\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Fluid-like distortion with constant smooth motion\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tanimatedTime: { speed: \"speed\" },\n\textraAnimatedTimes: { evolution: \"evolutionSpeed\" },\n\tprops: {\n\t\tstrength: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Intensity of the flow distortion\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Scale of the flow patterns\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Detail\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Speed of the flow\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tevolutionSpeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"How fast the flow field pattern reshapes over time\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Evolution Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for flow pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"mirror\",\n\t\t\tdescription: \"How to handle edges when distortion pushes content out of bounds\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tmap: flowNoise({\n\t\tstrength: p(\"strength\"),\n\t\tdetail: p(\"detail\"),\n\t\tseed: p(\"seed\")\n\t})\n});\nvar FlowField_default = componentDefinition;\nexport { componentDefinition as n, FlowField_default as t };\n","import { c as p, jr as vec3f, o as uniformOf, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { Z as volumeNoiseAt } from \"./materials-4Oqvm_9m.js\";\nimport { d as quadBlend, w as warpStep } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { A as rotate2, B as vec2, C as mix, D as pow, H as vec4, I as splat3, N as sin, P as smoothstep, V as vec3, a as cos, i as clamp, n as add, o as div, t as abs, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { s as surfaceOf } from \"./frames-BLqt7oaW.js\";\nvar FOUR_PI = 4 * Math.PI;\nvar WARP_LEVELS = [{\n\tscale: 2,\n\toffsets: [[5.2, 1.3], [1.7, 9.2]],\n\treach: .25\n}, {\n\tscale: 1.5,\n\toffsets: [[8.3, 2.8], [3.1, 7.4]],\n\treach: .2\n}];\nconst componentDefinition = defineStd({\n\tname: \"FlowingGradient\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Liquid silk gradient with organic flowing color bands\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\textraFields: {\n\t\tconvA: {\n\t\t\tschema: vec3f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t},\n\t\tconvB: {\n\t\t\tschema: vec3f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t},\n\t\tconvC: {\n\t\t\tschema: vec3f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t},\n\t\tconvD: {\n\t\t\tschema: vec3f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t}\n\t},\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#0a0015\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Deep background color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#6b17e6\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Primary accent color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#ff4d6a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Secondary accent color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color C\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorD: {\n\t\t\tdefault: \"#ff6b35\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Tertiary accent color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color D\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklch\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdistortion: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Organic distortion intensity\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Distortion\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst { uv, viewport } = surfaceOf(params);\n\t\tconst aspect = local(div(viewport.member(\"x\"), max(viewport.member(\"y\"), 1e-6)), \"aspect\");\n\t\tconst t = local(mul(animatedTime(params), .075), \"flowTime\");\n\t\tconst seedOff = local(mul(uniformOf(p(\"seed\"), params), .17), \"flowSeed\");\n\t\tconst strength = local(uniformOf(p(\"distortion\"), params), \"flowStrength\");\n\t\tconst centred = local(sub(uv, .5), \"flowCentred\");\n\t\tconst angle = local(mul(mul(volumeNoiseAt(vec3(add(mul(centred.member(\"x\"), .8), mul(t, .4)), sub(mul(centred.member(\"y\"), .8), mul(t, .25)), seedOff)), FOUR_PI), strength), \"flowAngle\");\n\t\tconst spun = local(rotate2(vec2(centred.member(\"x\"), div(centred.member(\"y\"), aspect)), cos(angle), sin(angle)), \"flowSpun\");\n\t\tconst rot = local(vec2(spun.member(\"x\"), mul(spun.member(\"y\"), aspect)), \"flowRot\");\n\t\tconst shearT = mul(t, 2);\n\t\tconst shearX = local(add(rot.member(\"x\"), mul(div(sin(add(mul(rot.member(\"y\"), 5), shearT)), 50), strength)), \"flowShearX\");\n\t\tconst level1 = local(warpStep({\n\t\t\tat: vec2(shearX, add(rot.member(\"y\"), mul(div(sin(add(mul(shearX, 7.5), shearT)), 25), strength))),\n\t\t\tscale: WARP_LEVELS[0].scale,\n\t\t\tz: add(mul(t, .5), seedOff),\n\t\t\toffsets: WARP_LEVELS[0].offsets,\n\t\t\treach: WARP_LEVELS[0].reach,\n\t\t\tstrength\n\t\t}), \"flowWarp1\");\n\t\tconst tz = local(add(mul(t, .3), seedOff), \"flowTz\");\n\t\tconst level2 = local(warpStep({\n\t\t\tat: level1.member(\"xy\"),\n\t\t\tscale: WARP_LEVELS[1].scale,\n\t\t\tz: tz,\n\t\t\toffsets: WARP_LEVELS[1].offsets,\n\t\t\treach: WARP_LEVELS[1].reach,\n\t\t\tstrength\n\t\t}), \"flowWarp2\");\n\t\tconst zoneNoise = volumeNoiseAt(vec3(mul(level2.member(\"x\"), 1.8), mul(level2.member(\"y\"), 1.8), tz));\n\t\tconst edgeHardness = local(pow(add(mul(level1.member(\"z\"), .5), .5), 1.5), \"flowHardness\");\n\t\tconst edgeWidth = local(mix(.5, .008, edgeHardness), \"flowEdge\");\n\t\tconst t1 = local(smoothstep(mul(edgeWidth, -1), edgeWidth, zoneNoise), \"flowT1\");\n\t\tconst t2 = local(smoothstep(mul(edgeWidth, -1), edgeWidth, level1.member(\"w\")), \"flowT2\");\n\t\tconst base = local(quadBlend({\n\t\t\ta: p(\"colorA\"),\n\t\t\tb: p(\"colorB\"),\n\t\t\tc: p(\"colorC\"),\n\t\t\td: p(\"colorD\"),\n\t\t\tspace: p(\"colorSpace\")\n\t\t})(t1, t2, params), \"flowBase\");\n\t\tconst foldMask = (blend) =\u003e sub(1, abs(sub(mul(blend, 2), 1)));\n\t\tconst foldHighlight = mul(max(foldMask(t1), foldMask(t2)), edgeHardness);\n\t\tconst litScale = mul(add(mul(add(mul(level2.member(\"z\"), .5), .5), .12), .94), add(1, mul(foldHighlight, .35)));\n\t\treturn vec4(clamp(mul(base.member(\"rgb\"), litScale), splat3(0), splat3(1)), base.member(\"a\"));\n\t}\n});\nvar FlowingGradient_default = componentDefinition;\nexport { componentDefinition as n, FlowingGradient_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { a as recompileWhen } from \"./slots-BqIef2iV.js\";\nimport { M as refractedTaps, g as fluteHighlight, h as fluteFrame, v as gatherStack } from \"./blurs-d4B9aUyx.js\";\nvar flute = fluteFrame({\n\tshape: p(\"shape\"),\n\tangle: p(\"angle\"),\n\tfrequency: p(\"frequency\"),\n\tsoftness: p(\"softness\"),\n\twaveAmplitude: p(\"waveAmplitude\"),\n\twaveFrequency: p(\"waveFrequency\"),\n\trefraction: p(\"refraction\"),\n\taberration: p(\"aberration\")\n});\nconst componentDefinition = defineStd({\n\tname: \"FlutedGlass\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Distortions\",\n\tdescription: \"Full-screen fluted glass effect — refracts content through repeating cylindrical bars\",\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tshape: {\n\t\t\tdefault: \"bars\",\n\t\t\tdescription: \"Cross-section shape of each flute\",\n\t\t\tcompileTime: true,\n\t\t\ttransform: (value) =\u003e ({\n\t\t\t\t\"bars\": 0,\n\t\t\t\t\"rounded\": 1,\n\t\t\t\t\"waves\": 2\n\t\t\t})[value] ?? 0,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bars\",\n\t\t\t\t\t\tvalue: \"bars\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Rounded\",\n\t\t\t\t\t\tvalue: \"rounded\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Waves\",\n\t\t\t\t\t\tvalue: \"waves\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Direction of the flutes in degrees (0 = vertical bars)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Number of flutes across the longest viewport axis\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How smoothly distortion fades from each flute centre to its edge (0 = flat middle / sharp seams, 1 = gentle curve)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\twaveAmplitude: {\n\t\t\tdefault: .06,\n\t\t\tdescription: \"How far each flute sways horizontally as it travels (Waves shape only)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Wave Amplitude\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { shape: \"waves\" }\n\t\t\t}\n\t\t},\n\t\twaveFrequency: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"How many sways fit along each flute (Waves shape only)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Wave Frequency\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { shape: \"waves\" }\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Animation speed — drifts the flute pattern over time and flows wave perturbations\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\trefraction: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"How aggressively each flute bends content beneath it\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Refraction\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\taberration: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Chromatic aberration — splits RGB along the refraction direction at flute seams\",\n\t\t\trecompile: recompileWhen((prev, next) =\u003e prev \u003e 0 !== next \u003e 0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Aberration\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Direction the light source is coming from (0 = head-on, 90 = grazing)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -90,\n\t\t\t\tmax: 90,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\thighlight: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Strength of the specular reflection on each flute\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Highlight\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\thighlightSoftness: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Spread of the specular peak (0 = pin-tight, 1 = broad sheen)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Highlight Softness\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\thighlightColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the specular highlight\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Highlight Color\",\n\t\t\t\tgroup: \"Highlight\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"mirror\",\n\t\t\tdescription: \"How to handle edges when distortion samples beyond the canvas\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(refractedTaps(flute, {\n\t\taberration: p(\"aberration\"),\n\t\tedges: p(\"edges\")\n\t}), [fluteHighlight(flute, {\n\t\tlightAngle: p(\"lightAngle\"),\n\t\thighlight: p(\"highlight\"),\n\t\tsoftness: p(\"highlightSoftness\"),\n\t\tcolor: p(\"highlightColor\")\n\t})], { resultAlpha: \"straight\" })\n});\nvar FlutedGlass_default = componentDefinition;\nexport { componentDefinition as n, FlutedGlass_default as t };\n","import { G as pathStampRibbon, H as createIdleGate, Mr as vec4f, U as createPointerVelocityTracker, Y as createStateBuffer, qr as f32 } from \"./lower-Bd2jez_2.js\";\nimport { F as createFluidKernelPass, I as createStableFluidsPasses } from \"./porters-OTkIMOyl.js\";\nconst ambientForce = (kernel) =\u003e ({\n\tstage: \"pre\",\n\tkernel\n});\nconst restoreToward = (kernel) =\u003e ({\n\tstage: \"post\",\n\tkernel\n});\nvar STATE_FORMAT = \"rgba16float\";\nfunction fluidSim(build) {\n\treturn { compute: (params) =\u003e {\n\t\tconst { gpu, getCpuValue, registerComputeTexture, onCleanup } = params;\n\t\tconst root = gpu?.root;\n\t\tif (!root) return null;\n\t\tconst cfg = build(params, root);\n\t\tconst n = cfg.resolution;\n\t\tconst count = n * n;\n\t\tconst velA = createStateBuffer(root, vec4f, count);\n\t\tconst velB = createStateBuffer(root, vec4f, count);\n\t\tconst dyeA = createStateBuffer(root, vec4f, count);\n\t\tconst dyeB = createStateBuffer(root, vec4f, count);\n\t\tconst pressure = createStateBuffer(root, f32, count);\n\t\tconst divergence = createStateBuffer(root, f32, count);\n\t\tconst maskBuf = cfg.container ? createStateBuffer(root, vec4f, count) : void 0;\n\t\tconst outTex = root.createTexture({\n\t\t\tsize: [n, n],\n\t\t\tformat: STATE_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\");\n\t\tonCleanup(() =\u003e outTex.destroy());\n\t\tconst outputTexture = registerComputeTexture(outTex);\n\t\tconst paramsU = root.createUniform(cfg.paramsSchema);\n\t\tconst entries = {\n\t\t\tvelA,\n\t\t\tvelB,\n\t\t\tdyeA,\n\t\t\tdyeB,\n\t\t\tpressure,\n\t\t\tdivergence,\n\t\t\tparams: paramsU.buffer\n\t\t};\n\t\tif (maskBuf) entries.maskBuf = maskBuf;\n\t\tconst fluidBg = root.createBindGroup(cfg.layout, entries);\n\t\tconst outputBg = root.createBindGroup(cfg.outputLayout, {\n\t\t\tdyeA,\n\t\t\toutTex\n\t\t});\n\t\tconst ctx = {\n\t\t\tparams,\n\t\t\troot,\n\t\t\tn,\n\t\t\tbuffers: {\n\t\t\t\tvelA,\n\t\t\t\tvelB,\n\t\t\t\tdyeA,\n\t\t\t\tdyeB,\n\t\t\t\tpressure,\n\t\t\t\tdivergence,\n\t\t\t\tmaskBuf\n\t\t\t},\n\t\t\tparamsBuffer: paramsU.buffer,\n\t\t\tfluidBindGroup: fluidBg,\n\t\t\tpass: (kernel, bindGroup = fluidBg) =\u003e createFluidKernelPass(root, kernel, {\n\t\t\t\tn,\n\t\t\t\tbindGroup\n\t\t\t})\n\t\t};\n\t\tconst containerParts = cfg.container?.setup(ctx);\n\t\tcfg.init?.setup?.(ctx);\n\t\tconst emitters = cfg.inject ?? [];\n\t\tfor (const e of emitters) e.setup?.(ctx);\n\t\tconst solvePre = (cfg.solve ?? []).filter((s) =\u003e s.stage === \"pre\").map((s) =\u003e ctx.pass(s.kernel));\n\t\tconst solvePost = (cfg.solve ?? []).filter((s) =\u003e s.stage === \"post\").map((s) =\u003e ctx.pass(s.kernel));\n\t\tconst solver = createStableFluidsPasses(root, cfg.solver.kernels, {\n\t\t\tn,\n\t\t\tbindGroup: fluidBg\n\t\t});\n\t\tconst outputPass = ctx.pass(cfg.output.kernel, outputBg);\n\t\tconst solveInto = (nodes, jacobiIters) =\u003e {\n\t\t\tnodes.push(...solvePre, ...solver.solveSteps({ jacobiIters }), ...solvePost);\n\t\t};\n\t\tconst tracker = cfg.pointer ? createPointerVelocityTracker(cfg.pointer) : null;\n\t\tconst maxDt = cfg.maxDeltaTime ?? .033;\n\t\tlet lastTime = Date.now();\n\t\tlet elapsed = 0;\n\t\tconst num = (key, fallback) =\u003e {\n\t\t\tconst v = getCpuValue(key);\n\t\t\treturn typeof v === \"number\" ? v : fallback;\n\t\t};\n\t\tconst writeParams = (v) =\u003e paramsU.write(v);\n\t\treturn {\n\t\t\toutputs: {\n\t\t\t\t[cfg.output.key]: outputTexture,\n\t\t\t\t...containerParts?.outputs ?? {}\n\t\t\t},\n\t\t\tgetComputeNodes: (frameParams) =\u003e {\n\t\t\t\tconst fp = frameParams;\n\t\t\t\tconst preNodes = containerParts?.preFrame ? containerParts.preFrame(frameParams) : null;\n\t\t\t\tconst now = Date.now();\n\t\t\t\tconst dt = Math.min(fp.deltaTime ?? (now - lastTime) / 1e3, maxDt);\n\t\t\t\tlastTime = now;\n\t\t\t\tif (dt \u003c .001) return preNodes;\n\t\t\t\telapsed += dt;\n\t\t\t\tconst f = {\n\t\t\t\t\tdt,\n\t\t\t\t\tnow,\n\t\t\t\t\tframeParams: fp,\n\t\t\t\t\tnum,\n\t\t\t\t\tgetCpuValue,\n\t\t\t\t\twriteParams,\n\t\t\t\t\tptr: tracker ? tracker.update(fp.pointer, dt) : null,\n\t\t\t\t\tget elapsed() {\n\t\t\t\t\t\treturn elapsed;\n\t\t\t\t\t},\n\t\t\t\t\tsetElapsed(t) {\n\t\t\t\t\t\telapsed = t;\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\tconst nodes = preNodes ? [...preNodes] : [];\n\t\t\t\tlet ranInit = false;\n\t\t\t\tif (cfg.init?.stale(f)) {\n\t\t\t\t\tranInit = true;\n\t\t\t\t\tcfg.init.run(f, {\n\t\t\t\t\t\tnodes,\n\t\t\t\t\t\twriteParams: (v$1) =\u003e () =\u003e paramsU.write(v$1),\n\t\t\t\t\t\tsolve: solveInto\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tfor (const e of emitters) e.tick?.(f);\n\t\t\t\tfor (const e of emitters) if (e.skip?.(f)) return ranInit ? nodes : null;\n\t\t\t\tconst v = cfg.values(f);\n\t\t\t\tif ((cfg.write ?? \"direct\") === \"thunk\") nodes.push(() =\u003e paramsU.write(v));\n\t\t\t\telse paramsU.write(v);\n\t\t\t\tif (containerParts) nodes.push(containerParts.maskPass);\n\t\t\t\tfor (const e of emitters) e.emit?.(f, nodes, v);\n\t\t\t\tsolveInto(nodes, cfg.solver.jacobiIters);\n\t\t\t\tnodes.push(outputPass);\n\t\t\t\treturn nodes;\n\t\t\t}\n\t\t};\n\t} };\n}\nfunction splat(opts) {\n\tlet pass = null;\n\treturn {\n\t\tsetup(ctx) {\n\t\t\tpass = \"kernel\" in opts ? ctx.pass(opts.kernel) : opts.setup(ctx);\n\t\t},\n\t\temit(_f, nodes) {\n\t\t\tif (pass) nodes.push(pass);\n\t\t}\n\t};\n}\nfunction cursorRibbon(opts) {\n\tconst tracker = createPointerVelocityTracker(opts.tracker);\n\tconst idle = createIdleGate();\n\tlet pass = null;\n\tlet ptr = null;\n\tlet scale = 1;\n\tlet isActive = false;\n\treturn {\n\t\tsetup(ctx) {\n\t\t\tscale = ctx.n;\n\t\t\tpass = \"kernel\" in opts.pass ? ctx.pass(opts.pass.kernel) : opts.pass.setup(ctx);\n\t\t},\n\t\ttick(f) {\n\t\t\tptr = tracker.update(f.frameParams.pointer, f.dt);\n\t\t\topts.onFrame?.(f, ptr);\n\t\t\tisActive = opts.activeWhen(ptr, f);\n\t\t\tif (isActive) idle.markActive();\n\t\t},\n\t\tskip(f) {\n\t\t\tconst skip = idle.shouldSkip(opts.fadeSeconds(f));\n\t\t\tif (!skip) idle.tickFrame(f.dt);\n\t\t\treturn skip;\n\t\t},\n\t\temit(f, nodes, values) {\n\t\t\tif (!isActive || !ptr || !pass) return;\n\t\t\tconst spec = opts.ribbon(f, ptr, values);\n\t\t\tpathStampRibbon(nodes, {\n\t\t\t\tfromX: ptr.prevX,\n\t\t\t\tfromY: ptr.prevY,\n\t\t\t\tdx: ptr.dx,\n\t\t\t\tdy: ptr.dy,\n\t\t\t\tdragDist: ptr.dragDist,\n\t\t\t\tstepSize: spec.stepSize,\n\t\t\t\tmaxSteps: spec.maxSteps,\n\t\t\t\tscale,\n\t\t\t\tprepare: spec.prepare,\n\t\t\t\twrite: spec.write,\n\t\t\t\tpass\n\t\t\t});\n\t\t},\n\t\tptr: () =\u003e ptr,\n\t\tactive: () =\u003e isActive\n\t};\n}\nfunction seededFieldInit(opts) {\n\tlet pass = null;\n\tlet initialized = false;\n\tlet lastSeed = -1;\n\treturn {\n\t\tsetup(ctx) {\n\t\t\tpass = ctx.pass(opts.kernel);\n\t\t},\n\t\tstale(f) {\n\t\t\treturn !initialized || opts.seed(f) !== lastSeed;\n\t\t},\n\t\trun(f, io) {\n\t\t\tinitialized = true;\n\t\t\tlastSeed = opts.seed(f);\n\t\t\tio.nodes.push(io.writeParams(opts.warm.values(0, f)));\n\t\t\tif (pass) io.nodes.push(pass);\n\t\t\tlet warmTime = opts.warm.startTime();\n\t\t\tfor (let w = 0; w \u003c opts.warm.steps; w++) {\n\t\t\t\tconst wt = warmTime;\n\t\t\t\twarmTime += opts.warm.dt;\n\t\t\t\tio.nodes.push(io.writeParams(opts.warm.values(wt, f)));\n\t\t\t\tio.solve(io.nodes, opts.warm.jacobiIters);\n\t\t\t}\n\t\t\tf.setElapsed(warmTime);\n\t\t}\n\t};\n}\nexport { seededFieldInit as a, restoreToward as i, cursorRibbon as n, splat as o, fluidSim as r, ambientForce as t };\n","import { At as colorMixing_exports, Br as struct, Gn as typegpu_default, Mr as vec4f, Rr as textureStorage2d, at as ZERO, ct as call, mt as vec4, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { A as buildNoiseFieldInitKernel, M as buildStableFluidsKernels, N as buildTrigTurbulenceKernel, j as buildNoiseRestoreKernel, k as buildFluidOutputKernel } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { a as seededFieldInit, i as restoreToward, r as fluidSim, t as ambientForce } from \"./fluids-umEWgdvj.js\";\nvar N = 256;\nvar COUNT = N * N;\nvar JACOBI_ITERS = 10;\nvar WARM_JACOBI_ITERS = 6;\nvar WARM_STEPS = 50;\nvar VELOCITY_DISSIPATION = .15;\nvar INTERNAL_MAX_VEL = N * .6;\nvar NOISE_FREQ = 3;\nvar STATE_FORMAT = \"rgba16float\";\nvar cm = colorMixing_exports;\nvar FogParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tdt: f32,\n\ttime: f32,\n\tseed: f32,\n\tturbulence: f32,\n\tcurlStrength: f32,\n\tvelFade: f32,\n\tblending: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\tcursorVelX: f32,\n\tcursorVelY: f32,\n\tmouseActive: f32,\n\tmouseRadSq: f32\n}), \"FogParams\");\nvar fluidLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tvelA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tvelB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tpressure: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdivergence: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: FogParams }\n}), \"fluidLayout\");\nvar outputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"readonly\"\n\t},\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"outputLayout\");\nconst initKernel = buildNoiseFieldInitKernel(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"fog\",\n\tfrequency: NOISE_FREQ\n});\nconst forceKernel = buildTrigTurbulenceKernel(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"fog\"\n});\nvar solverKernels = buildStableFluidsKernels(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"fog\",\n\tboundary: \"toroidal\",\n\tdye: \"densityAge\",\n\tvelocityCap: INTERNAL_MAX_VEL\n});\nconst { curl: curlKernel, vorticity: vorticityKernel, divergence: divergenceKernel, jacobi: jacobiKernel, gradSubtract: gradSubtractKernel, advectVel: advectVelKernel, copyVel: copyVelKernel, advectDye: advectDensKernel, copyDye: copyDensKernel } = solverKernels;\nconst colorRestoreKernel = buildNoiseRestoreKernel(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"fog\",\n\tfrequency: NOISE_FREQ\n});\nconst outputKernel = buildFluidOutputKernel(outputLayout, {\n\tn: N,\n\tnamePrefix: \"fog\",\n\tdye: \"densityAge\"\n});\nconst componentDefinition = defineStd({\n\tname: \"Fog\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Fog that fills the screen and interacts with the mouse\",\n\tusesPointer: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#e0e0e0\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Primary fog color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#888888\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Secondary fog color — creates variation across the field\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Deterministic starting pattern — different seeds produce different fog configurations\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 999,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Simulation speed multiplier\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tturbulence: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Ambient motion strength\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Turbulence\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 15,\n\t\t\tdescription: \"Fine-scale swirling structure — higher values produce more intricate wisps and vortices\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Detail\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tblending: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"How much the two colors blend together — 0 behaves like oil \u0026 water (colors stay distinct with sharp boundaries), 1 behaves like food coloring (colors fully mix)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Blending\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tmouseInfluence: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Strength of cursor influence — move the cursor to push fog\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Influence\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tmouseRadius: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Radius of cursor influence area\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Radius\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\t...fluidSim(() =\u003e {\n\t\tconst fieldValues = (f) =\u003e ({\n\t\t\tseed: f.num(\"seed\", 0),\n\t\t\tturbulence: f.num(\"turbulence\", 1),\n\t\t\tcurlStrength: f.num(\"detail\", 15),\n\t\t\tvelFade: VELOCITY_DISSIPATION,\n\t\t\tblending: f.num(\"blending\", .3)\n\t\t});\n\t\treturn {\n\t\t\tresolution: N,\n\t\t\tlayout: fluidLayout,\n\t\t\toutputLayout,\n\t\t\tparamsSchema: FogParams,\n\t\t\tsolver: {\n\t\t\t\tkernels: solverKernels,\n\t\t\t\tjacobiIters: JACOBI_ITERS\n\t\t\t},\n\t\t\toutput: {\n\t\t\t\tkernel: outputKernel,\n\t\t\t\tkey: \"fogTexture\"\n\t\t\t},\n\t\t\twrite: \"thunk\",\n\t\t\tpointer: { minDrag: 5e-4 },\n\t\t\tinit: seededFieldInit({\n\t\t\t\tkernel: initKernel,\n\t\t\t\tseed: (f) =\u003e f.num(\"seed\", 0),\n\t\t\t\twarm: {\n\t\t\t\t\tsteps: WARM_STEPS,\n\t\t\t\t\tjacobiIters: WARM_JACOBI_ITERS,\n\t\t\t\t\tdt: .1,\n\t\t\t\t\tstartTime: () =\u003e Math.random() * 60,\n\t\t\t\t\tvalues: (t, f) =\u003e ({\n\t\t\t\t\t\tdt: .1,\n\t\t\t\t\t\ttime: t,\n\t\t\t\t\t\t...fieldValues(f),\n\t\t\t\t\t\tcursorX: 0,\n\t\t\t\t\t\tcursorY: 0,\n\t\t\t\t\t\tcursorVelX: 0,\n\t\t\t\t\t\tcursorVelY: 0,\n\t\t\t\t\t\tmouseActive: 0,\n\t\t\t\t\t\tmouseRadSq: 1\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}),\n\t\t\tsolve: [ambientForce(forceKernel), restoreToward(colorRestoreKernel)],\n\t\t\tvalues: (f) =\u003e {\n\t\t\t\tconst mouseInf = f.num(\"mouseInfluence\", .1);\n\t\t\t\tconst mouseRadGrid = f.num(\"mouseRadius\", .1) * N;\n\t\t\t\tconst ptr = f.ptr;\n\t\t\t\tconst active = ptr.moving \u0026\u0026 mouseInf \u003e 0;\n\t\t\t\treturn {\n\t\t\t\t\tdt: f.dt * f.num(\"speed\", 1),\n\t\t\t\t\ttime: f.elapsed,\n\t\t\t\t\t...fieldValues(f),\n\t\t\t\t\tcursorX: active ? ptr.x * N : 0,\n\t\t\t\t\tcursorY: active ? ptr.y * N : 0,\n\t\t\t\t\tcursorVelX: active ? ptr.dx * N * 15 * mouseInf : 0,\n\t\t\t\t\tcursorVelY: active ? ptr.dy * N * 15 * mouseInf : 0,\n\t\t\t\t\tmouseActive: active ? 1 : 0,\n\t\t\t\t\tmouseRadSq: mouseRadGrid * mouseRadGrid\n\t\t\t\t};\n\t\t\t}\n\t\t};\n\t}),\n\tgpu: { fragment: ({ ctx, computeOutputs, propValues, uniforms }) =\u003e {\n\t\tconst fogField = computeOutputs?.fogTexture;\n\t\tif (!fogField) return ZERO;\n\t\tconst s = fogField.sample(ctx.uv, \"linearClamp\");\n\t\tconst fogDensity = s.member(\"x\");\n\t\tconst colorVar = s.member(\"y\");\n\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\tconst fogColor = call(cm.mixColorsVariants[colorSpaceMode] ?? cm.mixColorsLinear, \"mixColors\", [\n\t\t\tuniforms.colorA,\n\t\t\tuniforms.colorB,\n\t\t\tcolorVar\n\t\t]);\n\t\treturn vec4(fogColor.member(\"rgb\"), fogColor.member(\"a\").mul(fogDensity));\n\t} }\n});\nvar Fog_default = componentDefinition;\nexport { componentDefinition as a, curlKernel as c, gradSubtractKernel as d, initKernel as f, vorticityKernel as h, colorRestoreKernel as i, divergenceKernel as l, outputKernel as m, advectDensKernel as n, copyDensKernel as o, jacobiKernel as p, advectVelKernel as r, copyVelKernel as s, Fog_default as t, forceKernel as u };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { u as fractalNoise } from \"./noise-d7rmP9yc.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"FractalNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Multi-octave fractal Brownian motion noise texture with true noise evolution\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\toctaves: {\n\t\t\tdefault: 4,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Number of noise octaves (more = more detail)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Octaves\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"How much finer each successive octave becomes\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Detail\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How strongly finer octaves contribute — higher values create more texture contrast\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Speed at which the noise pattern evolves in place\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation angle in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: fractalNoise({\n\t\tangle: p(\"angle\"),\n\t\tdetail: p(\"detail\"),\n\t\tcontrast: p(\"contrast\"),\n\t\toctaves: p(\"octaves\"),\n\t\tseed: p(\"seed\"),\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar FractalNoise_default = componentDefinition;\nexport { componentDefinition as n, FractalNoise_default as t };\n","import { at as ZERO, ct as call, t as defineStd, wn as mxWorleyNoiseFloat2Pub } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { D as nudgeNormal, F as shapedSurface, H as surfaceNoise, O as opticalThickness, R as silhouette, V as surfaceField, W as surfacePattern, b as keyLightAt, g as guarded, l as fieldSlope, m as grazingFlat, n as beerLambert, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, I as splat3, L as sqrt, N as sin, P as smoothstep, V as vec3, h as gt, i as clamp, n as add, o as div, s as dot, u as float, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction } from \"./frames-BLqt7oaW.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nconst componentDefinition = defineStd({\n\tname: \"Frost\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Photoreal frozen ice — thickness-driven subsurface scattering that reads as a solid block, with fine frost crystals creeping in from the edges\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tchord: \"firstLobe\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst vol = frame.volumetric;\n\t\t\tconst EPS = .01;\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { s0, sX, sY, sdf, pxH } = field;\n\t\t\tconst grad = fieldSlope(field);\n\t\t\tconst transition = silhouette(field, u.edgeSoftness);\n\t\t\tconst pat = surfacePattern(frame, field);\n\t\t\tconst pdx = pat.member(\"x\");\n\t\t\tconst pdy = pat.member(\"y\");\n\t\t\tconst depthNorm = local(clamp(div(mul(sdf, -1), max(.3, .01)), 0, 1), \"depthNorm\");\n\t\t\tlet nBase;\n\t\t\tlet steepAtten;\n\t\t\tif (vol) {\n\t\t\t\tconst ddx = local(clamp(div(sub(sX.member(\"w\"), s0.member(\"w\")), EPS), -4, 4), \"ddx\");\n\t\t\t\tconst ddy = local(clamp(div(sub(sY.member(\"w\"), s0.member(\"w\")), EPS), -4, 4), \"ddy\");\n\t\t\t\tnBase = local(normalize(vec3(ddx, ddy, -1)), \"nBase\");\n\t\t\t\tsteepAtten = local(div(1, add(1, mul(clamp(add(mul(ddx, ddx), mul(ddy, ddy)), 0, 2), 2))), \"steepAtten\");\n\t\t\t} else {\n\t\t\t\tconst bevelSlope = local(mul(sqrt(max(sub(1, mul(depthNorm, depthNorm)), 0)), 1.8), \"bevelSlope\");\n\t\t\t\tnBase = local(normalize(vec3(mul(grad.member(\"x\"), bevelSlope), mul(grad.member(\"y\"), bevelSlope), -1)), \"nBase\");\n\t\t\t\tsteepAtten = float(1);\n\t\t\t}\n\t\t\tconst thickness = local(mul(opticalThickness(field, frame), u.density), \"thickness\");\n\t\t\tconst depthT = local(clamp(mul(thickness, 1.2), 0, 1), \"depthT\");\n\t\t\tconst transmit = local(beerLambert(thickness, mul(vec3(1.6, .85, .45), u.absorption)), \"transmit\");\n\t\t\tconst scatteredRgb = local(mul(mix(vec3(1, 1, 1), u.iceColor.member(\"rgb\"), splat3(depthT)), transmit), \"scatteredRgb\");\n\t\t\tconst frostField = local(mul(sub(1, smoothstep(0, max(mul(u.frostDepth, .3), .01), mul(sdf, -1))), u.frostAmount), \"frostField\");\n\t\t\tconst frostScale = local(mul(u.frostScale, 60), \"frostScl\");\n\t\t\tconst feps = .004;\n\t\t\tconst fn0 = local(surfaceNoise(mul(pdx, frostScale), mul(pdy, frostScale)), \"fn0\");\n\t\t\tconst fnx = div(sub(surfaceNoise(mul(add(pdx, feps), frostScale), mul(pdy, frostScale)), fn0), feps);\n\t\t\tconst fny = div(sub(surfaceNoise(mul(pdx, frostScale), mul(add(pdy, feps), frostScale)), fn0), feps);\n\t\t\tconst frostNormalAmp = local(mul(mul(frostField, u.frostRoughness), steepAtten), \"frostNormalAmp\");\n\t\t\tconst wScale = mul(u.frostScale, 40);\n\t\t\tconst wc = call(mxWorleyNoiseFloat2Pub, \"mxWorleyNoiseFloat2Pub\", [vec2(mul(pdx, wScale), mul(pdy, wScale)), float(1)]);\n\t\t\tconst fx3 = local(guarded(gt(frostField, 0), vec3(mul(mul(fnx, frostNormalAmp), .03), mul(mul(fny, frostNormalAmp), .03), mul(smoothstep(.25, 0, wc), frostField)), vec3(0, 0, 0), \"frostFx\", [\n\t\t\t\tpat,\n\t\t\t\tfrostField,\n\t\t\t\tfrostScale,\n\t\t\t\tsteepAtten\n\t\t\t]), \"fx3\");\n\t\t\tconst n = nudgeNormal(nBase, fx3.member(\"x\"), fx3.member(\"y\"));\n\t\t\tconst kl = keyLightAt(direction(u.lightAngle, \"light\"), -.6);\n\t\t\tconst L = kl.member(\"L\");\n\t\t\tconst ndl = local(dot(n, L), \"ndl\");\n\t\t\tconst ndh = local(clamp(dot(n, kl.member(\"H\")), 0, 1), \"ndh\");\n\t\t\tconst sssDiffuse = pow(add(mul(ndl, .5), .5), .7);\n\t\t\tconst forwardGlow = mul(mul(mul(transmit, clamp(add(mul(dot(L, vec3(0, 0, 1)), .5), .5), 0, 1)), u.scatter), sub(1, mul(depthT, .4)));\n\t\t\tconst sssRgb = add(mul(scatteredRgb, add(mul(sssDiffuse, .6), .5)), mul(forwardGlow, .5));\n\t\t\tconst glintField = local(add(mul(surfaceNoise(add(mul(pdx, 190), 13.7), sub(mul(pdy, 190), 4.3)), .5), .5), \"glintField\");\n\t\t\tconst twinkle = add(mul(sin(add(mul(t, 3), mul(glintField, 40))), .5), .5);\n\t\t\tconst sparkleGlint = guarded(gt(frostField, 0), mul(mul(mul(smoothstep(.72, .96, mul(glintField, twinkle)), add(mul(pow(ndh, 6), .6), .4)), frostField), u.sparkle), float(0), \"sparkleGlint\", [\n\t\t\t\tpat,\n\t\t\t\tfrostField,\n\t\t\t\tndh\n\t\t\t]);\n\t\t\tconst frostRgb = mul(vec3(.95, .98, 1), add(mul(fx3.member(\"z\"), .4), mul(sparkleGlint, 4)));\n\t\t\tconst fres = mul(pow(grazingFlat(n), 3), u.fresnel);\n\t\t\tconst fresnelRgb = mul(vec3(.85, .93, 1), mul(fres, 1.5));\n\t\t\tconst broadSpec = local(mul(mul(pow(ndh, 16), .4), u.gloss), \"broadSpec\");\n\t\t\tconst iceRgb = local(add(add(add(add(sssRgb, mul(vec3(.4, .46, .55), u.ambient)), splat3(broadSpec)), fresnelRgb), frostRgb), \"iceRgb\");\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(iceRgb, transition), ZERO, \"frost\");\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the ice shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the ice shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the ice shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\ticeColor: {\n\t\t\tdefault: \"#0597fc\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Ice tint — the colour deep ice saturates toward (thin edges stay near white)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Ice Color\",\n\t\t\t\tgroup: \"Ice\"\n\t\t\t}\n\t\t},\n\t\tambient: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Cool ambient fill so shadowed ice never goes black\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ambient\",\n\t\t\t\tgroup: \"Ice\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Softness of the shape boundary edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Ice\"\n\t\t\t}\n\t\t},\n\t\tdensity: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Optical depth multiplier — how thick and deep the ice reads\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Density\",\n\t\t\t\tgroup: \"Subsurface\"\n\t\t\t}\n\t\t},\n\t\tabsorption: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Beer–Lambert absorption strength — higher drives a deeper blue-teal core\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Absorption\",\n\t\t\t\tgroup: \"Subsurface\"\n\t\t\t}\n\t\t},\n\t\tscatter: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Forward back-lit glow transmitted through thin ice\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scatter\",\n\t\t\t\tgroup: \"Subsurface\"\n\t\t\t}\n\t\t},\n\t\tfrostAmount: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"Overall density of the rim frost crystals\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Frost\",\n\t\t\t\tgroup: \"Frost\"\n\t\t\t}\n\t\t},\n\t\tfrostDepth: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How far the frost creeps inward from the rim\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Frost Depth\",\n\t\t\t\tgroup: \"Frost\"\n\t\t\t}\n\t\t},\n\t\tfrostScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Crystal size — higher = finer, busier frost\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Frost Scale\",\n\t\t\t\tgroup: \"Frost\"\n\t\t\t}\n\t\t},\n\t\tfrostRoughness: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Feathery roughness of the frost crystal surface\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Frost Roughness\",\n\t\t\t\tgroup: \"Frost\"\n\t\t\t}\n\t\t},\n\t\tsparkle: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Tiny bright crystal glints catching the light at the rim\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Sparkle\",\n\t\t\t\tgroup: \"Frost\"\n\t\t\t}\n\t\t},\n\t\tgloss: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Surface sheen — the broad soft icy specular\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gloss\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tfresnel: {\n\t\t\tdefault: .02,\n\t\t\tdescription: \"Cold rim glow on grazing surfaces\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Fresnel\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 300,\n\t\t\tdescription: \"Key light direction in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Sparkle twinkle speed. 0 freezes the sparkle.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar Frost_default = componentDefinition;\nexport { componentDefinition as n, Frost_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { E as unitized, d as gaborGrains, m as noiseTone, x as seededPlane } from \"./noise-d7rmP9yc.js\";\nimport { i as noiseToneProps, r as noiseSpeedProp, t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"GaborNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Oriented sine-grain noise with a fingerprint-like flow\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tscale: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Pattern scale (higher = larger patterns)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Frequency of the oriented waves within each cell\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 24,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseToneProps(),\n\t\t...noiseSpeedProp()\n\t},\n\tpaint: rampOver(noiseTone(seededPlane(unitized(gaborGrains({ frequency: p(\"frequency\") })), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar GaborNoise_default = componentDefinition;\nexport { componentDefinition as n, GaborNoise_default as t };\n","import { d as glassShellProps, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { y as createGaussianBlurCompute } from \"./blur-7yjVyMvI.js\";\nimport { F as shapedSurface } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { n as glass_exports } from \"./glass-ABppDbYG.js\";\nimport { a as transformColor, c as transformPosition, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nimport { a as recompileWhen } from \"./slots-BqIef2iV.js\";\nvar { applyGlassEffect } = glass_exports;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nfunction frostBlurCompute(params) {\n\tconst { childNode, gpu, convertToTexture, registerComputeTexture, getCpuValue, onCleanup, onResize, dimensions } = params;\n\tconst root = gpu?.root;\n\tconst blurValue = getCpuValue(\"blur\");\n\tif (!childNode || !root || typeof blurValue === \"number\" \u0026\u0026 blurValue \u003c= 0) return null;\n\tconst childTexture = convertToTexture(childNode);\n\tlet curWidth = Math.max(1, Math.round(dimensions.width));\n\tlet curHeight = Math.max(1, Math.round(dimensions.height));\n\tconst gaussian = createGaussianBlurCompute(root, null, curWidth, curHeight, onCleanup);\n\tconst blurredTexture = registerComputeTexture(gaussian.outputTexture);\n\tonResize(({ width, height }) =\u003e {\n\t\tcurWidth = Math.max(1, Math.round(width));\n\t\tcurHeight = Math.max(1, Math.round(height));\n\t\tgaussian.setInputDimensions(curWidth, curHeight);\n\t});\n\treturn {\n\t\toutputs: {\n\t\t\tchildTexture,\n\t\t\tblurredTexture\n\t\t},\n\t\tbindInputs: (resolve) =\u003e {\n\t\t\tconst src = resolve(childTexture.key);\n\t\t\tif (src) gaussian.setInputTexture(src.texture);\n\t\t},\n\t\tgetComputeNodes: () =\u003e {\n\t\t\tconst b = getCpuValue(\"blur\");\n\t\t\tif (typeof b === \"number\") gaussian.updateRadius(b * 2);\n\t\t\treturn gaussian.computeSteps;\n\t\t}\n\t};\n}\nvar spine = shapedSurface({\n\tchord: \"firstLobe\",\n\tgradSampler: \"same\",\n\tbakedGradients: \"all\",\n\tstencil: \"none\",\n\tchild: \"required\",\n\tsurface: (frame, params) =\u003e applyGlassEffect(params, frame.sampler, frame.childTexture, params.computeOutputs?.blurredTexture, {\n\t\tvolumetric: frame.volumetric,\n\t\tbakedGradients: frame.bakedGradients\n\t})\n});\nvar glassCompute = (params) =\u003e {\n\tconst fieldResult = spine.compute(params);\n\tconst blurResult = frostBlurCompute(params);\n\tif (!fieldResult \u0026\u0026 !blurResult) return null;\n\treturn {\n\t\toutputs: {\n\t\t\t...blurResult?.outputs,\n\t\t\t...fieldResult?.outputs\n\t\t},\n\t\tbindInputs: blurResult?.bindInputs,\n\t\tgetComputeNodes: (frameParams) =\u003e {\n\t\t\tconst nodes = [...blurResult?.getComputeNodes() ?? [], ...fieldResult?.getComputeNodes(frameParams) ?? []];\n\t\t\treturn nodes.length ? nodes : null;\n\t\t}\n\t};\n};\nconst componentDefinition = defineStd({\n\tname: \"Glass\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Optically realistic glass lens driven in a custom shape\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\t...spine,\n\tcompute: glassCompute,\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the glass shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the glass shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the glass shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcutout: {\n\t\t\tdefault: false,\n\t\t\tdescription: \"Cut out the alpha outside the glass shape\",\n\t\t\ttransform: transformBoolean,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Cutout\",\n\t\t\t\tgroup: \"Glass\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\trefraction: {\n\t\t\t\tdefault: 1,\n\t\t\t\tdescription: \"Lens refraction — how aggressively the edges warp content beneath (0 = none, 1 = max)\",\n\t\t\t\tui: { max: 2 }\n\t\t\t},\n\t\t\tedgeSoftness: {\n\t\t\t\tdefault: .1,\n\t\t\t\tdescription: \"Edge softness — higher values give a wider, softer fade at the glass boundary\"\n\t\t\t}\n\t\t}),\n\t\tblur: {\n\t\t\tdefault: 0,\n\t\t\trecompile: recompileWhen((prev, next) =\u003e prev \u003e 0 !== next \u003e 0),\n\t\t\tdescription: \"Frosted blur amount — 0 = clear glass, higher = frosted/diffuse\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Blur\",\n\t\t\t\tgroup: \"Glass\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ thickness: {\n\t\t\ttransform: (v) =\u003e v * .5,\n\t\t\tdescription: \"Glass depth — how far inward from the edge the refraction extends\"\n\t\t} }),\n\t\taberration: {\n\t\t\tdefault: .5,\n\t\t\trecompile: recompileWhen((prev, next) =\u003e prev \u003e 0 !== next \u003e 0),\n\t\t\tdescription: \"Chromatic aberration — splits RGB channels along the refraction vector\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Aberration\",\n\t\t\t\tgroup: \"Glass\"\n\t\t\t}\n\t\t},\n\t\tinnerZoom: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Inner zoom level — magnifies content seen through the glass\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Inner Zoom\",\n\t\t\t\tgroup: \"Glass\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\tlightAngle: {\n\t\t\t\tdefault: 300,\n\t\t\t\tdescription: \"Light angle in degrees\",\n\t\t\t\tui: { group: \"Highlight\" }\n\t\t\t},\n\t\t\thighlight: {\n\t\t\t\tdefault: .05,\n\t\t\t\tdescription: \"Directional edge highlight — bright rim on the light-facing boundary\"\n\t\t\t},\n\t\t\thighlightColor: { description: \"Color of the directional edge highlight and specular glint\" },\n\t\t\thighlightSoftness: { description: \"Specular highlight softness\" },\n\t\t\tfresnel: { description: \"Fresnel rim glow — a soft luminous halo around the glass boundary\" },\n\t\t\tfresnelSoftness: true,\n\t\t\tfresnelColor: true\n\t\t}),\n\t\ttintColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color tint applied to the internal directional gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tint Color\",\n\t\t\t\tgroup: \"Tint\"\n\t\t\t}\n\t\t},\n\t\ttintIntensity: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Intensity of the color tint applied to the glass interior\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Tint Intensity\",\n\t\t\t\tgroup: \"Tint\"\n\t\t\t}\n\t\t},\n\t\ttintPreserveLuminosity: {\n\t\t\tdefault: true,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Preserve original brightness when tinting\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Preserve Luminosity\",\n\t\t\t\tgroup: \"Tint\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file — when non-empty, activates SVG mode and triggers a shader recompile\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type — triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.\"\n\t\t}\n\t}\n});\nvar Glass_default = componentDefinition;\nexport { componentDefinition as n, Glass_default as t };\n","import { at as ZERO, c as p, o as uniformOf, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as glassTilesFragment, l as glassTilesRemapUV } from \"./motionBlur-g_WSi2iq.js\";\nconst componentDefinition = defineStd({\n\tname: \"GlassTiles\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Distortions\",\n\tdescription: \"Refraction-like distortion in a tile grid pattern\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"The intensity of the glass tiles effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\ttileCount: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Number of tiles across the longest dimension\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 5,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Tile Count\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation angle of the tile grid in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\troundness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Makes tiles more circular instead of square\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Roundness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: {\n\t\tfragment: (params) =\u003e {\n\t\t\tif (!params.childNode) {\n\t\t\t\tconsole.error(\"You must pass a child component into the Glass Tiles shader.\");\n\t\t\t\treturn ZERO;\n\t\t\t}\n\t\t\treturn glassTilesFragment({\n\t\t\t\tuv: params.ctx.uv,\n\t\t\t\taspect: params.ctx.aspect,\n\t\t\t\tintensity: uniformOf(p(\"intensity\"), params),\n\t\t\t\ttileCount: uniformOf(p(\"tileCount\"), params),\n\t\t\t\trotation: uniformOf(p(\"rotation\"), params),\n\t\t\t\troundness: uniformOf(p(\"roundness\"), params),\n\t\t\t\ttexture: params.convertToTexture(params.childNode)\n\t\t\t});\n\t\t},\n\t\tuvRemap: ({ uv, mask, uniforms, aspect }) =\u003e ({\n\t\t\tuv: glassTilesRemapUV({\n\t\t\t\tuv,\n\t\t\t\taspect,\n\t\t\t\tintensity: uniformOf(p(\"intensity\"), { uniforms }),\n\t\t\t\ttileCount: uniformOf(p(\"tileCount\"), { uniforms }),\n\t\t\t\trotation: uniformOf(p(\"rotation\"), { uniforms }),\n\t\t\t\troundness: uniformOf(p(\"roundness\"), { uniforms })\n\t\t\t}),\n\t\t\tmask\n\t\t})\n\t}\n});\nvar GlassTiles_default = componentDefinition;\nexport { componentDefinition as n, GlassTiles_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as glitchFrame, l as colorBarFills, m as distortedScanlines, v as gatherStack, x as glitchRgbSplit } from \"./blurs-d4B9aUyx.js\";\nvar glitchGeometry = glitchFrame({\n\tintensity: p(\"intensity\"),\n\tspeed: p(\"speed\"),\n\tblockDensity: p(\"blockDensity\"),\n\tmirrorAmount: p(\"mirrorAmount\")\n});\nconst componentDefinition = defineStd({\n\tname: \"Glitch\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Digital glitch that melts pixels and distorts colors\",\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Overall glitch strength and frequency of glitch bursts\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How fast the glitch pattern evolves\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trgbShift: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Amount of chromatic aberration (RGB channel splitting)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"RGB Shift\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tblockDensity: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Base number of horizontal glitch bands\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Block Density\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorBarIntensity: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Intensity of vivid neon color bar overlay in glitch regions\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Color Bars\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tmirrorAmount: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Chance of glitch blocks showing mirrored/flipped content\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Mirror\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tscanlineIntensity: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Visibility of CRT-style horizontal scanlines in distorted areas\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scanlines\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(glitchRgbSplit(glitchGeometry, { shift: p(\"rgbShift\") }), [colorBarFills(glitchGeometry, { intensity: p(\"colorBarIntensity\") }), distortedScanlines(glitchGeometry, { intensity: p(\"scanlineIntensity\") })])\n});\nvar Glitch_default = componentDefinition;\nexport { componentDefinition as n, Glitch_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as crosses } from \"./slots-BqIef2iV.js\";\nimport { r as bloom } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"Glow\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Soft glow effect with adjustable intensity\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Glow intensity (brightness of the glow effect)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthreshold: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Brightness threshold for glow extraction (lower = more glow)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsize: {\n\t\t\tdefault: 25,\n\t\t\tdescription: \"Glow spread in pixels (clean up to ~72px, mild banding above)\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Glow Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\t...bloom({\n\t\tintensity: p(\"intensity\"),\n\t\tthreshold: p(\"threshold\"),\n\t\tsize: p(\"size\")\n\t})\n});\nvar Glow_default = componentDefinition;\nexport { componentDefinition as n, Glow_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { E as seamlessRadialFrame, S as noiseRays, j as withFrame, o as coverageOver } from \"./light-D3BIVkxy.js\";\nconst componentDefinition = defineStd({\n\tname: \"Godrays\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Volumetric light rays emanating from a point\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: 0,\n\t\t\t\ty: 0\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point of the god rays\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tdensity: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Frequency of ray sectors\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Density\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"Ray visibility within sectors\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspotty: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Density of spots on rays (higher = more spots)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Spotty\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Animation speed of the rays\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\trayColor: {\n\t\t\tdefault: \"#4283fb\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the light rays\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Ray Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tbackgroundColor: {\n\t\t\tdefault: \"transparent\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Background color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Background Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: coverageOver({\n\t\tcolor: p(\"rayColor\"),\n\t\tbackground: p(\"backgroundColor\"),\n\t\tcoverage: withFrame(seamlessRadialFrame(p(\"center\")), noiseRays({\n\t\t\tdensity: p(\"density\"),\n\t\t\tintensity: p(\"intensity\"),\n\t\t\tspotty: p(\"spotty\")\n\t\t}))\n\t})\n});\nvar Godrays_default = componentDefinition;\nexport { componentDefinition as n, Godrays_default as t };\n","import { at as ZERO, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { F as shapedSurface, b as keyLightAt, g as guarded, m as grazingFlat } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, D as pow, E as normalize, H as vec4, L as sqrt, N as sin, P as smoothstep, S as min, V as vec3, _ as le, a as cos, c as exp, i as clamp, n as add, o as div, s as dot, u as float, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction } from \"./frames-BLqt7oaW.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar N_CHARGES = 7;\nvar jhash = (x) =\u003e {\n\tconst s = Math.sin(x * 12.9898) * 43758.5453;\n\treturn s - Math.floor(s);\n};\nvar POS_FREQ = [];\nvar PHASE = [];\nfor (let i = 0; i \u003c N_CHARGES; i++) {\n\tconst theta = i * 2.399963;\n\tconst rr = Math.sqrt((i + .5) / N_CHARGES);\n\tPOS_FREQ.push([\n\t\trr * Math.cos(theta),\n\t\trr * Math.sin(theta),\n\t\t.5 + jhash(i + 1),\n\t\t.5 + jhash(i + 7)\n\t]);\n\tPHASE.push([\n\t\t.5 + jhash(i + 13),\n\t\tjhash(i + 2) * 6.2831853,\n\t\tjhash(i + 5) * 6.2831853,\n\t\tjhash(i + 9) * 6.2831853\n\t]);\n}\nconst componentDefinition = defineStd({\n\tname: \"Goo\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Photoreal wet liquid — animated 3D metaball blobs that merge and bulge to loosely form the shape, with sliding wet highlights, a clearcoat rim and a translucent body\",\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the goo\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the goo (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the goo in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tgooColor: {\n\t\t\tdefault: \"#37c95a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Base liquid color (a glossy slime green by default)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Goo Color\",\n\t\t\t\tgroup: \"Goo\"\n\t\t\t}\n\t\t},\n\t\ttranslucency: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Subsurface glow strength — deep lobes transmit more color\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Translucency\",\n\t\t\t\tgroup: \"Goo\"\n\t\t\t}\n\t\t},\n\t\tabsorb: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"How fast thin areas clear and thick areas saturate (Beer–Lambert)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Absorption\",\n\t\t\t\tgroup: \"Goo\"\n\t\t\t}\n\t\t},\n\t\tcontainment: {\n\t\t\tdefault: .9,\n\t\t\tdescription: \"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)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Containment\",\n\t\t\t\tgroup: \"Goo\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .06,\n\t\t\tdescription: \"Softness of the blob coverage edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .3,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Goo\"\n\t\t\t}\n\t\t},\n\t\tblobScale: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Base radius of each liquid lobe\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Blob Size\",\n\t\t\t\tgroup: \"Blobs\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How far the lobes scatter across the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Blobs\"\n\t\t\t}\n\t\t},\n\t\tmerge: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How much the lobes fuse together — low = distinct beads, high = one fused mass\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Merge\",\n\t\t\t\tgroup: \"Blobs\"\n\t\t\t}\n\t\t},\n\t\tbulge: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How 3D-rounded each lobe reads — dome height of the wet surface\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bulge\",\n\t\t\t\tgroup: \"Blobs\"\n\t\t\t}\n\t\t},\n\t\tthreshold: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Iso-surface level — lower makes fatter, fuller blobs\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .2,\n\t\t\t\tmax: .9,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Blobs\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 300,\n\t\t\tdescription: \"Light direction in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\twetness: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Master scale on the sharp specular highlight and clearcoat rim\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Highlights\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tfresnel: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Clearcoat fresnel rim strength wrapping each lobe\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Fresnel\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tspecColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Highlight / rim color (white reads as a clear wet coat)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Highlight Color\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tambient: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Base fill so shadowed goo isn't black\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ambient\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Drift and breathe speed of the blobs. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\twobble: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Drift amplitude — how far the lobe centers wander\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Wobble\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tbreathe: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Radius pulsing amplitude — lobes swell and shrink\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Breathe\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Variation offset — shifts the blob arrangement\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...shapedSurface({\n\t\tchord: \"firstLobe\",\n\t\tstencil: {\n\t\t\tkind: \"forward\",\n\t\t\teps: .004\n\t\t},\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = local(animatedTime(params, \"seed\"), \"gooT\");\n\t\t\tconst EPS = .004;\n\t\t\tconst s0 = local(frame.surf0, \"s0\");\n\t\t\tconst sdfUV = local(frame.sdfUV, \"sdfUV\");\n\t\t\tconst px = local(sub(sdfUV.member(\"x\"), .5), \"px\");\n\t\t\tconst py = local(sub(sdfUV.member(\"y\"), .5), \"py\");\n\t\t\tconst distC = sqrt(add(mul(px, px), mul(py, py)));\n\t\t\tconst spread = local(mul(u.spread, .45), \"spread\");\n\t\t\tconst driftAmp = local(mul(u.wobble, .12), \"driftAmp\");\n\t\t\tconst breatheAmp = local(u.breathe, \"breatheAmp\");\n\t\t\tconst radiusMul = add(.65, mul(u.merge, .7));\n\t\t\tconst baseR = local(mul(mul(u.blobScale, .38), radiusMul), \"baseR\");\n\t\t\tconst maxReach = add(add(add(spread, mul(baseR, add(1, breatheAmp))), driftAmp), .2);\n\t\t\tlet potC = null;\n\t\t\tlet potX = null;\n\t\t\tlet potY = null;\n\t\t\tfor (let i = 0; i \u003c N_CHARGES; i++) {\n\t\t\t\tconst pf = POS_FREQ[i];\n\t\t\t\tconst ph = PHASE[i];\n\t\t\t\tconst cx = local(add(mul(pf[0], spread), mul(driftAmp, sin(add(mul(t, pf[2]), ph[1])))), `cx${i}`);\n\t\t\t\tconst cy = local(add(mul(pf[1], spread), mul(driftAmp, cos(add(mul(t, pf[3]), ph[2])))), `cy${i}`);\n\t\t\t\tconst rVal = local(mul(baseR, add(1, mul(breatheAmp, sin(add(mul(t, ph[0]), ph[3]))))), `rVal${i}`);\n\t\t\t\tconst invR2 = local(div(1, max(mul(rVal, rVal), 1e-4)), `invR2_${i}`);\n\t\t\t\tconst dcx = local(sub(px, cx), `dcx${i}`);\n\t\t\t\tconst dcy = local(sub(py, cy), `dcy${i}`);\n\t\t\t\tconst termC = exp(mul(mul(add(mul(dcx, dcx), mul(dcy, dcy)), invR2), -1));\n\t\t\t\tconst dxx = local(sub(add(px, EPS), cx), `dxx${i}`);\n\t\t\t\tconst termX = exp(mul(mul(add(mul(dxx, dxx), mul(dcy, dcy)), invR2), -1));\n\t\t\t\tconst dyy = local(sub(add(py, EPS), cy), `dyy${i}`);\n\t\t\t\tconst termY = exp(mul(mul(add(mul(dcx, dcx), mul(dyy, dyy)), invR2), -1));\n\t\t\t\tpotC = potC ? add(potC, termC) : termC;\n\t\t\t\tpotX = potX ? add(potX, termX) : termX;\n\t\t\t\tpotY = potY ? add(potY, termY) : termY;\n\t\t\t}\n\t\t\tconst inside0 = local(sub(1, smoothstep(-.06, .06, s0.member(\"x\"))), \"inside0\");\n\t\t\tconst insideX = local(sub(1, smoothstep(-.06, .06, frame.surfX.member(\"x\"))), \"insideX\");\n\t\t\tconst insideY = local(sub(1, smoothstep(-.06, .06, frame.surfY.member(\"x\"))), \"insideY\");\n\t\t\tconst contain = u.containment;\n\t\t\tconst H0 = local(add(mul(potC, mix(float(1), inside0, contain)), mul(inside0, contain)), \"H0\");\n\t\t\tconst Hx = local(add(mul(potX, mix(float(1), insideX, contain)), mul(insideX, contain)), \"Hx\");\n\t\t\tconst Hy = local(add(mul(potY, mix(float(1), insideY, contain)), mul(insideY, contain)), \"Hy\");\n\t\t\tconst soft = local(max(u.edgeSoftness, .001), \"soft\");\n\t\t\tconst coverage = smoothstep(sub(u.threshold, soft), add(u.threshold, soft), H0);\n\t\t\tconst gradHx = div(sub(Hx, H0), EPS);\n\t\t\tconst gradHy = div(sub(Hy, H0), EPS);\n\t\t\tconst metaSlope = local(add(mul(u.bulge, .12), .03), \"metaSlope\");\n\t\t\tconst reliefGate = min(min(inside0, insideX), insideY);\n\t\t\tconst shapeRelief = local(mul(mul(contain, 1.6), reliefGate), \"shapeRelief\");\n\t\t\tconst gradAx = clamp(div(sub(frame.surfX.member(\"w\"), s0.member(\"w\")), EPS), -6, 6);\n\t\t\tconst gradAy = clamp(div(sub(frame.surfY.member(\"w\"), s0.member(\"w\")), EPS), -6, 6);\n\t\t\tconst n = local(normalize(vec3(add(mul(mul(gradHx, -1), metaSlope), mul(gradAx, shapeRelief)), add(mul(mul(gradHy, -1), metaSlope), mul(gradAy, shapeRelief)), -1)), \"n\");\n\t\t\tconst thick = local(clamp(add(mul(sqrt(max(sub(H0, u.threshold), 0)), u.bulge), mul(mul(max(mul(s0.member(\"x\"), -1), 0), contain), 1.2)), 0, 1), \"thick\");\n\t\t\tconst kl = keyLightAt(direction(u.lightAngle, \"light\"), -.8);\n\t\t\tconst ndl = local(clamp(dot(n, kl.member(\"L\")), 0, 1), \"ndl\");\n\t\t\tconst ndh = local(clamp(dot(n, kl.member(\"H\")), 0, 1), \"ndh\");\n\t\t\tconst specCore = mul(pow(ndh, 232), 1.7);\n\t\t\tconst specHalo = mul(pow(ndh, 32), .25);\n\t\t\tconst glint = mul(smoothstep(.992, .999, ndh), 1.9);\n\t\t\tconst fres = mul(pow(grazingFlat(n), 5), u.fresnel);\n\t\t\tconst specRgb = mul(u.specColor.member(\"rgb\"), mul(add(add(add(specCore, specHalo), glint), fres), u.wetness));\n\t\t\tconst transmit = exp(mul(mul(u.absorb, -1), sub(1, thick)));\n\t\t\tconst gooRgb = local(u.gooColor.member(\"xyz\"), \"gooRgb\");\n\t\t\tconst sss = mul(mul(gooRgb, mul(u.translucency, transmit)), add(mul(ndl, .5), .5));\n\t\t\tconst rgb = local(add(add(mul(gooRgb, add(u.ambient, mul(ndl, .7))), sss), specRgb), \"gooOut\");\n\t\t\treturn guarded(le(distC, maxReach), vec4(rgb, mul(coverage, u.gooColor.member(\"w\"))), ZERO, \"goo\");\n\t\t}\n\t})\n});\nvar Goo_default = componentDefinition;\nexport { componentDefinition as n, Goo_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as gradientMap } from \"./color-Do6tU0ry.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { i as isZero, n as crosses } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"GradientMap\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Maps source luminance through an animated color gradient (Photoshop-style gradient map)\",\n\tprops: {\n\t\tpalette: {\n\t\t\tdefault: \"rainbow\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Built-in cosine palette, or Custom Colors to pick your own stops\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Rainbow\",\n\t\t\t\t\t\tvalue: \"rainbow\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Sunset\",\n\t\t\t\t\t\tvalue: \"sunset\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Ocean\",\n\t\t\t\t\t\tvalue: \"ocean\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Fire\",\n\t\t\t\t\t\tvalue: \"fire\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Pastel\",\n\t\t\t\t\t\tvalue: \"pastel\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Neon\",\n\t\t\t\t\t\tvalue: \"neon\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Custom Colors\",\n\t\t\t\t\t\tvalue: \"custom\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Palette\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorLow: {\n\t\t\tdefault: \"#1a0b2e\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color for the darkest tones\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Shadows\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { palette: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorMid: {\n\t\t\tdefault: \"#e94560\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color for the midtones\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Midtones\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { palette: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorHigh: {\n\t\t\tdefault: \"#f9ed69\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color for the brightest tones\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Highlights\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { palette: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Gradient animation speed (0 = static). The gradient cycles seamlessly.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Steepness of the luminance-to-gradient mapping\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tblackPoint: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Input shadow clip — luminance at/below this maps to the start of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Black Point\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\twhitePoint: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Input highlight clip — luminance at/above this maps to the end of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"White Point\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstrength: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Blend between the original image (0) and the gradient-mapped result (1)\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklch\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for interpolating custom colors\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { palette: \"custom\" }\n\t\t\t}\n\t\t}\n\t},\n\teffect: gradientMap({\n\t\tpalette: p(\"palette\"),\n\t\tcolorLow: p(\"colorLow\"),\n\t\tcolorMid: p(\"colorMid\"),\n\t\tcolorHigh: p(\"colorHigh\"),\n\t\tspeed: p(\"speed\"),\n\t\tcontrast: p(\"contrast\"),\n\t\tblackPoint: p(\"blackPoint\"),\n\t\twhitePoint: p(\"whitePoint\"),\n\t\tstrength: p(\"strength\"),\n\t\tcolorSpace: p(\"colorSpace\")\n\t}),\n\tidentityWhen: isZero(\"strength\"),\n\tmissingChildMessage: \"You must pass a child component into the GradientMap shader.\"\n});\nvar GradientMap_default = componentDefinition;\nexport { componentDefinition as n, GradientMap_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { o as grayscale } from \"./color-Do6tU0ry.js\";\nconst componentDefinition = defineStd({\n\tname: \"Grayscale\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Convert colors to black and white\",\n\tprops: {},\n\teffect: grayscale(),\n\tmissingChildMessage: \"You must pass a child component into the Grayscale shader.\"\n});\nvar Grayscale_default = componentDefinition;\nexport { componentDefinition as n, Grayscale_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, D as vary, d as gridLines, r as cellFrame, x as sampleMapsAtCellCentres } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar field = gridLines({\n\tframe: cellFrame({\n\t\tcells: p(\"cells\"),\n\t\trotation: p(\"rotation\"),\n\t\tconvention: \"flippedY\"\n\t}),\n\tthickness: p(\"thickness\"),\n\tsoftness: p(\"softness\"),\n\tvariation: p(\"variation\")\n});\nconst componentDefinition = defineStd({\n\tname: \"Grid\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Simple grid lines pattern with adjustable thickness and rotation\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The color of the grid lines\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Line Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcellColor: {\n\t\t\tdefault: \"transparent\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Fill color of the cells (transparent = lines only). Pair with Variation for a tiled look.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Cell Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcells: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Number of cells along the shortest canvas edge (creates square cells)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cells\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Thickness of grid lines (normalized, 0.0-1.0)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the grid in degrees. At 45° this produces a crosshatch/diamond pattern.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Softness of the line edges (0 = crisp, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tvariation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Per-cell random lightening/darkening of the cell fill color\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tmapSampleUVs: sampleMapsAtCellCentres({\n\t\tcells: p(\"cells\"),\n\t\trotation: p(\"rotation\"),\n\t\tprops: [\n\t\t\t\"thickness\",\n\t\t\t\"cells\",\n\t\t\t\"rotation\",\n\t\t\t\"softness\"\n\t\t]\n\t}),\n\tpaint: strokeOver({\n\t\tfill: vary(p(\"cellColor\"), field.shade),\n\t\tstroke: p(\"color\"),\n\t\tmask: field.lines,\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar Grid_default = componentDefinition;\nexport { componentDefinition as n, Grid_default as t };\n","import { Ar as vec2u, Br as struct, Gn as typegpu_default, Mr as vec4f, Rr as textureStorage2d, Y as createStateBuffer, Yn as textureStore, Yr as u32, ar as clamp, er as select, lr as exp, q as createGuardedCompute, qr as f32, tr as abs, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { a as op, o as trackedViewport } from \"./grids-Cv99xcJg.js\";\nvar STATE_FORMAT = \"rgba16float\";\nvar SPLAT_MAX_CELLS = 16384;\nconst clampSplatGridSize = (v) =\u003e Math.max(8, Math.min(128, Math.floor(v)));\nvar splatUpdateLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tbuffer: {\n\t\tstorage: arrayOf(vec4f, SPLAT_MAX_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\t\tcursorX: f32,\n\t\tcursorY: f32,\n\t\tmouseVelX: f32,\n\t\tmouseVelY: f32,\n\t\tdt: f32,\n\t\tdecay: f32,\n\t\tintensity: f32,\n\t\tradius: f32,\n\t\taspect: f32\n\t}), \"uniform\") }\n}), \"splatUpdateLayout\");\nvar splatOutputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tbuffer: {\n\t\tstorage: arrayOf(vec4f, SPLAT_MAX_CELLS),\n\t\taccess: \"readonly\"\n\t},\n\tdispTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"splatOutputLayout\");\nfunction makeSplatUpdateKernel(gridSize) {\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = splatUpdateLayout.$.params;\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(gridSize)), cx);\n\t\tconst cell = splatUpdateLayout.$.buffer[idx];\n\t\tlet dx = __tsover_mul(cell.x, __tsover_sub(1, __tsover_mul(p.decay, p.dt)));\n\t\tlet dy = __tsover_mul(cell.y, __tsover_sub(1, __tsover_mul(p.decay, p.dt)));\n\t\tconst cellX = __tsover_div(__tsover_add(f32(cx), .5), f32(gridSize));\n\t\tconst cellY = __tsover_div(__tsover_add(f32(cy), .5), f32(gridSize));\n\t\tconst ddx = select(__tsover_sub(cellX, p.cursorX), __tsover_mul(__tsover_sub(cellX, p.cursorX), p.aspect), p.aspect \u003e= 1);\n\t\tconst ddy = select(__tsover_div(__tsover_sub(cellY, p.cursorY), p.aspect), __tsover_sub(cellY, p.cursorY), p.aspect \u003e= 1);\n\t\tconst distSq = __tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy));\n\t\tconst radius2 = __tsover_mul(p.radius, 2);\n\t\tif (distSq \u003c __tsover_mul(radius2, radius2) \u0026\u0026 __tsover_add(abs(p.mouseVelX), abs(p.mouseVelY)) \u003e .01) {\n\t\t\tconst influence = exp(__tsover_mul(__tsover_div(distSq, __tsover_mul(p.radius, p.radius)), -1));\n\t\t\tdx = __tsover_add(dx, __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(p.mouseVelX, influence), p.intensity), p.dt), .5));\n\t\t\tdy = __tsover_add(dy, __tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(p.mouseVelY, influence), p.intensity), p.dt), .5));\n\t\t}\n\t\tdx = clamp(dx, -1, 1);\n\t\tdy = clamp(dy, -1, 1);\n\t\tsplatUpdateLayout.$.buffer[idx] = vec4f(dx, dy, 0, 0);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"splatUpdateLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"gridSize\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"splatUpdateLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"buffer\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"decay\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"gridSize\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cellY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"gridSize\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ddx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ddy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"distSq\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"radius2\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"radius2\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"radius2\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"mouseVelX\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"mouseVelY\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mouseVelX\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"influence\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mouseVelY\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"influence\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"dx\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"dy\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"splatUpdateLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"buffer\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"dx\",\n\t\t\t\t\t\t\t\"dy\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"splatUpdateLayout\": () =\u003e splatUpdateLayout,\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"gridSize\": () =\u003e gridSize,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"std.select\": () =\u003e select,\n\t\t\t\"std.abs\": () =\u003e abs,\n\t\t\t\"std.exp\": () =\u003e exp,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"pointerSplatUpdate\");\n}\nfunction makeSplatOutputKernel(gridSize) {\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst idx = __tsover_add(__tsover_mul(cy, u32(gridSize)), cx);\n\t\tconst cell = splatOutputLayout.$.buffer[idx];\n\t\ttextureStore(splatOutputLayout.$.dispTex, vec2u(cx, cy), vec4f(cell.x, cell.y, 0, 1));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"gridSize\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"cell\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"splatOutputLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"buffer\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"splatOutputLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"dispTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.u32\": () =\u003e u32,\n\t\t\t\"gridSize\": () =\u003e gridSize,\n\t\t\t\"splatOutputLayout\": () =\u003e splatOutputLayout,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"pointerSplatOutput\");\n}\nfunction pointerSplatField(slots) {\n\treturn (params, root) =\u003e {\n\t\tconst { getCpuValue, registerComputeTexture, onCleanup } = params;\n\t\tconst gridSize = clampSplatGridSize(getCpuValue(slots.gridSize.name) ?? 20);\n\t\tconst buffer = createStateBuffer(root, vec4f, SPLAT_MAX_CELLS);\n\t\tconst dispTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\t\tsize: [gridSize, gridSize],\n\t\t\tformat: STATE_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\"), \"dispTex\");\n\t\tonCleanup(() =\u003e dispTex.destroy());\n\t\tconst displacement = registerComputeTexture(dispTex);\n\t\tconst updateParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(struct({\n\t\t\tcursorX: f32,\n\t\t\tcursorY: f32,\n\t\t\tmouseVelX: f32,\n\t\t\tmouseVelY: f32,\n\t\t\tdt: f32,\n\t\t\tdecay: f32,\n\t\t\tintensity: f32,\n\t\t\tradius: f32,\n\t\t\taspect: f32\n\t\t})), \"updateParams\");\n\t\tconst viewport = trackedViewport(params);\n\t\tconst size = [gridSize, gridSize];\n\t\tconst updateKernel = makeSplatUpdateKernel(gridSize);\n\t\tconst outputKernel = makeSplatOutputKernel(gridSize);\n\t\tconst updateBg = root.createBindGroup(splatUpdateLayout, {\n\t\t\tbuffer,\n\t\t\tparams: updateParams.buffer\n\t\t});\n\t\tconst outputBg = root.createBindGroup(splatOutputLayout, {\n\t\t\tbuffer,\n\t\t\tdispTex\n\t\t});\n\t\tconst update = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tupdateKernel(cx, cy);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t6,\n\t\t\t\t\t\"updateKernel\",\n\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: { \"updateKernel\": () =\u003e updateKernel }\n\t\t}) \u0026\u0026 $.f)({}), {\n\t\t\tsize,\n\t\t\tbindGroup: updateBg\n\t\t});\n\t\tconst output = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\toutputKernel(cx, cy);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t6,\n\t\t\t\t\t\"outputKernel\",\n\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: { \"outputKernel\": () =\u003e outputKernel }\n\t\t}) \u0026\u0026 $.f)({}), {\n\t\t\tsize,\n\t\t\tbindGroup: outputBg\n\t\t});\n\t\tlet prevX = .5;\n\t\tlet prevY = .5;\n\t\tlet smoothVelX = 0;\n\t\tlet smoothVelY = 0;\n\t\tlet px = .5;\n\t\tlet py = .5;\n\t\tlet active = false;\n\t\treturn {\n\t\t\toutputs: { [slots.output]: displacement },\n\t\t\tclampDt: .016,\n\t\t\tstages: [\n\t\t\t\top.host(\"cursorVelocity\", (f) =\u003e {\n\t\t\t\t\tpx = f.frameParams.pointer?.x ?? .5;\n\t\t\t\t\tpy = f.frameParams.pointer?.y ?? .5;\n\t\t\t\t\tconst velX = f.dt \u003e 0 ? (px - prevX) / f.dt : 0;\n\t\t\t\t\tconst velY = f.dt \u003e 0 ? (py - prevY) / f.dt : 0;\n\t\t\t\t\tsmoothVelX = smoothVelX * .85 + velX * .15;\n\t\t\t\t\tsmoothVelY = smoothVelY * .85 + velY * .15;\n\t\t\t\t\tprevX = px;\n\t\t\t\t\tprevY = py;\n\t\t\t\t\tactive = Math.abs(velX) + Math.abs(velY) \u003e .01;\n\t\t\t\t}),\n\t\t\t\top.settle({\n\t\t\t\t\tactiveWhen: () =\u003e active,\n\t\t\t\t\tsettleMs: (f) =\u003e {\n\t\t\t\t\t\tconst decayVal = f.num(slots.decay.name, 3);\n\t\t\t\t\t\treturn decayVal \u003e 0 ? Math.min(3e4, Math.log(1e-4) / Math.log(Math.max(1e-6, 1 - decayVal * .016)) * 16.67) : 3e4;\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\top.values(\"brush+decay\", (f) =\u003e {\n\t\t\t\t\tconst safe = viewport.safe(f.frameParams);\n\t\t\t\t\tupdateParams.write({\n\t\t\t\t\t\tcursorX: px,\n\t\t\t\t\t\tcursorY: py,\n\t\t\t\t\t\tmouseVelX: smoothVelX,\n\t\t\t\t\t\tmouseVelY: smoothVelY,\n\t\t\t\t\t\tdt: f.dt,\n\t\t\t\t\t\tdecay: f.num(slots.decay.name, 3),\n\t\t\t\t\t\tintensity: f.num(slots.intensity.name, 1),\n\t\t\t\t\t\tradius: f.num(slots.radius.name, 1) * .05,\n\t\t\t\t\t\taspect: safe.width / safe.height\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t\top.pass(update),\n\t\t\t\top.publish(() =\u003e output)\n\t\t\t]\n\t\t};\n\t};\n}\nvar LATTICE_GRID = 64;\nvar LATTICE_CELLS = LATTICE_GRID * LATTICE_GRID;\nvar LATTICE_MAX = LATTICE_GRID - 1;\nvar latticeLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\treadBuf: {\n\t\tstorage: arrayOf(vec4f, LATTICE_CELLS),\n\t\taccess: \"readonly\"\n\t},\n\twriteBuf: {\n\t\tstorage: arrayOf(vec4f, LATTICE_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\t\tcursorX: f32,\n\t\tcursorY: f32,\n\t\tdirX: f32,\n\t\tdirY: f32,\n\t\tclampedSpeed: f32,\n\t\tdt: f32,\n\t\tsubDt: f32,\n\t\tstiffness: f32,\n\t\tdampFactor: f32,\n\t\tradius: f32,\n\t\taspect: f32\n\t}), \"uniform\") }\n}), \"latticeLayout\");\nvar latticeOutputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tsrcBuf: {\n\t\tstorage: arrayOf(vec4f, LATTICE_CELLS),\n\t\taccess: \"readonly\"\n\t},\n\tdispTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"latticeOutputLayout\");\nconst springLatticeKernel = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\"use gpu\";\n\tif (cx \u003e u32(0) \u0026\u0026 cx \u003c u32(LATTICE_MAX) \u0026\u0026 cy \u003e u32(0) \u0026\u0026 cy \u003c u32(LATTICE_MAX)) {\n\t\tconst p = latticeLayout.$.params;\n\t\tconst gs = u32(LATTICE_GRID);\n\t\tconst idx = __tsover_add(__tsover_mul(cy, gs), cx);\n\t\tconst current = latticeLayout.$.readBuf[idx];\n\t\tconst dispX = current.x;\n\t\tconst dispY = current.y;\n\t\tconst velX = current.z;\n\t\tconst velY = current.w;\n\t\tconst nL = latticeLayout.$.readBuf[__tsover_sub(idx, u32(1))];\n\t\tconst nR = latticeLayout.$.readBuf[__tsover_add(idx, u32(1))];\n\t\tconst nU = latticeLayout.$.readBuf[__tsover_sub(idx, gs)];\n\t\tconst nD = latticeLayout.$.readBuf[__tsover_add(idx, gs)];\n\t\tconst nUL = latticeLayout.$.readBuf[__tsover_sub(__tsover_sub(idx, gs), u32(1))];\n\t\tconst nUR = latticeLayout.$.readBuf[__tsover_add(__tsover_sub(idx, gs), u32(1))];\n\t\tconst nDL = latticeLayout.$.readBuf[__tsover_sub(__tsover_add(idx, gs), u32(1))];\n\t\tconst nDR = latticeLayout.$.readBuf[__tsover_add(__tsover_add(idx, gs), u32(1))];\n\t\tlet fx = __tsover_mul(p.stiffness, __tsover_add(__tsover_add(__tsover_add(__tsover_sub(nL.x, dispX), __tsover_sub(nR.x, dispX)), __tsover_sub(nU.x, dispX)), __tsover_sub(nD.x, dispX)));\n\t\tlet fy = __tsover_mul(p.stiffness, __tsover_add(__tsover_add(__tsover_add(__tsover_sub(nL.y, dispY), __tsover_sub(nR.y, dispY)), __tsover_sub(nU.y, dispY)), __tsover_sub(nD.y, dispY)));\n\t\tconst shearK = __tsover_mul(p.stiffness, .35);\n\t\tfx = __tsover_add(fx, __tsover_mul(shearK, __tsover_add(__tsover_add(__tsover_add(__tsover_sub(nUL.x, dispX), __tsover_sub(nUR.x, dispX)), __tsover_sub(nDL.x, dispX)), __tsover_sub(nDR.x, dispX))));\n\t\tfy = __tsover_add(fy, __tsover_mul(shearK, __tsover_add(__tsover_add(__tsover_add(__tsover_sub(nUL.y, dispY), __tsover_sub(nUR.y, dispY)), __tsover_sub(nDL.y, dispY)), __tsover_sub(nDR.y, dispY))));\n\t\tfx = __tsover_sub(fx, __tsover_mul(__tsover_mul(p.stiffness, .1), dispX));\n\t\tfy = __tsover_sub(fy, __tsover_mul(__tsover_mul(p.stiffness, .1), dispY));\n\t\tlet newVelX = __tsover_add(__tsover_mul(velX, p.dampFactor), __tsover_mul(fx, p.subDt));\n\t\tlet newVelY = __tsover_add(__tsover_mul(velY, p.dampFactor), __tsover_mul(fy, p.subDt));\n\t\tif (p.clampedSpeed \u003e .01) {\n\t\t\tconst cellX = __tsover_div(__tsover_add(f32(cx), .5), f32(LATTICE_GRID));\n\t\t\tconst cellY = __tsover_div(__tsover_add(f32(cy), .5), f32(LATTICE_GRID));\n\t\t\tconst ddx = select(__tsover_sub(cellX, p.cursorX), __tsover_mul(__tsover_sub(cellX, p.cursorX), p.aspect), p.aspect \u003e= 1);\n\t\t\tconst ddy = select(__tsover_div(__tsover_sub(cellY, p.cursorY), p.aspect), __tsover_sub(cellY, p.cursorY), p.aspect \u003e= 1);\n\t\t\tconst distSq = __tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy));\n\t\t\tconst influenceRadius = __tsover_mul(p.radius, 3);\n\t\t\tif (distSq \u003c __tsover_mul(influenceRadius, influenceRadius)) {\n\t\t\t\tconst influence = exp(__tsover_mul(__tsover_div(distSq, __tsover_mul(p.radius, p.radius)), -1));\n\t\t\t\tconst forceMag = __tsover_mul(__tsover_mul(__tsover_mul(influence, p.clampedSpeed), p.dt), 2);\n\t\t\t\tnewVelX = __tsover_add(newVelX, __tsover_mul(p.dirX, forceMag));\n\t\t\t\tnewVelY = __tsover_add(newVelY, __tsover_mul(p.dirY, forceMag));\n\t\t\t}\n\t\t}\n\t\tconst newDispX = clamp(__tsover_add(dispX, __tsover_mul(newVelX, p.subDt)), -.5, .5);\n\t\tconst newDispY = clamp(__tsover_add(dispY, __tsover_mul(newVelY, p.subDt)), -.5, .5);\n\t\tlatticeLayout.$.writeBuf[idx] = vec4f(newDispX, newDispY, newVelX, newVelY);\n\t}\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cy\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t11,\n\t\t\t[\n\t\t\t\t3,\n\t\t\t\t[\n\t\t\t\t\t3,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[\"LATTICE_MAX\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"\u0026\u0026\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"cy\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"LATTICE_MAX\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"gs\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t[\"LATTICE_GRID\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"idx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"current\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dispX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"current\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dispY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"current\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"velX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"current\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"velY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"current\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nU\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nD\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nUL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nUR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nDL\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"nDR\",\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"readBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"gs\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"stiffness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"nL\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"nR\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"nU\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"nD\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"stiffness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"nL\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"nR\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"nU\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"nD\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"shearK\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"stiffness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.35\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"shearK\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"nUL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"nUR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"nDL\",\n\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"nDR\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"shearK\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"nUL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"nUR\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"nDL\",\n\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"nDR\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"fx\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"stiffness\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dispX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t\"fy\",\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"stiffness\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dispY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"newVelX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"velX\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dampFactor\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"subDt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"newVelY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"velY\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"dampFactor\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"subDt\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"clampedSpeed\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"LATTICE_GRID\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"LATTICE_GRID\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cursorX\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"cursorY\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"influenceRadius\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"influenceRadius\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"influenceRadius\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.exp\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"radius\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"forceMag\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"influence\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"clampedSpeed\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dt\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"newVelX\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"newVelX\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dirX\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"forceMag\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"newVelY\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"newVelY\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"dirY\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"forceMag\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"newDispX\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dispX\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"newVelX\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"subDt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"newDispY\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"dispY\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"newVelY\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"subDt\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t2,\n\t\t\t\t\t[\n\t\t\t\t\t\t8,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"latticeLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"writeBuf\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"idx\"\n\t\t\t\t\t],\n\t\t\t\t\t\"=\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"newDispX\",\n\t\t\t\t\t\t\t\"newDispY\",\n\t\t\t\t\t\t\t\"newVelX\",\n\t\t\t\t\t\t\t\"newVelY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"LATTICE_MAX\": () =\u003e LATTICE_MAX,\n\t\t\"latticeLayout\": () =\u003e latticeLayout,\n\t\t\"LATTICE_GRID\": () =\u003e LATTICE_GRID,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.exp\": () =\u003e exp,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"springLatticeStep\");\nconst springLatticeOutputKernel = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\"use gpu\";\n\tconst idx = __tsover_add(__tsover_mul(cy, u32(LATTICE_GRID)), cx);\n\tconst cell = latticeOutputLayout.$.srcBuf[idx];\n\ttextureStore(latticeOutputLayout.$.dispTex, vec2u(cx, cy), vec4f(cell.x, cell.y, 0, 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cy\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"idx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t[\"LATTICE_GRID\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t\"cx\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cell\",\n\t\t\t\t[\n\t\t\t\t\t8,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"latticeOutputLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"srcBuf\"\n\t\t\t\t\t],\n\t\t\t\t\t\"idx\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.textureStore\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"latticeOutputLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"dispTex\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"cell\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"LATTICE_GRID\": () =\u003e LATTICE_GRID,\n\t\t\"latticeOutputLayout\": () =\u003e latticeOutputLayout,\n\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"springLatticeOutput\");\nfunction springLatticeField(slots) {\n\treturn (params, root) =\u003e {\n\t\tconst { registerComputeTexture, onCleanup } = params;\n\t\tconst bufferA = createStateBuffer(root, vec4f, LATTICE_CELLS);\n\t\tconst bufferB = createStateBuffer(root, vec4f, LATTICE_CELLS);\n\t\tconst dispTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\t\tsize: [LATTICE_GRID, LATTICE_GRID],\n\t\t\tformat: STATE_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\"), \"dispTex\");\n\t\tonCleanup(() =\u003e dispTex.destroy());\n\t\tconst displacement = registerComputeTexture(dispTex);\n\t\tconst springParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(struct({\n\t\t\tcursorX: f32,\n\t\t\tcursorY: f32,\n\t\t\tdirX: f32,\n\t\t\tdirY: f32,\n\t\t\tclampedSpeed: f32,\n\t\t\tdt: f32,\n\t\t\tsubDt: f32,\n\t\t\tstiffness: f32,\n\t\t\tdampFactor: f32,\n\t\t\tradius: f32,\n\t\t\taspect: f32\n\t\t})), \"springParams\");\n\t\tconst viewport = trackedViewport(params);\n\t\tconst size = [LATTICE_GRID, LATTICE_GRID];\n\t\tconst springBgAB = root.createBindGroup(latticeLayout, {\n\t\t\treadBuf: bufferA,\n\t\t\twriteBuf: bufferB,\n\t\t\tparams: springParams.buffer\n\t\t});\n\t\tconst springBgBA = root.createBindGroup(latticeLayout, {\n\t\t\treadBuf: bufferB,\n\t\t\twriteBuf: bufferA,\n\t\t\tparams: springParams.buffer\n\t\t});\n\t\tconst spring = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tspringLatticeKernel(cx, cy);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t6,\n\t\t\t\t\t\"springLatticeKernel\",\n\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: { \"springLatticeKernel\": () =\u003e springLatticeKernel }\n\t\t}) \u0026\u0026 $.f)({}), { size });\n\t\tconst outputBgA = root.createBindGroup(latticeOutputLayout, {\n\t\t\tsrcBuf: bufferA,\n\t\t\tdispTex\n\t\t});\n\t\tconst output = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tspringLatticeOutputKernel(cx, cy);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t6,\n\t\t\t\t\t\"springLatticeOutputKernel\",\n\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: { \"springLatticeOutputKernel\": () =\u003e springLatticeOutputKernel }\n\t\t}) \u0026\u0026 $.f)({}), {\n\t\t\tsize,\n\t\t\tbindGroup: outputBgA\n\t\t});\n\t\tlet prevX = .5;\n\t\tlet prevY = .5;\n\t\tlet px = .5;\n\t\tlet py = .5;\n\t\tlet rawVelX = 0;\n\t\tlet rawVelY = 0;\n\t\tlet speed = 0;\n\t\tlet clampedSpeed = 0;\n\t\treturn {\n\t\t\toutputs: { [slots.output]: displacement },\n\t\t\tclampDt: .016,\n\t\t\tzeroDt: \"skip\",\n\t\t\tstages: [\n\t\t\t\top.host(\"cursorImpulse\", (f) =\u003e {\n\t\t\t\t\tpx = f.frameParams.pointer?.x ?? .5;\n\t\t\t\t\tpy = f.frameParams.pointer?.y ?? .5;\n\t\t\t\t\trawVelX = (px - prevX) / f.dt;\n\t\t\t\t\trawVelY = (py - prevY) / f.dt;\n\t\t\t\t\tspeed = Math.sqrt(rawVelX * rawVelX + rawVelY * rawVelY);\n\t\t\t\t\tclampedSpeed = Math.min(speed, 3);\n\t\t\t\t\tprevX = px;\n\t\t\t\t\tprevY = py;\n\t\t\t\t}),\n\t\t\t\top.settle({\n\t\t\t\t\tactiveWhen: () =\u003e clampedSpeed \u003e .01,\n\t\t\t\t\tsettleMs: (f) =\u003e {\n\t\t\t\t\t\tconst damping = f.num(slots.damping.name, 3);\n\t\t\t\t\t\treturn damping \u003e 0 ? Math.min(3e4, 5e3 / damping) : 3e4;\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\top.values(\"springs+impulse\", (f) =\u003e {\n\t\t\t\t\tconst safe = viewport.safe(f.frameParams);\n\t\t\t\t\tconst damping = f.num(slots.damping.name, 3);\n\t\t\t\t\tconst subDt = f.dt / 2;\n\t\t\t\t\tspringParams.write({\n\t\t\t\t\t\tcursorX: px,\n\t\t\t\t\t\tcursorY: py,\n\t\t\t\t\t\tdirX: speed \u003e .01 ? rawVelX / speed : 0,\n\t\t\t\t\t\tdirY: speed \u003e .01 ? rawVelY / speed : 0,\n\t\t\t\t\t\tclampedSpeed,\n\t\t\t\t\t\tdt: f.dt,\n\t\t\t\t\t\tsubDt,\n\t\t\t\t\t\tstiffness: f.num(slots.stiffness.name, 3),\n\t\t\t\t\t\tdampFactor: Math.max(0, Math.min(1, 1 - damping * subDt)),\n\t\t\t\t\t\tradius: f.num(slots.radius.name, 1) * .08,\n\t\t\t\t\t\taspect: safe.width / safe.height\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t\top.pass(spring.with(springBgAB)),\n\t\t\t\top.pass(spring.with(springBgBA)),\n\t\t\t\top.publish(() =\u003e output)\n\t\t\t]\n\t\t};\n\t};\n}\nexport { pointerSplatField as n, springLatticeField as r, clampSplatGridSize as t };\n","import { c as p, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { a as recompileWhen } from \"./slots-BqIef2iV.js\";\nimport { u as gridCellDisplace } from \"./warps-P5O3NWLe.js\";\nimport { t as gridSim } from \"./grids-Cv99xcJg.js\";\nimport { n as pointerSplatField, t as clampSplatGridSize } from \"./pointerFields-CRecZwuZ.js\";\nconst componentDefinition = defineStd({\n\tname: \"GridDistortion\",\n\trole: \"warp\",\n\tcategory: \"Interactive\",\n\tdescription: \"Interactive grid distortion controlled by mouse position\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tusesPointer: true,\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Strength of the distortion effect\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdecay: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Rate of distortion decay (higher = faster)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Decay\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Radius of the distortion effect\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgridSize: {\n\t\t\tdefault: 20,\n\t\t\trecompile: recompileWhen((prev, next) =\u003e clampSplatGridSize(prev) !== clampSplatGridSize(next)),\n\t\t\tdescription: \"Resolution of the distortion grid (higher = more detailed)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 8,\n\t\t\t\tmax: 128,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Grid Size\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"stretch\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\t...gridSim(pointerSplatField({\n\t\tgridSize: p(\"gridSize\"),\n\t\tdecay: p(\"decay\"),\n\t\tintensity: p(\"intensity\"),\n\t\tradius: p(\"radius\"),\n\t\toutput: \"displacement\"\n\t})),\n\tmap: gridCellDisplace({\n\t\tgridSize: p(\"gridSize\"),\n\t\toutput: \"displacement\"\n\t}),\n\tuvRemapIdentityWhen: ({ computeOutputs }) =\u003e !computeOutputs?.displacement\n});\nvar GridDistortion_default = componentDefinition;\nexport { componentDefinition as n, GridDistortion_default as t };\n","import { at as ZERO, t as defineStd } from \"./lower-Bd2jez_2.js\";\nconst componentDefinition = defineStd({\n\tname: \"Group\",\n\trole: \"structural\",\n\tspecies: \"custom\",\n\tcategory: \"Utilities\",\n\tdescription: \"Container for organizing and composing child effects — supports flex-like flow layout (column/row stacking via the flow prop)\",\n\trequiresChild: true,\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tboxResamplesContent: true\n\t},\n\tprops: {},\n\tgpu: { fragment: ({ childNode }) =\u003e {\n\t\treturn childNode ?? ZERO;\n\t} }\n});\nvar Group_default = componentDefinition;\nexport { componentDefinition as n, Group_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as chosenBy, l as dotScreen, o as cmykPress, p as inkPlate } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, r as transformAngle } from \"./transformations-CzFmhZww.js\";\nvar transformStyle = (value) =\u003e value === \"cmyk\" ? 1 : 0;\nvar styleOf = (raw) =\u003e raw === \"cmyk\" || raw === 1 ? \"cmyk\" : \"classic\";\nconst componentDefinition = defineStd({\n\tname: \"Halftone\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Halftone dot pattern effect for printing aesthetics\",\n\tblendWithChildren: false,\n\tprops: {\n\t\tstyle: {\n\t\t\tdefault: \"classic\",\n\t\t\ttransform: transformStyle,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Halftone rendering style\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Simple\",\n\t\t\t\t\tvalue: \"classic\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"CMYK Print\",\n\t\t\t\t\tvalue: \"cmyk\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Style\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 100,\n\t\t\tdescription: \"Frequency of the halftone dots\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 10,\n\t\t\t\tmax: 300,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 45,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation angle of the pattern (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: \"classic\" }\n\t\t\t}\n\t\t},\n\t\tcyanAngle: {\n\t\t\tdefault: 15,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Screen angle for the cyan plate (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cyan Angle\",\n\t\t\t\tgroup: \"Plate Angles\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tmagentaAngle: {\n\t\t\tdefault: 75,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Screen angle for the magenta plate (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Magenta Angle\",\n\t\t\t\tgroup: \"Plate Angles\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tyellowAngle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Screen angle for the yellow plate (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Yellow Angle\",\n\t\t\t\tgroup: \"Plate Angles\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tblackAngle: {\n\t\t\tdefault: 45,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Screen angle for the black plate (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Black Angle\",\n\t\t\t\tgroup: \"Plate Angles\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tmisprint: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Simulated mis-registration between plates. Plates are offset around the misprint angle, producing colour fringing at the edges of inked regions.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .01,\n\t\t\t\tstep: 5e-4,\n\t\t\t\tlabel: \"Misprint\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tmisprintAngle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Direction the plates drift apart. Rotating this rotates the colour-fringing pattern.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Misprint Angle\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tpaperColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Paper/substrate color shown where no ink lands\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Paper\",\n\t\t\t\tgroup: \"Inks\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tcyanColor: {\n\t\t\tdefault: \"#00ffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Cyan ink color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Cyan\",\n\t\t\t\tgroup: \"Inks\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tmagentaColor: {\n\t\t\tdefault: \"#ff00ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Magenta ink color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Magenta\",\n\t\t\t\tgroup: \"Inks\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tyellowColor: {\n\t\t\tdefault: \"#ffff00\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Yellow ink color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Yellow\",\n\t\t\t\tgroup: \"Inks\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t},\n\t\tblackColor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Black (key) ink color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Black\",\n\t\t\t\tgroup: \"Inks\",\n\t\t\t\tcondition: { style: \"cmyk\" }\n\t\t\t}\n\t\t}\n\t},\n\teffect: chosenBy(p(\"style\"), styleOf, {\n\t\tclassic: dotScreen({\n\t\t\tangle: p(\"angle\"),\n\t\t\tfrequency: p(\"frequency\")\n\t\t}),\n\t\tcmyk: cmykPress({\n\t\t\tpaper: p(\"paperColor\"),\n\t\t\tfrequency: p(\"frequency\"),\n\t\t\tmisprint: p(\"misprint\"),\n\t\t\tmisprintAngle: p(\"misprintAngle\"),\n\t\t\tplates: [\n\t\t\t\tinkPlate({\n\t\t\t\t\tchannel: \"cyan\",\n\t\t\t\t\tscreenAngle: p(\"cyanAngle\"),\n\t\t\t\t\tink: p(\"cyanColor\")\n\t\t\t\t}),\n\t\t\t\tinkPlate({\n\t\t\t\t\tchannel: \"magenta\",\n\t\t\t\t\tscreenAngle: p(\"magentaAngle\"),\n\t\t\t\t\tink: p(\"magentaColor\")\n\t\t\t\t}),\n\t\t\t\tinkPlate({\n\t\t\t\t\tchannel: \"yellow\",\n\t\t\t\t\tscreenAngle: p(\"yellowAngle\"),\n\t\t\t\t\tink: p(\"yellowColor\")\n\t\t\t\t}),\n\t\t\t\tinkPlate({\n\t\t\t\t\tchannel: \"black\",\n\t\t\t\t\tscreenAngle: p(\"blackAngle\"),\n\t\t\t\t\tink: p(\"blackColor\")\n\t\t\t\t})\n\t\t\t]\n\t\t})\n\t})\n});\nvar Halftone_default = componentDefinition;\nexport { componentDefinition as n, Halftone_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as heart } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Heart\",\n\tdescription: \"Heart shape with adjustable size\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e heart(x, y, u(\"radius\")),\n\t\tcolorDescription: \"Fill color of the heart\",\n\t\tcenterDescription: \"Center position of the heart\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: { radius: {\n\t\t\tdefault: .32,\n\t\t\tdescription: \"Size of the heart (fit radius)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t} }\n\t}\n});\nvar Heart_default = componentDefinition;\nexport { componentDefinition as n, Heart_default as t };\n","import { It as mixColorsLinear, Lt as mixColorsVariants, ct as call, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { Dt as mixColorStopsRuntime, t as animatedTime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { F as shapedSurface, Y as valueNoise, _ as hashNoise } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, H as vec4, P as smoothstep, S as min, V as vec3, c as exp, f as fract, i as clamp, n as add, o as div, s as dot, t as abs, u as float, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { r as directionFrame } from \"./frames-BLqt7oaW.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar DEFAULT_STOPS = [\n\t{\n\t\tcolor: \"#02010f\",\n\t\tposition: 0\n\t},\n\t{\n\t\tcolor: \"#2a0a8a\",\n\t\tposition: .2\n\t},\n\t{\n\t\tcolor: \"#a41c9b\",\n\t\tposition: .45\n\t},\n\t{\n\t\tcolor: \"#e8632b\",\n\t\tposition: .7\n\t},\n\t{\n\t\tcolor: \"#f9e25f\",\n\t\tposition: .9\n\t},\n\t{\n\t\tcolor: \"#ffffff\",\n\t\tposition: 1\n\t}\n];\nvar heatmapShadow = (a, b, tk, phase) =\u003e {\n\tconst posS = mix(-.6, .6, tk);\n\tconst wob = sub(valueNoise(add(mul(b, 4), mul(float(phase), 13.7)), add(mul(tk, 3), mul(float(phase), 7.1))), .5);\n\tconst aEff = local(add(sub(a, posS), mul(wob, .12)), \"aEff\");\n\treturn clamp(mul(exp(div(mul(mul(aEff, aEff), -1), .0256)), mul(smoothstep(0, .15, tk), sub(1, smoothstep(.85, 1, tk)))), 0, 1);\n};\nconst componentDefinition = defineStd({\n\tname: \"Heatmap\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Thermal-camera heat flowing through any 2D, SVG, or 3D shape. Powered by Paper Shaders.\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tstencil: \"centre\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms, propValues } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst suv = local(frame.sdfUV, \"suv\");\n\t\t\tconst scl = max(uniforms.scale, .001);\n\t\t\tconst f = local(div(frame.surf0.member(\"r\"), scl), \"f\");\n\t\t\tconst inside = local(sub(1, smoothstep(-.003, .003, f)), \"inside\");\n\t\t\tconst travel = directionFrame(uniforms.angle, \"travel\");\n\t\t\tconst rel = local(sub(suv.member(\"xy\"), vec2(.5, .5)), \"rel\");\n\t\t\tconst a = local(dot(rel, travel.tangent), \"a\");\n\t\t\tconst b = local(mul(dot(rel, travel.perp), -1), \"b\");\n\t\t\tconst tBase = local(sub(mul(.1, t), .3), \"tBase\");\n\t\t\tlet inner = add(.8, mul(.8, exp(div(mul(max(mul(f, -1), 0), -1), .12))));\n\t\t\tinner = local(mix(inner, 0, heatmapShadow(a, b, fract(tBase), 1)), \"inner1\");\n\t\t\tinner = local(mix(inner, 0, heatmapShadow(a, b, fract(add(tBase, 1 / 3)), 2)), \"inner2\");\n\t\t\tinner = local(mix(inner, 0, heatmapShadow(a, b, fract(add(tBase, 2 / 3)), 3)), \"inner3\");\n\t\t\tinner = mul(inner, mul(2, uniforms.innerGlow));\n\t\t\tinner = add(inner, mul(mul(uniforms.contour, 2), exp(div(mul(abs(f), -1), .03))));\n\t\t\tinner = mul(min(inner, 1), inside);\n\t\t\tinner = local(pow(max(inner, 0), 1.2), \"inner\");\n\t\t\tconst outerBlur = exp(div(mul(max(f, 0), -1), add(.05, mul(.15, uniforms.outerGlow))));\n\t\t\tconst t3 = fract(sub(mul(tBase, 3), .1));\n\t\t\tconst yy = local(fract(sub(mul(a, 1.2), t3)), \"yy\");\n\t\t\tconst animatedMask = add(.5, mul(smoothstep(.3, .65, yy), sub(1, smoothstep(.65, 1, yy))));\n\t\t\tconst outer = local(mul(mul(mul(mul(mul(mul(.9, pow(outerBlur, .8)), animatedMask), 5), uniforms.outerGlow), uniforms.outerGlow), sub(1, inside)), \"outer\");\n\t\t\tlet heat = clamp(add(inner, outer), 0, 1);\n\t\t\tconst frameFade = local(mul(mul(mul(smoothstep(-.06, .1, suv.member(\"x\")), sub(1, smoothstep(.9, 1.06, suv.member(\"x\")))), smoothstep(-.06, .1, suv.member(\"y\"))), sub(1, smoothstep(.9, 1.06, suv.member(\"y\")))), \"frameFade\");\n\t\t\theat = mul(heat, frameFade);\n\t\t\theat = add(heat, mul(.005, sub(hashNoise(mul(suv.member(\"x\"), 991.3), mul(suv.member(\"y\"), 787.7)), .5)));\n\t\t\theat = local(clamp(heat, 0, 1), \"heat\");\n\t\t\tconst coverage = mul(clamp(add(inside, outer), 0, 1), frameFade);\n\t\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\t\tconst stopCount = propValues.stopCount ?? 0;\n\t\t\tlet ramp;\n\t\t\tif (stopCount \u003e 1) ramp = mixColorStopsRuntime(heat, {\n\t\t\t\tcolorsArray: uniforms.colorsArray,\n\t\t\t\tpositionsArray: uniforms.positionsArray,\n\t\t\t\tconvertedColorsArray: uniforms.convertedColorsArray,\n\t\t\t\tstopCount: uniforms.stopCount\n\t\t\t}, colorSpaceMode);\n\t\t\telse ramp = call(mixColorsVariants[colorSpaceMode] ?? mixColorsLinear, \"mixColors\", [\n\t\t\t\tuniforms.colorA,\n\t\t\t\tuniforms.colorB,\n\t\t\t\theat\n\t\t\t]);\n\t\t\tconst rampL = local(ramp, \"ramp\");\n\t\t\treturn vec4(clamp(rampL.member(\"xyz\"), vec3(0, 0, 0), vec3(1, 1, 1)), mul(rampL.member(\"w\"), coverage));\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the heatmap shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the heatmap shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the heatmap shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#02010f\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Cold color (used when no gradient stops are set)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#f9e25f\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Hot color (used when no gradient stops are set)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: {\n\t\t\t...colorStopsPropConfig(),\n\t\t\tdefault: DEFAULT_STOPS\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for the heat ramp interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tinnerGlow: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Heat filling the inside of the shape\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Inner Glow\",\n\t\t\t\tgroup: \"Heat\"\n\t\t\t}\n\t\t},\n\t\touterGlow: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Heat radiating beyond the silhouette\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Outer Glow\",\n\t\t\t\tgroup: \"Heat\"\n\t\t\t}\n\t\t},\n\t\tcontour: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Heat concentrated along the shape boundary\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contour\",\n\t\t\t\tgroup: \"Heat\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 90,\n\t\t\tdescription: \"Direction the heat waves travel, in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Heat\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Speed of the flowing heat. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Heat\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar Heatmap_default = componentDefinition;\nexport { componentDefinition as n, Heatmap_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, D as vary, f as hexLines, r as cellFrame } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar field = hexLines({\n\tframe: cellFrame({\n\t\tcells: p(\"cells\"),\n\t\trotation: p(\"rotation\"),\n\t\tconvention: \"clockwise\"\n\t}),\n\tthickness: p(\"thickness\"),\n\tsoftness: p(\"softness\"),\n\tvariation: p(\"variation\")\n});\nconst componentDefinition = defineStd({\n\tname: \"HexGrid\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Honeycomb hexagonal grid pattern\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Cell fill color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Grid line color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcells: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of hexagons across the shortest canvas edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 40,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cells\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Thickness of the hex grid lines\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation of the grid in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Softness of the line edges (0 = crisp, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tvariation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Per-cell random lightening/darkening of the cell fill color\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokeOver({\n\t\tfill: vary(p(\"colorA\"), field.shade),\n\t\tstroke: p(\"colorB\"),\n\t\tmask: field.lines,\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar HexGrid_default = componentDefinition;\nexport { componentDefinition as n, HexGrid_default as t };\n","import { Bn as TWO_PI$1, at as ZERO, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { F as shapedSurface, H as surfaceNoise, _ as hashNoise, g as guarded, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, I as splat3, N as sin, P as smoothstep, S as min, V as vec3, c as exp, f as fract, i as clamp, n as add, o as div, t as abs, u as float, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar TWO_PI = TWO_PI$1;\nconst componentDefinition = defineStd({\n\tname: \"Hologram\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Volumetric sci-fi hologram — a translucent emissive projection of the shape with fresnel-lit edges, depth scan-lines that wrap 3D forms, CRT scanlines, flicker and beam wobble\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tchord: \"firstLobe\",\n\t\tstencil: {\n\t\t\tkind: \"central\",\n\t\t\teps: .008\n\t\t},\n\t\tplaceUV: (params) =\u003e {\n\t\t\tconst { uniforms: u, ctx } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst uvY = ctx.uv.member(\"y\");\n\t\t\tconst wob = add(mul(sin(add(mul(uvY, 38), mul(t, 2.3))), .5), mul(sin(sub(mul(uvY, 11.5), mul(t, 1.7))), .5));\n\t\t\treturn vec2(add(ctx.uv.member(\"x\"), mul(mul(wob, u.distortion), .012)), uvY);\n\t\t},\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u, ctx } = params;\n\t\t\tconst t = local(animatedTime(params), \"animTime\");\n\t\t\tconst vol = frame.volumetric;\n\t\t\tconst EPS = .008;\n\t\t\tconst sC = local(frame.surf0, \"sC\");\n\t\t\tconst pxH = local(div(1, ctx.viewportSize.member(\"y\")), \"pxH\");\n\t\t\tconst sdf = local(div(sC.member(\"x\"), u.scale), \"sdf\");\n\t\t\tconst sR = local(frame.surfX, \"sR\");\n\t\t\tconst sL = local(frame.surfL, \"sL\");\n\t\t\tconst sU = local(frame.surfY, \"sU\");\n\t\t\tconst sD = local(frame.surfD, \"sD\");\n\t\t\tconst sharp = max(mul(u.edgeSoftness, .5), .001);\n\t\t\tconst gradX = local(div(sub(sR.member(\"x\"), sL.member(\"x\")), EPS * 2), \"gradX\");\n\t\t\tconst thickness = local(max(mul(sdf, -1), 0), \"thickness\");\n\t\t\tconst thin = local(exp(mul(thickness, -5.5)), \"thin\");\n\t\t\tlet rimBase;\n\t\t\tlet depthMetric;\n\t\t\tif (vol) {\n\t\t\t\tconst surfFres = pow(clamp(sub(1, abs(local(normalize(vec3(clamp(div(sub(sR.member(\"w\"), sL.member(\"w\")), EPS * 2), -2, 2), clamp(div(sub(sU.member(\"w\"), sD.member(\"w\")), EPS * 2), -2, 2), -1)), \"nrm\").member(\"z\"))), 0, 1), 2.2);\n\t\t\t\trimBase = add(mul(thin, .55), surfFres);\n\t\t\t\tdepthMetric = sC.member(\"w\");\n\t\t\t} else {\n\t\t\t\trimBase = thin;\n\t\t\t\tdepthMetric = thickness;\n\t\t\t}\n\t\t\tconst rim = local(mul(rimBase, u.edgeGlow), \"rim\");\n\t\t\tconst bodyFill = mul(sub(1, exp(mul(thickness, -5))), u.fill);\n\t\t\tconst f = local(fract(sub(mul(depthMetric, u.depthScale), mul(t, 1.2))), \"phaseFract\");\n\t\t\tconst contour = mul(smoothstep(.06, 0, min(f, sub(1, f))), u.depthLines);\n\t\t\tconst scan = add(mul(sin(mul(sub(mul(ctx.uv.member(\"y\"), u.scanlineScale), mul(t, mul(u.scanlineSpeed, 3))), TWO_PI)), .5), .5);\n\t\t\tconst scanMask = local(mix(float(1), scan, u.scanlines), \"scanMask\");\n\t\t\tconst sweepPos = fract(mul(t, .16));\n\t\t\tconst sweepD = local(sub(ctx.uv.member(\"y\"), sweepPos), \"sweepD\");\n\t\t\tconst sweepGlow = local(mul(exp(mul(mul(sweepD, sweepD), -650)), u.sweep), \"sweepGlow\");\n\t\t\tconst shimmer = add(mul(sin(mul(t, 40)), .04), mul(sin(mul(t, 23.3)), .03));\n\t\t\tconst drop = smoothstep(.6, .95, add(mul(surfaceNoise(mul(t, 6), 11), .5), .5));\n\t\t\tconst flick = mul(add(1, shimmer), sub(1, mul(mul(u.flicker, drop), .7)));\n\t\t\tconst grainMul = add(1, mul(mul(sub(hashNoise(add(mul(ctx.uv.member(\"x\"), ctx.viewportSize.member(\"x\")), mul(t, 57.3)), mul(ctx.uv.member(\"y\"), ctx.viewportSize.member(\"y\"))), .5), u.grain), .6));\n\t\t\tconst core = local(mul(add(mul(mul(mul(add(add(bodyFill, rim), contour), scanMask), flick), grainMul), mul(sweepGlow, scanMask)), u.brightness), \"core\");\n\t\t\tconst ca = add(mul(u.distortion, .12), .04);\n\t\t\tconst fringe = local(mul(mul(mul(rim, gradX), ca), .1), \"fringe\");\n\t\t\tconst rCore = add(core, fringe);\n\t\t\tconst bCore = sub(core, fringe);\n\t\t\tconst color = u.color.member(\"rgb\");\n\t\t\tconst rgb = vec3(mul(color.member(\"x\"), rCore), mul(color.member(\"y\"), core), mul(color.member(\"z\"), bCore));\n\t\t\tconst hot = clamp(add(mul(rim, .5), sweepGlow), 0, .8);\n\t\t\tconst hotRgb = local(mix(rgb, splat3(core), splat3(hot)), \"hotRgb\");\n\t\t\tconst transition = smoothstep(0, 1, clamp(mul(div(mul(sdf, -1), sharp), 32), 0, 1));\n\t\t\tconst alpha = mul(clamp(core, 0, 1), transition);\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(hotRgb, alpha), ZERO, \"hologram\");\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the hologram shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the hologram shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the hologram shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolor: {\n\t\t\tdefault: \"#5ec8ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Projection tint — the colour the whole hologram emits (classic sci-fi cyan by default)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tbrightness: {\n\t\t\tdefault: 2.5,\n\t\t\tdescription: \"Overall emission gain. Bright edges blow out toward white for a hot, projected look.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Brightness\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .04,\n\t\t\tdescription: \"Softness of the shape boundary edge — keep low for crisp projection edges\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tfill: {\n\t\t\tdefault: .45,\n\t\t\tdescription: \"Translucent interior glow. Driven by optical thickness, so thicker parts of a 3D form glow more — the core volumetric cue.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Volume Fill\",\n\t\t\t\tgroup: \"Volume\"\n\t\t\t}\n\t\t},\n\t\tedgeGlow: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Fresnel rim intensity — bright glowing silhouette and, on 3D shapes, the grazing internal walls of extruded logos\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Glow\",\n\t\t\t\tgroup: \"Volume\"\n\t\t\t}\n\t\t},\n\t\tdepthLines: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"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.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Depth Lines\",\n\t\t\t\tgroup: \"Volume\"\n\t\t\t}\n\t\t},\n\t\tdepthScale: {\n\t\t\tdefault: 26,\n\t\t\tdescription: \"Density of the depth scan-lines — higher packs more contour bands through the volume\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 4,\n\t\t\t\tmax: 70,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Depth Density\",\n\t\t\t\tgroup: \"Volume\"\n\t\t\t}\n\t\t},\n\t\tscanlines: {\n\t\t\tdefault: .55,\n\t\t\tdescription: \"CRT scanline contrast — how dark the gaps between horizontal projection lines get\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scanlines\",\n\t\t\t\tgroup: \"Scanlines\"\n\t\t\t}\n\t\t},\n\t\tscanlineScale: {\n\t\t\tdefault: 130,\n\t\t\tdescription: \"Number of horizontal scanlines across the canvas height\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 20,\n\t\t\t\tmax: 400,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Scanline Count\",\n\t\t\t\tgroup: \"Scanlines\"\n\t\t\t}\n\t\t},\n\t\tscanlineSpeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How fast the scanlines drift upward — 0 holds them static\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scanline Drift\",\n\t\t\t\tgroup: \"Scanlines\"\n\t\t\t}\n\t\t},\n\t\tsweep: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Brightness of the refresh bar that sweeps vertically through the projection\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Sweep Bar\",\n\t\t\t\tgroup: \"Scanlines\"\n\t\t\t}\n\t\t},\n\t\tflicker: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Unstable-projector flicker — a fast shimmer plus occasional brightness dropouts\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Flicker\",\n\t\t\t\tgroup: \"Interference\"\n\t\t\t}\n\t\t},\n\t\tdistortion: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Continuous horizontal wobble and chromatic edge fringing — the wavering of an unstable beam\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Distortion\",\n\t\t\t\tgroup: \"Interference\"\n\t\t\t}\n\t\t},\n\t\tgrain: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Fine projection static — animated per-pixel noise over the emission\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Grain\",\n\t\t\t\tgroup: \"Interference\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Master animation speed for every animated layer. 0 freezes the projection.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file — when non-empty, activates SVG mode and triggers a shader recompile\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type — triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.\"\n\t\t}\n\t}\n});\nvar Hologram_default = componentDefinition;\nexport { componentDefinition as n, Hologram_default as t };\n","import { at as ZERO, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { F as shapedSurface, H as surfaceNoise, R as silhouette, V as surfaceField, W as surfacePattern, a as cosineRainbow, g as guarded, l as fieldSlope, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, D as pow, E as normalize, H as vec4, I as splat3, N as sin, P as smoothstep, V as vec3, i as clamp, n as add, o as div, s as dot, u as float, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar THIRD = 1 / 3;\nvar TWOTHIRD = 2 / 3;\nvar LIGHT_X = Math.cos(300 * Math.PI / 180);\nvar LIGHT_Y = Math.sin(300 * Math.PI / 180);\nvar L_X = .37164708971977234;\nvar L_Y = -.6437116265296936;\nvar L_Z = -.6689647436141968;\nvar holoRainbow = (t) =\u003e cosineRainbow(t, [\n\t0,\n\tTHIRD,\n\tTWOTHIRD\n]);\nconst componentDefinition = defineStd({\n\tname: \"Holographic\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Iridescent holographic foil sticker with animated rainbow sheen and glitter flakes\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tstencil: {\n\t\t\tkind: \"forward\",\n\t\t\teps: .008\n\t\t},\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = local(animatedTime(params), \"animTime\");\n\t\t\tconst vol = frame.volumetric;\n\t\t\tconst EPS = .008;\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { s0, sX, sY, sdf, pxH } = field;\n\t\t\tconst transition = silhouette(field, u.edgeSoftness);\n\t\t\tconst suv = local(frame.sdfUV, \"suv\");\n\t\t\tconst pat = surfacePattern(frame, field, { uv: suv });\n\t\t\tconst pdx = pat.member(\"x\");\n\t\t\tconst pdy = pat.member(\"y\");\n\t\t\tconst qdx = sub(suv.member(\"x\"), .5);\n\t\t\tconst qdy = sub(suv.member(\"y\"), .5);\n\t\t\tlet baseNx;\n\t\t\tlet baseNy;\n\t\t\tlet steepAtten;\n\t\t\tif (vol) {\n\t\t\t\tconst bx = local(clamp(div(sub(sX.member(\"w\"), s0.member(\"w\")), EPS), -1.5, 1.5), \"baseNxVol\");\n\t\t\t\tconst by = local(clamp(div(sub(sY.member(\"w\"), s0.member(\"w\")), EPS), -1.5, 1.5), \"baseNyVol\");\n\t\t\t\tbaseNx = bx;\n\t\t\t\tbaseNy = by;\n\t\t\t\tsteepAtten = local(div(1, add(1, mul(clamp(add(mul(bx, bx), mul(by, by)), 0, 2), 2))), \"steepAtten\");\n\t\t\t} else {\n\t\t\t\tconst grad = fieldSlope(field, EPS);\n\t\t\t\tconst domeSlope = local(mul(sub(1, clamp(div(mul(sdf, -1), .06), 0, 1)), .35), \"domeSlope\");\n\t\t\t\tbaseNx = local(mul(grad.member(\"x\"), domeSlope), \"baseNx\");\n\t\t\t\tbaseNy = local(mul(grad.member(\"y\"), domeSlope), \"baseNy\");\n\t\t\t\tsteepAtten = float(1);\n\t\t\t}\n\t\t\tconst crScale = local(mul(u.crinkleScale, 1.35), \"crScale\");\n\t\t\tconst crAmp = local(mul(mul(u.crinkle, .8), steepAtten), \"crAmp\");\n\t\t\tconst neps = .02;\n\t\t\tconst w0 = local(surfaceNoise(add(mul(pdx, crScale), 2.7), add(mul(pdy, crScale), 11.3)), \"w0\");\n\t\t\tconst wx = div(sub(surfaceNoise(add(mul(add(pdx, neps), crScale), 2.7), add(mul(pdy, crScale), 11.3)), w0), neps);\n\t\t\tconst wy = div(sub(surfaceNoise(add(mul(pdx, crScale), 2.7), add(mul(add(pdy, neps), crScale), 11.3)), w0), neps);\n\t\t\tconst n = local(normalize(vec3(add(baseNx, mul(mul(wx, crAmp), .4)), add(baseNy, mul(mul(wy, crAmp), .4)), -1)), \"n\");\n\t\t\tconst fScale = local(mul(u.foilScale, 2.2), \"fScale\");\n\t\t\tconst drift = local(mul(t, .06), \"drift\");\n\t\t\tconst blotch = add(surfaceNoise(add(mul(pdx, fScale), mul(drift, LIGHT_X)), add(mul(pdy, fScale), mul(drift, LIGHT_Y))), mul(surfaceNoise(sub(add(mul(mul(pdx, fScale), 2.1), 5.2), mul(mul(drift, LIGHT_X), 1.6)), sub(add(mul(mul(pdy, fScale), 2.1), 9.4), mul(mul(drift, LIGHT_Y), 1.6))), .4));\n\t\t\tconst normalTilt = add(mul(n.member(\"x\"), LIGHT_X), mul(n.member(\"y\"), LIGHT_Y));\n\t\t\tconst ramp = mul(add(mul(pdx, LIGHT_X), mul(pdy, LIGHT_Y)), .8);\n\t\t\tconst hue = local(add(add(add(add(mul(blotch, .45), ramp), mul(normalTilt, 1.4)), mul(t, .18)), div(u.hueShift, 360)), \"hue\");\n\t\t\tconst saturationC = clamp(u.saturation, 0, 1);\n\t\t\tconst spectral = holoRainbow(hue);\n\t\t\tconst foilTint = local(mix(vec3(.72, .73, .76), spectral, splat3(mul(saturationC, .85))), \"foilTint\");\n\t\t\tconst roughnessC = local(clamp(u.roughness, 0, 1), \"roughnessC\");\n\t\t\tconst L = local(vec3(L_X, L_Y, L_Z), \"L\");\n\t\t\tconst H = local(normalize(add(L, vec3(0, 0, -1))), \"H\");\n\t\t\tconst ndl = local(clamp(add(mul(dot(n, L), .5), .5), 0, 1), \"ndl\");\n\t\t\tconst ndh = local(clamp(dot(n, H), 0, 1), \"ndh\");\n\t\t\tconst sheen = mul(mul(pow(ndh, 7), .45), sub(1, mul(roughnessC, .35)));\n\t\t\tconst specCore = mul(mul(pow(ndh, mix(float(42), float(12), roughnessC)), .85), sub(1, mul(roughnessC, .55)));\n\t\t\tconst specRgb = add(mul(foilTint, sheen), mul(mix(foilTint, vec3(1, 1, 1), splat3(.6)), specCore));\n\t\t\tconst flakeN = surfaceNoise(mul(pdx, 190), mul(pdy, 190));\n\t\t\tconst flakePhase = local(surfaceNoise(add(mul(pdx, 190), 47.3), sub(mul(pdy, 190), 31.1)), \"flakePhase\");\n\t\t\tconst twinkle = local(add(mul(sin(add(mul(t, 2.2), mul(flakePhase, 12.6))), .5), .5), \"twinkle\");\n\t\t\tconst flakeMask = mul(mul(smoothstep(.52, .62, add(mul(flakeN, .75), mul(twinkle, .3))), clamp(u.sparkle, 0, 1)), steepAtten);\n\t\t\tconst flakeRgb = mul(mul(holoRainbow(add(add(hue, .33), mul(flakePhase, .5))), add(.85, mul(twinkle, .55))), add(mul(ndl, .6), .7));\n\t\t\tconst grainMul = add(1, mul(mul(surfaceNoise(mul(qdx, 420), mul(qdy, 420)), roughnessC), .28));\n\t\t\tconst foilRgb = local(mul(mix(add(mul(foilTint, add(mul(ndl, .5), .62)), specRgb), flakeRgb, splat3(flakeMask)), grainMul), \"foilRgb\");\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(foilRgb, transition), ZERO, \"holo\");\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the foil shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the foil shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the foil shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\thueShift: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotates the rainbow spectrum across the foil\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Hue Shift\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\tfoilScale: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Size of the iridescent color patches — higher = smaller, busier patches\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Foil Scale\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\tsaturation: {\n\t\t\tdefault: .75,\n\t\t\tdescription: \"Rainbow saturation — 0 = plain silver foil, 1 = fully spectral\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Saturation\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\troughness: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Matte laminate grain — softens the gloss with fine paper-like noise\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Roughness\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed — the spectrum drifts across the foil as if the sticker is tilting in your hand. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcrinkle: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Laminate wrinkles — perturbs the surface so the sheen and rainbow swirl locally instead of lying flat\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Crinkle\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\tcrinkleScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Size of the laminate wrinkles — higher = smaller, denser wrinkles\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Crinkle Scale\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\tsparkle: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Glitter flakes embedded in the foil — tiny facets that refract a shifted hue and twinkle as the spectrum drifts\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Sparkle\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Softness of the shape boundary edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Foil\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar Holographic_default = componentDefinition;\nexport { componentDefinition as n, Holographic_default as t };\n","import { Tt as srgbToLinear, ct as call, mt as vec4, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as createSwappableMediaTexture } from \"./mediaLifecycle-BTPb5i1-.js\";\nfunction createDomCaptureHost(params) {\n\tconst { gpu, domCanvas, onBeforeRender, onResize, onCleanup } = params;\n\tconst device = gpu.device;\n\tconst initialDpr = Math.min(window.devicePixelRatio, 2);\n\tconst tex = createSwappableMediaTexture(params, {\n\t\tlabel: \"HTMLInCanvas\",\n\t\tinitial: {\n\t\t\twidth: Math.max(1, Math.round(window.innerWidth * initialDpr)),\n\t\t\theight: Math.max(1, Math.round(window.innerHeight * initialDpr))\n\t\t},\n\t\tmipmaps: false\n\t});\n\tlet contentElement = null;\n\tlet hasLoggedError = false;\n\tlet paintSetup = false;\n\tlet hasFreshSnapshot = false;\n\tlet useLegacySignature = false;\n\tconst ensureTexSize = (w, h) =\u003e tex.ensureSize(w, h);\n\tonBeforeRender(() =\u003e {\n\t\tif (!domCanvas || tex.disposed) return;\n\t\tif (!contentElement) {\n\t\t\tcontentElement = domCanvas.firstElementChild;\n\t\t\tif (contentElement) {\n\t\t\t\tconst rect = contentElement.getBoundingClientRect();\n\t\t\t\tconst physW = Math.round(rect.width * window.devicePixelRatio);\n\t\t\t\tconst physH = Math.round(rect.height * window.devicePixelRatio);\n\t\t\t\tif (physW \u003e 0 \u0026\u0026 physH \u003e 0) ensureTexSize(physW, physH);\n\t\t\t}\n\t\t}\n\t\tif (!contentElement) return;\n\t\tif (!paintSetup) {\n\t\t\tdomCanvas.getContext(\"2d\");\n\t\t\tdomCanvas.onpaint = () =\u003e {\n\t\t\t\thasFreshSnapshot = true;\n\t\t\t};\n\t\t\tdomCanvas.requestPaint?.();\n\t\t\tpaintSetup = true;\n\t\t\treturn;\n\t\t}\n\t\tif (hasFreshSnapshot \u0026\u0026 contentElement) {\n\t\t\tconst copyFn = device.queue.copyElementImageToTexture;\n\t\t\tif (typeof copyFn !== \"function\") {\n\t\t\t\thasFreshSnapshot = false;\n\t\t\t\treturn;\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tif (useLegacySignature) copyFn.call(device.queue, contentElement, { texture: tex.unwrap() });\n\t\t\t\telse try {\n\t\t\t\t\tcopyFn.call(device.queue, { source: contentElement }, { destination: { texture: tex.unwrap() } });\n\t\t\t\t} catch (e) {\n\t\t\t\t\tif (!(e instanceof TypeError)) throw e;\n\t\t\t\t\tcopyFn.call(device.queue, contentElement, { texture: tex.unwrap() });\n\t\t\t\t\tuseLegacySignature = true;\n\t\t\t\t}\n\t\t\t\thasFreshSnapshot = false;\n\t\t\t} catch (e) {\n\t\t\t\tif (!hasLoggedError) {\n\t\t\t\t\tconsole.warn(\"[HTMLInCanvas] copyElementImageToTexture failed.\\nRequires Chrome Canary with chrome://flags/#canvas-draw-element enabled.\\nThe element must be a direct child of a \u003ccanvas layoutsubtree\u003e.\", e);\n\t\t\t\t\thasLoggedError = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\tonResize(() =\u003e {\n\t\tconst newDpr = Math.min(window.devicePixelRatio, 2);\n\t\tensureTexSize(Math.round(window.innerWidth * newDpr), Math.round(window.innerHeight * newDpr));\n\t\tcontentElement = null;\n\t\thasFreshSnapshot = false;\n\t\tif (domCanvas) domCanvas.requestPaint?.();\n\t});\n\tonCleanup(() =\u003e {\n\t\tif (domCanvas) domCanvas.onpaint = null;\n\t});\n\treturn tex;\n}\nconst componentDefinition = defineStd({\n\tname: \"HTMLInCanvas\",\n\trole: \"media\",\n\tspecies: \"custom\",\n\tdeprecatedNames: [\"DOMTexture\"],\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Textures\",\n\tdescription: \"Render live HTML/DOM content as a WebGPU texture layer via the html-in-canvas API. Requires Chrome Canary with chrome://flags/#canvas-draw-element enabled.\",\n\tcapturesDOM: true,\n\texperimental: {\n\t\tmessage: \"Requires Chrome Canary with chrome://flags/#canvas-draw-element enabled. Do not use for production use.\",\n\t\tdocs: \"This component is powered by the WICG html-in-canvas proposal, which is currently only available in Chrome Canary behind a feature flag. It is not suitable for production use and may change as the specification evolves.\",\n\t\tdocsLink: {\n\t\t\turl: \"https://github.com/WICG/html-in-canvas\",\n\t\t\tlabel: \"View the spec\"\n\t\t}\n\t},\n\tprops: {},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst sampled = createDomCaptureHost(params).kit.sample(params.ctx.uv);\n\t\treturn vec4(call(srgbToLinear, \"srgbToLinear\", [sampled.member(\"rgb\")]), sampled.member(\"a\"));\n\t} }\n});\nvar HTMLInCanvas_default = componentDefinition;\nexport { componentDefinition as n, HTMLInCanvas_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as hueRotate } from \"./color-Do6tU0ry.js\";\nimport { i as isZero, n as crosses } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"HueShift\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Rotate hue around the color wheel\",\n\tprops: { shift: {\n\t\tdefault: 0,\n\t\tdescription: \"The amount to shift the hue by\",\n\t\trecompile: crosses(0),\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: -180,\n\t\t\tmax: 180,\n\t\t\tstep: 1,\n\t\t\tlabel: \"Shift\",\n\t\t\tgroup: \"Adjustments\"\n\t\t}\n\t} },\n\teffect: hueRotate(p(\"shift\")),\n\tidentityWhen: isZero(\"shift\"),\n\tmissingChildMessage: \"You must pass a child component into the Hue Shift shader.\"\n});\nvar HueShift_default = componentDefinition;\nexport { componentDefinition as n, HueShift_default as t };\n","import { c as p, f as objectFitProp, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as imageMedia } from \"./media-DXUY3ltG.js\";\nconst componentDefinition = defineStd({\n\tname: \"ImageTexture\",\n\trole: \"media\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Display an image with customizable object-fit modes\",\n\tacceptsUVContext: true,\n\tnaturalSizeKey: { fromProp: \"url\" },\n\tprops: {\n\t\turl: {\n\t\t\tdefault: \"https://shaders.com/sample.jpg\",\n\t\t\tdescription: \"Upload an image or provide a URL\",\n\t\t\tui: {\n\t\t\t\ttype: \"image-upload\",\n\t\t\t\tlabel: \"Image\",\n\t\t\t\tgroup: \"Media\"\n\t\t\t}\n\t\t},\n\t\tobjectFit: objectFitProp(\"fill\", \"How the image should be sized within the viewport\", { allowNone: false })\n\t},\n\t...imageMedia({\n\t\tsrc: p(\"url\"),\n\t\tfit: p(\"objectFit\"),\n\t\tdecode: \"srgb-linear-alpha-cut\",\n\t\tlabel: \"ImageTexture\",\n\t\tonError(error, url) {\n\t\t\tconst isRelative = !url.startsWith(\"http://\") \u0026\u0026 !url.startsWith(\"https://\") \u0026\u0026 !url.startsWith(\"data:\");\n\t\t\tconsole.error(`[ImageTexture] Failed to load image\\n  Requested URL: ${url}\\n  Path type: ${isRelative ? \"relative\" : \"absolute\"}\\n  Error:`, error);\n\t\t}\n\t})\n});\nvar ImageTexture_default = componentDefinition;\nexport { componentDefinition as n, ImageTexture_default as t };\n","import { Br as struct, Gn as typegpu_default, Mr as vec4f, Rr as textureStorage2d, W as decayFadeSeconds, at as ZERO, jt as convertP3ToMixSpaceCPU, mt as vec4, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { D as buildBrushSplatKernel, M as buildStableFluidsKernels, k as buildFluidOutputKernel } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { i as clamp, w as mul, x as max, y as local } from \"./math-D864seEs.js\";\nimport { n as cursorRibbon, r as fluidSim } from \"./fluids-umEWgdvj.js\";\nvar N = 256;\nvar COUNT = N * N;\nvar JACOBI_ITERS = 10;\nvar STATE_FORMAT = \"rgba16float\";\nvar IMPULSE_K = .16;\nvar MAX_STEPS = 16;\nvar CYCLE_PER_SPLAT = .006;\nvar CYCLE_TIME_RATE = .06;\nvar VEL_FADE_MAX = 4;\nvar VEL_FADE_MIN = .05;\nvar GAIN = 1.35;\nvar FlowParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tdt: f32,\n\tcurlStrength: f32,\n\tvelFade: f32,\n\tdyeFade: f32\n}), \"FlowParams\");\nvar SplatParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tposX: f32,\n\tposY: f32,\n\tvelX: f32,\n\tvelY: f32,\n\tcolR: f32,\n\tcolG: f32,\n\tcolB: f32,\n\tcol2R: f32,\n\tcol2G: f32,\n\tcol2B: f32,\n\tmixT: f32,\n\tradius: f32,\n\tstrength: f32\n}), \"SplatParams\");\nvar fluidLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tvelA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tvelB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tpressure: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdivergence: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: FlowParams }\n}), \"fluidLayout\");\nvar splatLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tvelA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tsparams: { uniform: SplatParams }\n}), \"splatLayout\");\nvar outputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"readonly\"\n\t},\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"outputLayout\");\nvar makeSplatKernel = (colorSpaceMode) =\u003e buildBrushSplatKernel(splatLayout, {\n\tn: N,\n\tnamePrefix: \"inkFlow\",\n\tcolorSpace: colorSpaceMode\n});\nvar splatKernelVariants = {\n\t0: makeSplatKernel(0),\n\t1: makeSplatKernel(1),\n\t2: makeSplatKernel(2),\n\t3: makeSplatKernel(3),\n\t4: makeSplatKernel(4),\n\t5: makeSplatKernel(5)\n};\nconst splatKernel = splatKernelVariants[2];\nvar solverKernels = buildStableFluidsKernels(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"inkFlow\",\n\tboundary: \"clamped\",\n\tdye: \"rgb\",\n\tdyeDissipation: true\n});\nconst { curl: curlKernel, vorticity: vorticityKernel, divergence: divergenceKernel, jacobi: jacobiKernel, gradSubtract: gradSubtractKernel, advectVel: advectVelKernel, copyVel: copyVelKernel, advectDye: advectDyeKernel, copyDye: copyDyeKernel } = solverKernels;\nconst outputKernel = buildFluidOutputKernel(outputLayout, {\n\tn: N,\n\tnamePrefix: \"inkFlow\",\n\tdye: \"rgb\"\n});\nfunction srgbToLinear(c) {\n\treturn c \u003c= .04045 ? c / 12.92 : Math.pow((c + .055) / 1.055, 2.4);\n}\nfunction hueToLinearRgb(hue) {\n\tconst h = (hue % 1 + 1) % 1;\n\tconst i = Math.floor(h * 6);\n\tconst f = h * 6 - i;\n\tconst q = 1 - f;\n\tlet r = 0;\n\tlet g = 0;\n\tlet b = 0;\n\tif (i === 0) {\n\t\tr = 1;\n\t\tg = f;\n\t\tb = 0;\n\t} else if (i === 1) {\n\t\tr = q;\n\t\tg = 1;\n\t\tb = 0;\n\t} else if (i === 2) {\n\t\tr = 0;\n\t\tg = 1;\n\t\tb = f;\n\t} else if (i === 3) {\n\t\tr = 0;\n\t\tg = q;\n\t\tb = 1;\n\t} else if (i === 4) {\n\t\tr = f;\n\t\tg = 0;\n\t\tb = 1;\n\t} else {\n\t\tr = 1;\n\t\tg = 0;\n\t\tb = q;\n\t}\n\treturn [\n\t\tsrgbToLinear(r),\n\t\tsrgbToLinear(g),\n\t\tsrgbToLinear(b)\n\t];\n}\nconst componentDefinition = defineStd({\n\tname: \"InkFlow\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Drag to paint swirling ribbons of ink through a real fluid field — eddies keep evolving after you let go\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tusesPointer: true,\n\tprops: {\n\t\tcolorMode: {\n\t\t\tdefault: \"rainbow\",\n\t\t\tdescription: \"How the brush colour is chosen: an ever-cycling rainbow, a single fixed colour, or a custom three-colour cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Rainbow\",\n\t\t\t\t\t\tvalue: \"rainbow\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Single Color\",\n\t\t\t\t\t\tvalue: \"single\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Custom Colors\",\n\t\t\t\t\t\tvalue: \"custom\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Color Mode\",\n\t\t\t\tgroup: \"Color\"\n\t\t\t}\n\t\t},\n\t\tcolorSpeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How quickly the brush cycles through the rainbow or the custom colours as you paint\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Color Speed\",\n\t\t\t\tgroup: \"Color\",\n\t\t\t\tcondition: { colorMode: [\"rainbow\", \"custom\"] }\n\t\t\t}\n\t\t},\n\t\tcolor: {\n\t\t\tdefault: \"#ff2d7e\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Brush colour used when Color Mode is Single\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Brush Color\",\n\t\t\t\tgroup: \"Color\",\n\t\t\t\tcondition: { colorMode: \"single\" }\n\t\t\t}\n\t\t},\n\t\tcolor1: {\n\t\t\tdefault: \"#4338ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First colour of the custom brush cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 1\",\n\t\t\t\tgroup: \"Color\",\n\t\t\t\tcondition: { colorMode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolor2: {\n\t\t\tdefault: \"#ff2d7e\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second colour of the custom brush cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 2\",\n\t\t\t\tgroup: \"Color\",\n\t\t\t\tcondition: { colorMode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolor3: {\n\t\t\tdefault: \"#19e3ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Third colour of the custom brush cycle\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color 3\",\n\t\t\t\tgroup: \"Color\",\n\t\t\t\tcondition: { colorMode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Colour space the custom colours blend through as the brush cycles between them\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Color\",\n\t\t\t\tcondition: { colorMode: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Size of the ink splat painted under the cursor\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Brush\"\n\t\t\t}\n\t\t},\n\t\tforce: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How hard the cursor's motion pushes the fluid — higher throws faster, more violent jets and curls\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Force\",\n\t\t\t\tgroup: \"Brush\"\n\t\t\t}\n\t\t},\n\t\tcurl: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Vorticity confinement — swirl energy that spins the ink into persistent eddies and curls\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 60,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Swirl\",\n\t\t\t\tgroup: \"Dynamics\"\n\t\t\t}\n\t\t},\n\t\tdecay: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How fast the ink fades away — low values leave long, lingering trails\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .05,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Decay\",\n\t\t\t\tgroup: \"Dynamics\"\n\t\t\t}\n\t\t},\n\t\tmomentum: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How long the fluid keeps flowing after a stroke — high momentum lets the motion carry on and on\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Momentum\",\n\t\t\t\tgroup: \"Dynamics\"\n\t\t\t}\n\t\t}\n\t},\n\t...fluidSim((params, root) =\u003e {\n\t\tconst { getCpuValue, propValues } = params;\n\t\tconst spaceMode = propValues.colorSpace ?? 2;\n\t\tconst activeSplatKernel = splatKernelVariants[spaceMode] ?? splatKernelVariants[2];\n\t\tconst splatU = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(SplatParams), \"splatU\");\n\t\tlet hueCursor = 0;\n\t\tconst toRgb = (v, fallback) =\u003e {\n\t\t\tconst c = v;\n\t\t\treturn c \u0026\u0026 typeof c.r === \"number\" ? [\n\t\t\t\tc.r,\n\t\t\t\tc.g ?? 0,\n\t\t\t\tc.b ?? 0\n\t\t\t] : fallback;\n\t\t};\n\t\tconst conv = (c) =\u003e convertP3ToMixSpaceCPU(c[0], c[1], c[2], spaceMode);\n\t\tconst strokes = cursorRibbon({\n\t\t\tactiveWhen: (ptr) =\u003e ptr.moving,\n\t\t\tfadeSeconds: (f) =\u003e decayFadeSeconds(64, f.num(\"decay\", .5)),\n\t\t\tonFrame: (f) =\u003e {\n\t\t\t\thueCursor += f.dt * CYCLE_TIME_RATE * f.num(\"colorSpeed\", 1);\n\t\t\t},\n\t\t\tpass: { setup: (ctx) =\u003e {\n\t\t\t\tconst splatBg = ctx.root.createBindGroup(splatLayout, {\n\t\t\t\t\tvelA: ctx.buffers.velA,\n\t\t\t\t\tdyeA: ctx.buffers.dyeA,\n\t\t\t\t\tsparams: splatU.buffer\n\t\t\t\t});\n\t\t\t\treturn ctx.pass(activeSplatKernel, splatBg);\n\t\t\t} },\n\t\t\tribbon: (f, ptr) =\u003e {\n\t\t\t\tconst force = f.num(\"force\", 1);\n\t\t\t\tconst radiusGrid = Math.max(f.num(\"radius\", .3) * .1 * N, 1);\n\t\t\t\tconst colorSpeed = f.num(\"colorSpeed\", 1);\n\t\t\t\tconst mode = getCpuValue(\"colorMode\") || \"rainbow\";\n\t\t\t\tconst customStops = mode === \"custom\" ? [\n\t\t\t\t\tconv(toRgb(getCpuValue(\"color1\"), [\n\t\t\t\t\t\t.26,\n\t\t\t\t\t\t.22,\n\t\t\t\t\t\t1\n\t\t\t\t\t])),\n\t\t\t\t\tconv(toRgb(getCpuValue(\"color2\"), [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t.18,\n\t\t\t\t\t\t.49\n\t\t\t\t\t])),\n\t\t\t\t\tconv(toRgb(getCpuValue(\"color3\"), [\n\t\t\t\t\t\t.1,\n\t\t\t\t\t\t.89,\n\t\t\t\t\t\t1\n\t\t\t\t\t]))\n\t\t\t\t] : null;\n\t\t\t\tconst brushSplat = () =\u003e {\n\t\t\t\t\thueCursor += CYCLE_PER_SPLAT * colorSpeed;\n\t\t\t\t\tif (customStops) {\n\t\t\t\t\t\tconst h = (hueCursor % 1 + 1) % 1;\n\t\t\t\t\t\tconst seg = Math.min(2, Math.floor(h * 3));\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\ta: customStops[seg],\n\t\t\t\t\t\t\tb: customStops[(seg + 1) % 3],\n\t\t\t\t\t\t\tt: h * 3 - seg\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tif (mode === \"single\") {\n\t\t\t\t\t\tconst c$1 = conv(toRgb(getCpuValue(\"color\"), [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t.18,\n\t\t\t\t\t\t\t.49\n\t\t\t\t\t\t]));\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\ta: c$1,\n\t\t\t\t\t\t\tb: c$1,\n\t\t\t\t\t\t\tt: 0\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t\t\tconst c = conv(hueToLinearRgb(hueCursor));\n\t\t\t\t\treturn {\n\t\t\t\t\t\ta: c,\n\t\t\t\t\t\tb: c,\n\t\t\t\t\t\tt: 0\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t\tconst velX = ptr.velX * N * force * IMPULSE_K;\n\t\t\t\tconst velY = ptr.velY * N * force * IMPULSE_K;\n\t\t\t\treturn {\n\t\t\t\t\tstepSize: Math.max(.004, radiusGrid / N * .6),\n\t\t\t\t\tmaxSteps: MAX_STEPS,\n\t\t\t\t\tprepare: brushSplat,\n\t\t\t\t\twrite: (posX, posY, _t, bc) =\u003e splatU.write({\n\t\t\t\t\t\tposX,\n\t\t\t\t\t\tposY,\n\t\t\t\t\t\tvelX,\n\t\t\t\t\t\tvelY,\n\t\t\t\t\t\tcolR: bc.a[0],\n\t\t\t\t\t\tcolG: bc.a[1],\n\t\t\t\t\t\tcolB: bc.a[2],\n\t\t\t\t\t\tcol2R: bc.b[0],\n\t\t\t\t\t\tcol2G: bc.b[1],\n\t\t\t\t\t\tcol2B: bc.b[2],\n\t\t\t\t\t\tmixT: bc.t,\n\t\t\t\t\t\tradius: radiusGrid,\n\t\t\t\t\t\tstrength: 1\n\t\t\t\t\t})\n\t\t\t\t};\n\t\t\t}\n\t\t});\n\t\treturn {\n\t\t\tresolution: N,\n\t\t\tlayout: fluidLayout,\n\t\t\toutputLayout,\n\t\t\tparamsSchema: FlowParams,\n\t\t\tsolver: {\n\t\t\t\tkernels: solverKernels,\n\t\t\t\tjacobiIters: JACOBI_ITERS\n\t\t\t},\n\t\t\toutput: {\n\t\t\t\tkernel: outputKernel,\n\t\t\t\tkey: \"dyeTexture\"\n\t\t\t},\n\t\t\tinject: [strokes],\n\t\t\tvalues: (f) =\u003e {\n\t\t\t\tconst momentum = Math.min(Math.max(f.num(\"momentum\", .6), 0), 1);\n\t\t\t\treturn {\n\t\t\t\t\tdt: f.dt,\n\t\t\t\t\tcurlStrength: f.num(\"curl\", 0),\n\t\t\t\t\tvelFade: VEL_FADE_MAX * Math.pow(VEL_FADE_MIN / VEL_FADE_MAX, momentum),\n\t\t\t\t\tdyeFade: f.num(\"decay\", .5)\n\t\t\t\t};\n\t\t\t}\n\t\t};\n\t}),\n\tgpu: { fragment: ({ ctx, computeOutputs }) =\u003e {\n\t\tconst dyeField = computeOutputs?.dyeTexture;\n\t\tif (!dyeField) return ZERO;\n\t\tconst dye = local(dyeField.sample(ctx.uv, \"linearClamp\").member(\"rgb\"), \"inkDye\");\n\t\treturn vec4(dye, clamp(mul(max(dye.member(\"x\"), max(dye.member(\"y\"), dye.member(\"z\"))), GAIN), 0, 1));\n\t} }\n});\nvar InkFlow_default = componentDefinition;\nexport { copyDyeKernel as a, divergenceKernel as c, outputKernel as d, splatKernel as f, componentDefinition as i, gradSubtractKernel as l, advectDyeKernel as n, copyVelKernel as o, vorticityKernel as p, advectVelKernel as r, curlKernel as s, InkFlow_default as t, jacobiKernel as u };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as invert } from \"./color-Do6tU0ry.js\";\nconst componentDefinition = defineStd({\n\tname: \"Invert\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Invert RGB colors while preserving alpha\",\n\tprops: {},\n\teffect: invert(),\n\tmissingChildMessage: \"You must pass a child component into the Invert shader.\"\n});\nvar Invert_default = componentDefinition;\nexport { componentDefinition as n, Invert_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { c as transformPosition, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"IrisWipe\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Reveal through an expanding circle growing from a center point\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the iris has expanded (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Point the iris expands from\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Softness of the iris edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Wipe from the outside inward instead\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.radial(p(\"center\")),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"feather\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Iris Wipe shader.\"\n});\nvar IrisWipe_default = componentDefinition;\nexport { componentDefinition as n, IrisWipe_default as t };\n","import { Ar as vec2u, Br as struct, Cr as sin, Gn as typegpu_default, I as sdf_exports, Jn as textureSampleLevel, Jr as i32, Lr as texture2d, Mr as vec4f, Or as vec2f, Rr as textureStorage2d, Yn as textureStore, Yr as u32, ar as clamp, cr as dot$1, d as glassShellProps, er as select, gr as min, gt as formatFloat, hr as max$1, ht as Expr, jr as vec3f, mr as length, or as cos, pr as fract, q as createGuardedCompute, qn as textureLoad, qr as f32, t as defineStd, vr as normalize$1, wr as smoothstep$1, y as buildAnalyticSdfFn, zn as TAU, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { ct as listCountName, ft as listPropConfig, ut as listFieldName } from \"./porters-OTkIMOyl.js\";\nimport { y as createGaussianBlurCompute } from \"./blur-7yjVyMvI.js\";\nimport { A as placementPoint, F as shapedSurface, R as silhouette, S as lambert, T as nearestEdge, V as surfaceField, f as geometricNormal, g as guarded, i as continuedField, j as pointLightFrom, l as fieldSlope, s as exposureTone, v as insideShape, y as inverseSquare } from \"./materials-4Oqvm_9m.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nimport { O as resolveShapeType, k as shapeEffectBoundingBoxDeclaration, r as buildFieldSampleGraphArgs, w as sdf3d_exports } from \"./sdf3d-2AWC_wdn.js\";\nimport { n as glass_exports } from \"./glass-ABppDbYG.js\";\nimport { a as transformColor, c as transformPosition, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, I as splat3, P as smoothstep, V as vec3, h as gt, n as add, o as div, s as dot, u as float, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as emissiveAlpha } from \"./compose-Dkf3v-xS.js\";\nvar { sdfSpaceUV } = glass_exports;\nconst IRRADIANCE_FORMAT = \"rgba16float\";\nconst IrradianceParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcenter: vec2f,\n\tlightPos: arrayOf(vec4f, 8),\n\tlightColor: arrayOf(vec4f, 8),\n\tlightCount: f32,\n\tscale: f32,\n\trotation: f32,\n\taspect: f32,\n\treach: f32,\n\twrap: f32,\n\tlightRange: f32,\n\tshadowSoftness: f32,\n\teps: f32,\n\tres: f32,\n\tframe: f32,\n\trays: f32,\n\tsaRadius: f32,\n\tsaSides: f32,\n\tsaRounding: f32,\n\tsaInnerRatio: f32,\n\tsaRotation: f32,\n\tsaHeight: f32,\n\tsaOffset: f32,\n\tsaAperture: f32,\n\tvfOriginX: f32,\n\tvfOriginY: f32,\n\tvfSpanX: f32,\n\tvfSpanY: f32,\n\tvfActiveRes: f32,\n\tvfRBound: f32\n}), \"IrradianceParams\");\nvar outEntry = { storageTexture: textureStorage2d(IRRADIANCE_FORMAT, \"write-only\") };\nconst irradianceAnalyticLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tparams: { uniform: IrradianceParams },\n\toutTex: outEntry\n}), \"irradianceAnalyticLayout\");\nconst irradianceSvgLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tparams: { uniform: IrradianceParams },\n\toutTex: outEntry,\n\tsdfSource: { texture: texture2d(f32) },\n\tsamp: { sampler: \"filtering\" }\n}), \"irradianceSvgLayout\");\nconst irradianceFieldLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tparams: { uniform: IrradianceParams },\n\toutTex: outEntry,\n\tsilhouetteTex: { texture: texture2d(f32) },\n\tsamp: { sampler: \"filtering\" }\n}), \"irradianceFieldLayout\");\nvar FAR = 1e3;\nvar sane = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((v) =\u003e {\n\t\"use gpu\";\n\treturn max$1(min(v, FAR), __tsover_mul(FAR, -1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"v\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.max\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t\"std.min\",\n\t\t\t\t[\"v\", \"FAR\"]\n\t\t\t], [\n\t\t\t\t1,\n\t\t\t\t\"FAR\",\n\t\t\t\t\"*\",\n\t\t\t\t[\n\t\t\t\t\t4,\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"FAR\": () =\u003e FAR\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"irradianceSane\");\nvar beyondSquare = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\"use gpu\";\n\tconst c = clamp(uv, vec2f(0, 0), vec2f(1, 1));\n\treturn length(uv.sub(c));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"c\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"0\"], [5, \"0\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[5, \"1\"], [5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"std.length\",\n\t\t\t[[\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t\"sub\"\n\t\t\t\t],\n\t\t\t\t[\"c\"]\n\t\t\t]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"irradianceBeyondSquare\");\nfunction analyticField(shapeType) {\n\tconst sdfFn = buildAnalyticSdfFn(shapeType);\n\treturn typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = irradianceAnalyticLayout.$.params;\n\t\treturn sdfFn(uv, p.saRadius, p.saSides, p.saRounding, p.saInnerRatio, p.saRotation, p.saHeight, p.saOffset, p.saAperture).x;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"irradianceAnalyticLayout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t], [10, [\n\t\t\t\t7,\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"sdfFn\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saRadius\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saSides\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saRounding\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saInnerRatio\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saRotation\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saHeight\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saOffset\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"saAperture\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"x\"\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"irradianceAnalyticLayout\": () =\u003e irradianceAnalyticLayout,\n\t\t\t\"sdfFn\": () =\u003e sdfFn\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(\"irradianceAnalyticField\");\n}\nconst svgField = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\"use gpu\";\n\tconst border = textureSampleLevel(irradianceSvgLayout.$.sdfSource, irradianceSvgLayout.$.samp, uv, f32(0)).x;\n\tconst beyond = beyondSquare(uv);\n\treturn sane(select(border, max$1(beyond, __tsover_sub(border, beyond)), beyond \u003e 0));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"border\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureSampleLevel\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"irradianceSvgLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"sdfSource\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"irradianceSvgLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"samp\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"beyond\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"beyondSquare\",\n\t\t\t\t\t[\"uv\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"sane\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"border\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"beyond\", [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"border\",\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"beyond\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"beyond\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.textureSampleLevel\": () =\u003e textureSampleLevel,\n\t\t\"irradianceSvgLayout\": () =\u003e irradianceSvgLayout,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"beyondSquare\": () =\u003e beyondSquare,\n\t\t\"sane\": () =\u003e sane,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"std.max\": () =\u003e max$1\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"irradianceSvgField\");\nconst volumetricField = typegpu_default.fn([vec2f], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv) =\u003e {\n\t\"use gpu\";\n\tconst p = irradianceFieldLayout.$.params;\n\tconst cx = clamp(uv.x, p.vfOriginX, __tsover_add(p.vfOriginX, p.vfSpanX));\n\tconst cy = clamp(uv.y, p.vfOriginY, __tsover_add(p.vfOriginY, p.vfSpanY));\n\tconst outside = length(vec2f(__tsover_sub(uv.x, cx), __tsover_sub(uv.y, cy)));\n\tconst circle = __tsover_sub(length(vec2f(__tsover_sub(uv.x, .5), __tsover_sub(uv.y, .5))), p.vfRBound);\n\tconst tuv = vec2f(__tsover_div(__tsover_sub(cx, p.vfOriginX), p.vfSpanX), __tsover_div(__tsover_sub(cy, p.vfOriginY), p.vfSpanY));\n\tconst sil = textureSampleLevel(irradianceFieldLayout.$.silhouetteTex, irradianceFieldLayout.$.samp, tuv, f32(0));\n\tconst inDomain = __tsover_mul(sil.z, sil.w);\n\treturn sane(select(inDomain, max$1(max$1(outside, circle), __tsover_sub(inDomain, outside)), outside \u003e 0));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"irradianceFieldLayout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"cy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"outside\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cx\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"cy\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"circle\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"vfRBound\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tuv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"cy\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sil\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureSampleLevel\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"irradianceFieldLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"silhouetteTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"irradianceFieldLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"samp\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"tuv\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"inDomain\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sil\",\n\t\t\t\t\t\t\"z\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"sil\",\n\t\t\t\t\t\t\"w\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"beyond\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"outside\", \"circle\"]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"inDomain\",\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\"outside\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"sane\",\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"inDomain\",\n\t\t\t\t\t\t\"beyond\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"outside\",\n\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"irradianceFieldLayout\": () =\u003e irradianceFieldLayout,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.textureSampleLevel\": () =\u003e textureSampleLevel,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"sane\": () =\u003e sane,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"irradianceVolumetricField\");\nconst SilhouetteParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tvfOriginX: f32,\n\tvfOriginY: f32,\n\tvfSpanX: f32,\n\tvfSpanY: f32,\n\tvfActiveRes: f32,\n\tvfRBound: f32,\n\tres: f32,\n\tstep: f32\n}), \"SilhouetteParams\");\nconst silhouetteSeedLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tparams: { uniform: SilhouetteParams },\n\tfieldTex: {\n\t\ttexture: texture2d(f32),\n\t\tsampleType: \"unfilterable-float\"\n\t},\n\tout: outEntry\n}), \"silhouetteSeedLayout\");\nconst silhouetteStepLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tparams: { uniform: SilhouetteParams },\n\tsrc: { texture: texture2d(f32) },\n\tout: outEntry\n}), \"silhouetteStepLayout\");\nvar { fieldSampleFastArg } = buildFieldSampleGraphArgs();\nvar silhouetteInside = typegpu_default.fn([f32, f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((tx, ty) =\u003e {\n\t\"use gpu\";\n\tconst p = silhouetteSeedLayout.$.params;\n\tconst v = fieldSampleFastArg(vec2f(__tsover_add(p.vfOriginX, __tsover_mul(__tsover_div(__tsover_add(tx, .5), p.res), p.vfSpanX)), __tsover_add(p.vfOriginY, __tsover_mul(__tsover_div(__tsover_add(ty, .5), p.res), p.vfSpanY))), silhouetteSeedLayout.$.fieldTex, p.vfOriginX, p.vfOriginY, p.vfSpanX, p.vfSpanY, p.vfActiveRes, p.vfRBound).x;\n\treturn select(f32(1), f32(-1), v \u003c 0);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"tx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"ty\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"silhouetteSeedLayout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"uv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"v\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"fieldSampleFastArg\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"silhouetteSeedLayout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"fieldTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfActiveRes\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfRBound\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"x\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.select\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"silhouetteSeedLayout\": () =\u003e silhouetteSeedLayout,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"fieldSampleFastArg\": () =\u003e fieldSampleFastArg,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"silhouetteInside\");\nconst silhouetteSeedKernel = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\"use gpu\";\n\tconst p = silhouetteSeedLayout.$.params;\n\tconst fx = f32(cx);\n\tconst fy = f32(cy);\n\tconst s0 = silhouetteInside(fx, fy);\n\tconst maxT = __tsover_sub(p.res, 1);\n\tconst sL = silhouetteInside(max$1(__tsover_sub(fx, 1), 0), fy);\n\tconst sR = silhouetteInside(min(__tsover_add(fx, 1), maxT), fy);\n\tconst sD = silhouetteInside(fx, max$1(__tsover_sub(fy, 1), 0));\n\tconst sU = silhouetteInside(fx, min(__tsover_add(fy, 1), maxT));\n\tconst boundary = sL !== s0 || sR !== s0 || sD !== s0 || sU !== s0;\n\tconst sx = __tsover_add(p.vfOriginX, __tsover_mul(__tsover_div(__tsover_add(fx, .5), p.res), p.vfSpanX));\n\tconst sy = __tsover_add(p.vfOriginY, __tsover_mul(__tsover_div(__tsover_add(fy, .5), p.res), p.vfSpanY));\n\tconst seed = select(vec4f(-1, -1, 6e4, s0), vec4f(sx, sy, 0, s0), boundary);\n\ttextureStore(silhouetteSeedLayout.$.out, vec2u(cx, cy), seed);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cy\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"silhouetteSeedLayout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[\"cx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fy\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[\"cy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"silhouetteInside\",\n\t\t\t\t\t[\"fx\", \"fy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxT\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"res\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sL\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"silhouetteInside\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t], \"fy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sR\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"silhouetteInside\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], \"maxT\"]\n\t\t\t\t\t], \"fy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sD\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"silhouetteInside\",\n\t\t\t\t\t[\"fx\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], [5, \"0\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sU\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"silhouetteInside\",\n\t\t\t\t\t[\"fx\", [\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t], \"maxT\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"boundary\",\n\t\t\t\t[\n\t\t\t\t\t3,\n\t\t\t\t\t[\n\t\t\t\t\t\t3,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t3,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sL\",\n\t\t\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\t\t\"s0\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"sR\",\n\t\t\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\t\t\"s0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"||\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"sD\",\n\t\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\t\"s0\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"||\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"sU\",\n\t\t\t\t\t\t\"!==\",\n\t\t\t\t\t\t\"s0\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sx\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fx\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"sy\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"fy\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"seed\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.select\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"60000\"],\n\t\t\t\t\t\t\t\t\"s0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"sx\",\n\t\t\t\t\t\t\t\t\"sy\",\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\"s0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"boundary\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.textureStore\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"silhouetteSeedLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"out\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"seed\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"silhouetteSeedLayout\": () =\u003e silhouetteSeedLayout,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"silhouetteInside\": () =\u003e silhouetteInside,\n\t\t\"std.max\": () =\u003e max$1,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\"d.vec2u\": () =\u003e vec2u\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"silhouetteSeed\");\nconst silhouetteStepKernel = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\"use gpu\";\n\tconst p = silhouetteStepLayout.$.params;\n\tconst tx = f32(cx);\n\tconst ty = f32(cy);\n\tconst here = vec2f(__tsover_add(p.vfOriginX, __tsover_mul(__tsover_div(__tsover_add(tx, .5), p.res), p.vfSpanX)), __tsover_add(p.vfOriginY, __tsover_mul(__tsover_div(__tsover_add(ty, .5), p.res), p.vfSpanY)));\n\tconst self = textureLoad(silhouetteStepLayout.$.src, vec2u(cx, cy), 0);\n\tlet best = vec4f(self);\n\tconst maxT = __tsover_sub(p.res, 1);\n\tfor (let j = -1; j \u003c= 1; j++) for (let i = -1; i \u003c= 1; i++) {\n\t\tconst nx = clamp(__tsover_add(tx, __tsover_mul(f32(i), p.step)), 0, maxT);\n\t\tconst ny = clamp(__tsover_add(ty, __tsover_mul(f32(j), p.step)), 0, maxT);\n\t\tconst n = textureLoad(silhouetteStepLayout.$.src, vec2u(u32(nx), u32(ny)), 0);\n\t\tif (n.x \u003e= 0) {\n\t\t\tconst dist = length(n.xy.sub(here));\n\t\t\tif (dist \u003c best.z) best = vec4f(n.x, n.y, dist, best.w);\n\t\t}\n\t}\n\ttextureStore(silhouetteStepLayout.$.out, vec2u(cx, cy), vec4f(best.x, best.y, best.z, self.w));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cy\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"p\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"silhouetteStepLayout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"params\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tx\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[\"cx\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"ty\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[\"cy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"here\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfOriginX\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanX\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"vfOriginY\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"vfSpanY\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"self\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"silhouetteStepLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"best\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t[\"self\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"maxT\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"res\"\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"j\",\n\t\t\t\t\t[\n\t\t\t\t\t\t4,\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"j\",\n\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"j\"\n\t\t\t\t],\n\t\t\t\t[0, [[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"tx\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"step\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ty\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"j\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"step\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\"maxT\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"silhouetteStepLayout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"nx\"]\n\t\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.u32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"ny\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"here\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"best\",\n\t\t\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"best\",\n\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"best\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]]]\n\t\t\t],\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.textureStore\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"silhouetteStepLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"out\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"best\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"best\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"best\",\n\t\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"self\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"silhouetteStepLayout\": () =\u003e silhouetteStepLayout,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.u32\": () =\u003e u32,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.textureStore\": () =\u003e textureStore\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"silhouetteStep\");\nfunction buildIrradianceKernel(layout, fieldAt, opts) {\n\tconst { steps, shadowSteps, namePrefix } = opts;\n\tconst RAY_SPAN = 3;\n\tconst shadows = shadowSteps \u003e 0;\n\tconst shadowLoop = Math.max(shadowSteps, 1);\n\tconst lay = layout;\n\tconst visibility = typegpu_default.fn([\n\t\tvec2f,\n\t\tvec2f,\n\t\tf32,\n\t\tf32\n\t], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((from, toward, eps, soft) =\u003e {\n\t\t\"use gpu\";\n\t\tconst seg = toward.sub(from);\n\t\tconst len = length(seg);\n\t\tconst dir = seg.div(max$1(len, 1e-4));\n\t\tlet vis = f32(1);\n\t\tlet t = __tsover_mul(eps, 2);\n\t\tfor (let k = 0; k \u003c shadowLoop; k++) {\n\t\t\tif (t \u003e= len) break;\n\t\t\tconst dd = fieldAt(from.add(dir.mul(t)));\n\t\t\tvis = min(vis, clamp(__tsover_div(dd, max$1(__tsover_mul(t, soft), eps)), 0, 1));\n\t\t\tif (vis \u003c= 0) break;\n\t\t\tt = __tsover_add(t, max$1(dd, eps));\n\t\t}\n\t\treturn vis;\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"from\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"toward\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"eps\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"soft\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"seg\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"toward\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"from\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"len\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t[\"seg\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"dir\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"seg\",\n\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"len\", [5, \"0.0001\"]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"vis\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"k\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"shadowLoop\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"k\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t\"len\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"from\",\n\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"vis\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t\t\t[\"vis\", [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"soft\"\n\t\t\t\t\t\t\t\t\t\t\t\t], \"eps\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"vis\",\n\t\t\t\t\t\t\t\t\"\u003c=\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"+=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"dd\", \"eps\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[10, \"vis\"]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"std.max\": () =\u003e max$1,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"shadowLoop\": () =\u003e shadowLoop,\n\t\t\t\"fieldAt\": () =\u003e fieldAt,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"std.clamp\": () =\u003e clamp\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Visibility`);\n\treturn typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tconst p = lay.$.params;\n\t\tconst eps = p.eps;\n\t\tconst uv = vec2f(__tsover_div(__tsover_add(f32(cx), .5), p.res), __tsover_div(__tsover_add(f32(cy), .5), p.res));\n\t\tconst sdfUV = sdfSpaceUV(p.center, p.scale, p.rotation, uv, p.aspect);\n\t\tconst d0 = fieldAt(sdfUV);\n\t\tif (d0 \u003c __tsover_mul(eps, -1)) {\n\t\t\ttextureStore(lay.$.outTex, vec2u(cx, cy), vec4f(0, 0, 0, 0));\n\t\t\treturn;\n\t\t}\n\t\tlet o = vec2f(sdfUV);\n\t\tif (d0 \u003c __tsover_mul(eps, 2)) {\n\t\t\tconst gx = __tsover_sub(fieldAt(sdfUV.add(vec2f(eps, 0))), d0);\n\t\t\tconst gy = __tsover_sub(fieldAt(sdfUV.add(vec2f(0, eps))), d0);\n\t\t\tconst g = normalize$1(vec2f(gx, __tsover_add(gy, 1e-6)));\n\t\t\to = sdfUV.add(g.mul(__tsover_sub(__tsover_mul(eps, 2), d0)));\n\t\t}\n\t\tconst start = max$1(fieldAt(o), eps);\n\t\tconst tMax = __tsover_add(start, RAY_SPAN);\n\t\tconst ign = fract(__tsover_mul(52.9829189, fract(__tsover_add(__tsover_mul(f32(cx), .06711056), __tsover_mul(f32(cy), .00583715)))));\n\t\tconst u = fract(__tsover_add(ign, __tsover_mul(p.frame, .6180339887)));\n\t\tconst rays = i32(p.rays);\n\t\tconst rayStep = __tsover_div(TAU, p.rays);\n\t\tconst lightCount = i32(p.lightCount);\n\t\tlet acc = vec3f(0, 0, 0);\n\t\tfor (let i = 0; i \u003c rays; i++) {\n\t\t\tconst ang = __tsover_mul(__tsover_add(f32(i), u), rayStep);\n\t\t\tconst dir = vec2f(cos(ang), sin(ang));\n\t\t\tlet t = start;\n\t\t\tlet hitD = f32(1);\n\t\t\tfor (let s = 0; s \u003c steps; s++) {\n\t\t\t\tconst dd = fieldAt(o.add(dir.mul(t)));\n\t\t\t\tif (dd \u003c eps) {\n\t\t\t\t\thitD = dd;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tt = __tsover_add(t, max$1(dd, eps));\n\t\t\t\tif (t \u003e tMax) break;\n\t\t\t}\n\t\t\tif (hitD \u003c eps) {\n\t\t\t\tconst pos = o.add(dir.mul(t));\n\t\t\t\tconst nx = __tsover_sub(fieldAt(pos.add(vec2f(eps, 0))), hitD);\n\t\t\t\tconst ny = __tsover_sub(fieldAt(pos.add(vec2f(0, eps))), hitD);\n\t\t\t\tconst n = normalize$1(vec2f(nx, __tsover_add(ny, 1e-6)));\n\t\t\t\tconst hitP = pos.sub(n.mul(max$1(hitD, 0)));\n\t\t\t\tconst shadowFrom = hitP.add(n.mul(__tsover_mul(eps, 2)));\n\t\t\t\tfor (let l = 0; l \u003c lightCount; l++) {\n\t\t\t\t\tconst lp = p.lightPos[l];\n\t\t\t\t\tconst lc = p.lightColor[l];\n\t\t\t\t\tconst lightUV = lp.xy;\n\t\t\t\t\tconst toL = lightUV.sub(hitP);\n\t\t\t\t\tconst dist = length(toL);\n\t\t\t\t\tconst dirL = toL.div(max$1(dist, 1e-4));\n\t\t\t\t\tconst facing = clamp(__tsover_div(__tsover_add(dot$1(n, dirL), p.wrap), __tsover_add(1, p.wrap)), 0, 1);\n\t\t\t\t\tif (facing \u003e 0) {\n\t\t\t\t\t\tconst r = __tsover_div(dist, p.lightRange);\n\t\t\t\t\t\tlet struck = __tsover_div(facing, __tsover_add(1, __tsover_mul(r, r)));\n\t\t\t\t\t\tif (shadows) struck = __tsover_mul(struck, visibility(shadowFrom, lightUV, eps, p.shadowSoftness));\n\t\t\t\t\t\tacc = acc.add(lc.xyz.mul(__tsover_mul(struck, lc.w)));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tconst fade = __tsover_sub(1, smoothstep$1(__tsover_mul(p.reach, .25), p.reach, max$1(d0, 0)));\n\t\tconst m = clamp(__tsover_add(__tsover_div(d0, eps), 1), 0, 1);\n\t\tconst irr = min(max$1(acc.div(p.rays), vec3f(0, 0, 0)), vec3f(FAR, FAR, FAR));\n\t\ttextureStore(lay.$.outTex, vec2u(cx, cy), vec4f(irr.mul(__tsover_mul(fade, m)), m));\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"p\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"lay\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"eps\",\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\"eps\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"uv\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"res\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"sdfSpaceUV\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"center\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"scale\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"rotation\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\"aspect\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"d0\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t[\"sdfUV\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"d0\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"lay\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [10]]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"o\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[\"sdfUV\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t11,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"d0\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"gx\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[\"eps\", [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"d0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"], \"eps\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"d0\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t[\"gx\", [\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"gy\",\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.000001\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"g\",\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"d0\"\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"start\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t\t[\"o\"]\n\t\t\t\t\t\t], \"eps\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"tMax\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"start\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"RAY_SPAN\"\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ign\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"52.9829189\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.06711056\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0.00583715\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"u\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"ign\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"frame\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"0.6180339887\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rays\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"rays\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"rayStep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"TAU\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"rays\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"lightCount\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\"lightCount\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"acc\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t14,\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\"rays\"\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t102,\n\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\"i\"\n\t\t\t\t\t],\n\t\t\t\t\t[0, [\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"ang\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\"u\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"rayStep\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t[\"ang\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\"start\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"hitD\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"steps\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\"s\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"dd\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"eps\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"hitD\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\"dd\"\n\t\t\t\t\t\t\t\t\t], [17]]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\"+=\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t[\"dd\", \"eps\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\"tMax\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[17]]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"hitD\",\n\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\"eps\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"o\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"t\"]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"nx\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"eps\", [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"hitD\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"fieldAt\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[[5, \"0\"], \"eps\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"hitD\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\"std.normalize\",\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t\t\t\t[\"nx\", [\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"ny\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.000001\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"hitP\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"pos\",\n\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"hitD\", [5, \"0\"]]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\"shadowFrom\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"hitP\",\n\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"n\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t14,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"l\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"lightCount\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\t\t\t\"l\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"lp\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightPos\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"l\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"lc\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightColor\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\"l\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"lightUV\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"lp\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"xy\"\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"toL\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\"hitP\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.length\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\"toL\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"dirL\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"toL\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\"dist\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\"facing\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"std.dot\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\"n\", \"dirL\"]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wrap\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"wrap\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"facing\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"\u003e\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"dist\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightRange\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"struck\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"facing\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"r\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"shadows\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"struck\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"struck\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"visibility\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shadowFrom\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lightUV\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"eps\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"shadowSoftness\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"struck\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"lc\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"fade\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\t\"reach\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"0.25\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"reach\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t\t[\"d0\", [5, \"0\"]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"m\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"d0\",\n\t\t\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\t\t\"eps\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"irr\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.min\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"acc\",\n\t\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"p\",\n\t\t\t\t\t\t\t\t\t\"rays\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"FAR\",\n\t\t\t\t\t\t\t\t\"FAR\",\n\t\t\t\t\t\t\t\t\"FAR\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"lay\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"outTex\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"irr\",\n\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"fade\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"m\"\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t], \"m\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"lay\": () =\u003e lay,\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\"sdfSpaceUV\": () =\u003e sdfSpaceUV,\n\t\t\t\"fieldAt\": () =\u003e fieldAt,\n\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"std.normalize\": () =\u003e normalize$1,\n\t\t\t\"std.max\": () =\u003e max$1,\n\t\t\t\"RAY_SPAN\": () =\u003e RAY_SPAN,\n\t\t\t\"std.fract\": () =\u003e fract,\n\t\t\t\"d.i32\": () =\u003e i32,\n\t\t\t\"TAU\": () =\u003e TAU,\n\t\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\t\"std.cos\": () =\u003e cos,\n\t\t\t\"std.sin\": () =\u003e sin,\n\t\t\t\"steps\": () =\u003e steps,\n\t\t\t\"std.length\": () =\u003e length,\n\t\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\t\"std.dot\": () =\u003e dot$1,\n\t\t\t\"shadows\": () =\u003e shadows,\n\t\t\t\"visibility\": () =\u003e visibility,\n\t\t\t\"std.smoothstep\": () =\u003e smoothstep$1,\n\t\t\t\"std.min\": () =\u003e min,\n\t\t\t\"FAR\": () =\u003e FAR\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`${namePrefix}Gather`);\n}\nfunction createIrradiancePass(root, kernel, opts) {\n\treturn createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\"use gpu\";\n\t\tkernel(cx, cy);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"cy\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[\n\t\t\t\t6,\n\t\t\t\t\"kernel\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]]]\n\t\t},\n\t\texternals: { \"kernel\": () =\u003e kernel }\n\t}) \u0026\u0026 $.f)({}), {\n\t\tsize: [opts.res, opts.res],\n\t\tbindGroup: opts.bindGroup\n\t});\n}\nconst AccumulateParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({ weight: f32 }), \"AccumulateParams\");\nconst accumulateLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tsample: { texture: texture2d(f32) },\n\tprev: { texture: texture2d(f32) },\n\tout: outEntry,\n\tparams: { uniform: AccumulateParams }\n}), \"accumulateLayout\");\nconst accumulateKernel = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\"use gpu\";\n\tconst at = vec2u(cx, cy);\n\tconst s = textureLoad(accumulateLayout.$.sample, at, 0);\n\tconst prev = textureLoad(accumulateLayout.$.prev, at, 0);\n\tconst w = accumulateLayout.$.params.weight;\n\ttextureStore(accumulateLayout.$.out, at, select(prev.add(s.sub(prev).mul(w)), s, w \u003e= 1));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cy\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"at\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"s\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"accumulateLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"sample\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"at\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"prev\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"accumulateLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"prev\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"at\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"w\",\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"accumulateLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"params\"\n\t\t\t\t\t],\n\t\t\t\t\t\"weight\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"std.textureStore\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"accumulateLayout\",\n\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"out\"\n\t\t\t\t\t],\n\t\t\t\t\t\"at\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"prev\",\n\t\t\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t[\"prev\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\"w\"]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"s\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"w\",\n\t\t\t\t\t\t\t\t\"\u003e=\",\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\"std.textureLoad\": () =\u003e textureLoad,\n\t\t\"accumulateLayout\": () =\u003e accumulateLayout,\n\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\"std.select\": () =\u003e select\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"irradianceAccumulate\");\nconst copyLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tsrc: { texture: texture2d(f32) },\n\tout: outEntry\n}), \"copyLayout\");\nconst copyKernel = typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\"use gpu\";\n\tconst at = vec2u(cx, cy);\n\ttextureStore(copyLayout.$.out, at, textureLoad(copyLayout.$.src, at, 0));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cx\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"cy\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"at\",\n\t\t\t[\n\t\t\t\t6,\n\t\t\t\t\"d.vec2u\",\n\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t]\n\t\t], [\n\t\t\t6,\n\t\t\t\"std.textureStore\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"copyLayout\",\n\t\t\t\t\t\t\"$\"\n\t\t\t\t\t],\n\t\t\t\t\t\"out\"\n\t\t\t\t],\n\t\t\t\t\"at\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.textureLoad\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"copyLayout\",\n\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"src\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"at\",\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t]\n\t\t]]]\n\t},\n\texternals: {\n\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\"copyLayout\": () =\u003e copyLayout,\n\t\t\"std.textureLoad\": () =\u003e textureLoad\n\t}\n}) \u0026\u0026 $.f)({})).$name(\"irradianceCopy\");\nvar radianceCounter = 0;\nvar raw$1 = (name) =\u003e new Expr(() =\u003e name);\nvar num = (v, ctx) =\u003e typeof v === \"number\" ? formatFloat(v) : v._emit(ctx);\nfunction scopedInto(ctx, into) {\n\treturn {\n\t\texternal: (v, h) =\u003e ctx.external(v, h),\n\t\tstatement: (w) =\u003e into.push(w),\n\t\tfreshLocal: (h) =\u003e ctx.freshLocal(h),\n\t\tmemo: (k, f) =\u003e ctx.memo(k, f)\n\t};\n}\nfunction shadowVisibility(spec) {\n\tconst id = radianceCounter++;\n\tconst hint = spec.hint ?? \"visibility\";\n\treturn new Expr((ctx) =\u003e ctx.memo(`shadow:${id}`, () =\u003e {\n\t\tconst vis = ctx.freshLocal(hint);\n\t\tconst from = ctx.freshLocal(\"shFrom\");\n\t\tconst seg = ctx.freshLocal(\"shSeg\");\n\t\tconst len = ctx.freshLocal(\"shLen\");\n\t\tconst dir = ctx.freshLocal(\"shDir\");\n\t\tconst eps = ctx.freshLocal(\"shEps\");\n\t\tconst soft = ctx.freshLocal(\"shSoft\");\n\t\tconst t = ctx.freshLocal(\"shT\");\n\t\tconst pos = ctx.freshLocal(\"shPos\");\n\t\tconst dd = ctx.freshLocal(\"shD\");\n\t\tconst k = ctx.freshLocal(\"shStep\");\n\t\tctx.statement(`let ${from} = ${spec.from._emit(ctx)};`);\n\t\tctx.statement(`let ${seg} = ${spec.toward._emit(ctx)} - ${from};`);\n\t\tctx.statement(`let ${len} = length(${seg});`);\n\t\tctx.statement(`let ${dir} = ${seg} / max(${len}, 0.0001);`);\n\t\tctx.statement(`let ${eps} = ${num(spec.surfaceEps, ctx)};`);\n\t\tctx.statement(`let ${soft} = ${num(spec.softness ?? 0, ctx)};`);\n\t\tctx.statement(`var ${vis} = 1.0;`);\n\t\tconst marchStmts = [];\n\t\tconst fieldAtPos = spec.field(raw$1(pos))._emit(scopedInto(ctx, marchStmts));\n\t\tctx.statement([\n\t\t\t`{`,\n\t\t\t`  var ${t} = ${eps} * 2.0;`,\n\t\t\t`  for (var ${k} = 0u; ${k} \u003c ${spec.steps}u; ${k}++) {`,\n\t\t\t`    if (${t} \u003e= ${len}) { break; }`,\n\t\t\t`    let ${pos} = ${from} + ${dir} * ${t};`,\n\t\t\t...marchStmts.map((w) =\u003e `    ${w}`),\n\t\t\t`    let ${dd} = ${fieldAtPos};`,\n\t\t\t`    ${vis} = min(${vis}, clamp(${dd} / max(${t} * ${soft}, ${eps}), 0.0, 1.0));`,\n\t\t\t`    if (${vis} \u003c= 0.0) { break; }`,\n\t\t\t`    ${t} += max(${dd}, ${eps});`,\n\t\t\t`  }`,\n\t\t\t`}`\n\t\t].join(\"\\n\"));\n\t\treturn vis;\n\t}));\n}\nvar DENOISE_RADIUS = 3;\nvar DENOISE_HALF_KERNEL = 6;\nvar WARMUP_FRAMES = 3;\nvar { createSdfDataTexture, analyticSubPropValues, parseShapeConfigValue } = sdf_exports;\nvar { createVolumetricFieldComputeNode } = sdf3d_exports;\nfunction toPlacement(center, scale, rotationDeg, aspect, stored) {\n\tconst dxAc = (stored.x - center.x) * aspect;\n\tconst dy = 1 - stored.y - (1 - center.y);\n\tconst r = rotationDeg * Math.PI / 180;\n\tconst c = Math.cos(r);\n\tconst s = Math.sin(r);\n\tconst sc = Math.max(scale, .001);\n\treturn {\n\t\tx: (dxAc * c + dy * s) / sc + .5,\n\t\ty: (dy * c - dxAc * s) / sc + .5\n\t};\n}\nfunction lightLanes(items, fields, placement) {\n\tconst list = (Array.isArray(items) ? items : []).slice(0, 8);\n\tconst pos = [];\n\tconst color = [];\n\tfor (let i = 0; i \u003c 8; i++) {\n\t\tconst item = list[i];\n\t\tconst stored = item?.[fields.position] ?? {\n\t\t\tx: .5,\n\t\t\ty: .5\n\t\t};\n\t\tconst p = toPlacement(placement.center, placement.scale, placement.rotation, placement.aspect, stored);\n\t\tconst c = item?.[fields.color] ?? [\n\t\t\t1,\n\t\t\t1,\n\t\t\t1,\n\t\t\t1\n\t\t];\n\t\tconst intensity = typeof item?.[fields.intensity] === \"number\" ? item[fields.intensity] : 0;\n\t\tpos.push(item ? [\n\t\t\tp.x,\n\t\t\tp.y,\n\t\t\t0,\n\t\t\t0\n\t\t] : [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t]);\n\t\tcolor.push(item ? [\n\t\t\tc[0],\n\t\t\tc[1],\n\t\t\tc[2],\n\t\t\tintensity\n\t\t] : [\n\t\t\t0,\n\t\t\t0,\n\t\t\t0,\n\t\t\t0\n\t\t]);\n\t}\n\treturn {\n\t\tpos,\n\t\tcolor,\n\t\tcount: list.length\n\t};\n}\nfunction irradianceField(spec) {\n\tconst outputKey = spec.outputKey ?? \"irradianceTexture\";\n\tconst namePrefix = spec.namePrefix ?? \"irradiance\";\n\tconst kernelOpts = {\n\t\tsteps: spec.steps ?? 32,\n\t\tshadowSteps: spec.shadowSteps ?? 12,\n\t\tnamePrefix\n\t};\n\tconst res = spec.resolution;\n\tconst compute = (params) =\u003e {\n\t\tconst { gpu, getCpuValue, registerComputeTexture, onCleanup, onResize } = params;\n\t\tconst root = gpu?.root;\n\t\tif (!root) return null;\n\t\tconst shapeSdfUrl = getCpuValue(\"shapeSdfUrl\") || \"\";\n\t\tconst shapeType = resolveShapeType(getCpuValue(\"shapeType\") || \"\", getCpuValue(\"shape\"));\n\t\tconst vf = createVolumetricFieldComputeNode(params, () =\u003e getCpuValue(\"shape\"), \"none\", \"span\");\n\t\tconst mkTex = () =\u003e {\n\t\t\tconst t = root.createTexture({\n\t\t\t\tsize: [res, res],\n\t\t\t\tformat: IRRADIANCE_FORMAT\n\t\t\t}).$usage(\"storage\", \"sampled\");\n\t\t\tonCleanup(() =\u003e t.destroy());\n\t\t\treturn t;\n\t\t};\n\t\tconst outTex = mkTex();\n\t\tconst meanTex = mkTex();\n\t\tconst prevTex = mkTex();\n\t\tconst denoise = createGaussianBlurCompute(root, meanTex, res, res, onCleanup, DENOISE_HALF_KERNEL, res, res);\n\t\tdenoise.updateRadius(DENOISE_RADIUS);\n\t\tconst outputTexture = registerComputeTexture(denoise.outputTexture);\n\t\tconst paramsU = root.createUniform(IrradianceParams);\n\t\tconst accumU = root.createUniform(AccumulateParams);\n\t\tconst accumulate$1 = createIrradiancePass(root, accumulateKernel, {\n\t\t\tres,\n\t\t\tbindGroup: root.createBindGroup(accumulateLayout, {\n\t\t\t\tsample: outTex,\n\t\t\t\tprev: prevTex,\n\t\t\t\tout: meanTex,\n\t\t\t\tparams: accumU.buffer\n\t\t\t})\n\t\t});\n\t\tconst keepMean = createIrradiancePass(root, copyKernel, {\n\t\t\tres,\n\t\t\tbindGroup: root.createBindGroup(copyLayout, {\n\t\t\t\tsrc: meanTex,\n\t\t\t\tout: prevTex\n\t\t\t})\n\t\t});\n\t\tlet pass;\n\t\tlet fieldVersion = () =\u003e 0;\n\t\tlet silhouette$1 = null;\n\t\tif (vf) {\n\t\t\tconst jfaA = mkTex();\n\t\t\tconst jfaB = mkTex();\n\t\t\tconst silU = root.createUniform(SilhouetteParams);\n\t\t\tconst seedPass = createIrradiancePass(root, silhouetteSeedKernel, {\n\t\t\t\tres,\n\t\t\t\tbindGroup: root.createBindGroup(silhouetteSeedLayout, {\n\t\t\t\t\tparams: silU.buffer,\n\t\t\t\t\tfieldTex: vf.fieldTexture,\n\t\t\t\t\tout: jfaA\n\t\t\t\t})\n\t\t\t});\n\t\t\tconst stepAB = createIrradiancePass(root, silhouetteStepKernel, {\n\t\t\t\tres,\n\t\t\t\tbindGroup: root.createBindGroup(silhouetteStepLayout, {\n\t\t\t\t\tparams: silU.buffer,\n\t\t\t\t\tsrc: jfaA,\n\t\t\t\t\tout: jfaB\n\t\t\t\t})\n\t\t\t});\n\t\t\tconst stepBA = createIrradiancePass(root, silhouetteStepKernel, {\n\t\t\t\tres,\n\t\t\t\tbindGroup: root.createBindGroup(silhouetteStepLayout, {\n\t\t\t\t\tparams: silU.buffer,\n\t\t\t\t\tsrc: jfaB,\n\t\t\t\t\tout: jfaA\n\t\t\t\t})\n\t\t\t});\n\t\t\tconst jumps = [];\n\t\t\tfor (let step = Math.ceil(res / 2); step \u003e= 1; step = Math.floor(step / 2)) {\n\t\t\t\tjumps.push(step);\n\t\t\t\tif (step === 1) break;\n\t\t\t}\n\t\t\tconst finalTex = jumps.length % 2 === 1 ? jfaB : jfaA;\n\t\t\tsilhouette$1 = { steps: (domain) =\u003e {\n\t\t\t\tconst nodes = [];\n\t\t\t\tconst base = {\n\t\t\t\t\tvfOriginX: domain.originX,\n\t\t\t\t\tvfOriginY: domain.originY,\n\t\t\t\t\tvfSpanX: domain.spanX,\n\t\t\t\t\tvfSpanY: domain.spanY,\n\t\t\t\t\tvfActiveRes: domain.activeRes,\n\t\t\t\t\tvfRBound: domain.rBound,\n\t\t\t\t\tres\n\t\t\t\t};\n\t\t\t\tnodes.push(() =\u003e silU.write({\n\t\t\t\t\t...base,\n\t\t\t\t\tstep: 0\n\t\t\t\t}), seedPass);\n\t\t\t\tjumps.forEach((step, i) =\u003e {\n\t\t\t\t\tnodes.push(() =\u003e silU.write({\n\t\t\t\t\t\t...base,\n\t\t\t\t\t\tstep\n\t\t\t\t\t}), i % 2 === 0 ? stepAB : stepBA);\n\t\t\t\t});\n\t\t\t\treturn nodes;\n\t\t\t} };\n\t\t\tconst samp = root.createSampler({\n\t\t\t\tmagFilter: \"linear\",\n\t\t\t\tminFilter: \"linear\",\n\t\t\t\taddressModeU: \"clamp-to-edge\",\n\t\t\t\taddressModeV: \"clamp-to-edge\"\n\t\t\t});\n\t\t\tpass = createIrradiancePass(root, buildIrradianceKernel(irradianceFieldLayout, volumetricField, kernelOpts), {\n\t\t\t\tres,\n\t\t\t\tbindGroup: root.createBindGroup(irradianceFieldLayout, {\n\t\t\t\t\tparams: paramsU.buffer,\n\t\t\t\t\toutTex,\n\t\t\t\t\tsilhouetteTex: finalTex,\n\t\t\t\t\tsamp\n\t\t\t\t})\n\t\t\t});\n\t\t} else if (shapeSdfUrl) {\n\t\t\tconst sdfTex = createSdfDataTexture(params, shapeSdfUrl);\n\t\t\tfieldVersion = () =\u003e sdfTex.getVersion();\n\t\t\tconst samp = root.createSampler({\n\t\t\t\tmagFilter: \"linear\",\n\t\t\t\tminFilter: \"linear\",\n\t\t\t\taddressModeU: \"clamp-to-edge\",\n\t\t\t\taddressModeV: \"clamp-to-edge\"\n\t\t\t});\n\t\t\tpass = createIrradiancePass(root, buildIrradianceKernel(irradianceSvgLayout, svgField, kernelOpts), {\n\t\t\t\tres,\n\t\t\t\tbindGroup: root.createBindGroup(irradianceSvgLayout, {\n\t\t\t\t\tparams: paramsU.buffer,\n\t\t\t\t\toutTex,\n\t\t\t\t\tsdfSource: sdfTex.texture.texture,\n\t\t\t\t\tsamp\n\t\t\t\t})\n\t\t\t});\n\t\t} else pass = createIrradiancePass(root, buildIrradianceKernel(irradianceAnalyticLayout, analyticField(shapeType), kernelOpts), {\n\t\t\tres,\n\t\t\tbindGroup: root.createBindGroup(irradianceAnalyticLayout, {\n\t\t\t\tparams: paramsU.buffer,\n\t\t\t\toutTex\n\t\t\t})\n\t\t});\n\t\tlet width = Math.max(1, params.dimensions.width);\n\t\tlet height = Math.max(1, params.dimensions.height);\n\t\tonResize(({ width: w, height: h }) =\u003e {\n\t\t\twidth = Math.max(1, w);\n\t\t\theight = Math.max(1, h);\n\t\t});\n\t\tconst num$1 = (key, fallback) =\u003e {\n\t\t\tconst v = getCpuValue(key);\n\t\t\treturn typeof v === \"number\" ? v : fallback;\n\t\t};\n\t\tconst pos = (key) =\u003e {\n\t\t\tconst v = getCpuValue(key);\n\t\t\treturn {\n\t\t\t\tx: typeof v?.x === \"number\" ? v.x : .5,\n\t\t\t\ty: typeof v?.y === \"number\" ? v.y : .5\n\t\t\t};\n\t\t};\n\t\tlet lastKey = \"\";\n\t\tlet silhouetteReady = false;\n\t\tlet frame = 0;\n\t\tlet warmup = WARMUP_FRAMES;\n\t\tlet samples = 0;\n\t\tlet changedLastFrame = false;\n\t\treturn {\n\t\t\toutputs: {\n\t\t\t\t[outputKey]: outputTexture,\n\t\t\t\t...vf?.outputs ?? {}\n\t\t\t},\n\t\t\tgetComputeNodes: (frameParams) =\u003e {\n\t\t\t\tconst pre = vf?.getComputeNodes(frameParams) ?? null;\n\t\t\t\tlet silhouettePasses = [];\n\t\t\t\tif (silhouette$1 \u0026\u0026 (pre || !silhouetteReady)) {\n\t\t\t\t\tconst dom$1 = vf.getFieldDomain();\n\t\t\t\t\tsilhouettePasses = silhouette$1.steps(dom$1);\n\t\t\t\t\tsilhouetteReady = true;\n\t\t\t\t}\n\t\t\t\tconst center = pos(\"center\");\n\t\t\t\tconst scale = num$1(\"scale\", 1);\n\t\t\t\tconst rotation = num$1(\"rotation\", 0);\n\t\t\t\tconst lights = lightLanes(getCpuValue(spec.lights.prop), spec.lights, {\n\t\t\t\t\tcenter,\n\t\t\t\t\tscale,\n\t\t\t\t\trotation,\n\t\t\t\t\taspect: width / height\n\t\t\t\t});\n\t\t\t\tconst sub$1 = analyticSubPropValues(parseShapeConfigValue(getCpuValue(\"shape\")));\n\t\t\t\tconst dom = vf?.getFieldDomain();\n\t\t\t\tconst values = {\n\t\t\t\t\tcenter: [center.x, center.y],\n\t\t\t\t\tlightPos: lights.pos,\n\t\t\t\t\tlightColor: lights.color,\n\t\t\t\t\tlightCount: lights.count,\n\t\t\t\t\tscale,\n\t\t\t\t\trotation,\n\t\t\t\t\taspect: width / height,\n\t\t\t\t\treach: num$1(spec.reach, 3),\n\t\t\t\t\twrap: num$1(spec.wrap, 0),\n\t\t\t\t\tlightRange: num$1(spec.lightRange, 1),\n\t\t\t\t\tshadowSoftness: num$1(spec.shadowSoftness, 0),\n\t\t\t\t\teps: 1 / res / Math.max(scale, .001),\n\t\t\t\t\tres,\n\t\t\t\t\tsaRadius: sub$1.radius,\n\t\t\t\t\tsaSides: sub$1.sides,\n\t\t\t\t\tsaRounding: sub$1.rounding,\n\t\t\t\t\tsaInnerRatio: sub$1.innerRatio,\n\t\t\t\t\tsaRotation: sub$1.rotation,\n\t\t\t\t\tsaHeight: sub$1.height,\n\t\t\t\t\tsaOffset: sub$1.offset,\n\t\t\t\t\tsaAperture: sub$1.aperture,\n\t\t\t\t\tvfOriginX: dom?.originX ?? 0,\n\t\t\t\t\tvfOriginY: dom?.originY ?? 0,\n\t\t\t\t\tvfSpanX: dom?.spanX ?? 1,\n\t\t\t\t\tvfSpanY: dom?.spanY ?? 1,\n\t\t\t\t\tvfActiveRes: dom?.activeRes ?? 1,\n\t\t\t\t\tvfRBound: dom?.rBound ?? .6,\n\t\t\t\t\tfieldVersion: fieldVersion()\n\t\t\t\t};\n\t\t\t\tconst key = JSON.stringify(values);\n\t\t\t\tconst warming = warmup \u003e 0;\n\t\t\t\tif (warming) warmup--;\n\t\t\t\tconst changed = key !== lastKey || Boolean(pre) || silhouettePasses.length \u003e 0 || warming;\n\t\t\t\tlet rays;\n\t\t\t\tif (changed) {\n\t\t\t\t\tlastKey = key;\n\t\t\t\t\tframe = 0;\n\t\t\t\t\tsamples = 0;\n\t\t\t\t\trays = changedLastFrame ? spec.rays.motion : spec.rays.burst;\n\t\t\t\t} else if (frame \u003e spec.rays.refineFrames) {\n\t\t\t\t\tchangedLastFrame = false;\n\t\t\t\t\treturn null;\n\t\t\t\t} else rays = spec.rays.refine;\n\t\t\t\tchangedLastFrame = changed;\n\t\t\t\tconst sampleIndex = frame++;\n\t\t\t\tconst weight = rays / (samples + rays);\n\t\t\t\tsamples += rays;\n\t\t\t\tconst nodes = pre ? [...pre, ...silhouettePasses] : [...silhouettePasses];\n\t\t\t\tnodes.push(() =\u003e {\n\t\t\t\t\tconst { fieldVersion: _version,...abi } = values;\n\t\t\t\t\tparamsU.write({\n\t\t\t\t\t\t...abi,\n\t\t\t\t\t\tframe: sampleIndex,\n\t\t\t\t\t\trays,\n\t\t\t\t\t\tcenter: vec2f(values.center[0], values.center[1]),\n\t\t\t\t\t\tlightPos: values.lightPos.map((l) =\u003e vec4f(l[0], l[1], l[2], l[3])),\n\t\t\t\t\t\tlightColor: values.lightColor.map((l) =\u003e vec4f(l[0], l[1], l[2], l[3]))\n\t\t\t\t\t});\n\t\t\t\t\taccumU.write({ weight });\n\t\t\t\t});\n\t\t\t\tnodes.push(pass, accumulate$1, keepMean, ...denoise.computeSteps);\n\t\t\t\treturn nodes;\n\t\t\t}\n\t\t};\n\t};\n\tconst sample = (params) =\u003e {\n\t\tconst tex = params.computeOutputs?.[outputKey];\n\t\tif (!tex) return void 0;\n\t\tconst s = local(tex.sampleLevel(params.ctx.uv), \"irrTex\");\n\t\treturn div(s.member(\"rgb\"), max(s.member(\"a\"), .001));\n\t};\n\treturn {\n\t\tcompute,\n\t\tsample\n\t};\n}\nvar listCounter = 0;\nvar raw = (name) =\u003e new Expr(() =\u003e name);\nfunction listOf(params, prop) {\n\tconst lane = (field, i) =\u003e {\n\t\tconst arr = params.uniforms[listFieldName(prop, field)];\n\t\tif (!arr) throw new Error(`std: list '${prop}' has no field '${field}'`);\n\t\treturn new Expr((ctx) =\u003e `${arr._emit(ctx)}[${i._emit(ctx)}]`);\n\t};\n\tconst count = params.uniforms[listCountName(prop)];\n\tif (!count) throw new Error(`std: '${prop}' is not a list prop`);\n\treturn {\n\t\tcount,\n\t\tat: (i) =\u003e ({\n\t\t\tposition: (field) =\u003e lane(field, i).member(\"xy\"),\n\t\t\tcolor: (field) =\u003e lane(field, i),\n\t\t\tnumber: (field) =\u003e lane(field, i).member(\"x\")\n\t\t})\n\t};\n}\nfunction accumulate(list, body, opts = {}) {\n\tconst id = listCounter++;\n\tconst zero = opts.zero === \"vec3f\" ? \"vec3f(0.0)\" : \"0.0\";\n\tconst hint = opts.hint ?? \"sum\";\n\treturn new Expr((ctx) =\u003e ctx.memo(`accumulate:${id}`, () =\u003e {\n\t\tfor (const dep of opts.deps ?? []) dep._emit(ctx);\n\t\tconst acc = ctx.freshLocal(hint);\n\t\tconst i = ctx.freshLocal(\"item\");\n\t\tconst countText = list.count._emit(ctx);\n\t\tconst stmts = [];\n\t\tconst term = body(raw(i))._emit({\n\t\t\texternal: (v, h) =\u003e ctx.external(v, h),\n\t\t\tstatement: (w) =\u003e stmts.push(w),\n\t\t\tfreshLocal: (h) =\u003e ctx.freshLocal(h),\n\t\t\tmemo: (k, f) =\u003e ctx.memo(k, f)\n\t\t});\n\t\tctx.statement(`var ${acc} = ${zero};`);\n\t\tctx.statement([\n\t\t\t`for (var ${i} = 0u; ${i} \u003c u32(${countText}); ${i}++) {`,\n\t\t\t...stmts.map((w) =\u003e `  ${w}`),\n\t\t\t`  ${acc} += ${term};`,\n\t\t\t`}`\n\t\t].join(\"\\n\"));\n\t\treturn acc;\n\t}));\n}\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar DEFAULT_LIGHTS = [{\n\tposition: {\n\t\tx: .3,\n\t\ty: .3\n\t},\n\tcolor: \"#ffb347\",\n\tintensity: 3\n}, {\n\tposition: {\n\t\tx: .72,\n\t\ty: .7\n\t},\n\tcolor: \"#7a5cff\",\n\tintensity: 2\n}];\nvar MAX_LIGHTS = 6;\nvar RAYS = {\n\tburst: 128,\n\tmotion: 64,\n\trefine: 32,\n\trefineFrames: 12\n};\nvar MOBILE_RAY_DIVISOR = 2;\nvar MARCH_STEPS = 32;\nvar SHADOW_STEPS = 12;\nvar FIELD_RES = 512;\nvar FIELD_RES_MOBILE = 320;\nvar CORE_WIDTH_PX = 2.5;\nvar STENCIL_EPS = .01;\nvar BODY_AMBIENT = .3;\nvar GLINT_EXPONENT = 60;\nvar GLINT_GAIN = .6;\nfunction gatherSettings(propValues) {\n\tconst shadowsRaw = propValues.shadows;\n\tconst shadows = typeof shadowsRaw === \"number\" ? shadowsRaw \u003e 0 : shadowsRaw !== false;\n\tconst mobile = isMobileGpuViewport();\n\tconst div$1 = mobile ? MOBILE_RAY_DIVISOR : 1;\n\treturn {\n\t\trays: {\n\t\t\tburst: RAYS.burst / div$1,\n\t\t\tmotion: RAYS.motion / div$1,\n\t\t\trefine: RAYS.refine / div$1,\n\t\t\trefineFrames: RAYS.refineFrames\n\t\t},\n\t\tshadowSteps: shadows ? SHADOW_STEPS : 0,\n\t\tresolution: mobile ? FIELD_RES_MOBILE : FIELD_RES\n\t};\n}\nvar GATHER_PROPS = {\n\tlights: {\n\t\tprop: \"lights\",\n\t\tposition: \"position\",\n\t\tcolor: \"color\",\n\t\tintensity: \"intensity\"\n\t},\n\treach: \"reach\",\n\twrap: \"wrap\",\n\tlightRange: \"lightRange\",\n\tshadowSoftness: \"shadowSoftness\",\n\tsteps: MARCH_STEPS\n};\nvar spine = shapedSurface({\n\tstencil: \"centre\",\n\tcentreTap: \"fast\",\n\tsurface: (frame, params) =\u003e {\n\t\tconst { uniforms: u, propValues } = params;\n\t\tconst { shadowSteps } = gatherSettings(propValues);\n\t\tconst shadows = shadowSteps \u003e 0;\n\t\tconst field = surfaceField(frame, params);\n\t\tconst stencilled = (hint) =\u003e ({\n\t\t\t...field,\n\t\t\ts0: local(frame.sampler(frame.sdfUV), `${hint}S0`),\n\t\t\tsX: local(frame.gradSampler(add(frame.sdfUV, vec2(STENCIL_EPS, 0))), `${hint}X`),\n\t\t\tsY: local(frame.gradSampler(add(frame.sdfUV, vec2(0, STENCIL_EPS))), `${hint}Y`)\n\t\t});\n\t\tconst px = local(div(field.pxH, max(u.scale, .001)), \"pxUV\");\n\t\tconst far = continuedField(frame, field, params);\n\t\tconst lights = listOf(params, \"lights\");\n\t\tconst lightAt = (i) =\u003e {\n\t\t\tconst item = lights.at(i);\n\t\t\treturn {\n\t\t\t\tuv: placementPoint(params, item.position(\"position\"), \"lightUV\"),\n\t\t\t\trgb: mul(item.color(\"color\").member(\"rgb\"), item.number(\"intensity\"))\n\t\t\t};\n\t\t};\n\t\tconst irradiance = irradianceField({\n\t\t\t...gatherSettings(propValues),\n\t\t\t...GATHER_PROPS\n\t\t}).sample(params) ?? splat3(0);\n\t\tconst rim = local(sub(1, smoothstep(0, mul(px, CORE_WIDTH_PX), far.sdf)), \"rim\");\n\t\tconst rimLight = () =\u003e {\n\t\t\tconst edge = nearestEdge(frame.sdfUV, far.sdf, add(fieldSlope(stencilled(\"rim\"), STENCIL_EPS), far.outward));\n\t\t\treturn accumulate(lights, (i) =\u003e {\n\t\t\t\tconst light = lightAt(i);\n\t\t\t\tconst onEdge = pointLightFrom({\n\t\t\t\t\tposition: light.uv,\n\t\t\t\t\theight: u.lightHeight\n\t\t\t\t}, edge.point, \"rimLight\");\n\t\t\t\tlet struck = mul(lambert(edge.normal, onEdge.toLight, { wrap: u.wrap }), inverseSquare(onEdge.distance, u.lightRange));\n\t\t\t\tif (shadows) struck = mul(struck, shadowVisibility({\n\t\t\t\t\tfrom: add(edge.point, mul(edge.normal, mul(px, 2))),\n\t\t\t\t\ttoward: light.uv,\n\t\t\t\t\tfield: far.at,\n\t\t\t\t\tsteps: SHADOW_STEPS,\n\t\t\t\t\tsurfaceEps: px,\n\t\t\t\t\tsoftness: u.shadowSoftness,\n\t\t\t\t\thint: \"rimVisibility\"\n\t\t\t\t}));\n\t\t\t\treturn mul(light.rgb, struck);\n\t\t\t}, {\n\t\t\t\tzero: \"vec3f\",\n\t\t\t\thint: \"rimSum\",\n\t\t\t\tdeps: [edge.point, edge.normal]\n\t\t\t});\n\t\t};\n\t\tconst glow = emissiveAlpha(exposureTone(add(irradiance, guarded(gt(rim, 0), mul(rimLight(), mul(rim, u.core)), splat3(0), \"emitter\", [px]))), \"glow\");\n\t\tconst shadeBody = () =\u003e {\n\t\t\tconst n = geometricNormal(frame, stencilled(\"body\"), {\n\t\t\t\tbevelWidth: u.bevelWidth,\n\t\t\t\tbevelShape: float(0),\n\t\t\t\teps: STENCIL_EPS\n\t\t\t});\n\t\t\tconst lit = accumulate(lights, (i) =\u003e {\n\t\t\t\tconst light = lightAt(i);\n\t\t\t\tconst onBody = pointLightFrom({\n\t\t\t\t\tposition: light.uv,\n\t\t\t\t\theight: u.lightHeight\n\t\t\t\t}, frame.sdfUV, \"bodyLight\");\n\t\t\t\tconst bodyLit = local(mul(inverseSquare(onBody.distance, u.lightRange), u.bodyLight), \"bodyLit\");\n\t\t\t\tconst glint = mul(pow(max(dot(n, normalize(add(onBody.L, vec3(0, 0, -1)))), 0), GLINT_EXPONENT), GLINT_GAIN);\n\t\t\t\treturn add(mul(u.bodyColor.member(\"rgb\"), mul(lambert(n, onBody.L), bodyLit)), mul(light.rgb, mul(glint, bodyLit)));\n\t\t\t}, {\n\t\t\t\tzero: \"vec3f\",\n\t\t\t\thint: \"bodySum\",\n\t\t\t\tdeps: [n]\n\t\t\t});\n\t\t\treturn exposureTone(add(mul(u.bodyColor.member(\"rgb\"), BODY_AMBIENT), lit));\n\t\t};\n\t\tconst body = guarded(insideShape(field.sdf, px), shadeBody(), splat3(0), \"body\", []);\n\t\tconst cov = local(silhouette({\n\t\t\t...field,\n\t\t\tpxH: px\n\t\t}, u.edgeSoftness), \"cov\");\n\t\treturn vec4(mix(glow.member(\"rgb\"), body, cov), mix(glow.member(\"a\"), 1, cov));\n\t}\n});\nconst componentDefinition = defineStd({\n\tname: \"Irradiance\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Photorealistic light spilling around the edge of any 2D, SVG, or 3D shape — any number of movable coloured point lights strike the silhouette and the lit edges irradiate their surroundings, gathered in a compute pass with real cast shadows, mixing where they meet and burning to white at the rim\",\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tlights: listPropConfig({\n\t\t\tmaxItems: MAX_LIGHTS,\n\t\t\tminItems: 1,\n\t\t\titemLabel: \"Light\",\n\t\t\titem: {\n\t\t\t\tposition: {\n\t\t\t\t\tkind: \"position\",\n\t\t\t\t\tdefault: {\n\t\t\t\t\t\tx: .3,\n\t\t\t\t\t\ty: .3\n\t\t\t\t\t},\n\t\t\t\t\tlabel: \"Position\",\n\t\t\t\t\tdescription: \"Where this light sits — the edges facing it are struck and spill light outward. Map it to the mouse to carry the light around the shape.\"\n\t\t\t\t},\n\t\t\t\tcolor: {\n\t\t\t\t\tkind: \"color\",\n\t\t\t\t\tdefault: \"#ffb347\",\n\t\t\t\t\tlabel: \"Color\",\n\t\t\t\t\tdescription: \"The colour this light casts\"\n\t\t\t\t},\n\t\t\t\tintensity: {\n\t\t\t\t\tkind: \"number\",\n\t\t\t\t\tdefault: 3,\n\t\t\t\t\tlabel: \"Intensity\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 8,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tdescription: \"Brightness of this light — past ~2 the rim it strikes overexposes to white\"\n\t\t\t\t}\n\t\t\t}\n\t\t}, {\n\t\t\tdefault: DEFAULT_LIGHTS,\n\t\t\tdescription: \"The point lights striking the shape — each with its own position, colour and brightness\",\n\t\t\tlabel: \"Lights\",\n\t\t\tgroup: \"Lights\"\n\t\t}),\n\t\tlightHeight: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Height of the lights above the shape plane, relative to the shape — low lights graze the body, high lights flood it evenly\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .05,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Light Height\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tlightRange: {\n\t\t\tdefault: 1.2,\n\t\t\tdescription: \"Reach of each light — the distance at which it has fallen to half strength, relative to the shape\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Range\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\treach: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"How far from the shape the spilled light is gathered, relative to the shape — the glow fades out toward this distance\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Reach\",\n\t\t\t\tgroup: \"Glow\"\n\t\t\t}\n\t\t},\n\t\tcore: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The lit edge seen directly — the white-hot line along the rim where the lights strike\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Core\",\n\t\t\t\tgroup: \"Glow\"\n\t\t\t}\n\t\t},\n\t\twrap: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"How far light wraps around edges that face away from it — 0 leaves the far side dark\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Wrap\",\n\t\t\t\tgroup: \"Glow\"\n\t\t\t}\n\t\t},\n\t\tshadows: {\n\t\t\tdefault: true,\n\t\t\tcompileTime: true,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Cast shadows — the body blocks each light from edges it stands in front of (keeps holes and concave pockets dark)\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Shadows\",\n\t\t\t\tgroup: \"Glow\"\n\t\t\t}\n\t\t},\n\t\tshadowSoftness: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Penumbra width of the cast shadows — 0 is razor sharp\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shadow Softness\",\n\t\t\t\tgroup: \"Glow\"\n\t\t\t}\n\t\t},\n\t\tbodyColor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the shape itself — black for a pure occluder, lighter to see the lights land on its form\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Body Color\",\n\t\t\t\tgroup: \"Body\"\n\t\t\t}\n\t\t},\n\t\tbodyLight: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How much the lights illuminate the body — the bevel of a flat shape or the form of a 3D one\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Body Light\",\n\t\t\t\tgroup: \"Body\"\n\t\t\t}\n\t\t},\n\t\tbevelWidth: {\n\t\t\tdefault: .01,\n\t\t\tdescription: \"Width of the rounded edge a flat shape catches the light on, relative to the shape\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .005,\n\t\t\t\tmax: .2,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Bevel Width\",\n\t\t\t\tgroup: \"Body\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ edgeSoftness: { ui: { group: \"Body\" } } }),\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...spine,\n\tcompute: (params) =\u003e irradianceField({\n\t\t...gatherSettings(params.propValues),\n\t\t...GATHER_PROPS\n\t}).compute(params)\n});\nvar Irradiance_default = componentDefinition;\nexport { componentDefinition as n, Irradiance_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, g as opaque, h as mixOf, m as isoCubeFaces, r as cellFrame, w as times, y as rgbOf } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar faces = isoCubeFaces({\n\tframe: cellFrame({\n\t\tcells: p(\"cells\"),\n\t\trotation: p(\"rotation\"),\n\t\tconvention: \"clockwise\"\n\t}),\n\tthickness: p(\"thickness\"),\n\tsoftness: p(\"softness\")\n});\nvar cubeColor = strokeOver({\n\tfill: p(\"colorA\"),\n\tstroke: p(\"colorB\"),\n\tmask: times(faces.random, p(\"colorVariation\")),\n\tspace: p(\"colorSpace\")\n});\nconst componentDefinition = defineStd({\n\tname: \"IsometricCubes\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Isometric tumbling-blocks tiling — a 3D cube illusion (rhombille pattern)\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#7c5cff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Base cube color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ff5c9d\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second cube color, mixed in per-cube for variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tlineColor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the cube edge lines\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcells: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Number of cubes across the shortest canvas edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cells\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Thickness of the cube edge lines (0 = no edges)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation of the tiling in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Softness of the edge lines (0 = crisp, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorVariation: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Per-cube random blend between the two colors (0 = uniform cubes, the clean 3D look)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variation\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: opaque(mixOf(times(rgbOf(cubeColor), faces.tone), rgbOf(p(\"lineColor\")), faces.wire))\n});\nvar IsometricCubes_default = componentDefinition;\nexport { componentDefinition as n, IsometricCubes_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { d as kaleidoscope } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Kaleidoscope\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Create a kaleidoscope effect with radial mirrored segments\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"The center point of the kaleidoscope effect\"),\n\t\tsegments: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Number of radial segments in the kaleidoscope\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 24,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Segments\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation offset for the entire kaleidoscope pattern\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"mirror\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: kaleidoscope({\n\t\tcenter: p(\"center\"),\n\t\tsegments: p(\"segments\"),\n\t\tangle: p(\"angle\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Kaleidoscope shader.\"\n});\nvar Kaleidoscope_default = componentDefinition;\nexport { componentDefinition as n, Kaleidoscope_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as motionTrackerHud, r as createTrackerPursuitSim } from \"./overlay-D5w0585O.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"KeyFrames\",\n\trole: \"overlay\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Motion-tracking overlay — trackers hunt and follow features in the content, dropping keyframe diamonds behind them along their motion paths, like a compositor mid-track\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\ttrackers: {\n\t\t\tdefault: 12,\n\t\t\tdescription: \"Number of simultaneous trackers.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 64,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Trackers\",\n\t\t\t\tgroup: \"Tracking\"\n\t\t\t}\n\t\t},\n\t\tdetect: {\n\t\t\tdefault: \"bright\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What the trackers hunt for.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Brightness\",\n\t\t\t\t\t\tvalue: \"bright\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Darkness\",\n\t\t\t\t\t\tvalue: \"dark\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparency\",\n\t\t\t\t\t\tvalue: \"alpha\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Red\",\n\t\t\t\t\t\tvalue: \"red\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Green\",\n\t\t\t\t\t\tvalue: \"green\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Blue\",\n\t\t\t\t\t\tvalue: \"blue\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Detect\",\n\t\t\t\tgroup: \"Tracking\"\n\t\t\t}\n\t\t},\n\t\tthreshold: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Feature floor — content scoring below this doesn't count as trackable at all.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .9,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Tracking\"\n\t\t\t}\n\t\t},\n\t\tvariance: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"Spread of tracker preferences — 0 hunts only the strongest features, 1 distributes trackers across the whole brightness range.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variance\",\n\t\t\t\tgroup: \"Tracking\"\n\t\t\t}\n\t\t},\n\t\tagility: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How fast trackers travel and how wide they search.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Agility\",\n\t\t\t\tgroup: \"Tracking\"\n\t\t\t}\n\t\t},\n\t\tlifespan: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Seconds a tracker follows its target before retiring and reacquiring elsewhere. 0 = track forever.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Lifespan\",\n\t\t\t\tgroup: \"Tracking\"\n\t\t\t}\n\t\t},\n\t\ttrail: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Visibility of the keyframe trail each tracker leaves behind.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Trail\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tmarkerSize: {\n\t\t\tdefault: 28,\n\t\t\tdescription: \"Tracker gizmo size in pixels.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 8,\n\t\t\t\tmax: 80,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Marker Size\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tlineWidth: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Stroke width in pixels.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 6,\n\t\t\t\tstep: .25,\n\t\t\t\tlabel: \"Line Width\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tmarkerColor: {\n\t\t\tdefault: \"#54d66b\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Tracker gizmo color.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tracker\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tkeyframeColor: {\n\t\t\tdefault: \"#ffcf33\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Keyframe diamond color.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Keyframes\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpathColor: {\n\t\t\tdefault: \"#ffffffb8\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Motion path color.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Path\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tcompute: (params) =\u003e createTrackerPursuitSim({\n\t\tmode: typeof params.propValues.detect === \"string\" ? params.propValues.detect : \"bright\",\n\t\ttrackers: \"trackers\",\n\t\tagility: \"agility\",\n\t\tthreshold: \"threshold\",\n\t\tvariance: \"variance\",\n\t\tlifespan: \"lifespan\"\n\t})(params),\n\tgpu: { fragment: motionTrackerHud({\n\t\ttrackers: p(\"trackers\"),\n\t\ttrail: p(\"trail\"),\n\t\tmarkerSize: p(\"markerSize\"),\n\t\tlineWidth: p(\"lineWidth\"),\n\t\tmarkerColor: p(\"markerColor\"),\n\t\tkeyframeColor: p(\"keyframeColor\"),\n\t\tpathColor: p(\"pathColor\")\n\t}) }\n});\nvar KeyFrames_default = componentDefinition;\nexport { componentDefinition as n, KeyFrames_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as spectralLens, r as LENS_MAX_SAMPLES } from \"./lens-DJQNJKCW.js\";\nimport { c as transformPosition, r as transformAngle } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"LensDistortion\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Split content into shifting chromatic layers with barrel or pincushion lens warp. Powered by Paper Shaders.\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point of the lens effect — the focus zone, lens warp, circle crop and swirl all pivot around it\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Strength of the color split; how far the color layers are pushed apart (0 is off)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Spread\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Direction of the spread in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Spread\"\n\t\t\t}\n\t\t},\n\t\tperspective: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Shapes the spread direction from a straight line (0) to a radial burst out from the centre (1)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Perspective\",\n\t\t\t\tgroup: \"Spread\"\n\t\t\t}\n\t\t},\n\t\tbias: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Shifts the colors toward one end of the spread; 0 spaces them evenly\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bias\",\n\t\t\t\tgroup: \"Spread\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 35,\n\t\t\tdescription: \"Number of sampled color layers along the spread; higher is smoother and costlier\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Spread\"\n\t\t\t}\n\t\t},\n\t\tdispersion: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Overall amount of color dispersion; 1 gives each layer its own color from the spectrum, 0 keeps the original color\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Dispersion\",\n\t\t\t\tgroup: \"Dispersion\"\n\t\t\t}\n\t\t},\n\t\tdispersionShift: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Balance of the dispersion between a soft circular zone at the centre and the rest; -1 keeps it in the centre only, 1 at the edges only\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shift\",\n\t\t\t\tgroup: \"Dispersion\"\n\t\t\t}\n\t\t},\n\t\tdispersionColor: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Rotates the dispersion colors around the hue wheel, 0 to 1 for a full turn\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Hue\",\n\t\t\t\tgroup: \"Dispersion\"\n\t\t\t}\n\t\t},\n\t\tfocusCenter: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"Reduces the spread in a circular zone at the centre; 0 keeps it full to the centre\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Focus Center\",\n\t\t\t\tgroup: \"Focus\"\n\t\t\t}\n\t\t},\n\t\tfocusEdges: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Reduces the spread toward the edges; 1 restores the original image there\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Focus Edges\",\n\t\t\t\tgroup: \"Focus\"\n\t\t\t}\n\t\t},\n\t\tlensBulge: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Radial lens warp; positive bulges out like a fisheye, negative pinches in like a pincushion\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bulge\",\n\t\t\t\tgroup: \"Lens\"\n\t\t\t}\n\t\t},\n\t\tlensCircle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Squeezes pixels outside the inscribed circle inward so the outline becomes a circle\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Circle\",\n\t\t\t\tgroup: \"Lens\"\n\t\t\t}\n\t\t},\n\t\tswirl: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Rotates the color layers around the centre by an angle growing along the spread; 0 is off\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Swirl\",\n\t\t\t\tgroup: \"Lens\"\n\t\t\t}\n\t\t},\n\t\tnoise: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Scatters the spread direction with noise; 0 is off\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Noise\",\n\t\t\t\tgroup: \"Noise\"\n\t\t\t}\n\t\t},\n\t\tnoiseFrequency: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Frequency of the direction noise; higher is finer (no effect with noise at 0)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Noise\"\n\t\t\t}\n\t\t},\n\t\tnoiseOffset: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Offsets the noise pattern for a different seed (no effect with noise at 0)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Noise\"\n\t\t\t}\n\t\t},\n\t\tgrainMixer: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Scatters the spread with grain noise, breaking up the edges of the color layers\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Grain Mixer\",\n\t\t\t\tgroup: \"Grain\"\n\t\t\t}\n\t\t},\n\t\tgrainOverlay: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Post-processing black/white grain overlay\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Grain Overlay\",\n\t\t\t\tgroup: \"Grain\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: spectralLens({\n\t\tcenter: p(\"center\"),\n\t\tspread: p(\"spread\"),\n\t\tbias: p(\"bias\"),\n\t\tangle: p(\"angle\"),\n\t\tperspective: p(\"perspective\"),\n\t\tcount: p(\"count\"),\n\t\tdispersion: p(\"dispersion\"),\n\t\tdispersionShift: p(\"dispersionShift\"),\n\t\tdispersionColor: p(\"dispersionColor\"),\n\t\tfocusCenter: p(\"focusCenter\"),\n\t\tfocusEdges: p(\"focusEdges\"),\n\t\tswirl: p(\"swirl\"),\n\t\tnoise: p(\"noise\"),\n\t\tnoiseFrequency: p(\"noiseFrequency\"),\n\t\tnoiseOffset: p(\"noiseOffset\"),\n\t\tlensBulge: p(\"lensBulge\"),\n\t\tlensCircle: p(\"lensCircle\"),\n\t\tgrainMixer: p(\"grainMixer\"),\n\t\tgrainOverlay: p(\"grainOverlay\")\n\t}) }\n});\nvar LensDistortion_default = componentDefinition;\nexport { componentDefinition as n, LensDistortion_default as t };\n","import { c as p, st as asLocal, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { b as lensGhost, d as flareCore, f as flareFrame, g as flareStreak, h as flareStarburst, m as flareHalo, p as flareGlare, t as additive, u as flareComposite } from \"./light-D3BIVkxy.js\";\nconst componentDefinition = defineStd({\n\tname: \"LensFlare\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Stylize\",\n\tdescription: \"Realistic camera lens flare with artifacts.\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tlightPosition: {\n\t\t\tdefault: {\n\t\t\t\tx: .3,\n\t\t\t\ty: .3\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of the light source\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Light Position\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Master brightness of the entire lens flare effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tghostIntensity: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Brightness of internal reflection ghost discs along the flare axis\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ghosts\",\n\t\t\t\tgroup: \"Reflections\"\n\t\t\t}\n\t\t},\n\t\tghostSpread: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Spacing between ghost reflections along the flare axis\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ghost Spread\",\n\t\t\t\tgroup: \"Reflections\"\n\t\t\t}\n\t\t},\n\t\tghostChroma: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Rainbow chromatic fringing around ghost element edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ghost Chroma\",\n\t\t\t\tgroup: \"Reflections\"\n\t\t\t}\n\t\t},\n\t\thaloIntensity: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Brightness of the circular halo ring from internal reflection\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Halo\",\n\t\t\t\tgroup: \"Reflections\"\n\t\t\t}\n\t\t},\n\t\thaloRadius: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Radius of the halo ring\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Halo Size\",\n\t\t\t\tgroup: \"Reflections\"\n\t\t\t}\n\t\t},\n\t\thaloChroma: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Spectral dispersion on the halo creating rainbow color separation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Halo Chroma\",\n\t\t\t\tgroup: \"Reflections\"\n\t\t\t}\n\t\t},\n\t\thaloSoftness: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"Thickness and softness of the halo ring\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Halo Softness\",\n\t\t\t\tgroup: \"Reflections\"\n\t\t\t}\n\t\t},\n\t\tstarburstIntensity: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Brightness of diffraction spikes radiating from the light source\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Starburst\",\n\t\t\t\tgroup: \"Effects\"\n\t\t\t}\n\t\t},\n\t\tstarburstPoints: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Number of starburst spikes (simulates aperture blade count)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 4,\n\t\t\t\tmax: 16,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Blades\",\n\t\t\t\tgroup: \"Effects\"\n\t\t\t}\n\t\t},\n\t\tstreakIntensity: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Brightness of horizontal anamorphic light streak\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Streak\",\n\t\t\t\tgroup: \"Effects\"\n\t\t\t}\n\t\t},\n\t\tstreakLength: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Horizontal extent of the anamorphic streak\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Streak Length\",\n\t\t\t\tgroup: \"Effects\"\n\t\t\t}\n\t\t},\n\t\tglareIntensity: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Soft veiling glare that washes out contrast around the light\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Glare\",\n\t\t\t\tgroup: \"Effects\"\n\t\t\t}\n\t\t},\n\t\tglareSize: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Size of the soft glare glow\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Glare Size\",\n\t\t\t\tgroup: \"Effects\"\n\t\t\t}\n\t\t},\n\t\tedgeFade: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"How much the flare fades when the light source is near the screen edge (0 = no fade, 1 = heavy fade)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Fade\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Speed of subtle flare shimmer and starburst rotation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst flare = asLocal(flareFrame({\n\t\t\tposition: p(\"lightPosition\"),\n\t\t\tintensity: p(\"intensity\"),\n\t\t\tedgeFade: p(\"edgeFade\")\n\t\t})(params), \"flare\");\n\t\tconst ghost = lensGhost({\n\t\t\tintensity: p(\"ghostIntensity\"),\n\t\t\tspread: p(\"ghostSpread\"),\n\t\t\tchroma: p(\"ghostChroma\")\n\t\t});\n\t\treturn flareComposite(additive(additive(ghost(flare, [\n\t\t\t.15,\n\t\t\t.2,\n\t\t\t.3,\n\t\t\t.1\n\t\t], [\n\t\t\t1,\n\t\t\t.95,\n\t\t\t.9,\n\t\t\t0\n\t\t], params), ghost(flare, [\n\t\t\t.3,\n\t\t\t.12,\n\t\t\t.25,\n\t\t\t.65\n\t\t], [\n\t\t\t1,\n\t\t\t.85,\n\t\t\t.55,\n\t\t\t2.17\n\t\t], params), ghost(flare, [\n\t\t\t.5,\n\t\t\t.08,\n\t\t\t.35,\n\t\t\t.15\n\t\t], [\n\t\t\t.62,\n\t\t\t.82,\n\t\t\t1,\n\t\t\t4.34\n\t\t], params), ghost(flare, [\n\t\t\t.72,\n\t\t\t.14,\n\t\t\t.18,\n\t\t\t.75\n\t\t], [\n\t\t\t.75,\n\t\t\t1,\n\t\t\t.7,\n\t\t\t6.51\n\t\t], params), ghost(flare, [\n\t\t\t.95,\n\t\t\t.06,\n\t\t\t.3,\n\t\t\t0\n\t\t], [\n\t\t\t1,\n\t\t\t.6,\n\t\t\t.85,\n\t\t\t8.68\n\t\t], params), ghost(flare, [\n\t\t\t1.25,\n\t\t\t.1,\n\t\t\t.15,\n\t\t\t.8\n\t\t], [\n\t\t\t.55,\n\t\t\t.88,\n\t\t\t1,\n\t\t\t10.85\n\t\t], params), ghost(flare, [\n\t\t\t1.55,\n\t\t\t.07,\n\t\t\t.2,\n\t\t\t.25\n\t\t], [\n\t\t\t1,\n\t\t\t.92,\n\t\t\t.6,\n\t\t\t13.02\n\t\t], params)), flareHalo({\n\t\t\tintensity: p(\"haloIntensity\"),\n\t\t\tradius: p(\"haloRadius\"),\n\t\t\tchroma: p(\"haloChroma\"),\n\t\t\tsoftness: p(\"haloSoftness\")\n\t\t})(flare, params), flareStarburst({\n\t\t\tintensity: p(\"starburstIntensity\"),\n\t\t\tpoints: p(\"starburstPoints\")\n\t\t})(flare, params), flareStreak({\n\t\t\tintensity: p(\"streakIntensity\"),\n\t\t\tlength: p(\"streakLength\")\n\t\t})(flare, params), flareGlare({\n\t\t\tintensity: p(\"glareIntensity\"),\n\t\t\tsize: p(\"glareSize\")\n\t\t})(flare, params), flareCore({ intensity: p(\"intensity\") })(flare, params)), flare);\n\t}\n});\nvar LensFlare_default = componentDefinition;\nexport { componentDefinition as n, LensFlare_default as t };\n","import { An as value12, Bn as TWO_PI$1, Br as struct, Cr as sin, Gn as typegpu_default, It as mixColorsLinear, Jr as i32, Lt as mixColorsVariants, Mr as vec4f, Or as vec2f, _r as mix, ar as clamp, bn as hash22, ct as call, er as select, fr as floor, ft as floatE, gr as min, hr as max, jr as vec3f, or as cos, pr as fract, qr as f32, rr as atan2, st as asLocal, t as defineStd, tr as abs, wr as smoothstep, yr as pow, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { _t as MAX_COLOR_STOPS, t as animatedTime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { F as shapedSurface } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar TWO_PI = TWO_PI$1;\nvar BAND_THICKNESS_REF = .35;\nconst heartbeatPulse = typegpu_default.fn([f32], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((animTime) =\u003e {\n\t\"use gpu\";\n\tconst time = __tsover_mul(.18, animTime);\n\tconst first = pow(abs(sin(__tsover_mul(time, TWO_PI))), 10);\n\tconst second = pow(abs(sin(__tsover_mul(__tsover_sub(time, .15), TWO_PI))), 10);\n\treturn clamp(__tsover_add(first, __tsover_mul(.6, second)), 0, 1);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"animTime\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"time\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.18\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"animTime\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"first\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"10\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"second\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"time\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"0.15\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t], [5, \"10\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"std.clamp\",\n\t\t\t\t[\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"first\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"second\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t[5, \"1\"]\n\t\t\t\t]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"TWO_PI\": () =\u003e TWO_PI,\n\t\t\"std.clamp\": () =\u003e clamp\n\t}\n}) \u0026\u0026 $.f)({}));\nconst edgeGlowBand = typegpu_default.fn([\n\tf32,\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((fieldRaw, sdfUV, viewport, scale, thickness, softness, smokeSize, smokeAmt, animTime, pulse, beat) =\u003e {\n\t\"use gpu\";\n\tconst t = __tsover_add(__tsover_mul(animTime, 1.2), 131);\n\tconst th = max(__tsover_mul(__tsover_mul(.5, thickness), BAND_THICKNESS_REF), .002);\n\tconst bd = abs(__tsover_add(__tsover_div(fieldRaw, max(scale, .001)), mix(th, f32(0), softness)));\n\tconst borderTh = mix(th, __tsover_mul(3, th), softness);\n\tconst aa = __tsover_div(2, __tsover_mul(viewport.y, max(scale, .001)));\n\tconst e0 = min(mix(borderTh, __tsover_mul(borderTh, -1), softness), __tsover_add(borderTh, aa));\n\tconst e1 = max(mix(borderTh, __tsover_mul(borderTh, -1), softness), __tsover_add(borderTh, aa));\n\tlet border = __tsover_sub(1, smoothstep(e0, e1, bd));\n\tborder = pow(clamp(border, 0, 1), __tsover_add(1, softness));\n\tconst suv = vec2f(__tsover_sub(sdfUV.x, .5), __tsover_sub(sdfUV.y, .5)).mul(__tsover_add(.5, __tsover_mul(2.5, smokeSize)));\n\tconst drift = __tsover_mul(.5, t);\n\tconst n1 = value12(vec2f(__tsover_add(__tsover_mul(suv.x, 2.7), drift), __tsover_add(__tsover_mul(suv.y, 2.7), drift)));\n\tconst n2 = value12(vec2f(__tsover_sub(__tsover_mul(suv.x, 3.4), drift), __tsover_sub(__tsover_mul(suv.y, 3.4), drift)));\n\tlet smoke = __tsover_sub(clamp(__tsover_mul(3, n1), 0, 1), n2);\n\tconst smokeTh = clamp(__tsover_add(th, .2), .1, .4);\n\tconst smokeBand = pow(clamp(__tsover_sub(1, smoothstep(__tsover_mul(smokeTh, -1), __tsover_add(smokeTh, aa), bd)), 0, 1), 2);\n\tsmoke = __tsover_mul(smoke, smokeBand);\n\tsmoke = __tsover_mul(__tsover_mul(__tsover_mul(30, smoke), smoke), __tsover_mul(__tsover_mul(.5, smokeAmt), smokeAmt));\n\tsmoke = __tsover_mul(smoke, mix(f32(1), beat, pulse));\n\tborder = clamp(__tsover_add(border, clamp(smoke, 0, 1)), 0, 1);\n\tconst angle01 = __tsover_div(atan2(__tsover_sub(sdfUV.y, .5), __tsover_sub(sdfUV.x, .5)), TWO_PI);\n\treturn vec2f(border, angle01);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"fieldRaw\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sdfUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"viewport\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"scale\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"thickness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"smokeSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"smokeAmt\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pulse\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"beat\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"131\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"th\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"thickness\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"BAND_THICKNESS_REF\"\n\t\t\t\t\t], [5, \"0.002\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"f\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"fieldRaw\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"scale\", [5, \"0.001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"th\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"bd\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t[\"f\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"borderTh\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"th\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"th\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"aa\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"viewport\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[\"scale\", [5, \"0.001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"e0\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.min\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"borderTh\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"borderTh\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"borderTh\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"e1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.max\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"borderTh\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"borderTh\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"borderTh\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"border\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"e0\",\n\t\t\t\t\t\t\t\"e1\",\n\t\t\t\t\t\t\t\"bd\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"border\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\"border\",\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"suv\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"2.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"smokeSize\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"drift\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"t\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"suv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2.7\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"suv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"2.7\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"n2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"noise.value12\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"suv\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3.4\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"suv\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"3.4\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\"drift\"\n\t\t\t\t\t\t]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"smoke\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"n1\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"n2\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"smokeTh\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"th\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[5, \"0.2\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0.1\"],\n\t\t\t\t\t\t[5, \"0.4\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"smokeBand\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.pow\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"smokeTh\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"smokeTh\",\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"bd\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [5, \"2\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"smoke\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"smoke\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"smokeBand\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"smoke\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"30\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"smoke\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"smoke\"\n\t\t\t\t\t],\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"smokeAmt\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"smokeAmt\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"smoke\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"smoke\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"beat\",\n\t\t\t\t\t\t\t\"pulse\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t2,\n\t\t\t\t\"border\",\n\t\t\t\t\"=\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"border\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"smoke\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"angle01\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.atan2\",\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sdfUV\",\n\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"TWO_PI\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"border\", \"angle01\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.max\": () =\u003e max,\n\t\t\"BAND_THICKNESS_REF\": () =\u003e BAND_THICKNESS_REF,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.min\": () =\u003e min,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.pow\": () =\u003e pow,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"noise.value12\": () =\u003e value12,\n\t\t\"std.atan2\": () =\u003e atan2,\n\t\t\"TWO_PI\": () =\u003e TWO_PI\n\t}\n}) \u0026\u0026 $.f)({}));\nconst orbitSpotsAccum = typegpu_default.fn([\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((angle01, border, animTime, beat, spotsF, spotSize, pulse, intensity, softness, seed, colorIdxF) =\u003e {\n\t\"use gpu\";\n\tconst t = __tsover_add(__tsover_mul(animTime, 1.2), 131);\n\tconst intensityEff = __tsover_add(1, __tsover_mul(__tsover_add(1, __tsover_mul(4, softness)), intensity));\n\tlet overAcc = f32(0);\n\tlet addAcc = f32(0);\n\tfor (let s = 0; s \u003c 5; s++) {\n\t\tconst sF = f32(s);\n\t\tconst gate = select(f32(0), f32(1), sF \u003c spotsF);\n\t\tconst randVal = hash22(vec2f(__tsover_add(__tsover_add(__tsover_mul(sF, 10), 2), __tsover_mul(seed, 7.31)), __tsover_add(__tsover_add(40, colorIdxF), __tsover_mul(seed, 3.17))));\n\t\tconst speedFactor = __tsover_add(.1, __tsover_mul(.15, abs(__tsover_mul(sin(__tsover_mul(sF, __tsover_add(2, colorIdxF))), cos(__tsover_mul(sF, __tsover_add(2, __tsover_mul(2.5, colorIdxF))))))));\n\t\tconst dir = select(f32(1), f32(-1), randVal.y \u003c .5);\n\t\tconst sTime = __tsover_mul(__tsover_add(__tsover_mul(speedFactor, t), __tsover_mul(randVal.x, 3)), dir);\n\t\tconst evenCond = abs(__tsover_sub(colorIdxF, __tsover_mul(2, floor(__tsover_mul(colorIdxF, .5))))) \u003c .5;\n\t\tconst sinVal = sin(__tsover_add(t, __tsover_mul(sF, __tsover_sub(5, __tsover_mul(1.5, colorIdxF)))));\n\t\tconst cosVal = cos(__tsover_add(t, __tsover_mul(sF, __tsover_add(3, __tsover_mul(1.3, colorIdxF)))));\n\t\tlet mask = __tsover_add(.5, __tsover_mul(.5, select(cosVal, sinVal, evenCond)));\n\t\tconst pWeight = clamp(__tsover_sub(__tsover_mul(2, pulse), randVal.x), 0, 1);\n\t\tmask = mix(mask, beat, pWeight);\n\t\tconst atg = fract(__tsover_add(angle01, sTime));\n\t\tlet ss = __tsover_add(__tsover_add(.05, __tsover_mul(__tsover_mul(.6, spotSize), spotSize)), __tsover_mul(.05, randVal.x));\n\t\tss = mix(ss, .1, pWeight);\n\t\tlet sector = __tsover_mul(smoothstep(__tsover_sub(.5, ss), .5, atg), __tsover_sub(1, smoothstep(.5, __tsover_add(.5, ss), atg)));\n\t\tsector = __tsover_mul(clamp(__tsover_mul(__tsover_mul(__tsover_mul(sector, mask), border), intensityEff), 0, 1), gate);\n\t\toverAcc = __tsover_add(overAcc, __tsover_mul(__tsover_sub(1, overAcc), sector));\n\t\taddAcc = __tsover_add(addAcc, sector);\n\t}\n\treturn vec2f(overAcc, addAcc);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"angle01\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"border\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"animTime\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"beat\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spotsF\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"spotSize\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"pulse\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"intensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"softness\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"seed\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"colorIdxF\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"t\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"animTime\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"1.2\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[5, \"131\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"intensityEff\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"4\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"softness\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"intensity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"overAcc\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t12,\n\t\t\t\t\"addAcc\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t14,\n\t\t\t\t[\n\t\t\t\t\t12,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t[5, \"0\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"s\",\n\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t[5, \"5\"]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t102,\n\t\t\t\t\t\"++\",\n\t\t\t\t\t\"s\"\n\t\t\t\t],\n\t\t\t\t[0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sF\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[\"s\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"gate\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sF\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"spotsF\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"randVal\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"noise.hash22\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"sF\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"10\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"7.31\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"40\"],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\"colorIdxF\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"seed\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"3.17\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"speedFactor\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.1\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.15\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"colorIdxF\"\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t[5, \"2.5\"],\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\"colorIdxF\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"dir\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"randVal\",\n\t\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sTime\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"speedFactor\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"randVal\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[5, \"3\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"dir\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"evenCond\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.abs\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"colorIdxF\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"std.floor\",\n\t\t\t\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"colorIdxF\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"sinVal\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.sin\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sF\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"5\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.5\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"colorIdxF\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"cosVal\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.cos\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"t\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"sF\",\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"3\"],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"1.3\"],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"colorIdxF\"\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"mask\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.select\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\"cosVal\",\n\t\t\t\t\t\t\t\t\t\t\"sinVal\",\n\t\t\t\t\t\t\t\t\t\t\"evenCond\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"pWeight\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"pulse\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\"randVal\",\n\t\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"mask\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"mask\",\n\t\t\t\t\t\t\t\t\"beat\",\n\t\t\t\t\t\t\t\t\"pWeight\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"atg\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.fract\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"angle01\",\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"sTime\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"ss\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"0.6\"],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"spotSize\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\"spotSize\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"0.05\"],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"randVal\",\n\t\t\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"ss\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\"ss\",\n\t\t\t\t\t\t\t\t[5, \"0.1\"],\n\t\t\t\t\t\t\t\t\"pWeight\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"sector\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\t\"ss\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\"atg\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[5, \"0.5\"],\n\t\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t\t\"ss\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"atg\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"sector\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\t\"sector\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\t\"mask\"\n\t\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t\"border\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"intensityEff\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"gate\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"overAcc\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"overAcc\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"overAcc\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\"sector\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t2,\n\t\t\t\t\t\t\"addAcc\",\n\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"addAcc\",\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"sector\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[\"overAcc\", \"addAcc\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.f32\": () =\u003e f32,\n\t\t\"std.select\": () =\u003e select,\n\t\t\"noise.hash22\": () =\u003e hash22,\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.abs\": () =\u003e abs,\n\t\t\"std.sin\": () =\u003e sin,\n\t\t\"std.cos\": () =\u003e cos,\n\t\t\"std.floor\": () =\u003e floor,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"std.fract\": () =\u003e fract,\n\t\t\"std.smoothstep\": () =\u003e smoothstep\n\t}\n}) \u0026\u0026 $.f)({}));\nconst EdgeGlowAccum = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\trgb: vec3f,\n\tw: f32,\n\tba: f32,\n\tac: vec3f,\n\taa: f32\n}), \"EdgeGlowAccum\");\nconst edgeGlowAccumZero = typegpu_default.fn([], EdgeGlowAccum)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = (() =\u003e {\n\t\"use gpu\";\n\treturn EdgeGlowAccum({\n\t\trgb: vec3f(0, 0, 0),\n\t\tw: f32(0),\n\t\tba: f32(0),\n\t\tac: vec3f(0, 0, 0),\n\t\taa: f32(0)\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"EdgeGlowAccum\",\n\t\t\t[[104, {\n\t\t\t\t\"rgb\": [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"w\": [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t],\n\t\t\t\t\"ba\": [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t],\n\t\t\t\t\"ac\": [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t\"aa\": [\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t]\n\t\t\t}]]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"EdgeGlowAccum\": () =\u003e EdgeGlowAccum,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"d.f32\": () =\u003e f32\n\t}\n}) \u0026\u0026 $.f)({}));\nvar accumFnByMode = /* @__PURE__ */ new Map();\nfunction makeAccumFn(mode) {\n\tconst variant = mixColorsVariants[mode] ?? mixColorsLinear;\n\treturn typegpu_default.fn([\n\t\tEdgeGlowAccum,\n\t\tvec4f,\n\t\tvec2f\n\t], EdgeGlowAccum)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((st, color, sectors) =\u003e {\n\t\t\"use gpu\";\n\t\tconst wNew = __tsover_mul(color.w, sectors.x);\n\t\tconst t = __tsover_div(wNew, max(__tsover_add(st.w, wNew), 1e-5));\n\t\tconst mixed = variant(vec4f(st.rgb, 1), vec4f(color.xyz, 1), t);\n\t\tconst ba = __tsover_add(st.ba, __tsover_mul(__tsover_sub(1, st.ba), wNew));\n\t\tconst ac = st.ac.add(color.xyz.mul(__tsover_mul(color.w, sectors.y)));\n\t\tconst aa = __tsover_add(st.aa, __tsover_mul(color.w, sectors.y));\n\t\treturn EdgeGlowAccum({\n\t\t\trgb: mixed.xyz,\n\t\t\tw: __tsover_add(st.w, wNew),\n\t\t\tba,\n\t\t\tac,\n\t\t\taa\n\t\t});\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"st\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"color\"\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"sectors\"\n\t\t\t\t}\n\t\t\t],\n\t\t\t\"body\": [0, [\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"wNew\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"sectors\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"t\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"wNew\",\n\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\"wNew\"\n\t\t\t\t\t\t\t], [5, \"0.00001\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"mixed\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"variant\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\t\t\"rgb\"\n\t\t\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t], [5, \"1\"]]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"t\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ba\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\"ba\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\t\t\"ba\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\"wNew\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"ac\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\t\"ac\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"add\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"sectors\",\n\t\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t]]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t13,\n\t\t\t\t\t\"aa\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"color\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"sectors\",\n\t\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t],\n\t\t\t\t[10, [\n\t\t\t\t\t6,\n\t\t\t\t\t\"EdgeGlowAccum\",\n\t\t\t\t\t[[104, {\n\t\t\t\t\t\t\"rgb\": [\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"mixed\",\n\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"w\": [\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\t\"w\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"wNew\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"ba\": \"ba\",\n\t\t\t\t\t\t\"ac\": \"ac\",\n\t\t\t\t\t\t\"aa\": \"aa\"\n\t\t\t\t\t}]]\n\t\t\t\t]]\n\t\t\t]]\n\t\t},\n\t\texternals: {\n\t\t\t\"std.max\": () =\u003e max,\n\t\t\t\"variant\": () =\u003e variant,\n\t\t\t\"d.vec4f\": () =\u003e vec4f,\n\t\t\t\"EdgeGlowAccum\": () =\u003e EdgeGlowAccum\n\t\t}\n\t}) \u0026\u0026 $.f)({})).$name(`edgeGlowAccumColor_${mode}`);\n}\nfunction edgeGlowAccumColorFor(mode) {\n\tlet fn = accumFnByMode.get(mode);\n\tif (!fn) {\n\t\tfn = makeAccumFn(mode);\n\t\taccumFnByMode.set(mode, fn);\n\t}\n\treturn fn;\n}\nconst colorAtIndex = typegpu_default.fn([arrayOf(vec4f, 8), f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((colors, idx) =\u003e {\n\t\"use gpu\";\n\tconst c = colors[i32(idx)];\n\treturn vec4f(c.x, c.y, c.z, c.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"colors\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"idx\"\n\t\t}],\n\t\t\"body\": [0, [[\n\t\t\t13,\n\t\t\t\"c\",\n\t\t\t[\n\t\t\t\t8,\n\t\t\t\t\"colors\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.i32\",\n\t\t\t\t\t[\"idx\"]\n\t\t\t\t]\n\t\t\t]\n\t\t], [10, [\n\t\t\t6,\n\t\t\t\"d.vec4f\",\n\t\t\t[\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"x\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"y\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"z\"\n\t\t\t\t],\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"c\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {\n\t\t\"d.i32\": () =\u003e i32,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nconst edgeGlowCompose = typegpu_default.fn([EdgeGlowAccum, f32], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((st, bloom) =\u003e {\n\t\"use gpu\";\n\tconst k = __tsover_mul(bloom, 4);\n\tconst accumC = mix(st.rgb.mul(st.ba), st.ac, vec3f(k));\n\tconst accumA = clamp(mix(st.ba, st.aa, k), 0, 1);\n\treturn vec4f(clamp(accumC.div(max(accumA, 1e-4)), vec3f(0), vec3f(1)), accumA);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"st\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"bloom\"\n\t\t}],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"k\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"bloom\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"4\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"blendPremult\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\"rgb\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\"ba\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accumC\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t[\n\t\t\t\t\t\t\"blendPremult\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\"ac\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[\"k\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"accumA\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"std.mix\",\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\t\t\"ba\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"st\",\n\t\t\t\t\t\t\t\t\t\"aa\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"k\"\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"straight\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.clamp\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\"accumC\",\n\t\t\t\t\t\t\t\t\"div\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t\t\t[\"accumA\", [5, \"0.0001\"]]\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t\t\t[[5, \"1\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"straight\", \"accumA\"]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"std.mix\": () =\u003e mix,\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.clamp\": () =\u003e clamp,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar DEFAULT_STOPS = [\n\t{\n\t\tcolor: \"#7b2ff7\",\n\t\tposition: 0\n\t},\n\t{\n\t\tcolor: \"#00e0ff\",\n\t\tposition: .5\n\t},\n\t{\n\t\tcolor: \"#ff3d81\",\n\t\tposition: 1\n\t}\n];\nconst componentDefinition = defineStd({\n\tname: \"LightEdge\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Glowing, pulsing light racing around the edge of any 2D, SVG, or 3D shape. Powered by Paper Shaders.\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tchord: \"firstLobe\",\n\t\tstencil: \"centre\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms, propValues } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst beat = asLocal(call(heartbeatPulse, \"heartbeatPulse\", [t]), \"beat\");\n\t\t\tconst bAndA = call(edgeGlowBand, \"edgeGlowBand\", [\n\t\t\t\tframe.surf0.member(\"r\"),\n\t\t\t\tframe.sdfUV,\n\t\t\t\tparams.ctx.viewportSize,\n\t\t\t\tuniforms.scale,\n\t\t\t\tuniforms.thickness,\n\t\t\t\tuniforms.softness,\n\t\t\t\tuniforms.smokeSize,\n\t\t\t\tuniforms.smoke,\n\t\t\t\tt,\n\t\t\t\tuniforms.pulse,\n\t\t\t\tbeat\n\t\t\t]);\n\t\t\tconst border = bAndA.member(\"x\");\n\t\t\tconst angle01 = bAndA.member(\"y\");\n\t\t\tconst stopCount = propValues.stopCount ?? 0;\n\t\t\tconst colorCount = stopCount \u003e 1 ? Math.min(stopCount, 8) : 2;\n\t\t\tconst accumColorFn = edgeGlowAccumColorFor(propValues.colorSpace ?? 0);\n\t\t\tconst accumFor = (idx) =\u003e call(orbitSpotsAccum, \"orbitSpotsAccum\", [\n\t\t\t\tangle01,\n\t\t\t\tborder,\n\t\t\t\tt,\n\t\t\t\tbeat,\n\t\t\t\tuniforms.spots,\n\t\t\t\tuniforms.spotSize,\n\t\t\t\tuniforms.pulse,\n\t\t\t\tuniforms.intensity,\n\t\t\t\tuniforms.softness,\n\t\t\t\tuniforms.seed,\n\t\t\t\tfloatE(idx)\n\t\t\t]);\n\t\t\tconst colorFor = (idx) =\u003e stopCount \u003e 1 ? call(colorAtIndex, \"colorAtIndex\", [uniforms.colorsArray, floatE(idx)]) : idx === 0 ? uniforms.colorA : uniforms.colorB;\n\t\t\tlet state = call(edgeGlowAccumZero, \"edgeGlowAccumZero\", []);\n\t\t\tfor (let i = 0; i \u003c colorCount; i++) state = call(accumColorFn, \"edgeGlowAccumColor\", [\n\t\t\t\tstate,\n\t\t\t\tcolorFor(i),\n\t\t\t\taccumFor(i)\n\t\t\t]);\n\t\t\treturn call(edgeGlowCompose, \"edgeGlowCompose\", [state, uniforms.bloom]);\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#7b2ff7\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First border light color (used when no gradient stops are set)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#00e0ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second border light color (used when no gradient stops are set)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: {\n\t\t\t...colorStopsPropConfig(),\n\t\t\tdefault: DEFAULT_STOPS\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space overlapping lights blend in\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Width of the border band\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Border\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Edge softness — 0 = crisp band, 1 = wide smooth gradient\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Border\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Brightness of the individual light spots\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tbloom: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"How additively overlapping lights pile up — high values overdrive to white\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bloom\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tspots: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Number of light spots orbiting per color\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Spots\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tspotSize: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Angular size of each light spot\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Spot Size\",\n\t\t\t\tgroup: \"Light\"\n\t\t\t}\n\t\t},\n\t\tpulse: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Heartbeat pulsing — synchronizes the lights to a double-beat rhythm\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Pulse\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tsmoke: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Noisy luminous smoke drifting along the border\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Smoke\",\n\t\t\t\tgroup: \"Smoke\"\n\t\t\t}\n\t\t},\n\t\tsmokeSize: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Scale of the smoke billows\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Smoke Size\",\n\t\t\t\tgroup: \"Smoke\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed — re-rolls spot speeds, directions and phases\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar LightEdge_default = componentDefinition;\nexport { componentDefinition as n, LightEdge_default as t };\n","import { c as p, i as resolveArg, st as asLocal, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { O as slowDrift, T as screenGlow, i as beamStreaks, n as beamBloom, r as beamFrame, s as dithered, y as heatRamp } from \"./light-D3BIVkxy.js\";\nconst componentDefinition = defineStd({\n\tname: \"LightLeak\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Photorealistic film light leak — warm overexposed light bleeding in from a draggable anchor point, with streak bands, chromatic fringing, and slow breathing that evolves over time\",\n\tusesPointer: false,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tposition: {\n\t\t\tdefault: {\n\t\t\t\tx: .95,\n\t\t\t\ty: .4\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Anchor point of the leak — the light beams from here toward the canvas centre\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Position\",\n\t\t\t\tgroup: \"Leak\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: .55,\n\t\t\tdescription: \"How far the light bleeds into the frame\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Leak\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Exposure strength of the leak\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Leak\"\n\t\t\t}\n\t\t},\n\t\tstreaks: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Strength of the parallel streak bands further into the frame\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Streaks\",\n\t\t\t\tgroup: \"Leak\"\n\t\t\t}\n\t\t},\n\t\tcolorHot: {\n\t\t\tdefault: \"#fff3c4\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Core color where the leak is fully overexposed\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Hot Core\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorMid: {\n\t\t\tdefault: \"#ff7a2f\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Main body color of the leak\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Midtone\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorFringe: {\n\t\t\tdefault: \"#a63d8f\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Outer fringe color where the light fades out\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Fringe\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tflicker: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Breathing of the leak intensity\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Flicker\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Speed of the breathing, drift and evolution. 0 freezes the leak.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed — re-rolls the drift and breathing pattern\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: screenGlow((params) =\u003e {\n\t\tconst t = asLocal(animatedTime(params).mul(.6).add(resolveArg(p(\"seed\"), params).mul(7.9)), \"leakClock\");\n\t\tconst frame = asLocal(beamFrame(p(\"position\"))(params), \"leakFrame\");\n\t\tconst drift = asLocal(slowDrift({\n\t\t\tseed: p(\"seed\"),\n\t\t\tflicker: p(\"flicker\")\n\t\t})(t, params), \"leakDrift\");\n\t\tconst bloom = asLocal(beamBloom({ spread: p(\"spread\") })(frame, drift, params), \"leakBloom\");\n\t\tconst streaks = beamStreaks({\n\t\t\tspread: p(\"spread\"),\n\t\t\tstrength: p(\"streaks\")\n\t\t})(frame, drift, params);\n\t\tconst heat = bloom.member(\"x\").mul(1.25).add(bloom.member(\"y\")).add(streaks.mul(.85)).mul(resolveArg(p(\"intensity\"), params)).mul(2.2).mul(drift.member(\"x\"));\n\t\treturn heatRamp({\n\t\t\thot: p(\"colorHot\"),\n\t\t\tmid: p(\"colorMid\"),\n\t\t\tfringe: p(\"colorFringe\")\n\t\t}).taps(dithered(heat, params.ctx.uv, t), params);\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Light Leak shader.\"\n});\nvar LightLeak_default = componentDefinition;\nexport { componentDefinition as n, LightLeak_default as t };\n","import { a as resolveScalar, ct as call, ft as floatE, mt as vec4, n as paintFrame, o as uniformOf, s as Scalar } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { l as lineMask, u as sineWaveMask } from \"./shapePaints-Bg2UwCZo.js\";\nfunction arg(spec, params) {\n\tif (typeof spec === \"number\") return floatE(spec);\n\tif (spec instanceof Scalar || spec.kind !== \"ctx\") return resolveScalar(spec, params);\n\treturn params.ctx[spec.name];\n}\nfunction maskedColor(color, mask, params) {\n\tconst c = uniformOf(color, params);\n\treturn vec4(c.member(\"rgb\"), c.member(\"a\").mul(mask));\n}\nfunction strokedSegment(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\tconst mask = call(lineMask, \"lineMask\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\tuniformOf(slots.from, params),\n\t\t\tuniformOf(slots.to, params),\n\t\t\targ(slots.width, params),\n\t\t\targ(slots.style, params),\n\t\t\targ(slots.dashLength, params),\n\t\t\targ(slots.gapLength, params),\n\t\t\targ(slots.capStart, params),\n\t\t\targ(slots.capEnd, params)\n\t\t]);\n\t\treturn maskedColor(slots.color, mask, params);\n\t};\n}\nfunction sineStroke(slots) {\n\treturn (params) =\u003e {\n\t\tconst { uv, viewport } = paintFrame(params);\n\t\tconst mask = call(sineWaveMask, \"sineWaveMask\", [\n\t\t\tuv,\n\t\t\tviewport,\n\t\t\targ(slots.angle, params),\n\t\t\tuniformOf(slots.position, params),\n\t\t\targ(slots.frequency, params),\n\t\t\targ(slots.amplitude, params),\n\t\t\targ(slots.thickness, params),\n\t\t\targ(slots.softness, params),\n\t\t\tanimatedTime(params)\n\t\t]);\n\t\treturn maskedColor(slots.color, mask, params);\n\t};\n}\nexport { strokedSegment as n, sineStroke as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { n as strokedSegment } from \"./figures-B3lUGP8u.js\";\nvar LINE_STYLE_MODES = {\n\tsolid: 0,\n\tdashed: 1,\n\tdotted: 2\n};\nconst transformLineStyle = (value) =\u003e LINE_STYLE_MODES[value] ?? 0;\nvar LINE_CAP_MODES = {\n\tsquare: 0,\n\trounded: 1\n};\nconst transformLineCap = (value) =\u003e LINE_CAP_MODES[value] ?? 1;\nvar CAP_OPTIONS = [{\n\tlabel: \"Square\",\n\tvalue: \"square\"\n}, {\n\tlabel: \"Rounded\",\n\tvalue: \"rounded\"\n}];\nconst componentDefinition = defineStd({\n\tname: \"Line\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Shapes\",\n\tdescription: \"Draw a straight line between two points with color, thickness, and solid, dashed, or dotted styles\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The color of the line\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpointA: {\n\t\t\tdefault: {\n\t\t\t\tx: .2,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The start point of the line\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Point A\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tpointB: {\n\t\t\tdefault: {\n\t\t\t\tx: .8,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The end point of the line\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Point B\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: .01,\n\t\t\tdescription: \"The thickness of the line. A value of one (1) matches the canvas height.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .25,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tdimensional: \"canvas-height\"\n\t\t\t}\n\t\t},\n\t\tstyle: {\n\t\t\tdefault: \"solid\",\n\t\t\ttransform: transformLineStyle,\n\t\t\tdescription: \"The line style: solid, dashed, or dotted. Dashes and dots are spaced to land exactly on both endpoints.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Solid\",\n\t\t\t\t\t\tvalue: \"solid\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Dashed\",\n\t\t\t\t\t\tvalue: \"dashed\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Dotted\",\n\t\t\t\t\t\tvalue: \"dotted\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Style\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tdashLength: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"The length of each dash, including its caps\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Dash Length\",\n\t\t\t\tgroup: \"Style\",\n\t\t\t\tdimensional: \"canvas-height\",\n\t\t\t\tcondition: { style: \"dashed\" }\n\t\t\t}\n\t\t},\n\t\tgapLength: {\n\t\t\tdefault: .025,\n\t\t\tdescription: \"The gap between dashes, or the spacing between dots\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Gap Length\",\n\t\t\t\tgroup: \"Style\",\n\t\t\t\tdimensional: \"canvas-height\",\n\t\t\t\tcondition: { style: [\"dashed\", \"dotted\"] }\n\t\t\t}\n\t\t},\n\t\tcapStart: {\n\t\t\tdefault: \"rounded\",\n\t\t\ttransform: transformLineCap,\n\t\t\tdescription: \"Cap shape at the start of the line (point A). Rounded caps center on the endpoint; square caps end flat exactly at it. Also shapes the A-facing end of each dash and dot.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: CAP_OPTIONS,\n\t\t\t\tlabel: \"Start Cap\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tcapEnd: {\n\t\t\tdefault: \"rounded\",\n\t\t\ttransform: transformLineCap,\n\t\t\tdescription: \"Cap shape at the end of the line (point B). Rounded caps center on the endpoint; square caps end flat exactly at it. Also shapes the B-facing end of each dash and dot.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: CAP_OPTIONS,\n\t\t\t\tlabel: \"End Cap\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokedSegment({\n\t\tfrom: p(\"pointA\"),\n\t\tto: p(\"pointB\"),\n\t\twidth: p(\"thickness\"),\n\t\tstyle: p(\"style\"),\n\t\tdashLength: p(\"dashLength\"),\n\t\tgapLength: p(\"gapLength\"),\n\t\tcapStart: p(\"capStart\"),\n\t\tcapEnd: p(\"capEnd\"),\n\t\tcolor: p(\"color\")\n\t})\n});\nvar Line_default = componentDefinition;\nexport { transformLineStyle as i, componentDefinition as n, transformLineCap as r, Line_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { r as transformAngle } from \"./transformations-CzFmhZww.js\";\nimport { C as motionBlur, i as blurPath } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"LinearBlur\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Directional motion blur in a specific angle\",\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Intensity of the linear blur effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Direction of the linear blur (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: motionBlur({\n\t\tpath: blurPath.linear(p(\"angle\")),\n\t\tamount: p(\"intensity\")\n\t})\n});\nvar LinearBlur_default = componentDefinition;\nexport { componentDefinition as n, LinearBlur_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { b as stops, f as rampOver, r as dist } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, r as transformAngle, s as transformEdges, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"LinearGradient\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Create smooth linear color gradients\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#1aff00\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The starting color of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#0000ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The ending color of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tstart: {\n\t\t\tdefault: {\n\t\t\t\tx: 0,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The starting point of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Start\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tend: {\n\t\t\tdefault: {\n\t\t\t\tx: 1,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The ending point of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"End\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Additional rotation angle of the gradient (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"stretch\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"How to handle areas beyond the gradient endpoints\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: rampOver(dist.linear({\n\t\tfrom: p(\"start\"),\n\t\tto: p(\"end\"),\n\t\tangle: p(\"angle\")\n\t}), stops(p(\"colorSpace\")), { edges: p(\"edges\") })\n});\nvar LinearGradient_default = componentDefinition;\nexport { componentDefinition as n, LinearGradient_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"LinearWipe\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Wipe the content away along a straight edge with a soft feathered transition\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the wipe has travelled (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Direction of the wipe in degrees (0 = left to right)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Softness of the wipe edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Reverse the direction the wipe travels\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.directional(p(\"angle\")),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"feather\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Linear Wipe shader.\"\n});\nvar LinearWipe_default = componentDefinition;\nexport { componentDefinition as n, LinearWipe_default as t };\n","import { at as ZERO, d as glassShellProps, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { D as nudgeNormal, F as shapedSurface, I as sharpGlint, R as silhouette, V as surfaceField, W as surfacePattern, X as viewRay, b as keyLightAt, f as geometricNormal, g as guarded, k as perlinSlope, u as flowWarp, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration, w as sdf3d_exports } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, H as vec4, N as sin, O as reflect, P as smoothstep, i as clamp, n as add, v as length, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction } from \"./frames-BLqt7oaW.js\";\nvar { isMobileGpuViewport } = sdf3d_exports;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nfunction liquidStudio(rx, ry, envC, envS, keyRad, drift, envStr) {\n\tconst ex = local(sub(mul(rx, envC), mul(ry, envS)), \"ex\");\n\tconst ey = local(add(mul(rx, envS), mul(ry, envC)), \"ey\");\n\tconst p = local(vec2(ex, ey), \"p\");\n\tconst sky = local(smoothstep(-.7, .85, ey), \"sky\");\n\tlet lum = mul(mul(sky, sky), .4);\n\tconst r0 = local(mul(keyRad, 1.05), \"r0\");\n\tconst box0 = smoothstep(r0, mul(r0, .2), length(sub(p, vec2(add(0, drift), .55))));\n\tlum = add(lum, mul(mul(box0, 1.75), envStr));\n\tconst r1 = local(mul(keyRad, 1.25), \"r1\");\n\tconst box1 = smoothstep(r1, mul(r1, .2), length(sub(p, vec2(add(-.45, drift), -.4))));\n\tlum = add(lum, mul(mul(box1, 1.15), envStr));\n\tconst r2 = local(mul(keyRad, 1.15), \"r2\");\n\tconst box2 = smoothstep(r2, mul(r2, .2), length(sub(p, vec2(add(.55, drift), .1))));\n\treturn add(lum, mul(mul(box2, 1.1), envStr));\n}\nconst componentDefinition = defineStd({\n\tname: \"LiquidMetal\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Flowing liquid chrome — a molten reflective surface that wraps the shape, sweeping a procedural studio reflection across animated folds with crisp speculars and prismatic edges\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst mobile = isMobileGpuViewport();\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { sdf, pxH } = field;\n\t\t\tconst nGeo = geometricNormal(frame, field, {\n\t\t\t\tbevelWidth: u.bevelWidth,\n\t\t\t\tbevelShape: u.bevelShape\n\t\t\t});\n\t\t\tconst pat = surfacePattern(frame, field);\n\t\t\tconst freq = local(mul(u.ripple, 2.6), \"freq\");\n\t\t\tconst flowT = local(mul(t, .12), \"flowT\");\n\t\t\tconst q = local(vec2(mul(pat.member(\"x\"), freq), mul(pat.member(\"y\"), freq)), \"q\");\n\t\t\tconst wAmt = mul(u.warp, .9);\n\t\t\tconst hg = local(perlinSlope(add(q, mul(flowWarp(mul(q, .6), flowT), wAmt)), .62), \"hg\");\n\t\t\tconst relief = local(mul(u.turbulence, .5), \"relief\");\n\t\t\tconst n = nudgeNormal(nGeo, mul(mul(hg.member(\"x\"), relief), -1), mul(mul(hg.member(\"y\"), relief), -1));\n\t\t\tconst R = local(reflect(viewRay(params, field), n), \"R\");\n\t\t\tconst envStr = local(u.environment, \"envStr\");\n\t\t\tconst sharp = local(clamp(u.sharpness, 0, 1), \"sharp\");\n\t\t\tconst keyRad = local(mix(.5, .18, sharp), \"keyRad\");\n\t\t\tconst drift = local(mul(sin(mul(t, .07)), .05), \"drift\");\n\t\t\tconst env = direction(u.envRotation, \"env\");\n\t\t\tconst envC = env.member(\"x\");\n\t\t\tconst envS = env.member(\"y\");\n\t\t\tconst Hh = local(keyLightAt(direction(u.lightAngle, \"light\"), -.7).member(\"H\"), \"Hh\");\n\t\t\tconst spec = local(sharpGlint(clamp(add(add(mul(n.member(\"x\"), Hh.member(\"x\")), mul(n.member(\"y\"), Hh.member(\"y\"))), mul(n.member(\"z\"), Hh.member(\"z\"))), 0, 1), sharp, vec4(60, 900, .4, 1.4)), \"spec\");\n\t\t\tconst lumG = local(add(liquidStudio(R.member(\"x\"), R.member(\"y\"), envC, envS, keyRad, drift, envStr), spec), \"lumG\");\n\t\t\tlet lumR;\n\t\t\tlet lumB;\n\t\t\tif (mobile) {\n\t\t\t\tlumR = lumG;\n\t\t\t\tlumB = lumG;\n\t\t\t} else {\n\t\t\t\tconst grazeD = sub(1, clamp(mul(n.member(\"z\"), -1), 0, 1));\n\t\t\t\tconst dth = local(mul(mul(u.dispersion, .09), add(.4, mul(grazeD, 1.3))), \"dth\");\n\t\t\t\tconst lumBoffset = local(add(liquidStudio(add(R.member(\"x\"), mul(R.member(\"y\"), dth)), sub(R.member(\"y\"), mul(R.member(\"x\"), dth)), envC, envS, keyRad, drift, envStr), spec), \"lumBoffset\");\n\t\t\t\tlumB = lumBoffset;\n\t\t\t\tlumR = sub(mul(lumG, 2), lumBoffset);\n\t\t\t}\n\t\t\tconst dark = local(u.darkColor.member(\"rgb\"), \"dark\");\n\t\t\tconst light = local(u.lightColor.member(\"rgb\"), \"light\");\n\t\t\tconst rgb = vec4(mix(dark.member(\"x\"), light.member(\"x\"), clamp(lumR, 0, 1.8)), mix(dark.member(\"y\"), light.member(\"y\"), clamp(lumG, 0, 1.8)), mix(dark.member(\"z\"), light.member(\"z\"), clamp(lumB, 0, 1.8)), silhouette(field, u.edgeSoftness));\n\t\t\treturn guarded(insideShape(sdf, pxH), rgb, ZERO, \"liquidMetal\");\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the metal shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the metal shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the metal shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tlightColor: {\n\t\t\tdefault: \"#eef0f6\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The bright tone of the chrome highlights\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Light Color\",\n\t\t\t\tgroup: \"Metal\"\n\t\t\t}\n\t\t},\n\t\tdarkColor: {\n\t\t\tdefault: \"#141414\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The dark tone the reflection falls to in shadow — recolor for tinted metal (gold, steel, copper…)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Dark Color\",\n\t\t\t\tgroup: \"Metal\"\n\t\t\t}\n\t\t},\n\t\tturbulence: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How molten the surface is — the depth of the flowing folds that bend the reflection\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Turbulence\",\n\t\t\t\tgroup: \"Liquid\"\n\t\t\t}\n\t\t},\n\t\tripple: {\n\t\t\tdefault: 4,\n\t\t\tdescription: \"Scale of the molten folds — higher = smaller, busier ripples\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ripple Scale\",\n\t\t\t\tgroup: \"Liquid\"\n\t\t\t}\n\t\t},\n\t\twarp: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Swirl of the flow — domain-warps the folds into liquid curls\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Swirl\",\n\t\t\t\tgroup: \"Liquid\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Speed of the molten flow and the slowly drifting reflection. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Liquid\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\tenvironment: {\n\t\t\t\tdefault: 1.5,\n\t\t\t\tdescription: \"Strength of the reflected studio lighting — the softboxes seen across the metal\",\n\t\t\t\tui: { group: \"Surface\" }\n\t\t\t},\n\t\t\tenvRotation: { ui: { group: \"Surface\" } }\n\t\t}),\n\t\tsharpness: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Tightness of the specular highlights — 1 = razor chrome glints, 0 = soft satin\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Sharpness\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\tdispersion: {\n\t\t\t\tdescription: \"Prismatic color fringing along the reflection edges\",\n\t\t\t\tui: { group: \"Surface\" }\n\t\t\t},\n\t\t\tlightAngle: {\n\t\t\t\tdefault: 265,\n\t\t\t\tdescription: \"Direction of the key light for the specular glints, in degrees\",\n\t\t\t\tui: { group: \"Surface\" }\n\t\t\t}\n\t\t}),\n\t\tbevelWidth: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Width of the edge bevel, relative to the shape — thin for machined jewellery edges, wide for soft pillowed metal\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .005,\n\t\t\t\tmax: .2,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Bevel Width\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tbevelShape: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Bevel profile — 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\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bevel Profile\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ edgeSoftness: { ui: { group: \"Surface\" } } }),\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar LiquidMetal_default = componentDefinition;\nexport { componentDefinition as n, LiquidMetal_default as t };\n","import { c as p, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { f as liquidDisplace } from \"./warps-P5O3NWLe.js\";\nimport { t as gridSim } from \"./grids-Cv99xcJg.js\";\nimport { r as springLatticeField } from \"./pointerFields-CRecZwuZ.js\";\nconst componentDefinition = defineStd({\n\tname: \"Liquify\",\n\trole: \"warp\",\n\tcategory: \"Interactive\",\n\tdescription: \"Liquid-like interactive deformation effect\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tusesPointer: true,\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Scale of the fabric displacement effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstiffness: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Fabric rigidity (higher = stiffer canvas, lower = stretchy silk)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Stiffness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdamping: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"How quickly fabric motion settles\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Damping\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Cursor influence area\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"stretch\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\t...gridSim(springLatticeField({\n\t\tstiffness: p(\"stiffness\"),\n\t\tdamping: p(\"damping\"),\n\t\tradius: p(\"radius\"),\n\t\toutput: \"displacement\"\n\t})),\n\tmap: liquidDisplace({\n\t\tintensity: p(\"intensity\"),\n\t\toutput: \"displacement\"\n\t}),\n\tuvRemapIdentityWhen: ({ computeOutputs }) =\u003e !computeOutputs?.displacement\n});\nvar Liquify_default = componentDefinition;\nexport { componentDefinition as n, Liquify_default as t };\n","import { Br as struct, Gn as typegpu_default, Ir as atomic, Mr as vec4f, Rr as textureStorage2d, Yr as u32, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { _ as integrator, c as fitJitteredGrid, h as field, i as createMotionAxis, n as renderAgents, t as agentSim, v as torque } from \"./agents-CBSp2UK_.js\";\nimport { G as makeCpuValueGetter, K as readAgentFrame, V as SIZE_REF_RES, q as resolveRenderRes } from \"./porters-OTkIMOyl.js\";\nimport { m as makeRestingDirectorInit, v as orientedShapeOptions } from \"./agents-DXoEcto0.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar MAX_FILINGS = 12288;\nvar RES = resolveRenderRes({\n\tdesktop: 1024,\n\tmobile: 768\n});\nvar STATE_FORMAT = \"rgba16float\";\nvar SPLAT_R = 14;\nvar ALIGN_BASE = 45;\nvar REST_K = 6;\nvar DAMP_MIN = 3;\nvar DAMP_SPAN = 9;\nvar OMEGA_REF = 6;\nvar AGIT_COOL = 1;\nvar HOME_K = 2.5;\nvar PULL_K = .25;\nvar MAX_OFFSET = .12;\nvar OVERSCAN = .14;\nvar SimParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcolA: vec4f,\n\tcolB: vec4f,\n\tcount: f32,\n\tdt: f32,\n\taspect: f32,\n\tdomainX: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\taxisX: f32,\n\taxisY: f32,\n\tfieldType: f32,\n\trestMode: f32,\n\tstrength: f32,\n\treachSq: f32,\n\talignK: f32,\n\tdamping: f32,\n\trestK: f32,\n\tpullK: f32,\n\thomeK: f32,\n\tomegaRef: f32,\n\tagitCool: f32,\n\tgridCols: f32,\n\tcellW: f32,\n\tcellH: f32,\n\tjitter: f32,\n\tbodyR: f32\n}), \"SimParams\");\nvar simLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tagents: {\n\t\tstorage: arrayOf(vec4f, MAX_FILINGS),\n\t\taccess: \"mutable\"\n\t},\n\tagit: {\n\t\tstorage: arrayOf(f32, MAX_FILINGS),\n\t\taccess: \"mutable\"\n\t},\n\taccumE: {\n\t\tstorage: arrayOf(atomic(u32), RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\taccumS: {\n\t\tstorage: arrayOf(atomic(u32), RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: SimParams },\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"simLayout\");\nconst filingsInitKernel = makeRestingDirectorInit(simLayout, \"filingsInit\");\nvar filingsHome = field.jitteredGridHome(simLayout, { overscan: OVERSCAN });\nvar filingsField = field.dipoleOrRadial(simLayout);\nconst filingsUpdateKernel = integrator.orientation2d(simLayout, {\n\thome: filingsHome,\n\tfieldAt: filingsField,\n\ttorques: [torque.alignToField(simLayout), torque.rest(simLayout)],\n\tmaxOffset: MAX_OFFSET,\n\tname: \"filingsUpdate\"\n});\nfunction filingsRender(shape, colorSpaceMode) {\n\treturn renderAgents.orientedWorld(simLayout, {\n\t\tshape,\n\t\tres: RES,\n\t\tsplatRCap: SPLAT_R,\n\t\theading: \"angle\",\n\t\tagitation: \"buffer\",\n\t\tcomet: false,\n\t\thome: filingsHome,\n\t\tramp: {\n\t\t\tcolorSpace: colorSpaceMode,\n\t\t\ttrails: \"none\"\n\t\t},\n\t\tnames: {\n\t\t\tsplat: \"filingsSplat\",\n\t\t\tresolve: \"filingsResolve\"\n\t\t}\n\t});\n}\nconst makeFilingsSplatKernel = (shape) =\u003e filingsRender(shape, 2).splat.kernel;\nconst makeFilingsResolveKernel = (mode) =\u003e filingsRender(\"streak\", mode).resolve.kernel;\nconst filingsSplatKernel = makeFilingsSplatKernel(\"streak\");\nconst filingsResolveKernel = makeFilingsResolveKernel(2);\nconst componentDefinition = defineStd({\n\tname: \"MagneticFilings\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Thousands of tiny iron filings scattered on paper that swing to align with a magnetic field around the cursor, tracing out the field lines — a dipole whose axis follows the cursor's motion draws the classic two-lobed swirl, and every sweep of the magnet sends a glowing wave of filings flipping and settling\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tusesPointer: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#be1ef9\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of filings resting quietly, aligned and still\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Rest Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#6326ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color filings flash toward as they swing and settle — a wave of it follows the moving magnet\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Excited Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for the rest→excited color ramp\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: \"dot\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"How each filing is drawn — a slim streak or arrow reads as a compass needle, a box as a chunky filing, a dot or soft glow for a finer grain\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: orientedShapeOptions,\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Filings\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 8e3,\n\t\t\tdescription: \"Number of iron filings\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 500,\n\t\t\t\tmax: 12e3,\n\t\t\t\tstep: 500,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Filings\"\n\t\t\t}\n\t\t},\n\t\tsize: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Size of each filing\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Filings\"\n\t\t\t}\n\t\t},\n\t\trestOrientation: {\n\t\t\tdefault: \"random\",\n\t\t\tdescription: \"Which way filings point where the field can't reach them — randomly, all horizontal, or all vertical\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Random\",\n\t\t\t\t\t\tvalue: \"random\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Horizontal\",\n\t\t\t\t\t\tvalue: \"horizontal\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Vertical\",\n\t\t\t\t\t\tvalue: \"vertical\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Rest Orientation\",\n\t\t\t\tgroup: \"Filings\"\n\t\t\t}\n\t\t},\n\t\tfieldType: {\n\t\t\tdefault: \"dipole\",\n\t\t\tdescription: \"The magnetic field the filings reveal — a dipole (bar-magnet lobes that follow the cursor's motion) or a radial monopole (spokes out from the cursor)\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Dipole\",\n\t\t\t\t\tvalue: \"dipole\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Radial\",\n\t\t\t\t\tvalue: \"radial\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Field Type\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tstrength: {\n\t\t\tdefault: 1.7,\n\t\t\tdescription: \"How strongly the magnet grips the filings — higher snaps more of them into sharp alignment\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\treach: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How far the magnet's influence spreads (in screen heights) — larger reveals more of the field at once\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Reach\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tresponse: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How briskly filings swing and settle — low is loose and floppy with a long wobble, high snaps into place quickly\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Response\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t}\n\t},\n\t...agentSim({\n\t\tlayout: simLayout,\n\t\tparams: SimParams,\n\t\tmaxAgents: MAX_FILINGS,\n\t\tcountCap: {\n\t\t\tdesktop: MAX_FILINGS,\n\t\t\tmobile: 6e3\n\t\t},\n\t\toutput: {\n\t\t\tkey: \"outTex\",\n\t\t\tname: \"filingsTexture\",\n\t\t\tsize: [RES, RES],\n\t\t\tformat: STATE_FORMAT\n\t\t},\n\t\tbake: ({ getCpuValue }) =\u003e {\n\t\t\tconst render = filingsRender(getCpuValue(\"shape\") || \"streak\", getCpuValue(\"colorSpace\") ?? 2);\n\t\t\treturn {\n\t\t\t\tpipelines: {\n\t\t\t\t\tinit: {\n\t\t\t\t\t\tkernel: filingsInitKernel,\n\t\t\t\t\t\tthreads: \"max\"\n\t\t\t\t\t},\n\t\t\t\t\tupdate: {\n\t\t\t\t\t\tkernel: filingsUpdateKernel,\n\t\t\t\t\t\tthreads: \"agents\"\n\t\t\t\t\t},\n\t\t\t\t\tsplat: render.splat,\n\t\t\t\t\tresolve: render.resolve\n\t\t\t\t},\n\t\t\t\tinitStep: \"init\",\n\t\t\t\tprogram: [\n\t\t\t\t\t\"update\",\n\t\t\t\t\t\"splat\",\n\t\t\t\t\t\"resolve\"\n\t\t\t\t]\n\t\t\t};\n\t\t},\n\t\tframe: (sys, { getCpuValue }) =\u003e {\n\t\t\tconst g = makeCpuValueGetter(getCpuValue);\n\t\t\tconst motionAxis = createMotionAxis({\n\t\t\t\tsmoothing: .1,\n\t\t\t\tteleport: .25\n\t\t\t});\n\t\t\treturn (frameParams) =\u003e {\n\t\t\t\tconst { dt, aspect, pointerX, pointerY } = readAgentFrame(frameParams);\n\t\t\t\tconst domainX = Math.max(aspect, .01);\n\t\t\t\tconst count = sys.resolveCount(g(\"count\", 5e3));\n\t\t\t\tconst { cols, cellW, cellH } = fitJitteredGrid(count, domainX, OVERSCAN);\n\t\t\t\tconst cursorX = pointerX * aspect;\n\t\t\t\tconst cursorY = pointerY;\n\t\t\t\tconst axis = motionAxis.update(cursorX, cursorY);\n\t\t\t\tconst fieldType = (getCpuValue(\"fieldType\") ?? \"dipole\") === \"radial\" ? 1 : 0;\n\t\t\t\tconst restStr = getCpuValue(\"restOrientation\") ?? \"random\";\n\t\t\t\tconst restMode = restStr === \"horizontal\" ? 1 : restStr === \"vertical\" ? 2 : 0;\n\t\t\t\tconst strength = g(\"strength\", 1);\n\t\t\t\tconst reach = g(\"reach\", .35);\n\t\t\t\tconst response = Math.min(Math.max(g(\"response\", .5), 0), 1);\n\t\t\t\tconst colA = getCpuValue(\"colorA\");\n\t\t\t\tconst colB = getCpuValue(\"colorB\");\n\t\t\t\tconst bodyR = Math.min(Math.max(g(\"size\", 1), .5), 3) * 1.7 / SIZE_REF_RES;\n\t\t\t\tsys.writeParams({\n\t\t\t\t\tcolA: vec4f(colA?.x ?? .522, colA?.y ?? .573, colA?.z ?? .639, colA?.w ?? 1),\n\t\t\t\t\tcolB: vec4f(colB?.x ?? 1, colB?.y ?? .616, colB?.z ?? .361, colB?.w ?? 1),\n\t\t\t\t\tcount,\n\t\t\t\t\tdt,\n\t\t\t\t\taspect,\n\t\t\t\t\tdomainX,\n\t\t\t\t\tcursorX,\n\t\t\t\t\tcursorY,\n\t\t\t\t\taxisX: axis.x,\n\t\t\t\t\taxisY: axis.y,\n\t\t\t\t\tfieldType,\n\t\t\t\t\trestMode,\n\t\t\t\t\tstrength,\n\t\t\t\t\treachSq: reach * reach,\n\t\t\t\t\talignK: ALIGN_BASE,\n\t\t\t\t\tdamping: DAMP_MIN + response * DAMP_SPAN,\n\t\t\t\t\trestK: REST_K,\n\t\t\t\t\tpullK: PULL_K,\n\t\t\t\t\thomeK: HOME_K,\n\t\t\t\t\tomegaRef: OMEGA_REF,\n\t\t\t\t\tagitCool: AGIT_COOL,\n\t\t\t\t\tgridCols: cols,\n\t\t\t\t\tcellW,\n\t\t\t\t\tcellH,\n\t\t\t\t\tjitter: .85,\n\t\t\t\t\tbodyR\n\t\t\t\t});\n\t\t\t\treturn sys.frame({ count });\n\t\t\t};\n\t\t},\n\t\tfragment: {\n\t\t\toutput: \"filingsTexture\",\n\t\t\tfallback: \"transparent\"\n\t\t}\n\t})\n});\nvar MagneticFilings_default = componentDefinition;\nexport { filingsSplatKernel as a, makeFilingsSplatKernel as c, filingsResolveKernel as i, componentDefinition as n, filingsUpdateKernel as o, filingsInitKernel as r, makeFilingsResolveKernel as s, MagneticFilings_default as t };\n","import { c as p, o as uniformOf, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { U as surfaceNoiseAt } from \"./materials-4Oqvm_9m.js\";\nimport { t as colorLadder3 } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, N as sin, P as smoothstep, n as add, o as div, w as mul, x as max, y as local } from \"./math-D864seEs.js\";\nimport { s as surfaceOf } from \"./frames-BLqt7oaW.js\";\nvar PI = 3.141592653589793;\nconst componentDefinition = defineStd({\n\tname: \"Marble\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Classic marble swirl and vein texture using noise-warped sine waves\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Base background color of the marble\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Base\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#3a2d54\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Secondary marble tone\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tone\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#0f0f0f\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Deepest marble color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Depth\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Scale and density of the marble vein pattern\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tturbulence: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Amount of noise-driven distortion applied to the veins\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Turbulence\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .25,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst { uv, viewport } = surfaceOf(params);\n\t\tconst aspect = local(div(viewport.member(\"x\"), max(viewport.member(\"y\"), 1e-6)), \"aspect\");\n\t\tconst t = local(animatedTime(params), \"marbleTime\");\n\t\tconst seed = uniformOf(p(\"seed\"), params);\n\t\tconst pos = local(mul(vec2(mul(uv.member(\"x\"), aspect), uv.member(\"y\")), uniformOf(p(\"scale\"), params)), \"plane\");\n\t\tconst x = pos.member(\"x\");\n\t\tconst y = pos.member(\"y\");\n\t\tconst turbulence = local(add(add(surfaceNoiseAt(vec2(add(x, seed), add(y, t))), mul(surfaceNoiseAt(vec2(add(mul(x, 2), mul(seed, 1.7)), add(mul(y, 2), mul(t, .7)))), .5)), mul(surfaceNoiseAt(vec2(add(mul(x, 4), mul(seed, 3.1)), add(mul(y, 4), mul(t, 1.3)))), .25)), \"marbleTurb\");\n\t\tconst vein = local(add(mul(sin(add(mul(x, PI), mul(turbulence, uniformOf(p(\"turbulence\"), params)))), .5), .5), \"veinT\");\n\t\tconst depth = add(mul(surfaceNoiseAt(vec2(add(mul(y, 1.5), mul(seed, 2)), mul(x, 1.2))), .3), .5);\n\t\treturn colorLadder3({\n\t\t\ta: p(\"colorA\"),\n\t\t\tb: p(\"colorB\"),\n\t\t\tc: p(\"colorC\"),\n\t\t\tspace: p(\"colorSpace\")\n\t\t})(smoothstep(.3, .6, vein), mul(smoothstep(.6, .9, vein), depth), params);\n\t}\n});\nvar Marble_default = componentDefinition;\nexport { componentDefinition as n, Marble_default as t };\n","import { Mr as vec4f, c as p, o as uniformOf, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { Z as volumeNoiseAt } from \"./materials-4Oqvm_9m.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nimport { D as wrapRamp, E as warpedPoint, g as scatteredAnchors, h as scatterField, y as standardPalette } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { A as rotate2, B as vec2, N as sin, P as smoothstep, V as vec3, a as cos, c as exp, i as clamp, n as add, o as div, v as length, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as crosses } from \"./slots-BqIef2iV.js\";\nimport { s as surfaceOf } from \"./frames-BLqt7oaW.js\";\nimport { t as dithered } from \"./compose-Dkf3v-xS.js\";\nvar DOMAIN_SCALE = 1.6;\nvar WARP_AMOUNT = .48;\nvar WARP_RATE = .125;\nvar SWIRL_MAX = 3;\nvar VAR_FREQ = 1.9;\nvar VAR_STRENGTH = 1.4;\nvar VAR_RATE = .045;\nvar WRAP_CYCLES = 9;\nvar DEFAULT_STOPS = [\n\t{\n\t\tcolor: \"#1a0533\",\n\t\tposition: 0\n\t},\n\t{\n\t\tcolor: \"#6d2fd1\",\n\t\tposition: .26\n\t},\n\t{\n\t\tcolor: \"#e04b9e\",\n\t\tposition: .52\n\t},\n\t{\n\t\tcolor: \"#ff8c42\",\n\t\tposition: .76\n\t},\n\t{\n\t\tcolor: \"#ffdf8e\",\n\t\tposition: 1\n\t}\n];\nconst componentDefinition = defineStd({\n\tname: \"MeshGradient\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Flowing mesh gradient of soft drifting color swaths whose seams wrap through the palette\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\textraFields: { meshAnchors: {\n\t\tschema: arrayOf(vec4f, 4),\n\t\tinitial: new Array(16).fill(0)\n\t} },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#1a0533\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First gradient color (two-color fallback when stops are cleared)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffdf8e\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second gradient color (two-color fallback when stops are cleared)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: {\n\t\t\t...colorStopsPropConfig(),\n\t\t\tdefault: DEFAULT_STOPS\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Number of color points scattered across the canvas\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Points\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsmoothness: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"How smoothly the color points blend into each other\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Smoothness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tvariation: {\n\t\t\tdefault: .35,\n\t\t\trecompile: crosses(0),\n\t\t\tdescription: \"Varies edge softness across the canvas — some color boundaries crisp, others diffuse\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tswirl: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Vortex rotation that spirals the field around the frame centre — negative values spin the other way\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Swirl\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdrift: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the color points wander from their home positions\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Drift\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\twrapping: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Wraps the palette back through itself where colors meet — banded seams where the field pinches, smooth elsewhere\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Wrapping\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for the point layout and palette assignment\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst { uv, viewport } = surfaceOf(params);\n\t\tconst aspect = local(div(viewport.member(\"x\"), max(viewport.member(\"y\"), 1e-6)), \"aspect\");\n\t\tconst t = local(animatedTime(params), \"meshTime\");\n\t\tconst seed = uniformOf(p(\"seed\"), params);\n\t\tconst centred = local(vec2(sub(mul(uv.member(\"x\"), aspect), mul(aspect, .5)), sub(uv.member(\"y\"), .5)), \"meshCentred\");\n\t\tconst swirlAngle = local(mul(mul(-SWIRL_MAX, uniformOf(p(\"swirl\"), params)), smoothstep(0, 1, length(centred))), \"swirlAngle\");\n\t\tconst swirled = local(rotate2(centred, cos(swirlAngle), sin(swirlAngle)), \"meshRot\");\n\t\tconst uvS = local(vec2(add(swirled.member(\"x\"), mul(aspect, .5)), add(swirled.member(\"y\"), .5)), \"meshSwirled\");\n\t\tconst warped = local(warpedPoint({\n\t\t\tat: vec3(mul(uvS.member(\"x\"), DOMAIN_SCALE), mul(uvS.member(\"y\"), DOMAIN_SCALE), mul(seed, 7.31)),\n\t\t\ttime: mul(t, WARP_RATE),\n\t\t\tamount: WARP_AMOUNT,\n\t\t\tlevels: isMobileGpuViewport() ? 1 : 2\n\t\t}), \"meshWarp\");\n\t\tconst q = local(vec2(div(warped.member(\"x\"), DOMAIN_SCALE), div(warped.member(\"y\"), DOMAIN_SCALE)), \"meshQ\");\n\t\tconst basePower = div(8, add(uniformOf(p(\"smoothness\"), params), .5));\n\t\tconst variation = params.propValues.variation;\n\t\tconst softness = variation !== void 0 \u0026\u0026 variation !== 0 ? (() =\u003e {\n\t\t\treturn clamp(mul(basePower, exp(mul(mul(volumeNoiseAt(vec3(mul(q.member(\"x\"), VAR_FREQ), mul(q.member(\"y\"), VAR_FREQ), add(mul(seed, 3.17), mul(t, VAR_RATE)))), uniformOf(p(\"variation\"), params)), VAR_STRENGTH))), .6, 16);\n\t\t})() : clamp(basePower, .6, 16);\n\t\tconst anchors = scatteredAnchors(params, {\n\t\t\tcount: p(\"count\"),\n\t\t\tseed: p(\"seed\"),\n\t\t\tdrift: p(\"drift\"),\n\t\t\tfield: \"meshAnchors\"\n\t\t});\n\t\treturn dithered(standardPalette(wrapRamp({\n\t\t\tt: scatterField({\n\t\t\t\tat: q,\n\t\t\t\tcount: uniformOf(p(\"count\"), params),\n\t\t\t\tseed,\n\t\t\t\tdrift: uniformOf(p(\"drift\"), params),\n\t\t\t\taspect,\n\t\t\t\ttime: t,\n\t\t\t\tsoftness,\n\t\t\t\tanchors\n\t\t\t}),\n\t\t\tcycles: add(1, mul(uniformOf(p(\"wrapping\"), params), WRAP_CYCLES))\n\t\t}), params), params);\n\t}\n});\nvar MeshGradient_default = componentDefinition;\nexport { componentDefinition as n, MeshGradient_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { p as mirrorLine } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Mirror\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Mirror content across a line defined by center point and angle\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"The point the mirror line passes through\"),\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"The angle of the mirror line in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"mirror\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: mirrorLine({\n\t\tcenter: p(\"center\"),\n\t\tangle: p(\"angle\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Mirror shader.\"\n});\nvar Mirror_default = componentDefinition;\nexport { componentDefinition as n, Mirror_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { i as pointCloudGradient } from \"./gradients-CIxKrfME.js\";\nconst componentDefinition = defineStd({\n\tname: \"MultiPointGradient\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Five individually placed color points blended together by proximity — drag each point to shape the gradient\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#4776E6\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of control point A\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpositionA: {\n\t\t\tdefault: {\n\t\t\t\tx: .2,\n\t\t\t\ty: .2\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of control point A\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Position A\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#C44DFF\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of control point B\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpositionB: {\n\t\t\tdefault: {\n\t\t\t\tx: .8,\n\t\t\t\ty: .2\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of control point B\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Position B\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#1ABC9C\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of control point C\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color C\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpositionC: {\n\t\t\tdefault: {\n\t\t\t\tx: .2,\n\t\t\t\ty: .8\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of control point C\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Position C\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorD: {\n\t\t\tdefault: \"#F8BBD9\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of control point D\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color D\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpositionD: {\n\t\t\tdefault: {\n\t\t\t\tx: .8,\n\t\t\t\ty: .8\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of control point D\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Position D\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorE: {\n\t\t\tdefault: \"#FF8C42\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of control point E\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color E\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tpositionE: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of control point E\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Position E\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tsmoothness: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Controls how smoothly colors blend.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Smoothness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: pointCloudGradient({\n\t\tpoints: [\n\t\t\t{\n\t\t\t\tcolor: p(\"colorA\"),\n\t\t\t\tposition: p(\"positionA\")\n\t\t\t},\n\t\t\t{\n\t\t\t\tcolor: p(\"colorB\"),\n\t\t\t\tposition: p(\"positionB\")\n\t\t\t},\n\t\t\t{\n\t\t\t\tcolor: p(\"colorC\"),\n\t\t\t\tposition: p(\"positionC\")\n\t\t\t},\n\t\t\t{\n\t\t\t\tcolor: p(\"colorD\"),\n\t\t\t\tposition: p(\"positionD\")\n\t\t\t},\n\t\t\t{\n\t\t\t\tcolor: p(\"colorE\"),\n\t\t\t\tposition: p(\"positionE\")\n\t\t\t}\n\t\t],\n\t\tsmoothness: p(\"smoothness\"),\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar MultiPointGradient_default = componentDefinition;\nexport { componentDefinition as n, MultiPointGradient_default as t };\n","import { Bt as mixPreconvertedVariants, I as sdf_exports, It as mixColorsLinear, Rt as mixPreconvertedInSpace, at as ZERO, ct as call, d as glassShellProps, jr as vec3f, jt as convertP3ToMixSpaceCPU, t as defineStd, zt as mixPreconvertedLinear } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { B as studioSoftboxes, E as neutralTone, F as shapedSurface, J as twinkle, L as shellRefract, M as pointStars, N as rotationSensor, O as opticalThickness, R as silhouette, U as surfaceNoiseAt, V as surfaceField, X as viewRay, Z as volumeNoiseAt, _ as hashNoise, b as keyLightAt, f as geometricNormal, g as guarded, o as dualLobeGlint, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration, w as sdf3d_exports } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, H as vec4, I as splat3, O as reflect, P as smoothstep, T as neg, V as vec3, c as exp, i as clamp, n as add, s as dot, t as abs, u as float, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction } from \"./frames-BLqt7oaW.js\";\nimport { i as layers } from \"./compose-Dkf3v-xS.js\";\nfunction interiorRay(field, frame, opts) {\n\tconst entry = local(mul(field.s0.member(\"w\"), frame.volFlag), \"rayEntry\");\n\tconst length = local(opts.lengthScale === void 0 ? opticalThickness(field, frame) : mul(opticalThickness(field, frame), opts.lengthScale), \"rayLen\");\n\tconst shearX = opts.view ? local(mul(opts.view.member(\"x\"), opts.shear ?? 1), \"rayShearX\") : void 0;\n\tconst shearY = opts.view ? local(mul(opts.view.member(\"y\"), opts.shear ?? 1), \"rayShearY\") : void 0;\n\treturn {\n\t\tentry,\n\t\tlength,\n\t\tat(z) {\n\t\t\treturn {\n\t\t\t\tx: shearX ? add(opts.origin.x, mul(shearX, z)) : opts.origin.x,\n\t\t\t\ty: shearY ? add(opts.origin.y, mul(shearY, z)) : opts.origin.y\n\t\t\t};\n\t\t}\n\t};\n}\nfunction parallaxPlane(ray, opts) {\n\tconst hint = opts.hint ?? \"plane\";\n\tconst z = local(add(ray.entry, mul(ray.length, opts.depth)), `${hint}Z`);\n\tconst base = ray.at(z);\n\tif (!opts.pan) return {\n\t\tx: base.x,\n\t\ty: base.y,\n\t\tz\n\t};\n\tconst rate = opts.panRate ?? 1;\n\treturn {\n\t\tx: add(base.x, mul(opts.pan.x, rate)),\n\t\ty: add(base.y, mul(opts.pan.y, rate)),\n\t\tz\n\t};\n}\nfunction turbulentMedium(p, opts) {\n\tconst h = opts.hint ?? \"\";\n\tconst drift = opts.drift;\n\tconst seed = opts.seed;\n\tconst axis = (v, freqScale, driftScale, seedScale) =\u003e {\n\t\tlet e = freqScale === void 0 ? mul(v, opts.frequency) : mul(v, mul(opts.frequency, freqScale));\n\t\tif (drift) e = add(e, driftScale === 1 ? drift : mul(drift, driftScale));\n\t\tif (seed) e = add(e, seedScale === 1 ? seed : mul(seed, seedScale));\n\t\treturn e;\n\t};\n\tconst q = local(vec3(axis(p.x, void 0, 1, 1), axis(p.y, void 0, -.7, .53), axis(p.z, 1.25, 1.3, .79)), `q${h}`);\n\tconst warp = local(volumeNoiseAt(drift ? add(mul(q, .5), vec3(mul(drift, 1.4), 0, mul(drift, -.9))) : mul(q, .5)), `warp${h}`);\n\tconst qw = opts.billow ? local(add(q, mul(vec3(warp, mul(warp, -.73), mul(warp, .41)), opts.billow)), `qw${h}`) : q;\n\tconst mid = local(volumeNoiseAt(add(mul(qw, 2.13), vec3(5.2, 1.3, 8.4))), `mid${h}`);\n\tconst fine = local(volumeNoiseAt(add(mul(qw, 4.31), vec3(9.1, 3.7, 1.2))), `fine${h}`);\n\treturn {\n\t\tdensity: local(mul(add(add(volumeNoiseAt(qw), mul(mid, .5)), mul(fine, .27)), .57), `fbm${h}`),\n\t\tmid,\n\t\tfine\n\t};\n}\nfunction volumeMarch(opts, sample) {\n\tlet transmit = splat3(1);\n\tlet color = vec3(0, 0, 0);\n\tfor (let i = 0; i \u003c opts.steps; i++) {\n\t\tconst t = (i + .5) / opts.steps;\n\t\tconst z = local(add(opts.entry, mul(opts.length, opts.jitter ? add(t, opts.jitter) : t)), `z${i}`);\n\t\tconst { emit, absorb } = sample({\n\t\t\ti,\n\t\t\tt,\n\t\t\tz\n\t\t});\n\t\tconst contribution = mul(emit, transmit);\n\t\tcolor = add(color, opts.emissionGain ? mul(contribution, splat3(opts.emissionGain)) : contribution);\n\t\ttransmit = local(mul(transmit, exp(neg(absorb))), `transmit${i}`);\n\t}\n\treturn {\n\t\tcolor: local(color, opts.hint ?? \"marchAcc\"),\n\t\ttransmittance: transmit\n\t};\n}\nvar { isMobileGpuViewport, VOLUMETRIC_FIELD_EXTRA_FIELDS } = sdf3d_exports;\nvar { ANALYTIC_SDF_EXTRA_FIELDS } = sdf_exports;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"prism3D\",\n\tradius: .28,\n\theight: .24,\n\trotX: 25,\n\trotY: 30,\n\trotZ: 0\n});\nvar NEBULA_STEPS_DESKTOP = 6;\nvar NEBULA_STEPS_MOBILE = 4;\nconst componentDefinition = defineStd({\n\tname: \"Nebula\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"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\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst steps = isMobileGpuViewport() ? NEBULA_STEPS_MOBILE : NEBULA_STEPS_DESKTOP;\n\t\t\tconst spaceMode = params.propValues.colorSpace ?? 0;\n\t\t\tlet veilGasMix;\n\t\t\tlet rampMix;\n\t\t\tif (spaceMode !== 0) {\n\t\t\t\tlet lastKey = \"\";\n\t\t\t\tparams.onBeforeRender(() =\u003e {\n\t\t\t\t\tconst cols = [\n\t\t\t\t\t\t\"veilColor\",\n\t\t\t\t\t\t\"gasColor\",\n\t\t\t\t\t\t\"coreColor\"\n\t\t\t\t\t].map((name) =\u003e params.getCpuValue(name));\n\t\t\t\t\tif (cols.some((c) =\u003e !c)) return;\n\t\t\t\t\tconst key = cols.map((c) =\u003e `${c.x},${c.y},${c.z}`).join(\"|\");\n\t\t\t\t\tif (key === lastKey) return;\n\t\t\t\t\tlastKey = key;\n\t\t\t\t\tconst fields = [\n\t\t\t\t\t\t\"convVeil\",\n\t\t\t\t\t\t\"convGas\",\n\t\t\t\t\t\t\"convCore\"\n\t\t\t\t\t];\n\t\t\t\t\tcols.forEach((c, idx) =\u003e {\n\t\t\t\t\t\tconst conv = convertP3ToMixSpaceCPU(c.x, c.y, c.z, spaceMode);\n\t\t\t\t\t\tparams.setExtraField(fields[idx], [\n\t\t\t\t\t\t\tconv[0],\n\t\t\t\t\t\t\tconv[1],\n\t\t\t\t\t\t\tconv[2]\n\t\t\t\t\t\t]);\n\t\t\t\t\t});\n\t\t\t\t});\n\t\t\t\tconst back = mixPreconvertedVariants[spaceMode] ?? mixPreconvertedLinear;\n\t\t\t\tveilGasMix = (tv) =\u003e call(back, \"mixPreconvertedColors\", [\n\t\t\t\t\tu.convVeil,\n\t\t\t\t\tu.convGas,\n\t\t\t\t\tu.veilColor.member(\"a\"),\n\t\t\t\t\tu.gasColor.member(\"a\"),\n\t\t\t\t\ttv\n\t\t\t\t]);\n\t\t\t\trampMix = (t1, t2, hint) =\u003e {\n\t\t\t\t\tconst ab = local(call(mixPreconvertedInSpace, \"mixInSpace\", [\n\t\t\t\t\t\tu.convVeil,\n\t\t\t\t\t\tu.veilColor.member(\"a\"),\n\t\t\t\t\t\tu.convGas,\n\t\t\t\t\t\tu.gasColor.member(\"a\"),\n\t\t\t\t\t\tt1\n\t\t\t\t\t]), `${hint}AB`);\n\t\t\t\t\treturn call(back, \"mixPreconvertedColors\", [\n\t\t\t\t\t\tab.member(\"conv\"),\n\t\t\t\t\t\tu.convCore,\n\t\t\t\t\t\tab.member(\"alpha\"),\n\t\t\t\t\t\tu.coreColor.member(\"a\"),\n\t\t\t\t\t\tt2\n\t\t\t\t\t]);\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tveilGasMix = (tv) =\u003e call(mixColorsLinear, \"mixColors\", [\n\t\t\t\t\tu.veilColor,\n\t\t\t\t\tu.gasColor,\n\t\t\t\t\ttv\n\t\t\t\t]);\n\t\t\t\trampMix = (t1, t2) =\u003e call(mixColorsLinear, \"mixColors\", [\n\t\t\t\t\tcall(mixColorsLinear, \"mixColors\", [\n\t\t\t\t\t\tu.veilColor,\n\t\t\t\t\t\tu.gasColor,\n\t\t\t\t\t\tt1\n\t\t\t\t\t]),\n\t\t\t\t\tu.coreColor,\n\t\t\t\t\tt2\n\t\t\t\t]);\n\t\t\t}\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { sdf, pxH } = field;\n\t\t\tconst n = geometricNormal(frame, field, {\n\t\t\t\tbevelWidth: float(.09),\n\t\t\t\tbevelShape: float(0)\n\t\t\t});\n\t\t\tconst view = viewRay(params, field);\n\t\t\tconst interior = shellRefract(frame, n, local(mul(u.refraction, .16), \"bend\"));\n\t\t\tconst { x: sx, y: sy } = interior.centered;\n\t\t\tconst sensor = rotationSensor(frame);\n\t\t\tconst ray = interiorRay(field, frame, {\n\t\t\t\torigin: interior,\n\t\t\t\tview,\n\t\t\t\tshear: .55,\n\t\t\t\tlengthScale: .9\n\t\t\t});\n\t\t\tconst pathLen = ray.length;\n\t\t\tconst freq = local(mul(u.gasScale, 3.1), \"freq\");\n\t\t\tconst drift = local(mul(t, .14), \"drift\");\n\t\t\tconst seedOff = local(mul(u.seed, 7.31), \"seedOff\");\n\t\t\tconst jit = local(mul(hashNoise(mul(interior.x, 311.7), mul(interior.y, 173.3)), .15 / steps), \"jit\");\n\t\t\tconst macro = local(mul(surfaceNoiseAt(vec2(add(add(mul(sx, 1.3), mul(drift, .6)), mul(seedOff, .37)), add(mul(sy, 1.3), mul(seedOff, .61)))), .5), \"macro\");\n\t\t\tconst cav = local(mix(-.35, .5, u.cavity), \"cav\");\n\t\t\tconst billowAmt = local(mul(u.billow, .55), \"billowAmt\");\n\t\t\tconst core = local(u.coreColor.member(\"rgb\"), \"coreRgb\");\n\t\t\tconst veil = local(u.veilColor.member(\"rgb\"), \"veilRgb\");\n\t\t\tconst eGain = local(mul(add(.3, mul(pathLen, .9)), 6 / steps), \"eGain\");\n\t\t\tconst aGain = local(mul(mul(add(.5, mul(pathLen, 2.2)), u.density), 3 / steps), \"aGain\");\n\t\t\tconst march = volumeMarch({\n\t\t\t\tsteps,\n\t\t\t\tentry: ray.entry,\n\t\t\t\tlength: ray.length,\n\t\t\t\tjitter: jit,\n\t\t\t\temissionGain: eGain,\n\t\t\t\thint: \"gasAcc\"\n\t\t\t}, ({ i, t: fi, z }) =\u003e {\n\t\t\t\tconst pos = ray.at(z);\n\t\t\t\tconst gasN = turbulentMedium({\n\t\t\t\t\tx: pos.x,\n\t\t\t\t\ty: pos.y,\n\t\t\t\t\tz\n\t\t\t\t}, {\n\t\t\t\t\tfrequency: freq,\n\t\t\t\t\tdrift,\n\t\t\t\t\tseed: seedOff,\n\t\t\t\t\tbillow: billowAmt,\n\t\t\t\t\thint: `${i}`\n\t\t\t\t});\n\t\t\t\tconst wall = smoothstep(0, .11, mul(pathLen, Math.min(fi, 1 - fi)));\n\t\t\t\tconst ridge = sub(1, clamp(mul(abs(gasN.fine), 1.6), 0, 1));\n\t\t\t\tconst dens = local(mul(mul(smoothstep(0, .5, sub(add(gasN.density, macro), cav)), wall), add(.65, mul(ridge, .7))), `dens${i}`);\n\t\t\t\tconst dustD = local(mul(mul(smoothstep(.45, .75, gasN.mid), wall), u.dust), `dust${i}`);\n\t\t\t\tconst cB = local(rampMix(smoothstep(.05, .75, dens), smoothstep(.68, 1, dens), `cB${i}`), `cB${i}`).member(\"rgb\");\n\t\t\t\tconst dim = 1 - fi * .45;\n\t\t\t\tconst haze = mul(smoothstep(-.7, .3, gasN.density), mul(.05, wall));\n\t\t\t\treturn {\n\t\t\t\t\temit: add(add(mul(cB, mul(dens, dim)), mul(core, mul(pow(dens, 3), mul(u.glow, 1.2 * dim)))), mul(veil, mul(haze, dim))),\n\t\t\t\t\tabsorb: add(splat3(mul(dens, aGain)), mul(vec3(1.5, 1, .55), mul(dustD, mul(aGain, 2.2))))\n\t\t\t\t};\n\t\t\t});\n\t\t\tconst starFreq = local(mul(u.starScale, 34), \"starFreq\");\n\t\t\tconst twinkleAmt = local(mul(u.twinkle, .5), \"twinkleAmt\");\n\t\t\tconst farPlane = parallaxPlane(ray, {\n\t\t\t\tdepth: 1.1,\n\t\t\t\tpan: sensor,\n\t\t\t\tpanRate: 1.3,\n\t\t\t\thint: \"far\"\n\t\t\t});\n\t\t\tconst far = pointStars(local(vec2(mul(farPlane.x, starFreq), mul(farPlane.y, starFreq)), \"farP\"), {\n\t\t\t\tvariationFreq: .13,\n\t\t\t\tradius: [.004, .013],\n\t\t\t\tkeep: [.35, .75],\n\t\t\t\tbrightness: [.3, 1.2],\n\t\t\t\tshimmer: (bv) =\u003e twinkle(t, bv, {\n\t\t\t\t\tamount: twinkleAmt,\n\t\t\t\t\trate: 1.7,\n\t\t\t\t\tspread: 40\n\t\t\t\t}),\n\t\t\t\tgain: u.stars,\n\t\t\t\ttint: {\n\t\t\t\t\tfrom: [\n\t\t\t\t\t\t.72,\n\t\t\t\t\t\t.82,\n\t\t\t\t\t\t1\n\t\t\t\t\t],\n\t\t\t\t\tto: [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t.92,\n\t\t\t\t\t\t.82\n\t\t\t\t\t],\n\t\t\t\t\tgain: 1.6\n\t\t\t\t},\n\t\t\t\thint: \"starFar\"\n\t\t\t});\n\t\t\tconst nearPlane = parallaxPlane(ray, {\n\t\t\t\tdepth: .25,\n\t\t\t\tpan: sensor,\n\t\t\t\tpanRate: .55,\n\t\t\t\thint: \"near\"\n\t\t\t});\n\t\t\tconst nearFreq = mul(starFreq, .56);\n\t\t\tconst near = pointStars(local(vec2(add(mul(nearPlane.x, nearFreq), 7.3), add(mul(nearPlane.y, nearFreq), 2.9)), \"nearP\"), {\n\t\t\t\tvariationFreq: .11,\n\t\t\t\tradius: [.003, .01],\n\t\t\t\tkeep: [.45, .8],\n\t\t\t\tbrightness: [.35, 1.3],\n\t\t\t\tshimmer: (bv) =\u003e twinkle(t, bv, {\n\t\t\t\t\tamount: twinkleAmt,\n\t\t\t\t\trate: 2.3,\n\t\t\t\t\tspread: 34\n\t\t\t\t}),\n\t\t\t\tgain: u.stars,\n\t\t\t\ttint: {\n\t\t\t\t\tfrom: [\n\t\t\t\t\t\t.75,\n\t\t\t\t\t\t.85,\n\t\t\t\t\t\t1\n\t\t\t\t\t],\n\t\t\t\t\tto: [\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t.95,\n\t\t\t\t\t\t.88\n\t\t\t\t\t],\n\t\t\t\t\tgain: 1.8\n\t\t\t\t},\n\t\t\t\thint: \"starNear\"\n\t\t\t});\n\t\t\tconst lightDir = direction(u.lightAngle, \"light\");\n\t\t\tconst ndh = local(clamp(dot(n, keyLightAt(lightDir, -.7).member(\"H\")), 0, 1), \"ndh\");\n\t\t\tconst R = local(reflect(view, n), \"R\");\n\t\t\tconst envLum = local(studioSoftboxes(R.member(\"x\"), R.member(\"y\"), {\n\t\t\t\trotation: lightDir,\n\t\t\t\tkeyRadius: .2,\n\t\t\t\tdrift: 0,\n\t\t\t\tstrength: u.environment,\n\t\t\t\tskyGain: .32\n\t\t\t}), \"envLum\");\n\t\t\tconst spec = dualLobeGlint(ndh, {\n\t\t\t\tcore: [140, 1.3],\n\t\t\t\thalo: [22, .14],\n\t\t\t\tsoftness: u.highlightSoftness,\n\t\t\t\tgain: u.highlight\n\t\t\t});\n\t\t\tconst rgb = neutralTone(layers([\n\t\t\t\t{\n\t\t\t\t\tpaint: veilGasMix(float(.25)).member(\"rgb\"),\n\t\t\t\t\topacity: .06,\n\t\t\t\t\tbehind: march.transmittance\n\t\t\t\t},\n\t\t\t\tmarch.color,\n\t\t\t\t{\n\t\t\t\t\tpaint: far.rgb,\n\t\t\t\t\tbehind: march.transmittance\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tpaint: near.rgb,\n\t\t\t\t\tbehind: mix(march.transmittance, splat3(1), .35)\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tpaint: mul(vec3(.85, .92, 1.08), envLum),\n\t\t\t\t\topacity: .38\n\t\t\t\t},\n\t\t\t\tmul(vec3(1, .98, .95), spec)\n\t\t\t]));\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(rgb, silhouette(field, u.edgeSoftness)), ZERO, \"nebula\");\n\t\t}\n\t}),\n\textraFields: {\n\t\t...VOLUMETRIC_FIELD_EXTRA_FIELDS,\n\t\t...ANALYTIC_SDF_EXTRA_FIELDS,\n\t\tconvVeil: {\n\t\t\tschema: vec3f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t},\n\t\tconvGas: {\n\t\t\tschema: vec3f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t},\n\t\tconvCore: {\n\t\t\tschema: vec3f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t}\n\t},\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the nebula shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the nebula shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the nebula shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcoreColor: {\n\t\t\tdefault: \"#ffd9b0\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The hot colour the densest gas cores glow with — the embedded newborn stars\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Core Color\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tgasColor: {\n\t\t\tdefault: \"#ff5e7a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The main emission colour of the gas body — H-alpha rose by default\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Gas Color\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tveilColor: {\n\t\t\tdefault: \"#3a5bdb\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The colour of the thin outer veils and the deep-space background behind the gas\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Veil Color\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space the veil → gas → core ramps blend in\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tdensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Optical density of the gas — how strongly clouds occlude the stars and gas behind them\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Density\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tcavity: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"How hollowed-out the nebula is — 0 fills the volume with cloud banks, high carves large dark voids between them\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cavity\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tdust: {\n\t\t\tdefault: .55,\n\t\t\tdescription: \"Cold dark dust lanes threading the gas — absorb-only tendrils that redden the clouds and stars behind them\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Dust\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tgasScale: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Feature size of the gas — higher = finer, busier cloud detail\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gas Scale\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tbillow: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Turbulent folding of the clouds — 0 = smooth drifting banks, 1 = heavily churned billows\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Billow\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tglow: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Hot emission bloom of the dense cores\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Glow\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed — pans the gas field to a different region of noise space for a new cloud composition\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Nebula\"\n\t\t\t}\n\t\t},\n\t\tstars: {\n\t\t\tdefault: .07,\n\t\t\tdescription: \"Brightness of the star fields drifting at depth behind and inside the gas\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Stars\",\n\t\t\t\tgroup: \"Stars\"\n\t\t\t}\n\t\t},\n\t\tstarScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Density of the star fields — higher = smaller, busier stars\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .25,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Star Scale\",\n\t\t\t\tgroup: \"Stars\"\n\t\t\t}\n\t\t},\n\t\ttwinkle: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Intensity of the star twinkle (0 = steady stars, 1 = full shimmer)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Twinkle\",\n\t\t\t\tgroup: \"Stars\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({\n\t\t\trefraction: { description: \"How strongly the curved glass walls bend the interior seen near the edges\" },\n\t\t\tenvironment: {\n\t\t\t\tdefault: .7,\n\t\t\t\tdescription: \"Strength of the studio softboxes reflected in the polished glass surface\"\n\t\t\t},\n\t\t\thighlight: {\n\t\t\t\tdefault: 1.15,\n\t\t\t\tdescription: \"Sharp key-light glint on the glass\",\n\t\t\t\tui: { group: \"Glass\" }\n\t\t\t},\n\t\t\thighlightSoftness: { ui: { group: \"Glass\" } },\n\t\t\tlightAngle: { description: \"Direction of the key light and reflected studio, in degrees\" },\n\t\t\tedgeSoftness: true\n\t\t}),\n\t\tspeed: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Speed of the slowly churning gas and twinkling stars. 0 freezes the nebula.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar Nebula_default = componentDefinition;\nexport { componentDefinition as n, Nebula_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"NoiseDissolve\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Dissolve the content away through an organic noise pattern\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the dissolve has progressed (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Frequency of the dissolve pattern (higher = smaller blobs)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"How softly the erosion edge fades out (0 = hard-edged blobs)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Reverse the order the pattern dissolves in\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.noise(p(\"scale\"), p(\"seed\")),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"softness\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Noise Dissolve shader.\"\n});\nvar NoiseDissolve_default = componentDefinition;\nexport { componentDefinition as n, NoiseDissolve_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as detectionOverlay } from \"./overlay-D5w0585O.js\";\nimport { a as transformColor, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"ObjectTracker\",\n\trole: \"overlay\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Computer-vision style object detection overlay — draws bounding boxes and labels around detected regions of the content below, with grid, quadtree and mosaic layouts.\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tdetectionMode: {\n\t\t\tdefault: \"bright\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What counts as a detectable object.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparency\",\n\t\t\t\t\t\tvalue: \"alpha\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Brightness\",\n\t\t\t\t\t\tvalue: \"bright\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Darkness\",\n\t\t\t\t\t\tvalue: \"dark\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Red\",\n\t\t\t\t\t\tvalue: \"red\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Green\",\n\t\t\t\t\t\tvalue: \"green\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Blue\",\n\t\t\t\t\t\tvalue: \"blue\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Detect\",\n\t\t\t\tgroup: \"Detection\"\n\t\t\t}\n\t\t},\n\t\tthreshold: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Detection cut-off.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Detection\"\n\t\t\t}\n\t\t},\n\t\tlayout: {\n\t\t\tdefault: \"mosaic\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"How the canvas is partitioned into detection cells.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Grid\",\n\t\t\t\t\t\tvalue: \"grid\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Quadtree\",\n\t\t\t\t\t\tvalue: \"quadtree\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mosaic\",\n\t\t\t\t\t\tvalue: \"mosaic\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Layout\",\n\t\t\t\tgroup: \"Detection\"\n\t\t\t}\n\t\t},\n\t\tcellSize: {\n\t\t\tdefault: 400,\n\t\t\tdescription: \"Base cell size in pixels\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 24,\n\t\t\t\tmax: 800,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Base Cell Size\",\n\t\t\t\tgroup: \"Detection\"\n\t\t\t}\n\t\t},\n\t\tmaxDepth: {\n\t\t\tdefault: 2,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Maximum subdivision levels for Quadtree/Mosaic layouts (each level can quarter a cell).\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Subdivision\",\n\t\t\t\tgroup: \"Detection\",\n\t\t\t\tcondition: { layout: [\"quadtree\", \"mosaic\"] }\n\t\t\t}\n\t\t},\n\t\tboxStyle: {\n\t\t\tdefault: \"corners\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Bounding box outline style\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Full\",\n\t\t\t\t\tvalue: \"full\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Corners\",\n\t\t\t\t\tvalue: \"corners\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Box Style\",\n\t\t\t\tgroup: \"Boxes\"\n\t\t\t}\n\t\t},\n\t\tlineWidth: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Thickness of the box outline in pixels.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 12,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Line Width\",\n\t\t\t\tgroup: \"Boxes\"\n\t\t\t}\n\t\t},\n\t\tcornerRadius: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Corner radius of the box outline in pixels\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 40,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Corner Radius\",\n\t\t\t\tgroup: \"Boxes\",\n\t\t\t\tcondition: { boxStyle: \"full\" }\n\t\t\t}\n\t\t},\n\t\tstrokeColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Bounding box outline colour.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Stroke\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tfillColor: {\n\t\t\tdefault: \"#5a79911a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Bounding box fill color.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Fill\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tlabelColor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Label text color.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Label\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tlabelBackgroundColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Label pill background color.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Label Background\",\n\t\t\t\tgroup: \"Colors\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tlabelMode: {\n\t\t\tdefault: \"none\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What each label shows.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"None\",\n\t\t\t\t\t\tvalue: \"none\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Dimensions\",\n\t\t\t\t\t\tvalue: \"dimensions\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Percentage\",\n\t\t\t\t\t\tvalue: \"percentage\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Label\",\n\t\t\t\tgroup: \"Labels\"\n\t\t\t}\n\t\t},\n\t\tlabelPosition: {\n\t\t\tdefault: \"bottom-right\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Which corner of the box the label anchors to.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bottom Left\",\n\t\t\t\t\t\tvalue: \"bottom-left\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bottom Right\",\n\t\t\t\t\t\tvalue: \"bottom-right\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Top Left\",\n\t\t\t\t\t\tvalue: \"top-left\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Top Right\",\n\t\t\t\t\t\tvalue: \"top-right\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Label Position\",\n\t\t\t\tgroup: \"Labels\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tlabelRadius: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Corner radius of the label pill in pixels.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Border Radius\",\n\t\t\t\tgroup: \"Labels\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tlabelInset: {\n\t\t\tdefault: true,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Place the label inside or outside the box.\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Label Inset\",\n\t\t\t\tgroup: \"Labels\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tfontFamily: {\n\t\t\tdefault: \"Inter\",\n\t\t\tdescription: \"Google Fonts family used for label text.\",\n\t\t\tui: {\n\t\t\t\ttype: \"font-family\",\n\t\t\t\tlabel: \"Font\",\n\t\t\t\tgroup: \"Typography\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tfontWeight: {\n\t\t\tdefault: 500,\n\t\t\tdescription: \"Font weight for label text.\",\n\t\t\tui: {\n\t\t\t\ttype: \"font-weight\",\n\t\t\t\tlabel: \"Weight\",\n\t\t\t\tgroup: \"Typography\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tfontSize: {\n\t\t\tdefault: .015,\n\t\t\tdescription: \"Label text size as a fraction of canvas height.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Typography\",\n\t\t\t\tdimensional: \"canvas-height\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t},\n\t\tletterSpacing: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Letter spacing for label text, in em units.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -.1,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Letter Spacing\",\n\t\t\t\tgroup: \"Typography\",\n\t\t\t\tcondition: { labelMode: [\"dimensions\", \"percentage\"] }\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: detectionOverlay({\n\t\tdetectionMode: p(\"detectionMode\"),\n\t\tthreshold: p(\"threshold\"),\n\t\tlayout: p(\"layout\"),\n\t\tcellSize: p(\"cellSize\"),\n\t\tmaxDepth: p(\"maxDepth\"),\n\t\tboxStyle: p(\"boxStyle\"),\n\t\tlineWidth: p(\"lineWidth\"),\n\t\tcornerRadius: p(\"cornerRadius\"),\n\t\tstrokeColor: p(\"strokeColor\"),\n\t\tfillColor: p(\"fillColor\"),\n\t\tlabelColor: p(\"labelColor\"),\n\t\tlabelBackgroundColor: p(\"labelBackgroundColor\"),\n\t\tlabelMode: p(\"labelMode\"),\n\t\tlabelPosition: p(\"labelPosition\"),\n\t\tlabelInset: p(\"labelInset\"),\n\t\tlabelRadius: p(\"labelRadius\"),\n\t\tfontFamily: p(\"fontFamily\"),\n\t\tfontWeight: p(\"fontWeight\"),\n\t\tfontSize: p(\"fontSize\"),\n\t\tletterSpacing: p(\"letterSpacing\")\n\t}) }\n});\nvar ObjectTracker_default = componentDefinition;\nexport { componentDefinition as n, ObjectTracker_default as t };\n","import { at as ZERO, c as p, d as glassShellProps, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { B as studioSoftboxes, F as shapedSurface, P as schlickFresnel, R as silhouette, V as surfaceField, W as surfacePattern, X as viewRay, f as geometricNormal, g as guarded, h as grazingOf, v as insideShape } from \"./materials-4Oqvm_9m.js\";\nimport { a as foldRamp, b as stops } from \"./fields-DgADOKsP.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, H as vec4, I as splat3, O as reflect, P as smoothstep, n as add, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction, r as directionFrame } from \"./frames-BLqt7oaW.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar DEFAULT_STOPS = [\n\t{\n\t\tcolor: \"#ff2f7a\",\n\t\tposition: 0\n\t},\n\t{\n\t\tcolor: \"#2a2cff\",\n\t\tposition: .3\n\t},\n\t{\n\t\tcolor: \"#5fe6ff\",\n\t\tposition: .55\n\t},\n\t{\n\t\tcolor: \"#a6ffd8\",\n\t\tposition: .75\n\t},\n\t{\n\t\tcolor: \"#ffb3e6\",\n\t\tposition: 1\n\t}\n];\nvar ANGLE_SHIFT = .9;\nvar FLOW_CYCLE = .55;\nvar GLASS_SKY_GAIN = .25;\nconst componentDefinition = defineStd({\n\tname: \"Obsidian\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Dark tinted glass whose faces stay near-black while every surface turning away from the viewer ignites with a flowing iridescent gradient — vivid colour living only on the oblique walls and bevels\",\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the glass shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the glass shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the glass shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tbodyColor: {\n\t\t\tdefault: \"#06071a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The dark body of the glass — what the faces looking straight at you show. Keep it deep for the iridescence to pop.\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Body Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#ff2f7a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First iridescent color (two-color fallback when stops are cleared)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#5fe6ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second iridescent color (two-color fallback when stops are cleared)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: {\n\t\t\t...colorStopsPropConfig(),\n\t\t\tdefault: DEFAULT_STOPS\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tiridescence: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Strength of the colour on the oblique surfaces — 0 = plain dark glass, above 1 = saturated neon walls\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Iridescence\",\n\t\t\t\tgroup: \"Iridescence\"\n\t\t\t}\n\t\t},\n\t\trimWidth: {\n\t\t\tdefault: .55,\n\t\t\tdescription: \"How far in from edge-on the colour reaches — small keeps it to the steepest walls, large lets it creep across gently turning faces\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Rim Width\",\n\t\t\t\tgroup: \"Iridescence\"\n\t\t\t}\n\t\t},\n\t\trimSoftness: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Softness of the transition from dark face to coloured wall\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Rim Softness\",\n\t\t\t\tgroup: \"Iridescence\"\n\t\t\t}\n\t\t},\n\t\tflowAngle: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Direction the gradient flows across the surface, in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Flow Angle\",\n\t\t\t\tgroup: \"Iridescence\"\n\t\t\t}\n\t\t},\n\t\tflowScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How many times the palette cycles across the shape — higher = tighter colour bands\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Flow Scale\",\n\t\t\t\tgroup: \"Iridescence\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Speed the gradient flows along the walls. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Iridescence\"\n\t\t\t}\n\t\t},\n\t\tgloss: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Strength of the studio softboxes reflected in the glass — the pale highlights riding the top edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gloss\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ envRotation: { ui: { group: \"Surface\" } } }),\n\t\tbevelWidth: {\n\t\t\tdefault: .08,\n\t\t\tdescription: \"Width of the edge bevel on flat shapes — the band that turns away from the viewer and catches the colour\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .005,\n\t\t\t\tmax: .3,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Bevel Width\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tbevelShape: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Bevel profile — 0 = one smooth round fillet, 1 = machined: a steep outer fillet, a chamfer plateau and an inner knee\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bevel Profile\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\t...glassShellProps({ edgeSoftness: { ui: { group: \"Surface\" } } }),\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst n = geometricNormal(frame, field, {\n\t\t\t\tbevelWidth: u.bevelWidth,\n\t\t\t\tbevelShape: u.bevelShape\n\t\t\t});\n\t\t\tconst view = viewRay(params, field);\n\t\t\tconst grazing = grazingOf(n, view);\n\t\t\tconst rimEdge = local(sub(1, u.rimWidth), \"rimEdge\");\n\t\t\tconst rim = local(smoothstep(sub(rimEdge, u.rimSoftness), add(rimEdge, u.rimSoftness), grazing), \"rim\");\n\t\t\tconst along = directionFrame(u.flowAngle, \"flow\").coordsOf(surfacePattern(frame, field)).along;\n\t\t\tconst phase = add(add(mul(along, mul(u.flowScale, 1 / FLOW_CYCLE)), mul(grazing, ANGLE_SHIFT)), mul(t, .2));\n\t\t\tconst iri = local(stops(p(\"colorSpace\"))(foldRamp(phase), params).member(\"rgb\"), \"iri\");\n\t\t\tconst R = local(reflect(view, n), \"R\");\n\t\t\tconst shine = local(mul(studioSoftboxes(R.member(\"x\"), R.member(\"y\"), {\n\t\t\t\trotation: direction(u.envRotation, \"env\"),\n\t\t\t\tkeyRadius: .3,\n\t\t\t\tdrift: 0,\n\t\t\t\tstrength: u.gloss,\n\t\t\t\tskyGain: GLASS_SKY_GAIN\n\t\t\t}), schlickFresnel(grazing, {\n\t\t\t\tr0: .04,\n\t\t\t\tgain: .96,\n\t\t\t\tpower: 4\n\t\t\t})), \"shine\");\n\t\t\tconst rgb = add(mix(u.bodyColor.member(\"rgb\"), iri, splat3(mul(rim, u.iridescence))), mul(mix(iri, splat3(1), splat3(.6)), splat3(mul(shine, .5))));\n\t\t\treturn guarded(insideShape(field.sdf, field.pxH), vec4(rgb, silhouette(field, u.edgeSoftness)), ZERO, \"obsidian\");\n\t\t}\n\t})\n});\nvar Obsidian_default = componentDefinition;\nexport { componentDefinition as n, Obsidian_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { D as peelFrame, E as peelCompose, N as revealShadow, T as overhangShadow, d as curlShading, f as curlSheen, v as gatherStack } from \"./blurs-d4B9aUyx.js\";\nvar peel = peelFrame({\n\tcorner: p(\"corner\"),\n\tamount: p(\"amount\"),\n\tradius: p(\"radius\")\n});\nconst componentDefinition = defineStd({\n\tname: \"PagePeel\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tcategory: \"Transitions\",\n\tdescription: \"Curl the content up from a corner like a peeling page\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcorner: {\n\t\t\tdefault: \"bottom-right\",\n\t\t\tdescription: \"Which corner the page peels from\",\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Top Left\",\n\t\t\t\t\t\tvalue: \"top-left\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Top Right\",\n\t\t\t\t\t\tvalue: \"top-right\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bottom Left\",\n\t\t\t\t\t\tvalue: \"bottom-left\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bottom Right\",\n\t\t\t\t\t\tvalue: \"bottom-right\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Corner\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tamount: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"How far the peel has progressed across the page (0 = flat, 1 = fully peeled)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Amount\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Tightness of the curl (fraction of the page diagonal)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Curl Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tshading: {\n\t\t\tdefault: .55,\n\t\t\tdescription: \"How much the underside of the curl is shaded for depth\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shading\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\thighlight: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Strength of the specular sheen running along the curl\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Highlight\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\thighlightSoftness: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Width of the specular highlight band (low = tight gloss, high = broad satin)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Highlight Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tshadow: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Strength of the contact shadow the curl casts on the page\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shadow\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(peelCompose(peel, {\n\t\tshade: curlShading(peel, { shading: p(\"shading\") }),\n\t\tsheen: curlSheen(peel, {\n\t\t\thighlight: p(\"highlight\"),\n\t\t\tsoftness: p(\"highlightSoftness\")\n\t\t}),\n\t\toverhang: overhangShadow(peel, {\n\t\t\tamount: p(\"amount\"),\n\t\t\tshadow: p(\"shadow\")\n\t\t}),\n\t\treveal: revealShadow(peel, {\n\t\t\tamount: p(\"amount\"),\n\t\t\tshadow: p(\"shadow\")\n\t\t})\n\t}), [])\n});\nvar PagePeel_default = componentDefinition;\nexport { componentDefinition as n, PagePeel_default as t };\n","import { Ot as unpremultiplyAlpha, at as ZERO, ct as call, mt as vec4, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as paperSurface } from \"./noisePaints-CfHcXL02.js\";\nconst componentDefinition = defineStd({\n\tname: \"Paper\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Applies realistic paper grain and surface roughness to child content\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\troughness: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Surface roughness — higher values create more pronounced brightness variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Roughness\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t},\n\t\tgrainScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the paper grain — lower = coarser, higher = finer\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Grain Scale\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t},\n\t\tdisplacement: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Surface micro-roughness — shifts pixels at grain scale like real paper fiber bumps\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Displacement\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { childNode, ctx, uniforms, convertToTexture } = params;\n\t\tif (!childNode) {\n\t\t\tconsole.error(\"You must pass a child component into the Paper shader.\");\n\t\t\treturn ZERO;\n\t\t}\n\t\tconst texture = convertToTexture(childNode);\n\t\tconst surface = call(paperSurface, \"paperSurface\", [\n\t\t\tctx.uv,\n\t\t\tctx.aspect,\n\t\t\tuniforms.grainScale,\n\t\t\tuniforms.seed,\n\t\t\tuniforms.displacement,\n\t\t\tuniforms.roughness\n\t\t]);\n\t\tconst straight = call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [texture.sample(surface.member(\"xy\"))]);\n\t\treturn vec4(straight.member(\"rgb\").mul(surface.member(\"z\")), straight.member(\"a\"));\n\t} }\n});\nvar Paper_default = componentDefinition;\nexport { componentDefinition as n, Paper_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { l as parallelogram } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Parallelogram\",\n\tdescription: \"Parallelogram with adjustable width, height and skew\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e parallelogram(x, y, u(\"width\"), u(\"height\"), u(\"skew\")),\n\t\tcolorDescription: \"Fill color of the parallelogram\",\n\t\tcenterDescription: \"Center position of the parallelogram\",\n\t\tbounds: { size: {\n\t\t\twidth: \"width\",\n\t\t\theight: \"height\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\twidth: {\n\t\t\t\tdefault: .32,\n\t\t\t\tdescription: \"Half-width of the parallelogram\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .02,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Width\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdefault: .22,\n\t\t\t\tdescription: \"Half-height of the parallelogram\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .02,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Height\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tskew: {\n\t\t\t\tdefault: .15,\n\t\t\t\tdescription: \"Horizontal skew of the top edge\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: -.4,\n\t\t\t\t\tmax: .4,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Skew\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Parallelogram_default = componentDefinition;\nexport { componentDefinition as n, Parallelogram_default as t };\n","import { Br as struct, Gn as typegpu_default, Ir as atomic, Lr as texture2d, Mr as vec4f, Pn as DEG_TO_RAD, Rr as textureStorage2d, Yr as u32, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { _ as integrator, g as force, n as renderAgents, o as expDecay, p as channel, r as cameraRowsYDown, s as fitIsoGrid, t as agentSim } from \"./agents-CBSp2UK_.js\";\nimport { G as makeCpuValueGetter, K as readAgentFrame, q as resolveRenderRes } from \"./porters-OTkIMOyl.js\";\nimport { b as pointShapeOptions } from \"./agents-DXoEcto0.js\";\nvar GRID_DIM_MAX = 256;\nvar MAX_PARTICLES = GRID_DIM_MAX * GRID_DIM_MAX;\nvar COUNT_MAX = 4e4;\nvar COUNT_MAX_MOBILE = 12e3;\nvar OUT_MAX = resolveRenderRes({\n\tdesktop: 1024,\n\tmobile: 768\n});\nvar OUT_CELLS = OUT_MAX * OUT_MAX;\nvar SPLAT_R = 8;\nvar AA_W = .75;\nvar MIN_ALPHA = .002;\nvar STATE_FORMAT = \"rgba16float\";\nvar FP = 2048;\nvar WOBBLE_FREQ = 1.15;\nvar ALPHA_K = 2.6;\nvar PERSP_K = 1.1;\nvar STIFF = 26;\nvar DRAG = 4.2;\nvar MAX_SPEED = 4;\nvar CURSOR_FORCE_K = 10;\nvar CURSOR_ZFORCE_K = 4;\nvar SimParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\trowX: vec4f,\n\trowY: vec4f,\n\trowZ: vec4f,\n\tdt: f32,\n\ttime: f32,\n\tsnap: f32,\n\tgridW: f32,\n\tgridH: f32,\n\toutW: f32,\n\toutH: f32,\n\tdepth: f32,\n\tdragMul: f32,\n\twobbleAmp: f32,\n\tdepthShading: f32,\n\tspacing: f32,\n\tparticleSize: f32,\n\taspect: f32,\n\tzoom: f32,\n\ttransX: f32,\n\ttransY: f32,\n\tpointerX: f32,\n\tpointerY: f32,\n\tcursorForce: f32,\n\tcursorZForce: f32,\n\tcursorRadSq: f32\n}), \"SimParams\");\nvar fieldLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tpos: {\n\t\tstorage: arrayOf(vec4f, MAX_PARTICLES),\n\t\taccess: \"mutable\"\n\t},\n\tvel: {\n\t\tstorage: arrayOf(vec4f, MAX_PARTICLES),\n\t\taccess: \"mutable\"\n\t},\n\tcol: {\n\t\tstorage: arrayOf(vec4f, MAX_PARTICLES),\n\t\taccess: \"mutable\"\n\t},\n\taccumR: {\n\t\tstorage: arrayOf(atomic(u32), OUT_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\taccumG: {\n\t\tstorage: arrayOf(atomic(u32), OUT_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\taccumB: {\n\t\tstorage: arrayOf(atomic(u32), OUT_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\taccumW: {\n\t\tstorage: arrayOf(atomic(u32), OUT_CELLS),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: SimParams },\n\tsrc: { texture: texture2d(f32) },\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"fieldLayout\");\nvar DEPTH_SOURCE_MODES = {\n\tluminance: 0,\n\tluminanceInverted: 1,\n\tred: 2,\n\tgreen: 3,\n\tblue: 4,\n\tsaturation: 5,\n\talpha: 6\n};\nfunction makeParticleFieldSimKernel(channelMode) {\n\treturn integrator.relief(fieldLayout, {\n\t\tchannel: channel.byMode[channelMode] ?? channel.luminance,\n\t\tcursor: force.cursorInView(fieldLayout, { perspK: PERSP_K }),\n\t\tstiffness: STIFF,\n\t\tmaxSpeed: MAX_SPEED,\n\t\tminAlpha: MIN_ALPHA,\n\t\tname: \"particleFieldSim\"\n\t});\n}\nfunction particleFieldRender(shape, out) {\n\treturn renderAgents.relief(fieldLayout, {\n\t\tshape,\n\t\tsplatRCap: SPLAT_R,\n\t\taaW: AA_W,\n\t\tminAlpha: MIN_ALPHA,\n\t\tfp: FP,\n\t\twobbleFreq: WOBBLE_FREQ,\n\t\tperspK: PERSP_K,\n\t\tout,\n\t\tweightedColor: { alphaK: ALPHA_K },\n\t\tnames: {\n\t\t\tsplat: \"particleFieldSplat\",\n\t\t\tresolve: \"particleFieldResolve\"\n\t\t}\n\t});\n}\nconst makeParticleFieldSplatKernel = (shape) =\u003e particleFieldRender(shape, [OUT_MAX, OUT_MAX]).splat.kernel;\nconst particleFieldSplatKernel = makeParticleFieldSplatKernel(\"dot\");\nconst particleFieldResolveKernel = particleFieldRender(\"dot\", [OUT_MAX, OUT_MAX]).resolve.kernel;\nconst componentDefinition = defineStd({\n\tname: \"ParticleField\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Explodes the child content into a breathing 3D field of particles — bright areas float toward you and dark areas recede, the whole relief can be orbited with the camera rotations, and the cursor physically throws particles that spring back home\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tusesPointer: true,\n\tprops: {\n\t\tcount: {\n\t\t\tdefault: 15e3,\n\t\t\tdescription: \"Number of particles — how finely the child is sampled into the field\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1e3,\n\t\t\t\tmax: COUNT_MAX,\n\t\t\t\tstep: 500,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tdepthSource: {\n\t\t\tdefault: \"luminance\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Which channel of the child drives each particle's depth toward or away from the camera\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"luminance\",\n\t\t\t\t\t\tlabel: \"Luminance\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"luminanceInverted\",\n\t\t\t\t\t\tlabel: \"Luminance (Inverted)\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"red\",\n\t\t\t\t\t\tlabel: \"Red\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"green\",\n\t\t\t\t\t\tlabel: \"Green\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"blue\",\n\t\t\t\t\t\tlabel: \"Blue\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"saturation\",\n\t\t\t\t\t\tlabel: \"Saturation\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"alpha\",\n\t\t\t\t\t\tlabel: \"Alpha\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Depth Source\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tdepth: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Depth of the relief — how far bright and dark areas rise toward and sink away from the camera\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Depth\",\n\t\t\t\tgroup: \"Field\"\n\t\t\t}\n\t\t},\n\t\tparticleShape: {\n\t\t\tdefault: \"dot\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What each particle is drawn as — a crisp dot or square, or a soft glow puff\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: pointShapeOptions,\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Look\"\n\t\t\t}\n\t\t},\n\t\tparticleSize: {\n\t\t\tdefault: .75,\n\t\t\tdescription: \"Size of each particle relative to the grid spacing\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Particle Size\",\n\t\t\t\tgroup: \"Look\"\n\t\t\t}\n\t\t},\n\t\tdepthShading: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How much far particles dim into the distance — the main cue that sells the 3D relief\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Depth Shading\",\n\t\t\t\tgroup: \"Look\"\n\t\t\t}\n\t\t},\n\t\twobble: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Gentle idle drift that keeps the field breathing even on a still image\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Wobble\",\n\t\t\t\tgroup: \"Motion\"\n\t\t\t}\n\t\t},\n\t\tzoom: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Camera distance — dolly the whole field closer or further away\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 2.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Zoom\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\trotationX: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Camera orbit around the horizontal axis — tilt the relief toward or away from you\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotate X\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\trotationY: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Camera orbit around the vertical axis — view the particle extrusion from the side\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotate Y\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\trotationZ: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Camera roll around the view axis\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotate Z\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\toffsetX: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Shift the whole field horizontally across the frame (in screen widths)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Offset X\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\toffsetY: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Shift the whole field vertically across the frame (in screen heights) — tilt it flat, then sink it toward the bottom like a ground plane\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Offset Y\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\tcursorMode: {\n\t\t\tdefault: \"push\",\n\t\t\tdescription: \"How the cursor disturbs the field — push throws particles away and toward you, pull gathers them in\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"none\",\n\t\t\t\t\t\tlabel: \"None\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"push\",\n\t\t\t\t\t\tlabel: \"Push\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: \"pull\",\n\t\t\t\t\t\tlabel: \"Pull\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Cursor Mode\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcursorStrength: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"Strength of the cursor force — how hard particles get thrown before springing back\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Strength\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcursorRadius: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Reach of the cursor field, in screen units\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .05,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Radius\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t}\n\t},\n\t...agentSim({\n\t\tlayout: fieldLayout,\n\t\tparams: SimParams,\n\t\tmaxAgents: MAX_PARTICLES,\n\t\tcountCap: {\n\t\t\tdesktop: COUNT_MAX,\n\t\t\tmobile: COUNT_MAX_MOBILE\n\t\t},\n\t\texternalKeys: [\"src\"],\n\t\tchildTexture: { externalKey: \"src\" },\n\t\toutput: {\n\t\t\tkey: \"outTex\",\n\t\t\tname: \"field\",\n\t\t\tsize: [OUT_MAX, OUT_MAX],\n\t\t\tformat: STATE_FORMAT\n\t\t},\n\t\tbake: (params) =\u003e {\n\t\t\tconst { getCpuValue, dimensions } = params;\n\t\t\tconst aspect0 = dimensions.height \u003e 0 ? dimensions.width / dimensions.height : 1;\n\t\t\tlet outW = OUT_MAX;\n\t\t\tlet outH = OUT_MAX;\n\t\t\tif (aspect0 \u003e= 1) outH = Math.max(Math.round(OUT_MAX / aspect0), 1);\n\t\t\telse outW = Math.max(Math.round(OUT_MAX * aspect0), 1);\n\t\t\tconst channelMode = DEPTH_SOURCE_MODES[getCpuValue(\"depthSource\") || \"luminance\"] ?? 0;\n\t\t\tconst render = particleFieldRender(getCpuValue(\"particleShape\") || \"dot\", [outW, outH]);\n\t\t\treturn {\n\t\t\t\tpipelines: {\n\t\t\t\t\tsim: {\n\t\t\t\t\t\tkernel: makeParticleFieldSimKernel(channelMode),\n\t\t\t\t\t\tthreads: \"grid\"\n\t\t\t\t\t},\n\t\t\t\t\tsplat: render.splat,\n\t\t\t\t\tresolve: render.resolve\n\t\t\t\t},\n\t\t\t\tprogram: [\n\t\t\t\t\t\"sim\",\n\t\t\t\t\t\"splat\",\n\t\t\t\t\t\"resolve\"\n\t\t\t\t],\n\t\t\t\toutputSize: [outW, outH],\n\t\t\t\tsetup: {\n\t\t\t\t\toutW,\n\t\t\t\t\toutH,\n\t\t\t\t\taspect0\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\tframe: (sys, { getCpuValue }, setupRaw) =\u003e {\n\t\t\tconst { outW, outH, aspect0 } = setupRaw;\n\t\t\tconst g = makeCpuValueGetter(getCpuValue);\n\t\t\tlet localTime = 0;\n\t\t\tlet frameIdx = 0;\n\t\t\tconst DEG_TO_RAD$1 = DEG_TO_RAD;\n\t\t\treturn (frameParams) =\u003e {\n\t\t\t\tconst frame = readAgentFrame(frameParams, aspect0);\n\t\t\t\tconst dt = frame.dt;\n\t\t\t\tlocalTime += dt;\n\t\t\t\tconst aspect = frame.aspect;\n\t\t\t\tconst count = sys.resolveCount(g(\"count\", 15e3), 500);\n\t\t\t\tconst { w: GW, h: GH } = fitIsoGrid(count, aspect, 8, GRID_DIM_MAX);\n\t\t\t\tconst cursorMode = getCpuValue(\"cursorMode\") || \"push\";\n\t\t\t\tconst cursorSign = cursorMode === \"pull\" ? -1 : 1;\n\t\t\t\tconst cursorStrength = cursorMode === \"none\" ? 0 : g(\"cursorStrength\", .5);\n\t\t\t\tconst cursorRadius = g(\"cursorRadius\", .22);\n\t\t\t\tconst rows = cameraRowsYDown(g(\"rotationX\", 0) * DEG_TO_RAD$1, g(\"rotationY\", 0) * DEG_TO_RAD$1, g(\"rotationZ\", 0) * DEG_TO_RAD$1);\n\t\t\t\tsys.writeParams({\n\t\t\t\t\trowX: vec4f(rows.rowX[0], rows.rowX[1], rows.rowX[2], 0),\n\t\t\t\t\trowY: vec4f(rows.rowY[0], rows.rowY[1], rows.rowY[2], 0),\n\t\t\t\t\trowZ: vec4f(rows.rowZ[0], rows.rowZ[1], rows.rowZ[2], 0),\n\t\t\t\t\tdt,\n\t\t\t\t\ttime: localTime,\n\t\t\t\t\tsnap: frameIdx === 0 ? 1 : 0,\n\t\t\t\t\tgridW: GW,\n\t\t\t\t\tgridH: GH,\n\t\t\t\t\toutW,\n\t\t\t\t\toutH,\n\t\t\t\t\tdepth: g(\"depth\", .7),\n\t\t\t\t\tdragMul: expDecay(DRAG, dt),\n\t\t\t\t\twobbleAmp: g(\"wobble\", .35),\n\t\t\t\t\tdepthShading: Math.min(Math.max(g(\"depthShading\", .6), 0), 1),\n\t\t\t\t\tspacing: Math.min(outW / GW, outH / GH),\n\t\t\t\t\tparticleSize: g(\"particleSize\", 1.3),\n\t\t\t\t\taspect,\n\t\t\t\t\tzoom: Math.min(Math.max(g(\"zoom\", 1), .05), 10),\n\t\t\t\t\ttransX: g(\"offsetX\", 0),\n\t\t\t\t\ttransY: g(\"offsetY\", 0),\n\t\t\t\t\tpointerX: frame.pointerX,\n\t\t\t\t\tpointerY: frame.pointerY,\n\t\t\t\t\tcursorForce: cursorSign * cursorStrength * CURSOR_FORCE_K,\n\t\t\t\t\tcursorZForce: cursorSign * cursorStrength * CURSOR_ZFORCE_K,\n\t\t\t\t\tcursorRadSq: cursorRadius * cursorRadius\n\t\t\t\t});\n\t\t\t\tframeIdx++;\n\t\t\t\treturn sys.frame({\n\t\t\t\t\tcount,\n\t\t\t\t\tgrid: [GW, GH]\n\t\t\t\t});\n\t\t\t};\n\t\t},\n\t\tfragment: {\n\t\t\toutput: \"field\",\n\t\t\tfallback: \"child\"\n\t\t}\n\t})\n});\nvar ParticleField_default = componentDefinition;\nexport { particleFieldResolveKernel as a, makeParticleFieldSplatKernel as i, componentDefinition as n, particleFieldSplatKernel as o, makeParticleFieldSimKernel as r, ParticleField_default as t };\n","import { Br as struct, G as pathStampRibbon, Gn as typegpu_default, H as createIdleGate, Ir as atomic, Lr as texture2d, Mr as vec4f, Rr as textureStorage2d, U as createPointerVelocityTracker, Y as createStateBuffer, Yr as u32, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { _ as integrator, n as renderAgents, t as agentSim } from \"./agents-CBSp2UK_.js\";\nimport { F as createFluidKernelPass, I as createStableFluidsPasses, M as buildStableFluidsKernels, P as buildVelocityImpulseKernel, V as SIZE_REF_RES, q as resolveRenderRes } from \"./porters-OTkIMOyl.js\";\nimport { g as makeUniformScatterInit, v as orientedShapeOptions } from \"./agents-DXoEcto0.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { a as recompileWhen } from \"./slots-BqIef2iV.js\";\nvar N = 256;\nvar FLUID_COUNT = N * N;\nvar JACOBI_ITERS = resolveRenderRes({\n\tdesktop: 10,\n\tmobile: 6\n});\nvar VEL_FORMAT = \"rgba16float\";\nvar RES = resolveRenderRes({\n\tdesktop: 1024,\n\tmobile: 512\n});\nvar STATE_FORMAT = \"rgba16float\";\nvar MAX_PARTICLES = 16384;\nvar COUNT_MAX_MOBILE = 6e3;\nvar SPLAT_R = 14;\nvar IMPULSE_K = .16;\nvar MAX_STEPS = 16;\nvar FORCE_RADIUS_GRID = .16 * N;\nvar VEL_FADE_MAX = 4;\nvar VEL_FADE_MIN = .05;\nvar AMBIENT_K = 26;\nvar AMBIENT_FREQ = 2.4;\nvar AMBIENT_DRIFT = .09;\nvar INERTIA_RATE = 6;\nvar SPEED_NORM = .35;\nvar HOME_RATE = 1.8;\nvar WARMUP_FRAMES = 3;\nvar FlowParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tdt: f32,\n\tcurlStrength: f32,\n\tvelFade: f32,\n\tambient: f32,\n\tambientTime: f32,\n\tambientFreq: f32\n}), \"FlowParams\");\nvar SplatParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tposX: f32,\n\tposY: f32,\n\tvelX: f32,\n\tvelY: f32,\n\tradius: f32\n}), \"SplatParams\");\nvar SimParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcolA: vec4f,\n\tcolB: vec4f,\n\tdt: f32,\n\taspect: f32,\n\ttrails: f32,\n\tbodyR: f32,\n\tspeedNorm: f32,\n\tadvect: f32\n}), \"SimParams\");\nvar fluidLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tvelA: {\n\t\tstorage: arrayOf(vec4f, FLUID_COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tvelB: {\n\t\tstorage: arrayOf(vec4f, FLUID_COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tpressure: {\n\t\tstorage: arrayOf(f32, FLUID_COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdivergence: {\n\t\tstorage: arrayOf(f32, FLUID_COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: FlowParams },\n\tsparams: { uniform: SplatParams },\n\tvelOutTex: { storageTexture: textureStorage2d(VEL_FORMAT, \"write-only\") }\n}), \"fluidLayout\");\nvar pfLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tagents: {\n\t\tstorage: arrayOf(vec4f, MAX_PARTICLES),\n\t\taccess: \"mutable\"\n\t},\n\taccumE: {\n\t\tstorage: arrayOf(atomic(u32), RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\taccumS: {\n\t\tstorage: arrayOf(atomic(u32), RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\ttrailBuf: {\n\t\tstorage: arrayOf(vec4f, RES * RES),\n\t\taccess: \"mutable\"\n\t},\n\tvelTex: { texture: texture2d(f32) },\n\tparams: { uniform: SimParams },\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"pfLayout\");\nconst particleFlowForceKernel = buildVelocityImpulseKernel(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"particleFlow\"\n});\nvar solverKernels = buildStableFluidsKernels(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"particleFlow\",\n\tboundary: \"clamped\",\n\tdye: \"none\",\n\tpublishVelocityTexture: true,\n\tambientWind: { gain: AMBIENT_K }\n});\nconst { curl: particleFlowCurlKernel, divergence: particleFlowDivergenceKernel, jacobi: particleFlowJacobiKernel, gradSubtract: particleFlowGradSubtractKernel, advectVel: particleFlowAdvectVelKernel, copyVel: particleFlowCopyVelKernel } = solverKernels;\nconst particleFlowVorticityKernel = solverKernels.vorticity;\nconst particleFlowInitKernel = makeUniformScatterInit(pfLayout, \"particleFlowInit\");\nconst particleFlowIntegrateKernel = integrator.advect2d(pfLayout, {\n\tgridN: N,\n\tinertiaRate: INERTIA_RATE,\n\thomeRate: HOME_RATE,\n\tname: \"particleFlowIntegrate\"\n});\nfunction particleFlowRender(shape, colorSpaceMode, trailsOn) {\n\treturn renderAgents.orientedWorld(pfLayout, {\n\t\tshape,\n\t\tres: RES,\n\t\tsplatRCap: SPLAT_R,\n\t\theading: \"velocity\",\n\t\tagitation: \"speed\",\n\t\tcomet: true,\n\t\tramp: {\n\t\t\tcolorSpace: colorSpaceMode,\n\t\t\ttrails: { baked: trailsOn }\n\t\t},\n\t\tnames: {\n\t\t\tsplat: \"particleFlowSplat\",\n\t\t\tresolve: \"particleFlowResolve\"\n\t\t}\n\t});\n}\nconst makeParticleFlowSplatKernel = (shape) =\u003e particleFlowRender(shape, 2, false).splat.kernel;\nconst makeParticleFlowResolveKernel = (mode, trailsOn) =\u003e particleFlowRender(\"streak\", mode, trailsOn).resolve.kernel;\nconst particleFlowSplatKernel = makeParticleFlowSplatKernel(\"streak\");\nconst particleFlowResolveKernel = makeParticleFlowResolveKernel(2, false);\nconst componentDefinition = defineStd({\n\tname: \"ParticleFlow\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Thousands of drifting dust particles carried by a real incompressible fluid field the cursor stirs — drag to plow a wake and the particles ride the eddies and vortices it leaves behind, while a gentle ambient breeze keeps the whole scene breathing on its own\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tusesPointer: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#8ec5ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of particles drifting slowly with the flow\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Rest Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffd98e\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color particles flash toward as they speed up in the fast jets and wakes\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Excited Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for the rest→excited color ramp\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: \"streak\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What each particle is drawn as — a streak or arrow that stretches along the flow, a plain dot, a square, or a soft glowing comet\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: orientedShapeOptions,\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 6e3,\n\t\t\tdescription: \"Number of drifting particles\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1e3,\n\t\t\t\tmax: 16e3,\n\t\t\t\tstep: 500,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tsize: {\n\t\t\tdefault: 1.2,\n\t\t\tdescription: \"Size of each particle\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\ttrails: {\n\t\t\tdefault: 0,\n\t\t\trecompile: recompileWhen((previousValue, newValue) =\u003e previousValue \u003e 0 !== newValue \u003e 0),\n\t\t\tdescription: \"How long each particle's motion trail persists — 0 draws crisp dust, 1 leaves long flowing ribbons\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Trails\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How strongly the fluid carries the particles — higher makes the dust ride the flow faster\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Flow Speed\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tforce: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How hard the cursor's motion pushes the fluid — higher plows faster, more violent wakes and jets\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Cursor Force\",\n\t\t\t\tgroup: \"Dynamics\"\n\t\t\t}\n\t\t},\n\t\tswirl: {\n\t\t\tdefault: 25,\n\t\t\tdescription: \"Vorticity confinement — swirl energy that spins the flow into persistent eddies and vortices the dust orbits\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 60,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Swirl\",\n\t\t\t\tgroup: \"Dynamics\"\n\t\t\t}\n\t\t},\n\t\tmomentum: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How long the fluid keeps flowing after you stop dragging — high momentum lets the eddies carry the dust on and on\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Momentum\",\n\t\t\t\tgroup: \"Dynamics\"\n\t\t\t}\n\t\t},\n\t\tambient: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"A gentle, ever-evolving breeze that keeps the dust drifting even without the cursor — set to 0 for a field that only moves when you stir it\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ambient\",\n\t\t\t\tgroup: \"Dynamics\"\n\t\t\t}\n\t\t}\n\t},\n\t...agentSim({\n\t\tlayout: pfLayout,\n\t\tparams: SimParams,\n\t\tmaxAgents: MAX_PARTICLES,\n\t\tcountCap: {\n\t\t\tdesktop: MAX_PARTICLES,\n\t\t\tmobile: COUNT_MAX_MOBILE\n\t\t},\n\t\toutput: {\n\t\t\tkey: \"outTex\",\n\t\t\tname: \"flowTexture\",\n\t\t\tsize: [RES, RES],\n\t\t\tformat: STATE_FORMAT\n\t\t},\n\t\texternalKeys: [\"velTex\"],\n\t\tbake: (params) =\u003e {\n\t\t\tconst { gpu, getCpuValue, onCleanup } = params;\n\t\t\tconst root = gpu.root;\n\t\t\tconst velTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\t\t\tsize: [N, N],\n\t\t\t\tformat: VEL_FORMAT\n\t\t\t}).$usage(\"storage\", \"sampled\"), \"velTex\");\n\t\t\tonCleanup(() =\u003e velTex.destroy());\n\t\t\tconst paramsU = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(FlowParams), \"paramsU\");\n\t\t\tconst splatU = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createUniform(SplatParams), \"splatU\");\n\t\t\tconst fluidBg = root.createBindGroup(fluidLayout, {\n\t\t\t\tvelA: createStateBuffer(root, vec4f, FLUID_COUNT),\n\t\t\t\tvelB: createStateBuffer(root, vec4f, FLUID_COUNT),\n\t\t\t\tpressure: createStateBuffer(root, f32, FLUID_COUNT),\n\t\t\t\tdivergence: createStateBuffer(root, f32, FLUID_COUNT),\n\t\t\t\tparams: paramsU.buffer,\n\t\t\t\tsparams: splatU.buffer,\n\t\t\t\tvelOutTex: velTex\n\t\t\t});\n\t\t\tconst force = createFluidKernelPass(root, particleFlowForceKernel, {\n\t\t\t\tn: N,\n\t\t\t\tbindGroup: fluidBg\n\t\t\t});\n\t\t\tconst vorticity = createFluidKernelPass(root, particleFlowVorticityKernel, {\n\t\t\t\tn: N,\n\t\t\t\tbindGroup: fluidBg\n\t\t\t});\n\t\t\tconst solver = createStableFluidsPasses(root, solverKernels, {\n\t\t\t\tn: N,\n\t\t\t\tbindGroup: fluidBg\n\t\t\t});\n\t\t\tconst trailsCpu = getCpuValue(\"trails\");\n\t\t\tconst render = particleFlowRender(getCpuValue(\"shape\") || \"streak\", getCpuValue(\"colorSpace\") ?? 2, typeof trailsCpu === \"number\" \u0026\u0026 trailsCpu \u003e 0);\n\t\t\treturn {\n\t\t\t\tpipelines: {\n\t\t\t\t\tinit: {\n\t\t\t\t\t\tkernel: particleFlowInitKernel,\n\t\t\t\t\t\tthreads: \"max\"\n\t\t\t\t\t},\n\t\t\t\t\tintegrate: {\n\t\t\t\t\t\tkernel: particleFlowIntegrateKernel,\n\t\t\t\t\t\tthreads: \"agents\"\n\t\t\t\t\t},\n\t\t\t\t\tsplat: render.splat,\n\t\t\t\t\tresolve: render.resolve\n\t\t\t\t},\n\t\t\t\tprogram: [\n\t\t\t\t\t\"integrate\",\n\t\t\t\t\t\"splat\",\n\t\t\t\t\t\"resolve\"\n\t\t\t\t],\n\t\t\t\tbindNow: { velTex },\n\t\t\t\tsetup: {\n\t\t\t\t\tforce,\n\t\t\t\t\tvorticity,\n\t\t\t\t\tsolver,\n\t\t\t\t\tparamsU,\n\t\t\t\t\tsplatU\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\tframe: (sys, { getCpuValue }, setupRaw) =\u003e {\n\t\t\tconst { force, vorticity, solver, paramsU, splatU } = setupRaw;\n\t\t\tlet lastTime = Date.now();\n\t\t\tlet ambientTime = 0;\n\t\t\tlet initialized = false;\n\t\t\tconst pointer = createPointerVelocityTracker();\n\t\t\tconst idle = createIdleGate({ warmupFrames: WARMUP_FRAMES + 1 });\n\t\t\tconst num = (key, fallback) =\u003e {\n\t\t\t\tconst v = getCpuValue(key);\n\t\t\t\treturn typeof v === \"number\" ? v : fallback;\n\t\t\t};\n\t\t\treturn (frameParams) =\u003e {\n\t\t\t\tconst fp = frameParams;\n\t\t\t\tconst now = Date.now();\n\t\t\t\tconst dt = Math.min(fp.deltaTime ?? (now - lastTime) / 1e3, .033);\n\t\t\t\tlastTime = now;\n\t\t\t\tif (dt \u003c .001) return null;\n\t\t\t\tconst h = fp.dimensions?.height ?? 0;\n\t\t\t\tconst aspect = h \u003e 0 ? (fp.dimensions?.width ?? 0) / h : 16 / 9;\n\t\t\t\tconst domainX = Math.max(aspect, .01);\n\t\t\t\tconst forceVal = num(\"force\", 1);\n\t\t\t\tconst swirl = num(\"swirl\", 25);\n\t\t\t\tconst ambient = Math.min(Math.max(num(\"ambient\", .15), 0), 1);\n\t\t\t\tconst momentum = Math.min(Math.max(num(\"momentum\", .6), 0), 1);\n\t\t\t\tconst advect = num(\"speed\", 1);\n\t\t\t\tconst count = sys.resolveCount(num(\"count\", 6e3), 100);\n\t\t\t\tconst bodyR = Math.min(Math.max(num(\"size\", 1.2), .3), 3) * 1.3 / SIZE_REF_RES;\n\t\t\t\tconst ptr = pointer.update(fp.pointer, dt);\n\t\t\t\tconst active = ptr.moving || ambient \u003e .001;\n\t\t\t\tif (active) idle.markActive();\n\t\t\t\tambientTime += dt * AMBIENT_DRIFT;\n\t\t\t\tif (initialized \u0026\u0026 idle.shouldSkip(2 + momentum * 13, active)) return null;\n\t\t\t\tidle.tickFrame(dt);\n\t\t\t\tconst velFade = VEL_FADE_MAX * Math.pow(VEL_FADE_MIN / VEL_FADE_MAX, momentum);\n\t\t\t\tparamsU.write({\n\t\t\t\t\tdt,\n\t\t\t\t\tcurlStrength: swirl,\n\t\t\t\t\tvelFade,\n\t\t\t\t\tambient,\n\t\t\t\t\tambientTime,\n\t\t\t\t\tambientFreq: AMBIENT_FREQ\n\t\t\t\t});\n\t\t\t\tconst colA = getCpuValue(\"colorA\");\n\t\t\t\tconst colB = getCpuValue(\"colorB\");\n\t\t\t\tsys.writeParams({\n\t\t\t\t\tcolA: vec4f(colA?.x ?? .56, colA?.y ?? .77, colA?.z ?? 1, colA?.w ?? 1),\n\t\t\t\t\tcolB: vec4f(colB?.x ?? 1, colB?.y ?? .85, colB?.z ?? .56, colB?.w ?? 1),\n\t\t\t\t\tdt,\n\t\t\t\t\taspect: domainX,\n\t\t\t\t\ttrails: Math.min(Math.max(num(\"trails\", 0), 0), 1) * .92,\n\t\t\t\t\tbodyR,\n\t\t\t\t\tspeedNorm: SPEED_NORM,\n\t\t\t\t\tadvect\n\t\t\t\t});\n\t\t\t\tconst nodes = [];\n\t\t\t\tif (!initialized) {\n\t\t\t\t\tinitialized = true;\n\t\t\t\t\tnodes.push(() =\u003e sys.pipelines.init.dispatchThreads(MAX_PARTICLES));\n\t\t\t\t}\n\t\t\t\tif (ptr.moving) {\n\t\t\t\t\tconst velX = ptr.velX * N * forceVal * IMPULSE_K;\n\t\t\t\t\tconst velY = ptr.velY * N * forceVal * IMPULSE_K;\n\t\t\t\t\tpathStampRibbon(nodes, {\n\t\t\t\t\t\tfromX: ptr.prevX,\n\t\t\t\t\t\tfromY: ptr.prevY,\n\t\t\t\t\t\tdx: ptr.dx,\n\t\t\t\t\t\tdy: ptr.dy,\n\t\t\t\t\t\tdragDist: ptr.dragDist,\n\t\t\t\t\t\tstepSize: Math.max(.004, FORCE_RADIUS_GRID / N * .6),\n\t\t\t\t\t\tmaxSteps: MAX_STEPS,\n\t\t\t\t\t\tscale: N,\n\t\t\t\t\t\twrite: (posX, posY) =\u003e splatU.write({\n\t\t\t\t\t\t\tposX,\n\t\t\t\t\t\t\tposY,\n\t\t\t\t\t\t\tvelX,\n\t\t\t\t\t\t\tvelY,\n\t\t\t\t\t\t\tradius: FORCE_RADIUS_GRID\n\t\t\t\t\t\t}),\n\t\t\t\t\t\tpass: force\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tnodes.push(...solver.solveSteps({\n\t\t\t\t\tjacobiIters: JACOBI_ITERS,\n\t\t\t\t\tvorticity\n\t\t\t\t}));\n\t\t\t\tnodes.push(...sys.frame({ count }) ?? []);\n\t\t\t\treturn nodes;\n\t\t\t};\n\t\t},\n\t\tfragment: {\n\t\t\toutput: \"flowTexture\",\n\t\t\tfallback: \"transparent\"\n\t\t}\n\t})\n});\nvar ParticleFlow_default = componentDefinition;\nexport { particleFlowAdvectVelKernel as a, particleFlowDivergenceKernel as c, particleFlowInitKernel as d, particleFlowIntegrateKernel as f, particleFlowVorticityKernel as g, particleFlowSplatKernel as h, makeParticleFlowSplatKernel as i, particleFlowForceKernel as l, particleFlowResolveKernel as m, componentDefinition as n, particleFlowCopyVelKernel as o, particleFlowJacobiKernel as p, makeParticleFlowResolveKernel as r, particleFlowCurlKernel as s, ParticleFlow_default as t, particleFlowGradSubtractKernel as u };\n","import { Br as struct, Gn as typegpu_default, I as sdf_exports, Ir as atomic, Lr as texture2d, Mr as vec4f, Pn as DEG_TO_RAD$1, Rr as textureStorage2d, Yr as u32, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { _ as integrator, a as entrainmentFromOmega, d as r3SubCellOffset, f as shapeField, g as force, l as omegaFromRotationDeltas, n as renderAgents, o as expDecay, t as agentSim, u as pointerToShapeLocal } from \"./agents-CBSp2UK_.js\";\nimport { G as makeCpuValueGetter, K as readAgentFrame, V as SIZE_REF_RES, q as resolveRenderRes } from \"./porters-OTkIMOyl.js\";\nimport { O as resolveShapeType, k as shapeEffectBoundingBoxDeclaration, w as sdf3d_exports } from \"./sdf3d-2AWC_wdn.js\";\nimport { b as pointShapeOptions, d as makeBallCloudInit } from \"./agents-DXoEcto0.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar { buildAnalyticSdfFn, createSdfDataTexture, SVG_SDF_SIZE } = sdf_exports;\nvar { createAnalytic3dSdfSetup, createSvg3dSdfSetup, is3dShapeType, isSvg3dShapeType, resolveShapeSubProp, SHAPE3D_DEFAULTS, SVG3D_DEFAULTS, VOLUMETRIC_FIELD_FORMAT } = sdf3d_exports;\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nfunction parseShapeConfig(raw) {\n\tif (raw \u0026\u0026 typeof raw === \"object\") return raw;\n\tif (typeof raw === \"string\") try {\n\t\treturn JSON.parse(raw);\n\t} catch {\n\t\treturn {};\n\t}\n\treturn {};\n}\nvar MAX_PARTICLES = 16e3;\nvar DGRID = 32;\nvar DCELLS = DGRID * DGRID * DGRID;\nvar DOMAIN = 1;\nvar OUT_RES = resolveRenderRes({\n\tdesktop: 1024,\n\tmobile: 768\n});\nvar SIZE_SCALE = OUT_RES / SIZE_REF_RES;\nvar EXTQ = 2.6;\nvar MAX_SPLAT_SIZE = 6;\nvar MAX_SPEED = 3;\nvar STATE_FORMAT = \"rgba16float\";\nvar SimParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcolA: vec4f,\n\tcolB: vec4f,\n\tdt: f32,\n\ttime: f32,\n\tspread: f32,\n\tagitation: f32,\n\tdragMul: f32,\n\tgravX: f32,\n\tgravY: f32,\n\thalfDepth: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\tcursorForce: f32,\n\tcursorRadSq: f32,\n\tsaRadius: f32,\n\tsaSides: f32,\n\tsaRounding: f32,\n\tsaInnerRatio: f32,\n\tsaRotation: f32,\n\tsaHeight: f32,\n\tsaOffset: f32,\n\tsaAperture: f32,\n\tcenterX: f32,\n\tcenterYv: f32,\n\tscale: f32,\n\trotC: f32,\n\trotS: f32,\n\taspect: f32,\n\tsize: f32,\n\texposure: f32,\n\tsoftness: f32,\n\tspeedColorK: f32,\n\tomegaX: f32,\n\tomegaY: f32,\n\tomegaZ: f32,\n\tentrain: f32,\n\tgridOffX: f32,\n\tgridOffY: f32,\n\tgridOffZ: f32\n}), \"SimParams\");\nvar simLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tpos: {\n\t\tstorage: arrayOf(vec4f, MAX_PARTICLES),\n\t\taccess: \"mutable\"\n\t},\n\tvel: {\n\t\tstorage: arrayOf(vec4f, MAX_PARTICLES),\n\t\taccess: \"mutable\"\n\t},\n\tdens: {\n\t\tstorage: arrayOf(atomic(u32), DCELLS),\n\t\taccess: \"mutable\"\n\t},\n\taccumE: {\n\t\tstorage: arrayOf(atomic(u32), OUT_RES * OUT_RES),\n\t\taccess: \"mutable\"\n\t},\n\taccumS: {\n\t\tstorage: arrayOf(atomic(u32), OUT_RES * OUT_RES),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: SimParams },\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"simLayout\");\nvar svgSdfLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({ sdfSource: { texture: texture2d(f32) } }), \"svgSdfLayout\");\nconst particleInitKernel = makeBallCloudInit(simLayout, \"particlesInit\");\nvar pressure = force.pressure(simLayout, {\n\tgridDim: DGRID,\n\tdomain: DOMAIN,\n\tnames: {\n\t\tclear: \"particlesClearDensity\",\n\t\tsplat: \"particlesDensity\"\n\t}\n});\nconst particleClearDensityKernel = pressure.clearKernel;\nconst particleDensityKernel = pressure.splatKernel;\nfunction makeParticleUpdateKernel(evalSdf) {\n\treturn integrator.forces3d(simLayout, {\n\t\tforces: [\n\t\t\tpressure.force,\n\t\t\tforce.containment(simLayout, {\n\t\t\t\tfield: evalSdf,\n\t\t\t\tgradEps: .02,\n\t\t\t\twall: {\n\t\t\t\t\tfeatherFrom: -.1,\n\t\t\t\t\tfeatherTo: .01,\n\t\t\t\t\tbase: 1.1,\n\t\t\t\t\tspringK: 22\n\t\t\t\t},\n\t\t\t\trecall: {\n\t\t\t\t\tfrom: DOMAIN * .85,\n\t\t\t\t\tto: DOMAIN * 1.1,\n\t\t\t\t\tk: 9\n\t\t\t\t},\n\t\t\t\thoming: {\n\t\t\t\t\tfrom: .12,\n\t\t\t\t\tto: .45,\n\t\t\t\t\tk: 5\n\t\t\t\t},\n\t\t\t\tentrainment: { featherHalf: .05 }\n\t\t\t}),\n\t\t\tforce.cursorXY(simLayout),\n\t\t\tforce.gravity(simLayout),\n\t\t\tforce.turbulence(simLayout, {\n\t\t\t\tposScale: 193,\n\t\t\t\ttimeX: 31.7,\n\t\t\t\ttimeY: 27.3,\n\t\t\t\tseedScale: 997,\n\t\t\t\tgain: 5\n\t\t\t})\n\t\t],\n\t\tmaxSpeed: MAX_SPEED,\n\t\tposClamp: 1.9,\n\t\tname: \"particlesUpdate\"\n\t});\n}\nfunction particlesRender(shape, colorSpaceMode) {\n\treturn renderAgents.volume(simLayout, {\n\t\tshape,\n\t\toutRes: OUT_RES,\n\t\tmaxSplatSize: MAX_SPLAT_SIZE,\n\t\textQ: EXTQ,\n\t\tramp: {\n\t\t\tcolorSpace: colorSpaceMode,\n\t\t\texposure: true,\n\t\t\ttrails: \"none\"\n\t\t},\n\t\tnames: {\n\t\t\tsplat: \"particlesSplat\",\n\t\t\tglow: \"particlesGlowProfile\",\n\t\t\tprofile: \"particlesProfile\",\n\t\t\tresolve: \"particlesResolve\"\n\t\t},\n\t\textraOnSplat: true\n\t});\n}\nconst makeParticleSplatKernel = (shape) =\u003e particlesRender(shape, 0).splat.kernel;\nconst makeParticleResolveKernel = (mode) =\u003e particlesRender(\"dot\", mode).resolve.kernel;\nconst particleSplatKernel = makeParticleSplatKernel(\"dot\");\nfunction resolveShapeField(params, shapeSdfUrl, shapeType) {\n\tconst { gpu, getCpuValue, onCleanup } = params;\n\tconst root = gpu.root;\n\tif (shapeSdfUrl \u0026\u0026 isSvg3dShapeType(shapeType)) {\n\t\tconst setup3d = createSvg3dSdfSetup(params, shapeSdfUrl, () =\u003e getCpuValue(\"shape\"));\n\t\tconst dummyField = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\t\tsize: [1, 1],\n\t\t\tformat: VOLUMETRIC_FIELD_FORMAT\n\t\t}).$usage(\"storage\"), \"dummyField\");\n\t\tonCleanup(() =\u003e dummyField.destroy());\n\t\tconst extraBindGroup = root.createBindGroup(setup3d.layout, {\n\t\t\tfield: dummyField,\n\t\t\tparams: setup3d.marchParamsBuffer.buffer,\n\t\t\tsdfSource: setup3d.sdfSourceTexture\n\t\t});\n\t\treturn {\n\t\t\tevalSdf: shapeField.svgLifted3d(setup3d.layout, setup3d.sdfFn),\n\t\t\textraBindGroup,\n\t\t\tsetup3d\n\t\t};\n\t}\n\tif (shapeSdfUrl) {\n\t\tconst sdfTex = createSdfDataTexture(params, shapeSdfUrl);\n\t\tconst extraBindGroup = root.createBindGroup(svgSdfLayout, { sdfSource: sdfTex.texture.texture });\n\t\treturn {\n\t\t\tevalSdf: shapeField.svgExtruded(simLayout, svgSdfLayout, { size: SVG_SDF_SIZE }),\n\t\t\textraBindGroup,\n\t\t\tsetup3d: null\n\t\t};\n\t}\n\tif (is3dShapeType(shapeType)) {\n\t\tconst setup3d = createAnalytic3dSdfSetup(root, shapeType, parseShapeConfig(getCpuValue(\"shape\")), () =\u003e getCpuValue(\"shape\"));\n\t\tconst dummyField = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\t\tsize: [1, 1],\n\t\t\tformat: VOLUMETRIC_FIELD_FORMAT\n\t\t}).$usage(\"storage\"), \"dummyField\");\n\t\tonCleanup(() =\u003e dummyField.destroy());\n\t\tconst extraBindGroup = root.createBindGroup(setup3d.layout, {\n\t\t\tfield: dummyField,\n\t\t\tparams: setup3d.marchParamsBuffer.buffer\n\t\t});\n\t\treturn {\n\t\t\tevalSdf: shapeField.analytic3d(setup3d.layout, setup3d.sdfFn),\n\t\t\textraBindGroup,\n\t\t\tsetup3d\n\t\t};\n\t}\n\tconst sdf2d = buildAnalyticSdfFn(shapeType);\n\treturn {\n\t\tevalSdf: shapeField.analyticExtruded(simLayout, sdf2d),\n\t\textraBindGroup: null,\n\t\tsetup3d: null\n\t};\n}\nconst componentDefinition = defineStd({\n\tname: \"Particles\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"A swarm of simulated particles that settles into the shape, filling it evenly — flat, SVG or true 3D volumes — scattering from the cursor (or chasing it), tumbling when the shape moves, and always drifting back home\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tusesPointer: true,\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#8ec5ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of particles at rest\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Rest Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ff7ad9\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color particles shift toward when agitated — scattering from the cursor or catching up to a moving shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Excited Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 4e3,\n\t\t\tdescription: \"Number of simulated particles\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1e3,\n\t\t\t\tmax: MAX_PARTICLES,\n\t\t\t\tstep: 1e3,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tsize: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Base particle size (each particle also varies slightly, and grows as it drifts toward the viewer)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .6,\n\t\t\t\tmax: 6,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tparticleShape: {\n\t\t\tdefault: \"dot\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"What each particle is drawn as — a crisp dot or square (softness still feathers them), or a soft glow puff\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: pointShapeOptions,\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The pressure pushing particles apart — how strongly they insist on even spacing inside the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Physics\"\n\t\t\t}\n\t\t},\n\t\tagitation: {\n\t\t\tdefault: .12,\n\t\t\tdescription: \"Idle thermal motion of the swarm — 0 freezes it crystal-still once settled\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Agitation\",\n\t\t\t\tgroup: \"Physics\"\n\t\t\t}\n\t\t},\n\t\tdamping: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How quickly disturbed particles calm back down and settle into place\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Damping\",\n\t\t\t\tgroup: \"Physics\"\n\t\t\t}\n\t\t},\n\t\tgravity: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Downward pull on the swarm — negative floats the particles upward\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gravity\",\n\t\t\t\tgroup: \"Physics\"\n\t\t\t}\n\t\t},\n\t\tmouseInfluence: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Strength of the cursor field. Positive scatters particles away; negative pulls the swarm toward the cursor\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Force\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tmouseRadius: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Reach of the cursor field, in shape-local units\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .05,\n\t\t\t\tmax: .8,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Radius\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\texposure: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Brightness of the additive particle glow\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Exposure\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Edge softness of each particle — 0 is a crisp disc, 1 a soft glow puff\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tdepth: {\n\t\t\tdefault: .18,\n\t\t\tdescription: \"Thickness of the particle volume behind flat shapes (3D shapes use their own true depth)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Depth\",\n\t\t\t\tgroup: \"Particles\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for the rest→excited color ramp\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...agentSim({\n\t\tlayout: simLayout,\n\t\tparams: SimParams,\n\t\tmaxAgents: MAX_PARTICLES,\n\t\tcountCap: {\n\t\t\tdesktop: MAX_PARTICLES,\n\t\t\tmobile: 6e3\n\t\t},\n\t\toutput: {\n\t\t\tkey: \"outTex\",\n\t\t\tname: \"particleTexture\",\n\t\t\tsize: [OUT_RES, OUT_RES],\n\t\t\tformat: STATE_FORMAT\n\t\t},\n\t\tbake: (params) =\u003e {\n\t\t\tconst { getCpuValue } = params;\n\t\t\tconst shapeSdfUrl = getCpuValue(\"shapeSdfUrl\") || \"\";\n\t\t\tconst shapeType = resolveShapeType(getCpuValue(\"shapeType\") || \"\", getCpuValue(\"shape\"));\n\t\t\tconst shapeField$1 = resolveShapeField(params, shapeSdfUrl, shapeType);\n\t\t\tconst render = particlesRender(getCpuValue(\"particleShape\") || \"dot\", getCpuValue(\"colorSpace\") ?? 0);\n\t\t\treturn {\n\t\t\t\tpipelines: {\n\t\t\t\t\tinit: {\n\t\t\t\t\t\tkernel: particleInitKernel,\n\t\t\t\t\t\tthreads: \"max\",\n\t\t\t\t\t\textra: true\n\t\t\t\t\t},\n\t\t\t\t\tclearDensity: {\n\t\t\t\t\t\tkernel: pressure.clearKernel,\n\t\t\t\t\t\tthreads: \"fixed\",\n\t\t\t\t\t\tsize: [pressure.cells]\n\t\t\t\t\t},\n\t\t\t\t\tdensity: {\n\t\t\t\t\t\tkernel: pressure.splatKernel,\n\t\t\t\t\t\tthreads: \"agents\",\n\t\t\t\t\t\textra: true\n\t\t\t\t\t},\n\t\t\t\t\tupdate: {\n\t\t\t\t\t\tkernel: makeParticleUpdateKernel(shapeField$1.evalSdf),\n\t\t\t\t\t\tthreads: \"agents\",\n\t\t\t\t\t\textra: true\n\t\t\t\t\t},\n\t\t\t\t\tsplat: render.splat,\n\t\t\t\t\tresolve: render.resolve\n\t\t\t\t},\n\t\t\t\tinitStep: \"init\",\n\t\t\t\tprogram: [\n\t\t\t\t\t\"clearDensity\",\n\t\t\t\t\t\"density\",\n\t\t\t\t\t\"update\",\n\t\t\t\t\t\"splat\",\n\t\t\t\t\t\"resolve\"\n\t\t\t\t],\n\t\t\t\textraBindGroup: shapeField$1.extraBindGroup,\n\t\t\t\tsetup: {\n\t\t\t\t\tshapeField: shapeField$1,\n\t\t\t\t\tshapeSdfUrl,\n\t\t\t\t\tshapeType\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\tframe: (sys, { getCpuValue }, setupRaw) =\u003e {\n\t\t\tconst { shapeField: shapeField$1, shapeSdfUrl, shapeType } = setupRaw;\n\t\t\tconst setup3d = shapeField$1.setup3d;\n\t\t\tlet elapsed = 0;\n\t\t\tconst springs = /* @__PURE__ */ new Map();\n\t\t\tconst num = (v, f, frame, k) =\u003e resolveShapeSubProp(v, f, frame, k);\n\t\t\tlet time = 0;\n\t\t\tlet frameIdx = 0;\n\t\t\tlet prevRot = null;\n\t\t\tconst CELL = 2 * DOMAIN / DGRID;\n\t\t\tconst g = makeCpuValueGetter(getCpuValue);\n\t\t\treturn (frameParams) =\u003e {\n\t\t\t\tconst { dt, aspect, pointerX, pointerY } = readAgentFrame(frameParams, 1);\n\t\t\t\telapsed += dt;\n\t\t\t\ttime += dt;\n\t\t\t\tconst frame = {\n\t\t\t\t\telapsed,\n\t\t\t\t\tdeltaTime: dt,\n\t\t\t\t\tpointerX,\n\t\t\t\t\tpointerY,\n\t\t\t\t\tsprings\n\t\t\t\t};\n\t\t\t\tconst centerView = getCpuValue(\"center\");\n\t\t\t\tconst centerX = centerView?.x ?? .5;\n\t\t\t\tconst centerYv = 1 - (centerView?.y ?? .5);\n\t\t\t\tconst scale = Math.max(g(\"scale\", 1), .01);\n\t\t\t\tconst rotRad = g(\"rotation\", 0) * DEG_TO_RAD;\n\t\t\t\tconst rotC = Math.cos(rotRad);\n\t\t\t\tconst rotS = Math.sin(rotRad);\n\t\t\t\tconst cursor = pointerToShapeLocal({\n\t\t\t\t\tpointerX,\n\t\t\t\t\tpointerY,\n\t\t\t\t\tcenterX,\n\t\t\t\t\tcenterYv,\n\t\t\t\t\tscale,\n\t\t\t\t\trotC,\n\t\t\t\t\trotS,\n\t\t\t\t\taspect\n\t\t\t\t});\n\t\t\t\tconst gravMag = g(\"gravity\", 0) * 1.2;\n\t\t\t\tconst gravX = rotS * gravMag;\n\t\t\t\tconst gravY = -(rotC * gravMag);\n\t\t\t\tconst cfg = parseShapeConfig(getCpuValue(\"shape\"));\n\t\t\t\tconst isSvg3d = isSvg3dShapeType(shapeType);\n\t\t\t\tconst halfDepth = shapeSdfUrl \u0026\u0026 isSvg3d ? num(cfg.depth, SVG3D_DEFAULTS.depth ?? .25, frame, \"depth\") * .5 : Math.max(g(\"depth\", .18), .01) * .5;\n\t\t\t\tconst saRotationV = num(cfg.rotation, 0, frame, \"shapeRotation\");\n\t\t\t\tlet om = {\n\t\t\t\t\tx: 0,\n\t\t\t\t\ty: 0,\n\t\t\t\t\tz: 0\n\t\t\t\t};\n\t\t\t\tif (setup3d) {\n\t\t\t\t\tconst d3 = isSvg3dShapeType(shapeType) ? SVG3D_DEFAULTS : SHAPE3D_DEFAULTS[shapeType] ?? {};\n\t\t\t\t\tconst next = {\n\t\t\t\t\t\tx: num(cfg.rotX, d3.rotX ?? 0, frame, \"rotX\") * DEG_TO_RAD,\n\t\t\t\t\t\ty: num(cfg.rotY, d3.rotY ?? 0, frame, \"rotY\") * DEG_TO_RAD,\n\t\t\t\t\t\tz: num(cfg.rotZ, d3.rotZ ?? 0, frame, \"rotZ\") * DEG_TO_RAD\n\t\t\t\t\t};\n\t\t\t\t\tom = omegaFromRotationDeltas(prevRot, next, dt) ?? om;\n\t\t\t\t\tprevRot = next;\n\t\t\t\t} else if (!shapeSdfUrl) {\n\t\t\t\t\tconst next = {\n\t\t\t\t\t\tx: 0,\n\t\t\t\t\t\ty: 0,\n\t\t\t\t\t\tz: saRotationV * DEG_TO_RAD\n\t\t\t\t\t};\n\t\t\t\t\tom = omegaFromRotationDeltas(prevRot, next, dt) ?? om;\n\t\t\t\t\tprevRot = next;\n\t\t\t\t}\n\t\t\t\tconst { omegaX, omegaY, omegaZ, entrain } = entrainmentFromOmega(om, {\n\t\t\t\t\tcap: 10,\n\t\t\t\t\tgainRate: 2.5,\n\t\t\t\t\tgainMax: 5\n\t\t\t\t});\n\t\t\t\tconst damping = g(\"damping\", .4);\n\t\t\t\tconst mouseRadius = g(\"mouseRadius\", .22);\n\t\t\t\tconst colA = getCpuValue(\"colorA\");\n\t\t\t\tconst colB = getCpuValue(\"colorB\");\n\t\t\t\tconst gridOff = r3SubCellOffset(frameIdx, CELL);\n\t\t\t\tsys.writeParams({\n\t\t\t\t\tcolA: vec4f(colA?.x ?? 1, colA?.y ?? 1, colA?.z ?? 1, colA?.w ?? 1),\n\t\t\t\t\tcolB: vec4f(colB?.x ?? 1, colB?.y ?? 1, colB?.z ?? 1, colB?.w ?? 1),\n\t\t\t\t\tdt,\n\t\t\t\t\ttime,\n\t\t\t\t\tspread: g(\"spread\", 1),\n\t\t\t\t\tagitation: g(\"agitation\", .12),\n\t\t\t\t\tdragMul: expDecay(2.2 + damping * 6, dt),\n\t\t\t\t\tgravX,\n\t\t\t\t\tgravY,\n\t\t\t\t\thalfDepth,\n\t\t\t\t\tcursorX: cursor.x,\n\t\t\t\t\tcursorY: cursor.y,\n\t\t\t\t\tcursorForce: g(\"mouseInfluence\", 1.2) * 3,\n\t\t\t\t\tcursorRadSq: mouseRadius * mouseRadius,\n\t\t\t\t\tsaRadius: num(cfg.radius ?? cfg.width ?? cfg.bottomWidth, .35, frame, \"radius\"),\n\t\t\t\t\tsaSides: num(cfg.sides, 6, frame, \"sides\"),\n\t\t\t\t\tsaRounding: num(cfg.rounding, 0, frame, \"rounding\"),\n\t\t\t\t\tsaInnerRatio: num(cfg.innerRatio ?? cfg.thickness ?? cfg.spread ?? cfg.topWidth ?? cfg.topRatio, .4, frame, \"innerRatio\"),\n\t\t\t\t\tsaRotation: saRotationV,\n\t\t\t\t\tsaHeight: num(cfg.height, .25, frame, \"height\"),\n\t\t\t\t\tsaOffset: num(cfg.offset ?? cfg.skew, .2, frame, \"offset\"),\n\t\t\t\t\tsaAperture: num(cfg.aperture, 270, frame, \"aperture\"),\n\t\t\t\t\tcenterX,\n\t\t\t\t\tcenterYv,\n\t\t\t\t\tscale,\n\t\t\t\t\trotC,\n\t\t\t\t\trotS,\n\t\t\t\t\taspect,\n\t\t\t\t\tsize: g(\"size\", 2.2) * SIZE_SCALE,\n\t\t\t\t\texposure: g(\"exposure\", 1),\n\t\t\t\t\tsoftness: Math.min(Math.max(g(\"softness\", .5), 0), 1),\n\t\t\t\t\tspeedColorK: 2 / MAX_SPEED,\n\t\t\t\t\tomegaX,\n\t\t\t\t\tomegaY,\n\t\t\t\t\tomegaZ,\n\t\t\t\t\tentrain,\n\t\t\t\t\tgridOffX: gridOff.x,\n\t\t\t\t\tgridOffY: gridOff.y,\n\t\t\t\t\tgridOffZ: gridOff.z\n\t\t\t\t});\n\t\t\t\tframeIdx++;\n\t\t\t\tsetup3d?.update({\n\t\t\t\t\tdeltaTime: dt,\n\t\t\t\t\tpointer: {\n\t\t\t\t\t\tx: pointerX,\n\t\t\t\t\t\ty: pointerY\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\treturn sys.frame({ count: sys.resolveCount(g(\"count\", 4e3)) });\n\t\t\t};\n\t\t},\n\t\tfragment: {\n\t\t\toutput: \"particleTexture\",\n\t\t\tfallback: \"transparent\"\n\t\t}\n\t})\n});\nvar Particles_default = componentDefinition;\nexport { makeParticleUpdateKernel as a, particleInitKernel as c, makeParticleSplatKernel as i, particleSplatKernel as l, componentDefinition as n, particleClearDensityKernel as o, makeParticleResolveKernel as r, particleDensityKernel as s, Particles_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, c as noiseField, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { l as evolving, m as noiseTone, x as seededPlane } from \"./noise-d7rmP9yc.js\";\nimport { i as noiseToneProps, r as noiseSpeedProp, t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"PerlinNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Smooth gradient noise that morphs over time\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tscale: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Pattern scale (higher = larger patterns)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseToneProps(),\n\t\t...noiseSpeedProp()\n\t},\n\tpaint: rampOver(noiseTone(seededPlane(evolving(noiseField(\"perlin\"), { rate: .3 }), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar PerlinNoise_default = componentDefinition;\nexport { componentDefinition as n, PerlinNoise_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { m as perspective } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Perspective\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Rotate the plane in 3D space with pan and tilt\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"Center point of rotation\"),\n\t\tpan: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Horizontal rotation (left/right)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -90,\n\t\t\t\tmax: 90,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Pan\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\ttilt: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Vertical rotation (up/down)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -90,\n\t\t\t\tmax: 90,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Tilt\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfov: {\n\t\t\tdefault: 60,\n\t\t\tdescription: \"Field of view - controls perspective intensity\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 30,\n\t\t\t\tmax: 120,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"FOV\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tzoom: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Zoom in to fill the frame after rotation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Zoom\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\toffset: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Shift the result in X/Y\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Offset\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"transparent\", \"How to handle edges\")\n\t},\n\tmap: perspective({\n\t\tcenter: p(\"center\"),\n\t\tpan: p(\"pan\"),\n\t\ttilt: p(\"tilt\"),\n\t\tfov: p(\"fov\"),\n\t\tzoom: p(\"zoom\"),\n\t\toffset: p(\"offset\")\n\t})\n});\nvar Perspective_default = componentDefinition;\nexport { componentDefinition as n, Perspective_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { k as pixelate } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"Pixelate\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Pixelation effect with adjustable cell size\",\n\tprops: {\n\t\tscale: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Number of pixels along the longest edge (higher = smaller pixels)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 200,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgap: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Space between pixels as a fraction of cell size (0 = no gap, 1 = fully invisible)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .95,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gap\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\troundness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Roundness of each pixel's corners (0 = square, 1 = circle)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Roundness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: pixelate({\n\t\tscale: p(\"scale\"),\n\t\tgap: p(\"gap\"),\n\t\troundness: p(\"roundness\")\n\t})\n});\nvar Pixelate_default = componentDefinition;\nexport { componentDefinition as n, Pixelate_default as t };\n","import { Ot as unpremultiplyAlpha, Y as createStateBuffer, at as ZERO, ct as call, qr as f32, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as buildOddEvenSortSet, u as createGridKernelPass } from \"./porters-OTkIMOyl.js\";\nimport { B as vec2 } from \"./math-D864seEs.js\";\nimport { a as op, o as trackedViewport, t as gridSim } from \"./grids-Cv99xcJg.js\";\nvar WORK = 512;\nvar CELL_COUNT = WORK * WORK;\nvar STATE_FORMAT = \"rgba16float\";\nconst makePixelSortKernels = (vertical, direction) =\u003e buildOddEvenSortSet({\n\tn: WORK,\n\tformat: STATE_FORMAT,\n\tnamePrefix: \"pixelSort\",\n\tvertical,\n\tdirection\n});\nconst componentDefinition = defineStd({\n\tname: \"PixelSort\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tcategory: \"Interactive\",\n\tdescription: \"Pixels sort by brightness around the cursor and keep their sorted position, optionally decaying back over time\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tusesPointer: true,\n\tprops: {\n\t\tradius: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Size of the cursor brush that sorts pixels\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .03,\n\t\t\t\tmax: .6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Softness of the brush edge (0 = hard circle, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstrength: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"How fast pixels sort — runs more sorting passes per frame\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdecay: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"How quickly sorted pixels melt back to their original position (0 = permanent)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Decay\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\taxis: {\n\t\t\tdefault: \"vertical\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Axis pixels are sorted along\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Horizontal\",\n\t\t\t\t\tvalue: \"horizontal\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Vertical\",\n\t\t\t\t\tvalue: \"vertical\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Axis\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdirection: {\n\t\t\tdefault: \"descending\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Sort order by brightness\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Dark → Light\",\n\t\t\t\t\tvalue: \"ascending\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Light → Dark\",\n\t\t\t\t\tvalue: \"descending\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Direction\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\t...gridSim((params, root) =\u003e {\n\t\tconst { childNode, convertToTexture, registerComputeTexture, propValues, onCleanup } = params;\n\t\tif (!childNode) return null;\n\t\tconst vertical = propValues.axis === \"vertical\";\n\t\tconst dir = propValues.direction === \"descending\" ? -1 : 1;\n\t\tconst childTexture = convertToTexture(childNode);\n\t\tconst bufferA = createStateBuffer(root, f32, CELL_COUNT);\n\t\tconst bufferB = createStateBuffer(root, f32, CELL_COUNT);\n\t\tconst lumaBuf = createStateBuffer(root, f32, CELL_COUNT);\n\t\tconst stateTex = root.createTexture({\n\t\t\tsize: [WORK, WORK],\n\t\t\tformat: STATE_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\");\n\t\tonCleanup(() =\u003e stateTex.destroy());\n\t\tconst state = registerComputeTexture(stateTex);\n\t\tconst set = makePixelSortKernels(vertical, dir);\n\t\tconst lumaParams = root.createUniform(set.LumaParams);\n\t\tconst swapParams = root.createUniform(set.SwapParams);\n\t\tconst viewport = trackedViewport(params);\n\t\tconst size = [WORK, WORK];\n\t\tlet lumaPipeline = createGridKernelPass(root, set.key, { size });\n\t\tlet lumaReady = false;\n\t\tconst swapBgAB = root.createBindGroup(set.swapLayout, {\n\t\t\treadBuf: bufferA,\n\t\t\twriteBuf: bufferB,\n\t\t\tlumaBuf,\n\t\t\tparams: swapParams.buffer\n\t\t});\n\t\tconst swapBgBA = root.createBindGroup(set.swapLayout, {\n\t\t\treadBuf: bufferB,\n\t\t\twriteBuf: bufferA,\n\t\t\tlumaBuf,\n\t\t\tparams: swapParams.buffer\n\t\t});\n\t\tconst swap0 = createGridKernelPass(root, set.swap0, { size });\n\t\tconst swap1 = createGridKernelPass(root, set.swap1, { size });\n\t\tconst outputBgA = root.createBindGroup(set.outputLayout, {\n\t\t\tsrcBuf: bufferA,\n\t\t\tstateTex\n\t\t});\n\t\tconst outputBgB = root.createBindGroup(set.outputLayout, {\n\t\t\tsrcBuf: bufferB,\n\t\t\tstateTex\n\t\t});\n\t\tconst outputPass = createGridKernelPass(root, set.output, { size });\n\t\tlet frame = 0;\n\t\tlet passes = 1;\n\t\tconst sort = op.sortPass({\n\t\t\tpasses: () =\u003e passes,\n\t\t\tpass: (parity, side) =\u003e (parity ? swap1 : swap0).with(side === \"A\" ? swapBgAB : swapBgBA)\n\t\t});\n\t\treturn {\n\t\t\toutputs: {\n\t\t\t\tstate,\n\t\t\t\tchildTexture\n\t\t\t},\n\t\t\tbindInputs: (resolve) =\u003e {\n\t\t\t\tconst src = resolve(childTexture.key);\n\t\t\t\tif (src) {\n\t\t\t\t\tconst lumaBg = root.createBindGroup(set.lumaLayout, {\n\t\t\t\t\t\tinput: src.texture,\n\t\t\t\t\t\tlumaBuf,\n\t\t\t\t\t\tparams: lumaParams.buffer\n\t\t\t\t\t});\n\t\t\t\t\tlumaPipeline = lumaPipeline.with(lumaBg);\n\t\t\t\t\tlumaReady = true;\n\t\t\t\t}\n\t\t\t},\n\t\t\tclampDt: .05,\n\t\t\tstages: [\n\t\t\t\top.readyWhen(() =\u003e lumaReady),\n\t\t\t\top.values(\"brush+decay\", (f) =\u003e {\n\t\t\t\t\tconst fp = f.frameParams;\n\t\t\t\t\tconst safe = viewport.safe(fp);\n\t\t\t\t\tconst tracked = viewport.tracked();\n\t\t\t\t\tconst strength = f.num(\"strength\", .1);\n\t\t\t\t\tconst decayProp = f.num(\"decay\", .1);\n\t\t\t\t\tpasses = 1 + Math.round(strength * 4);\n\t\t\t\t\tswapParams.write({\n\t\t\t\t\t\tmouseX: fp.pointer?.x ?? .5,\n\t\t\t\t\t\tmouseY: fp.pointer?.y ?? .5,\n\t\t\t\t\t\tradius: f.num(\"radius\", .4),\n\t\t\t\t\t\tfalloff: f.num(\"falloff\", 1),\n\t\t\t\t\t\tdecay: decayProp * f.dt * 2 / passes,\n\t\t\t\t\t\taspect: safe.width / safe.height,\n\t\t\t\t\t\tseed: frame % 1024\n\t\t\t\t\t});\n\t\t\t\t\tlumaParams.write({\n\t\t\t\t\t\tinputWidth: tracked.width,\n\t\t\t\t\t\tinputHeight: tracked.height\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t\top.cache(() =\u003e lumaPipeline),\n\t\t\t\tsort,\n\t\t\t\top.publish(() =\u003e outputPass.with(sort.side() === \"A\" ? outputBgA : outputBgB)),\n\t\t\t\top.values(\"frameAdvance\", () =\u003e {\n\t\t\t\t\tframe++;\n\t\t\t\t})\n\t\t\t]\n\t\t};\n\t}),\n\tgpu: { fragment: ({ childNode, ctx, computeOutputs, propValues, convertToTexture }) =\u003e {\n\t\tif (!childNode) return ZERO;\n\t\tconst state = computeOutputs?.state;\n\t\tconst childTex = computeOutputs?.childTexture;\n\t\tif (!state || !childTex) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [convertToTexture(childNode).sample(ctx.uv)]);\n\t\tconst vertical = propValues.axis === \"vertical\";\n\t\tconst srcCoord = state.sample(ctx.uv, \"nearestClamp\").member(\"r\");\n\t\tconst childUV = vertical ? vec2(ctx.uv.member(\"x\"), srcCoord) : vec2(srcCoord, ctx.uv.member(\"y\"));\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [childTex.sample(childUV)]);\n\t} }\n});\nvar PixelSort_default = componentDefinition;\nexport { componentDefinition as n, makePixelSortKernels as r, PixelSort_default as t };\n","import { Ot as unpremultiplyAlpha, V as toHalfFloat, X as applyEdgeHandlingExpr, at as ZERO, ct as call, nt as bSplineTapSetup, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, V as vec3, i as clamp, s as dot, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { i as hostStep, n as hostFieldTexture, r as hostGridProgram } from \"./grids-Cv99xcJg.js\";\nvar transformThrowKey = (value) =\u003e {\n\treturn {\n\t\tluminance: 0,\n\t\tdarkness: 1,\n\t\tred: 2,\n\t\tgreen: 3,\n\t\tblue: 4\n\t}[value] ?? 0;\n};\nvar GRID = 128;\nvar num = (v, f) =\u003e typeof v === \"number\" ? v : f;\nvar offsetUV = (uv, flowVec, scale) =\u003e sub(uv, mul(flowVec, scale));\nvar { Taps: PixelThrowBicubicTaps, setup: pixelThrowBicubicSetup } = bSplineTapSetup(GRID, {\n\tfnName: \"pixelThrowBicubicSetup\",\n\tstructName: \"PixelThrowBicubicTaps\"\n});\nfunction keyScaleOf(keyMode, rgb, keyInfluence) {\n\tconst lum = vec3(.299, .587, .114);\n\treturn mix(1, clamp(keyMode === 1 ? sub(1, dot(rgb, lum)) : keyMode === 2 ? rgb.member(\"r\") : keyMode === 3 ? rgb.member(\"g\") : keyMode === 4 ? rgb.member(\"b\") : dot(rgb, lum), 0, 1), keyInfluence);\n}\nconst componentDefinition = defineStd({\n\tname: \"PixelThrow\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tcategory: \"Interactive\",\n\tdescription: \"Throws pixels along the cursor's path like a fluid — brighter (or redder/greener/bluer) pixels are flung farther, then settle back with friction\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tusesPointer: true,\n\tprops: {\n\t\tthrowKey: {\n\t\t\tdefault: \"luminance\",\n\t\t\ttransform: transformThrowKey,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Which pixel value decides how far a pixel is thrown\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Brightness\",\n\t\t\t\t\t\tvalue: \"luminance\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Darkness\",\n\t\t\t\t\t\tvalue: \"darkness\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Red\",\n\t\t\t\t\t\tvalue: \"red\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Green\",\n\t\t\t\t\t\tvalue: \"green\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Blue\",\n\t\t\t\t\t\tvalue: \"blue\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Throw By\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstrength: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Maximum distance pixels can be thrown\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tkeyInfluence: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"How much the chosen value modulates throw distance (0 = all pixels thrown equally, 1 = only high-value pixels move)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Key Influence\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Size of the cursor's throw brush\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfriction: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"How quickly thrown pixels settle back to their origin (0 = float almost forever, 1 = snap back fast)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Friction\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tmomentum: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How much the thrown flow keeps drifting and swirling after the cursor passes (fluidity)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Momentum\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"stretch\",\n\t\t\tdescription: \"How to handle pixels thrown beyond the canvas edges\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { uniforms, ctx, childNode, convertToTexture, onBeforeRender, dimensions, propValues, getCpuValue } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst child = convertToTexture(childNode);\n\t\tconst edgeMode = propValues.edges ?? 0;\n\t\tconst rawKey = propValues.throwKey;\n\t\tconst keyMode = typeof rawKey === \"number\" ? rawKey : transformThrowKey(String(rawKey ?? \"luminance\"));\n\t\tconst flow = new Float32Array(GRID * GRID * 2);\n\t\tconst temp = new Float32Array(GRID * GRID * 2);\n\t\tconst field = hostFieldTexture(params, {\n\t\t\tsize: GRID,\n\t\t\tlabel: \"pixelthrow-flow\"\n\t\t});\n\t\tconst flowKit = field.texture;\n\t\tlet prevX = .5, prevY = .5;\n\t\tlet velX = 0, velY = 0;\n\t\tlet speed = 0;\n\t\tlet maxThrow = .125;\n\t\tconst sampleFlow = (gx, gy, ch) =\u003e {\n\t\t\tconst x0 = Math.floor(gx), y0 = Math.floor(gy);\n\t\t\tconst x1 = x0 + 1, y1 = y0 + 1;\n\t\t\tif (x0 \u003c 0 || y0 \u003c 0 || x1 \u003e= GRID || y1 \u003e= GRID) return 0;\n\t\t\tconst fx = gx - x0, fy = gy - y0;\n\t\t\tconst i00 = (y0 * GRID + x0) * 2 + ch;\n\t\t\tconst i01 = (y0 * GRID + x1) * 2 + ch;\n\t\t\tconst i10 = (y1 * GRID + x0) * 2 + ch;\n\t\t\tconst i11 = (y1 * GRID + x1) * 2 + ch;\n\t\t\treturn flow[i00] * (1 - fx) * (1 - fy) + flow[i01] * fx * (1 - fy) + flow[i10] * (1 - fx) * fy + flow[i11] * fx * fy;\n\t\t};\n\t\tconst aspectOf = () =\u003e Math.max(1e-4, dimensions.width / Math.max(1, dimensions.height));\n\t\tonBeforeRender(hostGridProgram({\n\t\t\tclampDt: .016,\n\t\t\tsteps: [\n\t\t\t\thostStep(\"dtGuard\", (f) =\u003e f.dt \u003c= 0 ? \"skip\" : void 0),\n\t\t\t\thostStep(\"cursorVelocity\", (f) =\u003e {\n\t\t\t\t\tconst rawVelX = (f.pointer.x - prevX) / f.dt;\n\t\t\t\t\tconst rawVelY = (f.pointer.y - prevY) / f.dt;\n\t\t\t\t\tvelX = velX * .8 + rawVelX * .2;\n\t\t\t\t\tvelY = velY * .8 + rawVelY * .2;\n\t\t\t\t\tspeed = Math.sqrt(velX * velX + velY * velY);\n\t\t\t\t}),\n\t\t\t\thostStep(\"advect+decay\", (f) =\u003e {\n\t\t\t\t\tconst friction = num(getCpuValue(\"friction\"), .3);\n\t\t\t\t\tconst momentum = num(getCpuValue(\"momentum\"), .5);\n\t\t\t\t\tmaxThrow = num(getCpuValue(\"strength\"), .25) * .5;\n\t\t\t\t\tconst decay = Math.max(0, 1 - friction * f.dt * 4);\n\t\t\t\t\tconst advect = momentum * f.dt * 12;\n\t\t\t\t\tfor (let i = 0; i \u003c GRID; i++) for (let j = 0; j \u003c GRID; j++) {\n\t\t\t\t\t\tconst idx = (i * GRID + j) * 2;\n\t\t\t\t\t\tconst srcX = j - flow[idx] * GRID * advect;\n\t\t\t\t\t\tconst srcY = i - flow[idx + 1] * GRID * advect;\n\t\t\t\t\t\ttemp[idx] = sampleFlow(srcX, srcY, 0) * decay;\n\t\t\t\t\t\ttemp[idx + 1] = sampleFlow(srcX, srcY, 1) * decay;\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\thostStep(\"inject(brush)\", (f) =\u003e {\n\t\t\t\t\tif (speed \u003c= .02) return;\n\t\t\t\t\tconst aspect = aspectOf();\n\t\t\t\t\tconst r = Math.max(.001, num(getCpuValue(\"radius\"), .2));\n\t\t\t\t\tconst r2 = r * r;\n\t\t\t\t\tconst EDGE = Math.exp(-1);\n\t\t\t\t\tconst INV_EDGE = 1 / (1 - EDGE);\n\t\t\t\t\tconst minI = Math.max(0, Math.floor((f.pointer.y - r) * GRID));\n\t\t\t\t\tconst maxI = Math.min(GRID - 1, Math.ceil((f.pointer.y + r) * GRID));\n\t\t\t\t\tconst minJ = Math.max(0, Math.floor((f.pointer.x - r) * GRID));\n\t\t\t\t\tconst maxJ = Math.min(GRID - 1, Math.ceil((f.pointer.x + r) * GRID));\n\t\t\t\t\tfor (let i = minI; i \u003c= maxI; i++) for (let j = minJ; j \u003c= maxJ; j++) {\n\t\t\t\t\t\tconst cellX = (j + .5) / GRID;\n\t\t\t\t\t\tconst cellY = (i + .5) / GRID;\n\t\t\t\t\t\tconst dx = aspect \u003e= 1 ? (cellX - f.pointer.x) * aspect : cellX - f.pointer.x;\n\t\t\t\t\t\tconst dy = aspect \u003e= 1 ? cellY - f.pointer.y : (cellY - f.pointer.y) / aspect;\n\t\t\t\t\t\tconst distSq = dx * dx + dy * dy;\n\t\t\t\t\t\tif (distSq \u003e r2) continue;\n\t\t\t\t\t\tconst influence = (Math.exp(-distSq / r2) - EDGE) * INV_EDGE;\n\t\t\t\t\t\tconst idx = (i * GRID + j) * 2;\n\t\t\t\t\t\ttemp[idx] += velX * influence * f.dt * 4;\n\t\t\t\t\t\ttemp[idx + 1] += velY * influence * f.dt * 4;\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\thostStep(\"saturate(tanh)\", () =\u003e {\n\t\t\t\t\tfor (let k = 0; k \u003c GRID * GRID; k++) {\n\t\t\t\t\t\tconst fx = temp[k * 2];\n\t\t\t\t\t\tconst fy = temp[k * 2 + 1];\n\t\t\t\t\t\tconst len = Math.sqrt(fx * fx + fy * fy);\n\t\t\t\t\t\tif (len \u003e 1e-6) {\n\t\t\t\t\t\t\tconst s = maxThrow * Math.tanh(len / maxThrow) / len;\n\t\t\t\t\t\t\ttemp[k * 2] = fx * s;\n\t\t\t\t\t\t\ttemp[k * 2 + 1] = fy * s;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\thostStep(\"publish(halfFloat)\", (f) =\u003e {\n\t\t\t\t\tflow.set(temp);\n\t\t\t\t\tfor (let k = 0; k \u003c GRID * GRID; k++) {\n\t\t\t\t\t\tfield.texData[k * 4] = toHalfFloat(flow[k * 2]);\n\t\t\t\t\t\tfield.texData[k * 4 + 1] = toHalfFloat(flow[k * 2 + 1]);\n\t\t\t\t\t}\n\t\t\t\t\tfield.upload();\n\t\t\t\t\tprevX = f.pointer.x;\n\t\t\t\t\tprevY = f.pointer.y;\n\t\t\t\t})\n\t\t\t]\n\t\t}));\n\t\tconst uv = ctx.uv;\n\t\tconst taps = call(pixelThrowBicubicSetup, \"pixelThrowBicubicSetup\", [uv]);\n\t\tconst tapW = taps.member(\"w\");\n\t\tconst flowVec = local(flowKit.sample(taps.member(\"uvA\"), \"linearClamp\").member(\"xy\").mul(tapW.member(\"x\")).add(flowKit.sample(taps.member(\"uvB\"), \"linearClamp\").member(\"xy\").mul(tapW.member(\"y\"))).add(flowKit.sample(taps.member(\"uvC\"), \"linearClamp\").member(\"xy\").mul(tapW.member(\"z\"))).add(flowKit.sample(taps.member(\"uvD\"), \"linearClamp\").member(\"xy\").mul(tapW.member(\"w\"))), \"flowVec\");\n\t\tconst probeUV = offsetUV(uv, flowVec, .5);\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [applyEdgeHandlingExpr(local(offsetUV(uv, flowVec, keyScaleOf(keyMode, call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [child.sample(probeUV)]).member(\"rgb\"), uniforms.keyInfluence)), \"displacedUV\"), (u) =\u003e child.sample(u), edgeMode)]);\n\t} }\n});\nvar PixelThrow_default = componentDefinition;\nexport { pixelThrowBicubicSetup as i, PixelThrow_default as n, componentDefinition as r, PixelThrowBicubicTaps as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { C as tone, T as warped, b as stops, c as noiseField, f as rampOver, m as scaledVolume } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Plasma\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Animated effect of glowing plasma\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tdensity: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Density of the plasma pattern\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Density\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Brightness and spread of the plasma glow\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\twarp: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How much the flow distorts and swirls\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Warp\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Push darks darker and lights lighter\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Skew color balance toward A (higher) or B (lower)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#7018be\",\n\t\t\tdescription: \"Primary color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#000000\",\n\t\t\tdescription: \"Secondary color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: rampOver(tone(scaledVolume(warped(noiseField(\"mx3\"), {\n\t\tamount: p(\"warp\"),\n\t\tamountScale: 4,\n\t\ttimeScale: .125\n\t}), { scale: p(\"density\") }), {\n\t\tglow: p(\"intensity\"),\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\"),\n\t\tinvert: true\n\t}), stops(p(\"colorSpace\")))\n});\nvar Plasma_default = componentDefinition;\nexport { componentDefinition as n, Plasma_default as t };\n","import { It as mixColorsLinear, Lt as mixColorsVariants, at as ZERO, ct as call, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { Dt as mixColorStopsRuntime, t as animatedTime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { D as nudgeNormal, F as shapedSurface, H as surfaceNoise, R as silhouette, U as surfaceNoiseAt, V as surfaceField, W as surfacePattern, b as keyLightAt, g as guarded, l as fieldSlope, m as grazingFlat, v as insideShape, w as marchedNormal } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, I as splat3, L as sqrt, O as reflect, P as smoothstep, V as vec3, i as clamp, l as exp2, n as add, o as div, s as dot, t as abs, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction } from \"./frames-BLqt7oaW.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar envBox = (x, lo, hi, softE, hint) =\u003e {\n\tconst s = local(softE, `${hint}S`);\n\tconst xx = local(x, `${hint}X`);\n\treturn mul(smoothstep(sub(lo, s), add(lo, s), xx), sub(1, smoothstep(sub(hi, s), add(hi, s), xx)));\n};\nvar crumpleField = (px, py, cScale, seedOff) =\u003e {\n\tconst p1 = vec2(add(mul(px, cScale), seedOff), add(mul(py, cScale), mul(seedOff, .617)));\n\tconst p2 = vec2(add(add(mul(mul(px, cScale), 2.3), 13.1), seedOff), add(add(mul(mul(py, cScale), 2.3), 7.7), mul(seedOff, .617)));\n\treturn add(abs(surfaceNoiseAt(p1)), mul(abs(surfaceNoiseAt(p2)), .45));\n};\nconst componentDefinition = defineStd({\n\tname: \"Plastic\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Glossy molded plastic with photorealistic studio reflections, driven in a custom shape\",\n\tanimatedTime: { speed: \"speed\" },\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u, propValues } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst vol = frame.volumetric;\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { sdf, pxH } = field;\n\t\t\tconst sdfUV = local(frame.sdfUV, \"sdfUV\");\n\t\t\tconst gDir = direction(u.gradientAngle, \"gDir\");\n\t\t\tconst gT = smoothstep(0, 1, clamp(add(div(dot(sub(sdfUV.member(\"xy\"), vec2(.5, .5)), gDir), .7), .5), 0, 1));\n\t\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\t\tconst stopCount = propValues.stopCount ?? 0;\n\t\t\tlet baseColor;\n\t\t\tif (stopCount \u003e 1) baseColor = mixColorStopsRuntime(gT, {\n\t\t\t\tcolorsArray: u.colorsArray,\n\t\t\t\tpositionsArray: u.positionsArray,\n\t\t\t\tconvertedColorsArray: u.convertedColorsArray,\n\t\t\t\tstopCount: u.stopCount\n\t\t\t}, colorSpaceMode);\n\t\t\telse baseColor = call(mixColorsVariants[colorSpaceMode] ?? mixColorsLinear, \"mixColors\", [\n\t\t\t\tu.colorA,\n\t\t\t\tu.colorB,\n\t\t\t\tgT\n\t\t\t]);\n\t\t\tconst baseRgb = baseColor.member(\"rgb\");\n\t\t\tconst light = direction(add(u.lightAngle, mul(t, 6)), \"light\");\n\t\t\tconst lx = light.member(\"x\");\n\t\t\tconst ly = light.member(\"y\");\n\t\t\tconst grad = fieldSlope(field);\n\t\t\tconst transition = silhouette(field, u.edgeSoftness);\n\t\t\tconst pat = surfacePattern(frame, field, { uv: sdfUV });\n\t\t\tconst pdx = pat.member(\"x\");\n\t\t\tconst pdy = pat.member(\"y\");\n\t\t\tconst thicknessRange = max(mul(u.thickness, .3), .01);\n\t\t\tconst depthNorm = local(clamp(div(mul(sdf, -1), thicknessRange), 0, 1), \"depthNorm\");\n\t\t\tlet nBase;\n\t\t\tif (vol) nBase = marchedNormal(field, 4, \"nBase\");\n\t\t\telse {\n\t\t\t\tconst bevelSlope = local(mul(sqrt(max(sub(1, mul(depthNorm, depthNorm)), 0)), 2.4), \"bevelSlope\");\n\t\t\t\tnBase = local(normalize(vec3(mul(grad.member(\"x\"), bevelSlope), mul(grad.member(\"y\"), bevelSlope), -1)), \"nBase\");\n\t\t\t}\n\t\t\tconst cScale = local(mul(u.crumpleScale, 4), \"cScale\");\n\t\t\tconst cAmp = mul(u.crumple, .9);\n\t\t\tconst seedOff = local(mul(u.seed, 7.31), \"seedOff\");\n\t\t\tconst neps = .012;\n\t\t\tconst cr0 = local(crumpleField(pdx, pdy, cScale, seedOff), \"cr0\");\n\t\t\tconst crx = div(sub(crumpleField(add(pdx, neps), pdy, cScale, seedOff), cr0), neps);\n\t\t\tconst cry = div(sub(crumpleField(pdx, add(pdy, neps), cScale, seedOff), cr0), neps);\n\t\t\tconst coverage = clamp(u.crumpleCoverage, 0, 1);\n\t\t\tconst covNoise = add(mul(surfaceNoise(add(add(mul(pdx, 2.6), seedOff), 31.7), add(add(mul(pdy, 2.6), mul(seedOff, .617)), 17.3)), .5), .5);\n\t\t\tconst covThreshold = local(sub(1.25, mul(coverage, 1.75)), \"covThreshold\");\n\t\t\tconst crumpleW = local(mul(mul(cAmp, smoothstep(sub(covThreshold, .25), add(covThreshold, .25), covNoise)), add(mul(smoothstep(0, .35, depthNorm), .85), .15)), \"crumpleW\");\n\t\t\tconst n = nudgeNormal(nBase, mul(mul(crx, crumpleW), .25), mul(mul(cry, crumpleW), .25));\n\t\t\tconst grazing = grazingFlat(n);\n\t\t\tconst R = local(reflect(vec3(0, 0, 1), n), \"R\");\n\t\t\tconst rough = local(clamp(u.roughness, 0, 1), \"rough\");\n\t\t\tconst rJit = local(mul(mul(rough, surfaceNoise(mul(pdx, 140), mul(pdy, 140))), .18), \"rJit\");\n\t\t\tconst eu = local(add(add(mul(R.member(\"x\"), lx), mul(R.member(\"y\"), ly)), rJit), \"eu\");\n\t\t\tconst ev = local(add(add(mul(R.member(\"x\"), mul(ly, -1)), mul(R.member(\"y\"), lx)), mul(rJit, .6)), \"ev\");\n\t\t\tconst soft = local(mix(.02, .45, rough), \"soft\");\n\t\t\tconst keyBank = mul(mul(envBox(eu, .18, .95, soft, \"win1\"), envBox(ev, -.42, .42, soft, \"win2\")), sub(1, mul(mul(envBox(ev, -.045, .045, mul(soft, .6), \"mull\"), .8), sub(1, rough))));\n\t\t\tconst strip = mul(mul(envBox(eu, -.16, -.05, mul(soft, .7), \"strip1\"), envBox(ev, -.85, .85, soft, \"strip2\")), .85);\n\t\t\tconst fill = mul(mul(envBox(eu, -.95, -.45, mul(soft, 1.6), \"fill1\"), envBox(ev, -.6, .6, mul(soft, 1.6), \"fill2\")), .3);\n\t\t\tconst dome = mul(clamp(add(mul(eu, .5), .5), 0, 1), .12);\n\t\t\tconst env = mul(add(add(add(keyBank, strip), fill), dome), sub(1, mul(rough, .55)));\n\t\t\tconst fresnel = add(.3, mul(pow(grazing, 3), .7));\n\t\t\tconst specW = mul(u.reflectivity, fresnel);\n\t\t\tconst kl = keyLightAt(light, -.8);\n\t\t\tconst L = kl.member(\"L\");\n\t\t\tconst specular = local(mul(add(env, mul(mul(pow(clamp(dot(n, kl.member(\"H\")), 0, 1), exp2(mix(9, 4, rough))), 1.6), sub(1, mul(rough, .7)))), specW), \"specular\");\n\t\t\tconst lit = local(add(mul(clamp(dot(n, L), -1, 1), .5), .5), \"lit\");\n\t\t\tconst diffuse = mix(sub(1, mul(u.shading, .75)), add(1, mul(u.shading, .45)), lit);\n\t\t\tconst ao = mix(.6, 1, smoothstep(0, 1, clamp(div(mul(sdf, -1), .025), 0, 1)));\n\t\t\tconst rimGlow = mul(mul(mul(pow(grazing, 3.5), u.rim), add(mul(lit, .6), .4)), 1.6);\n\t\t\tconst plasticRgb = local(add(add(mul(mul(baseRgb, diffuse), ao), splat3(specular)), mul(u.rimColor.member(\"rgb\"), rimGlow)), \"plasticRgb\");\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(plasticRgb, transition), ZERO, \"plastic\");\n\t\t}\n\t}),\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the plastic shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the plastic shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the plastic shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#f5f5f7\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Body color at the start of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#d9dade\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Body color at the end of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tgradientAngle: {\n\t\t\tdefault: 90,\n\t\t\tdescription: \"Direction of the body color gradient in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Gradient Angle\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for gradient color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Puffiness — how far the rounded bevel reaches inward from the edge before the surface flattens\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .05,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Puffiness\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\troughness: {\n\t\t\tdefault: .12,\n\t\t\tdescription: \"Surface roughness — 0 = polished gloss with crisp mirror reflections, 1 = matte satin\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Roughness\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\treflectivity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Strength of the environment reflections and specular highlights\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Reflectivity\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\tcrumple: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Surface crumple — irregular dents that break reflections into hard organic shapes, like blown or vacuum-formed plastic\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Crumple\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\tcrumpleScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Size of the crumple dents — higher = smaller, denser dents\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Crumple Scale\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\tcrumpleCoverage: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How much of the surface is crumpled — 0 = pristine, 0.5 = patches of crumple, 1 = fully crumpled\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Crumple Coverage\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed — re-rolls the crumple pattern for reflection variety\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Softness of the shape boundary edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Plastic\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 315,\n\t\t\tdescription: \"Direction the studio key light comes from, in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Speed of the environment drift — the studio reflections slowly orbit the surface. 0 pauses.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tshading: {\n\t\t\tdefault: .35,\n\t\t\tdescription: \"Diffuse shading contrast — how strongly the body darkens away from the light\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shading\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\trim: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Fresnel rim light intensity on grazing surfaces\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Rim Light\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\trimColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the fresnel rim light\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Rim Color\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t}\n});\nvar Plastic_default = componentDefinition;\nexport { componentDefinition as n, Plastic_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { _ as toPolar } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"PolarCoordinates\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Convert rectangular coordinates to polar space\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"The center point for polar coordinate conversion\"),\n\t\twrap: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Controls how much of the angular range to use (1 = full 360°, 0.5 = 180°)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Wrap\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Controls how much of the radius range to use (affects the radial mapping)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Blends between original UVs (0) and polar coordinates (1)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"transparent\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: toPolar({\n\t\tcenter: p(\"center\"),\n\t\twrap: p(\"wrap\"),\n\t\tradius: p(\"radius\"),\n\t\tintensity: p(\"intensity\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the PolarCoordinates shader.\"\n});\nvar PolarCoordinates_default = componentDefinition;\nexport { componentDefinition as n, PolarCoordinates_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as mix } from \"./math-D864seEs.js\";\nimport { r as circle, u as polygon } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Polygon\",\n\tdescription: \"Regular polygon with adjustable sides and corner rounding\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e mix(polygon(x, y, u(\"radius\"), u(\"sides\")), circle(x, y, u(\"radius\")), u(\"rounding\")),\n\t\tcolorDescription: \"Fill color of the polygon\",\n\t\tcenterDescription: \"Center position of the polygon\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .4,\n\t\t\t\tdescription: \"Circumradius — distance from center to vertices in UV space\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Radius\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tsides: {\n\t\t\t\tdefault: 6,\n\t\t\t\tdescription: \"Number of sides (3 = triangle, 4 = square, 6 = hexagon, etc.)\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 3,\n\t\t\t\t\tmax: 12,\n\t\t\t\t\tstep: 1,\n\t\t\t\t\tlabel: \"Sides\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\trounding: {\n\t\t\t\tdefault: 0,\n\t\t\t\tdescription: \"Corner rounding — 0 is sharp vertices, 1 morphs into a circle\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Rounding\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Polygon_default = componentDefinition;\nexport { componentDefinition as n, Polygon_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { d as posterize } from \"./color-Do6tU0ry.js\";\nconst componentDefinition = defineStd({\n\tname: \"Posterize\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Reduce color depth to create a poster effect\",\n\tprops: { intensity: {\n\t\tdefault: 5,\n\t\tdescription: \"The intensity of the posterization effect (lower is more posterized)\",\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 2,\n\t\t\tmax: 20,\n\t\t\tstep: 1,\n\t\t\tlabel: \"Intensity\",\n\t\t\tgroup: \"Effect\"\n\t\t}\n\t} },\n\teffect: posterize(p(\"intensity\")),\n\tmissingChildMessage: \"You must pass a child component into the Posterize shader.\"\n});\nvar Posterize_default = componentDefinition;\nexport { componentDefinition as n, Posterize_default as t };\n","import { c as p, o as uniformOf, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { o as hueWheel } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, F as softPlus, H as vec4, I as splat3, P as smoothstep, T as neg, c as exp, i as clamp, n as add, o as div, p as gaussBell, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { o as segmentFrame, s as surfaceOf } from \"./frames-BLqt7oaW.js\";\nconst componentDefinition = defineStd({\n\tname: \"Prism\",\n\trole: \"generator\",\n\tcategory: \"Textures\",\n\tdescription: \"A beam of light that fans out and splits into a slowly-rotating rainbow past a controllable point. Transparent background — composite over a dark layer.\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tposition: {\n\t\t\tdefault: {\n\t\t\t\tx: .18,\n\t\t\t\ty: .18\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Where the beam originates\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Source\",\n\t\t\t\tgroup: \"Beam\"\n\t\t\t}\n\t\t},\n\t\tbeamWidth: {\n\t\t\tdefault: .04,\n\t\t\tdescription: \"Thickness of the white beam\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .002,\n\t\t\t\tmax: .3,\n\t\t\t\tstep: .002,\n\t\t\t\tlabel: \"Beam Width\",\n\t\t\t\tgroup: \"Beam\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1.6,\n\t\t\tdescription: \"Brightness (above 1 blows the core to white)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Beam\"\n\t\t\t}\n\t\t},\n\t\tbeamColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Colour of the beam before it splits\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Beam Color\",\n\t\t\t\tgroup: \"Beam\"\n\t\t\t}\n\t\t},\n\t\tstartFalloff: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"How softly the beam fades in at its source\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Start Falloff\",\n\t\t\t\tgroup: \"Beam\"\n\t\t\t}\n\t\t},\n\t\tendFalloff: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How quickly the rainbow fades out with distance\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .02,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"End Falloff\",\n\t\t\t\tgroup: \"Beam\"\n\t\t\t}\n\t\t},\n\t\tsplitPosition: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .42\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Where the beam starts to fan out and split (projected onto the beam axis)\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Split Point\",\n\t\t\t\tgroup: \"Spectrum\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"How widely the rainbow diffuses as it travels past the split point\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Spectrum\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .12,\n\t\t\tdescription: \"How quickly the white beam transitions into the rainbow\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .001,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Spectrum\"\n\t\t\t}\n\t\t},\n\t\tsaturation: {\n\t\t\tdefault: .95,\n\t\t\tdescription: \"Rainbow saturation — 0 = white, 1 = full colour\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Saturation\",\n\t\t\t\tgroup: \"Spectrum\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Speed the hue slowly rotates through the rainbow (0 = static)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Hue Speed\",\n\t\t\t\tgroup: \"Spectrum\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst u = (name) =\u003e uniformOf(p(name), params);\n\t\tconst beam = segmentFrame({\n\t\t\tfrom: p(\"position\"),\n\t\t\tto: p(\"splitPosition\")\n\t\t})(params, surfaceOf(params));\n\t\tconst soft = local(max(u(\"softness\"), .001), \"soft\");\n\t\tconst past = local(softPlus(sub(beam.along, beam.length), mul(soft, .6)), \"past\");\n\t\tconst longEnv = local(mul(smoothstep(0, max(u(\"startFalloff\"), .001), beam.along), exp(neg(div(past, max(u(\"endFalloff\"), .001))))), \"longEnv\");\n\t\tconst fanWidth = max(add(u(\"beamWidth\"), mul(past, u(\"spread\"))), .001);\n\t\tconst an = local(div(beam.across, fanWidth), \"an\");\n\t\tconst profile = gaussBell(an, 2.5);\n\t\tconst splitSat = smoothstep(beam.length, add(beam.length, soft), beam.along);\n\t\tconst hue = add(mul(an, .42), animatedTime(params));\n\t\tconst col = mix(u(\"beamColor\").member(\"rgb\"), hueWheel(hue), splat3(mul(splitSat, u(\"saturation\"))));\n\t\tconst amt = local(mul(profile, longEnv), \"amt\");\n\t\treturn vec4(local(mul(mul(col, amt), u(\"intensity\")), \"beamRgb\").member(\"xyz\"), clamp(amt, 0, 1));\n\t}\n});\nvar Prism_default = componentDefinition;\nexport { componentDefinition as n, Prism_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as transformPosition, r as transformAngle } from \"./transformations-CzFmhZww.js\";\nimport { j as progressiveBlur } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"ProgressiveBlur\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Blur that increases progressively in one direction\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Maximum intensity of the blur effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Direction of the blur gradient (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: 0,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center point where blur begins\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Distance over which blur transitions to full strength\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\t...progressiveBlur({\n\t\tintensity: p(\"intensity\"),\n\t\tangle: p(\"angle\"),\n\t\tcenter: p(\"center\"),\n\t\tfalloff: p(\"falloff\")\n\t})\n});\nvar ProgressiveBlur_default = componentDefinition;\nexport { componentDefinition as n, ProgressiveBlur_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { b as stops, f as rampOver, p as rings, r as dist } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"RadialGradient\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Radial gradient radiating from a center point\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#ff0000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The starting color at the center of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#0000ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The ending color at the edge of the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point of the radial gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The radius of the gradient (normalized, 0.0-1.0)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trepeat: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Number of times the gradient repeats. Values above 1 create concentric rings.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Repeat\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\taspect: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Stretches the gradient into an ellipse. Values below 1 compress vertically, above 1 compress horizontally.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Aspect\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tskewAngle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotates the ellipse axis in degrees. Only visible when Aspect is not 1.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Skew Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: rampOver(rings(dist.radial({\n\t\tcenter: p(\"center\"),\n\t\tradius: p(\"radius\"),\n\t\taspect: p(\"aspect\"),\n\t\tskew: p(\"skewAngle\")\n\t}), p(\"repeat\")), stops(p(\"colorSpace\")))\n});\nvar RadialGradient_default = componentDefinition;\nexport { componentDefinition as n, RadialGradient_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { c as transformPosition, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"RadialWipe\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Sweep the content away in a clock-hand arc around a center point\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the sweep has travelled (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tstartAngle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Angle in degrees where the sweep begins\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Start Angle\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tdirection: {\n\t\t\tdefault: \"cw\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Which way the sweep rotates\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Clockwise\",\n\t\t\t\t\t\tvalue: \"cw\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Counter-Clockwise\",\n\t\t\t\t\t\tvalue: \"ccw\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Both\",\n\t\t\t\t\t\tvalue: \"both\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Direction\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Point the sweep rotates around\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Softness of the sweeping edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Reverse which side of the sweep is wiped\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.angular(p(\"center\"), p(\"startAngle\"), p(\"direction\")),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"feather\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Radial Wipe shader.\"\n});\nvar RadialWipe_default = componentDefinition;\nexport { componentDefinition as n, RadialWipe_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"RandomBars\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Wipe the content away as parallel bars vanishing in random order\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the wipe has progressed (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Orientation of the bars in degrees (0 = vertical bars)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tbarCount: {\n\t\t\tdefault: 12,\n\t\t\tdescription: \"Number of bars across the frame\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Bars\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"How softly each bar fades out (0 = hard-edged bars)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Reverse the order the bars vanish in\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.directional(p(\"angle\")).bands(p(\"barCount\")).shuffled(),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"softness\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Random Bars shader.\"\n});\nvar RandomBars_default = componentDefinition;\nexport { componentDefinition as n, RandomBars_default as t };\n","import { At as colorMixing_exports, J as createPingPongPair, Or as vec2f, Pn as DEG_TO_RAD, U as createPointerVelocityTracker, Y as createStateBuffer, at as ZERO, ct as call, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { Ct as createLateBoundChildInput, a as buildGrayScottStep, c as buildPairPublishKernel, l as buildScatterSeedKernel, u as createGridKernelPass } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor, i as transformBoolean, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, I as splat3, N as sin, P as smoothstep, S as min, T as neg, V as vec3, a as cos, h as gt, i as clamp, j as select, n as add, o as div, s as dot, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { a as op, t as gridSim } from \"./grids-Cv99xcJg.js\";\nvar cm = colorMixing_exports;\nvar N = 512;\nvar COUNT = N * N;\nvar STATE_FORMAT = \"rgba16float\";\nvar MAX_ITERATIONS = 16;\nvar SEED_DENSITY = .06;\nvar RELIEF_EPS = 1.5 / N;\nvar RELIEF_STRENGTH = 6;\nvar RELIEF_AMBIENT = .42;\nvar RELIEF_LIGHT_XY = .85;\nvar RELIEF_LIGHT_Z = .55;\nvar RELIEF_SHININESS = 18;\nvar RELIEF_SPEC = .35;\nvar DEG2RAD = DEG_TO_RAD;\nvar PRESETS = {\n\tcoral: {\n\t\tfeed: .0545,\n\t\tkill: .062\n\t},\n\tmitosis: {\n\t\tfeed: .0367,\n\t\tkill: .0649\n\t},\n\tspots: {\n\t\tfeed: .03,\n\t\tkill: .062\n\t},\n\tmaze: {\n\t\tfeed: .029,\n\t\tkill: .057\n\t},\n\tworms: {\n\t\tfeed: .078,\n\t\tkill: .061\n\t},\n\tfingerprints: {\n\t\tfeed: .037,\n\t\tkill: .06\n\t},\n\tholes: {\n\t\tfeed: .039,\n\t\tkill: .058\n\t},\n\tsolitons: {\n\t\tfeed: .074,\n\t\tkill: .064\n\t},\n\tbubbles: {\n\t\tfeed: .098,\n\t\tkill: .0555\n\t},\n\twaves: {\n\t\tfeed: .014,\n\t\tkill: .045\n\t},\n\tflowers: {\n\t\tfeed: .062,\n\t\tkill: .06093\n\t}\n};\nvar CHILD_CONTRAST_MAX = 8;\nvar CHILD_DFEED = .022;\nvar CHILD_DKILL = .014;\nvar CHILD_FEED_MIN = .008;\nvar CHILD_FEED_MAX = .11;\nvar CHILD_KILL_MIN = .03;\nvar CHILD_KILL_MAX = .075;\nvar grayScott = buildGrayScottStep({\n\tn: N,\n\tnamePrefix: \"reactionDiffusion\"\n});\nvar grayScottChild = buildGrayScottStep({\n\tn: N,\n\tnamePrefix: \"reactionDiffusion\",\n\tdrive: {\n\t\tcontrastMax: CHILD_CONTRAST_MAX,\n\t\tdFeed: CHILD_DFEED,\n\t\tdKill: CHILD_DKILL,\n\t\tfeedMin: CHILD_FEED_MIN,\n\t\tfeedMax: CHILD_FEED_MAX,\n\t\tkillMin: CHILD_KILL_MIN,\n\t\tkillMax: CHILD_KILL_MAX\n\t}\n});\nvar seedSet = buildScatterSeedKernel({\n\tn: N,\n\tdensity: SEED_DENSITY,\n\tnamePrefix: \"reactionDiffusion\"\n});\nvar outputSet = buildPairPublishKernel({\n\tn: N,\n\tformat: STATE_FORMAT,\n\tnamePrefix: \"reactionDiffusion\"\n});\nconst reactionKernel = grayScott.kernel;\nconst reactionKernelChild = grayScottChild.kernel;\nconst seedKernel = seedSet.kernel;\nconst outputKernel = outputSet.kernel;\nconst componentDefinition = defineStd({\n\tname: \"ReactionDiffusion\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"A living Gray-Scott reaction-diffusion pattern that fills the layer and blooms wherever you drag the cursor\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tacceptsOptionalChild: true,\n\tusesPointer: true,\n\tprops: {\n\t\tpreset: {\n\t\t\tdefault: \"coral\",\n\t\t\tdescription: \"Named Gray-Scott regime — drives the feed \u0026 kill rates for a whole family of patterns. Choose Custom to dial feed \u0026 kill by hand\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Coral\",\n\t\t\t\t\t\tvalue: \"coral\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mitosis\",\n\t\t\t\t\t\tvalue: \"mitosis\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Spots\",\n\t\t\t\t\t\tvalue: \"spots\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Maze\",\n\t\t\t\t\t\tvalue: \"maze\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Worms\",\n\t\t\t\t\t\tvalue: \"worms\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Fingerprints\",\n\t\t\t\t\t\tvalue: \"fingerprints\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Holes\",\n\t\t\t\t\t\tvalue: \"holes\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Solitons\",\n\t\t\t\t\t\tvalue: \"solitons\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bubbles\",\n\t\t\t\t\t\tvalue: \"bubbles\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Waves\",\n\t\t\t\t\t\tvalue: \"waves\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Flowers\",\n\t\t\t\t\t\tvalue: \"flowers\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Custom\",\n\t\t\t\t\t\tvalue: \"custom\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Pattern\",\n\t\t\t\tgroup: \"Pattern\"\n\t\t\t}\n\t\t},\n\t\tfeed: {\n\t\t\tdefault: .0545,\n\t\t\tdescription: \"Feed rate — how fast chemical U is replenished (used when Pattern = Custom)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .1,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Feed\",\n\t\t\t\tgroup: \"Pattern\",\n\t\t\t\tcondition: { preset: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tkill: {\n\t\t\tdefault: .062,\n\t\t\tdescription: \"Kill rate — how fast chemical V is removed (used when Pattern = Custom)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .03,\n\t\t\t\tmax: .07,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Kill\",\n\t\t\t\tgroup: \"Pattern\",\n\t\t\t\tcondition: { preset: \"custom\" }\n\t\t\t}\n\t\t},\n\t\tdiffusionRatio: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Ratio of the two chemicals' diffusion rates — shifts the pattern character (lower = tighter, more filament-like)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .2,\n\t\t\t\tmax: .9,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Diffusion Ratio\",\n\t\t\t\tgroup: \"Pattern\"\n\t\t\t}\n\t\t},\n\t\tfeatureSize: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Size of the pattern features — lower shows finer, smaller cells; higher magnifies them into larger cells\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 6,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Feature Size\",\n\t\t\t\tgroup: \"Pattern\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Simulation steps per frame — higher evolves the pattern faster\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: MAX_ITERATIONS,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Pattern\"\n\t\t\t}\n\t\t},\n\t\tbrushSize: {\n\t\t\tdefault: .04,\n\t\t\tdescription: \"Radius of the cursor brush that seeds new reagent as you drag\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Brush Size\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tbrushStrength: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How much reagent the cursor injects while dragging\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Brush Strength\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"transparent\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Background color (empty regions between cells)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Background\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#38bdf8\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Accent color at the cell walls (mid pattern values)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Wall Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#e2f5ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the dense cell interiors (high pattern values)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Cell Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Sharpness of the cell walls — higher gives crisper, more graphic edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tthreshold: {\n\t\t\tdefault: .28,\n\t\t\tdescription: \"Pattern level the colors are centered on — shifts the balance of background vs. cells\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .05,\n\t\t\t\tmax: .6,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklch\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\trelief: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Treats the pattern as a raised surface and shades it with a light — higher gives a more sculpted, three-dimensional look (0 for a flat, graphic look)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Relief\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 135,\n\t\t\tdescription: \"Direction the surface light comes from, in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tchildInfluence: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"When a child layer is nested, how strongly its brightness biases the pattern — the preset sets the character, the child steers where it grows dense vs. sparse (0 ignores the child)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Influence\",\n\t\t\t\tgroup: \"Child\"\n\t\t\t}\n\t\t},\n\t\tchildContrast: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Contrast applied to the child's brightness before it drives the pattern — higher pushes toward a crisp two-tone split (edges), lower keeps smooth tonal shading\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Child\"\n\t\t\t}\n\t\t},\n\t\tchildThreshold: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Brightness level of the child that reads as neutral — shifts which tones grow the pattern vs. clear it\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Child\"\n\t\t\t}\n\t\t},\n\t\tchildInvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Flip which tones of the child grow the pattern (bright vs. dark areas)\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Child\"\n\t\t\t}\n\t\t}\n\t},\n\t...gridSim((params, root) =\u003e {\n\t\tconst { getCpuValue, registerComputeTexture, onCleanup, childNode } = params;\n\t\tconst hasChild = !!childNode;\n\t\tconst bufferA = createStateBuffer(root, vec2f, COUNT);\n\t\tconst bufferB = createStateBuffer(root, vec2f, COUNT);\n\t\tconst outTex = root.createTexture({\n\t\t\tsize: [N, N],\n\t\t\tformat: STATE_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\");\n\t\tonCleanup(() =\u003e outTex.destroy());\n\t\tconst rdTexture = registerComputeTexture(outTex);\n\t\tconst variant = hasChild ? grayScottChild : grayScott;\n\t\tconst paramsU = root.createUniform(variant.Params);\n\t\tconst size = [N, N];\n\t\tconst state = createPingPongPair(bufferA, bufferB);\n\t\tconst output = createGridKernelPass(root, outputSet.kernel, { size });\n\t\tconst outGroup = state.perSide((srcBuf) =\u003e output.with(root.createBindGroup(outputSet.layout, {\n\t\t\tsrcBuf,\n\t\t\toutTex\n\t\t})));\n\t\tconst seed = createGridKernelPass(root, seedSet.kernel, {\n\t\t\tsize,\n\t\t\tbindGroup: root.createBindGroup(seedSet.layout, { stateBuf: bufferA })\n\t\t});\n\t\tconst reaction = createGridKernelPass(root, variant.kernel, { size });\n\t\tconst generatorGroup = hasChild ? null : state.groups((readBuf, writeBuf) =\u003e reaction.with(root.createBindGroup(grayScott.layout, {\n\t\t\treadBuf,\n\t\t\twriteBuf,\n\t\t\tparams: paramsU.buffer\n\t\t})));\n\t\tconst child = hasChild ? createLateBoundChildInput(params, (childTex) =\u003e state.groups((readBuf, writeBuf) =\u003e reaction.with(root.createBindGroup(grayScottChild.layout, {\n\t\t\treadBuf,\n\t\t\twriteBuf,\n\t\t\tparams: paramsU.buffer,\n\t\t\tdriveTex: childTex\n\t\t})))) : null;\n\t\tlet needsSeed = true;\n\t\tlet lastPreset = \"\";\n\t\tconst pointer = createPointerVelocityTracker();\n\t\tlet reactGroup = null;\n\t\tlet iters = 1;\n\t\treturn {\n\t\t\toutputs: { rdTexture },\n\t\t\t...child ? { bindInputs: child.bindInputs } : {},\n\t\t\tclampDt: .05,\n\t\t\tstages: [\n\t\t\t\top.readyWhen(() =\u003e {\n\t\t\t\t\treactGroup = child ? child.bound() : generatorGroup;\n\t\t\t\t\treturn !!reactGroup;\n\t\t\t\t}),\n\t\t\t\top.values(\"feed/kill+brush\", (f) =\u003e {\n\t\t\t\t\tconst fp = f.frameParams;\n\t\t\t\t\tconst g = f.num;\n\t\t\t\t\tconst hgt = fp.dimensions?.height ?? 0;\n\t\t\t\t\tconst aspect = hgt \u003e 0 ? (fp.dimensions?.width ?? 0) / hgt : 1;\n\t\t\t\t\tconst preset = getCpuValue(\"preset\") || \"coral\";\n\t\t\t\t\tif (preset !== lastPreset) {\n\t\t\t\t\t\tlastPreset = preset;\n\t\t\t\t\t\tneedsSeed = true;\n\t\t\t\t\t}\n\t\t\t\t\tconst pk = PRESETS[preset];\n\t\t\t\t\tconst feed = pk ? pk.feed : g(\"feed\", .055);\n\t\t\t\t\tconst kill = pk ? pk.kill : g(\"kill\", .062);\n\t\t\t\t\tconst view = 1 / Math.max(g(\"featureSize\", 3), 1e-4);\n\t\t\t\t\tconst sx = Math.min(aspect, 1);\n\t\t\t\t\tconst sy = Math.min(1 / aspect, 1);\n\t\t\t\t\tconst move = pointer.update(fp.pointer, .016);\n\t\t\t\t\tconst fieldX = (move.x - .5) * sx * view + .5;\n\t\t\t\t\tconst fieldY = (move.y - .5) * sy * view + .5;\n\t\t\t\t\tconst cursorSpeed = Math.sqrt(move.dx * move.dx + move.dy * move.dy);\n\t\t\t\t\tconst velScale = cursorSpeed \u003e 5e-4 \u0026\u0026 g(\"brushStrength\", .6) \u003e 0 ? Math.min(cursorSpeed / .02, 1) : 0;\n\t\t\t\t\tconst brushRadGrid = g(\"brushSize\", .04) * N * view;\n\t\t\t\t\tconst invRaw = getCpuValue(\"childInvert\");\n\t\t\t\t\titers = Math.min(MAX_ITERATIONS, Math.max(1, Math.round(g(\"speed\", 6))));\n\t\t\t\t\tparamsU.write({\n\t\t\t\t\t\tfeed,\n\t\t\t\t\t\tkill,\n\t\t\t\t\t\tdv: g(\"diffusionRatio\", .5),\n\t\t\t\t\t\tbrushRadSq: brushRadGrid * brushRadGrid,\n\t\t\t\t\t\tbrushStrength: g(\"brushStrength\", .6),\n\t\t\t\t\t\tcursorX: fieldX * N,\n\t\t\t\t\t\tcursorY: fieldY * N,\n\t\t\t\t\t\tcursorActive: velScale,\n\t\t\t\t\t\tdriveInfluence: g(\"childInfluence\", .6),\n\t\t\t\t\t\tdriveContrast: g(\"childContrast\", .5),\n\t\t\t\t\t\tdriveThreshold: g(\"childThreshold\", .5),\n\t\t\t\t\t\tdriveInvert: invRaw === true || invRaw === 1 ? 1 : 0,\n\t\t\t\t\t\tdriveMapX: 1 / (sx * view),\n\t\t\t\t\t\tdriveMapY: 1 / (sy * view),\n\t\t\t\t\t\t_pad0: 0,\n\t\t\t\t\t\t_pad1: 0\n\t\t\t\t\t});\n\t\t\t\t}),\n\t\t\t\top.seedOnce({\n\t\t\t\t\tpass: seed,\n\t\t\t\t\tstaleWhen: () =\u003e needsSeed,\n\t\t\t\t\tonSeed: () =\u003e {\n\t\t\t\t\t\tneedsSeed = false;\n\t\t\t\t\t\tstate.reset();\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\top.iterate({\n\t\t\t\t\tcount: () =\u003e iters,\n\t\t\t\t\tstep: (_i, nodes) =\u003e {\n\t\t\t\t\t\tnodes.push(reactGroup());\n\t\t\t\t\t\tstate.swap();\n\t\t\t\t\t}\n\t\t\t\t}),\n\t\t\t\top.publish(() =\u003e outGroup.read())\n\t\t\t]\n\t\t};\n\t}),\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { ctx, computeOutputs, propValues, uniforms } = params;\n\t\tconst rdField = computeOutputs?.rdTexture;\n\t\tif (!rdField) return ZERO;\n\t\tconst view = local(div(1, uniforms.featureSize), \"view\");\n\t\tconst sx = min(ctx.aspect, 1);\n\t\tconst sy = min(div(1, ctx.aspect), 1);\n\t\tconst sampleUV = local(vec2(add(mul(mul(sub(ctx.uv.member(\"x\"), .5), sx), view), .5), add(mul(mul(sub(ctx.uv.member(\"y\"), .5), sy), view), .5)), \"sampleUV\");\n\t\tconst V = rdField.sample(sampleUV, \"linearClamp\").member(\"y\");\n\t\tconst w = local(max(sub(.6, mul(uniforms.contrast, .55)), .02), \"rampW\");\n\t\tconst t = local(smoothstep(sub(uniforms.threshold, w), add(uniforms.threshold, w), V), \"rampT\");\n\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\tconst variant = cm.mixColorsVariants[colorSpaceMode] ?? cm.mixColorsLinear;\n\t\tconst lowSeg = call(variant, \"mixColors\", [\n\t\t\tuniforms.colorA,\n\t\t\tuniforms.colorC,\n\t\t\tclamp(mul(t, 2), 0, 1)\n\t\t]);\n\t\tconst highSeg = call(variant, \"mixColors\", [\n\t\t\tuniforms.colorC,\n\t\t\tuniforms.colorB,\n\t\t\tclamp(sub(mul(t, 2), 1), 0, 1)\n\t\t]);\n\t\tconst color = local(select(gt(t, .5), highSeg, lowSeg), \"rampColor\");\n\t\tconst vL = rdField.sample(add(sampleUV, vec2(-RELIEF_EPS, 0)), \"linearClamp\").member(\"y\");\n\t\tconst vR = rdField.sample(add(sampleUV, vec2(RELIEF_EPS, 0)), \"linearClamp\").member(\"y\");\n\t\tconst vT = rdField.sample(add(sampleUV, vec2(0, -RELIEF_EPS)), \"linearClamp\").member(\"y\");\n\t\tconst vB = rdField.sample(add(sampleUV, vec2(0, RELIEF_EPS)), \"linearClamp\").member(\"y\");\n\t\tconst gx = mul(sub(vR, vL), RELIEF_STRENGTH);\n\t\tconst gy = mul(sub(vB, vT), RELIEF_STRENGTH);\n\t\tconst n = local(normalize(vec3(neg(gx), neg(gy), 1)), \"reliefN\");\n\t\tconst ang = local(mul(uniforms.lightAngle, DEG2RAD), \"lightAng\");\n\t\tconst lightDir = local(normalize(vec3(mul(cos(ang), RELIEF_LIGHT_XY), mul(sin(ang), RELIEF_LIGHT_XY), RELIEF_LIGHT_Z)), \"lightDir\");\n\t\tconst diff = clamp(dot(n, lightDir), 0, 1);\n\t\tconst shade = add(RELIEF_AMBIENT, mul(1 - RELIEF_AMBIENT, diff));\n\t\tconst spec = mul(pow(clamp(dot(n, normalize(add(lightDir, vec3(0, 0, 1)))), 0, 1), RELIEF_SHININESS), RELIEF_SPEC);\n\t\tconst litRgb = add(mul(color.member(\"rgb\"), shade), splat3(spec));\n\t\treturn vec4(mix(color.member(\"rgb\"), litRgb, uniforms.relief), color.member(\"a\"));\n\t} }\n});\nvar ReactionDiffusion_default = componentDefinition;\nexport { reactionKernelChild as a, reactionKernel as i, componentDefinition as n, seedKernel as o, outputKernel as r, ReactionDiffusion_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { l as fromPolar } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"RectangularCoordinates\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Convert polar coordinates back to rectangular space\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"The center point for rectangular coordinate conversion\"),\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale factor for the rectangular output\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Blends between original UVs (0) and rectangular coordinates (1)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"transparent\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: fromPolar({\n\t\tcenter: p(\"center\"),\n\t\tscale: p(\"scale\"),\n\t\tintensity: p(\"intensity\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the RectangularCoordinates shader.\"\n});\nvar RectangularCoordinates_default = componentDefinition;\nexport { componentDefinition as n, RectangularCoordinates_default as t };\n","import { Ot as unpremultiplyAlpha, at as ZERO, c as p, ct as call, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { A as planarReflection, S as mirrorAcrossRow, p as depthRampBlur } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"ReflectivePlane\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Reflective floor that mirrors the content above it\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\theight: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Vertical position of the reflective surface\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Floor Height\",\n\t\t\t\tgroup: \"Plane\"\n\t\t\t}\n\t\t},\n\t\tdistance: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far below the floor the reflection remains visible before fully fading to transparent.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Reflection Distance\",\n\t\t\t\tgroup: \"Plane\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Width of the fade zone, as a fraction of reflection distance.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Reflection Falloff\",\n\t\t\t\tgroup: \"Plane\"\n\t\t\t}\n\t\t},\n\t\tblur: {\n\t\t\tdefault: 3,\n\t\t\tdescription: \"Maximum blur applied to the reflection far from the surface.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Blur\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tblurDistance: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"How far below the surface the blur takes to ramp from sharp to maximum.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Blur Distance\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"stretch\",\n\t\t\tdescription: \"How to handle reflected samples that fall outside the source content.\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t}\n\t},\n\t...depthRampBlur({\n\t\tline: p(\"height\"),\n\t\tblur: p(\"blur\"),\n\t\tblurDistance: p(\"blurDistance\"),\n\t\thalfKernel: 30\n\t}),\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { childNode, ctx, computeOutputs, convertToTexture } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst blurred = computeOutputs?.blurredTexture;\n\t\tconst source = computeOutputs?.childTexture ?? convertToTexture(childNode);\n\t\tconst reflectionTex = blurred ?? source;\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [planarReflection({\n\t\t\tline: p(\"height\"),\n\t\t\tdistance: p(\"distance\"),\n\t\t\tfalloff: p(\"falloff\"),\n\t\t\tedges: p(\"edges\")\n\t\t}, source.sample(ctx.uv), (uv) =\u003e reflectionTex.sample(uv), mirrorAcrossRow(p(\"height\")))(params)]);\n\t} }\n});\nvar ReflectivePlane_default = componentDefinition;\nexport { componentDefinition as n, ReflectivePlane_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { d as ring } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Ring\",\n\tdescription: \"Annular ring (donut) with adjustable radius and band thickness\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e ring(x, y, u(\"radius\"), u(\"thickness\")),\n\t\trotatable: false,\n\t\tcolorDescription: \"Fill color of the ring\",\n\t\tcenterDescription: \"Center position of the ring\",\n\t\tbounds: { custom: {\n\t\t\tpropBindings: {\n\t\t\t\tx: {\n\t\t\t\t\tprop: \"center\",\n\t\t\t\t\tas: \"position-x\"\n\t\t\t\t},\n\t\t\t\ty: {\n\t\t\t\t\tprop: \"center\",\n\t\t\t\t\tas: \"position-y\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tcomputeBounds(props, cw, ch) {\n\t\t\t\tconst radius = props.radius ?? .5;\n\t\t\t\tconst thickness = props.thickness ?? 0;\n\t\t\t\tconst cx = typeof props.center?.x === \"number\" ? props.center.x : .5;\n\t\t\t\tconst cy = typeof props.center?.y === \"number\" ? props.center.y : .5;\n\t\t\t\tconst diameter = (radius + thickness) * 2 * ch;\n\t\t\t\treturn {\n\t\t\t\t\tcenterXPx: cx * cw,\n\t\t\t\t\tcenterYPx: cy * ch,\n\t\t\t\t\twidthPx: diameter,\n\t\t\t\t\theightPx: diameter,\n\t\t\t\t\trotationDeg: 0\n\t\t\t\t};\n\t\t\t},\n\t\t\twriteBounds(bounds, currentProps, cw, ch) {\n\t\t\t\tconst thickness = currentProps.thickness ?? 0;\n\t\t\t\tconst newOuter = Math.max(0, bounds.widthPx / (2 * ch));\n\t\t\t\treturn {\n\t\t\t\t\tcenter: {\n\t\t\t\t\t\t...currentProps.center ?? {\n\t\t\t\t\t\t\tx: .5,\n\t\t\t\t\t\t\ty: .5\n\t\t\t\t\t\t},\n\t\t\t\t\t\tx: bounds.centerXPx / cw,\n\t\t\t\t\t\ty: bounds.centerYPx / ch\n\t\t\t\t\t},\n\t\t\t\t\tradius: Math.max(0, newOuter - thickness)\n\t\t\t\t};\n\t\t\t}\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .3,\n\t\t\t\tdescription: \"Distance from center to the ring's midline in UV space\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Radius\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tthickness: {\n\t\t\t\tdefault: .07,\n\t\t\t\tdescription: \"Half-width of the ring band — total ring width is twice this value\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .005,\n\t\t\t\t\tmax: .3,\n\t\t\t\t\tstep: .005,\n\t\t\t\t\tlabel: \"Thickness\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tstroke: {\n\t\t\tsoftnessDescription: \"Edge softness for antialiasing (applied to both inner and outer ring edges)\",\n\t\t\tstrokeThicknessMax: .1,\n\t\t\tstrokePositionDescription: \"Position of the stroke relative to the ring edge\"\n\t\t}\n\t}\n});\nvar Ring_default = componentDefinition;\nexport { componentDefinition as n, Ring_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, b as ringWaves } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Ripples\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Concentric animated ripples emanating from a point\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point where ripples emanate from\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the ripple waves\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Background color between ripples\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Speed of ripple animation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Number of ripples/spacing between them\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 80,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Softness of ripple edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Thickness of each ripple band\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tphase: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Phase offset for ripple animation\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 6.28,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Phase\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokeOver({\n\t\tfill: p(\"colorB\"),\n\t\tstroke: p(\"colorA\"),\n\t\tmask: ringWaves({\n\t\t\tcenter: p(\"center\"),\n\t\t\tfrequency: p(\"frequency\"),\n\t\t\tthickness: p(\"thickness\"),\n\t\t\tsoftness: p(\"softness\"),\n\t\t\tphase: p(\"phase\")\n\t\t})\n\t})\n});\nvar Ripples_default = componentDefinition;\nexport { componentDefinition as n, Ripples_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { c as transformPosition, i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"RippleWipe\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Wipe the content away in concentric rings pulsing out from a center point\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the ripple has expanded (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Point the rings expand from\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trings: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of concentric rings\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 40,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rings\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"How softly adjacent rings' timing overlaps (0 = discrete ring pops)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Wipe from the outside inward instead\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.radial(p(\"center\")).bands(p(\"rings\")),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"feather\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Ripple Wipe shader.\"\n});\nvar RippleWipe_default = componentDefinition;\nexport { componentDefinition as n, RippleWipe_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { f as roundedRect } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"RoundedRect\",\n\tdescription: \"Rounded rectangle with adjustable width, height, and corner rounding\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e roundedRect(x, y, u(\"width\"), u(\"height\"), u(\"rounding\")),\n\t\tcolorDescription: \"Fill color of the rectangle\",\n\t\tcenterDescription: \"Center position of the rectangle\",\n\t\tbounds: { size: {\n\t\t\twidth: \"width\",\n\t\t\theight: \"height\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\twidth: {\n\t\t\t\tdefault: .35,\n\t\t\t\tdescription: \"Half-width of the rectangle\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Width\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdefault: .25,\n\t\t\t\tdescription: \"Half-height of the rectangle\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Height\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\trounding: {\n\t\t\t\tdefault: .05,\n\t\t\t\tdescription: \"Corner rounding radius — set to min(width, height) for a pill shape\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: .5,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Rounding\",\n\t\t\t\t\tgroup: \"Shape\",\n\t\t\t\t\tdimensional: \"canvas-height\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar RoundedRect_default = componentDefinition;\nexport { componentDefinition as n, RoundedRect_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { f as saturate } from \"./color-Do6tU0ry.js\";\nimport { n as crosses, r as isValue } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"Saturation\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Adjust color saturation intensity\",\n\tprops: { intensity: {\n\t\tdefault: 1,\n\t\tdescription: \"The intensity of the saturation effect (1 being no change)\",\n\t\trecompile: crosses(1),\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 3,\n\t\t\tstep: .1,\n\t\t\tlabel: \"Intensity\",\n\t\t\tgroup: \"Adjustments\"\n\t\t}\n\t} },\n\teffect: saturate(p(\"intensity\")),\n\tidentityWhen: isValue(\"intensity\", 1),\n\tmissingChildMessage: \"You must pass a child component into the Saturation shader.\"\n});\nvar Saturation_default = componentDefinition;\nexport { componentDefinition as n, Saturation_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { _ as rawPlane, b as scratchStreaks, f as linearPair, m as noiseTone } from \"./noise-d7rmP9yc.js\";\nimport { n as noiseColorPropsAB, r as noiseSpeedProp } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"Scratches\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Fine hairline scratches, like a worn film or scratched surface\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\t...noiseColorPropsAB(),\n\t\tscale: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Pattern scale (higher = more, finer scratches)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Thickness of the scratches (higher = bolder streaks)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseSpeedProp()\n\t},\n\tpaint: rampOver(noiseTone(rawPlane(scratchStreaks({ thickness: p(\"thickness\") }), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t})), linearPair(p(\"colorA\"), p(\"colorB\")))\n});\nvar Scratches_default = componentDefinition;\nexport { componentDefinition as n, Scratches_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { i as isZero, n as crosses } from \"./slots-BqIef2iV.js\";\nimport { V as sharpen } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"Sharpness\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Adjust image sharpness using a convolution kernel\",\n\tprops: { sharpness: {\n\t\tdefault: 0,\n\t\tdescription: \"How sharp to make the underlying image\",\n\t\trecompile: crosses(0),\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: 0,\n\t\t\tmax: 5,\n\t\t\tstep: .1,\n\t\t\tlabel: \"Sharpness\",\n\t\t\tgroup: \"Adjustments\"\n\t\t}\n\t} },\n\tidentityWhen: isZero(\"sharpness\"),\n\teffect: sharpen(p(\"sharpness\"))\n});\nvar Sharpness_default = componentDefinition;\nexport { componentDefinition as n, Sharpness_default as t };\n","import { Ar as vec2u, Br as struct, Gn as typegpu_default, Mr as vec4f, Or as vec2f, Ot as unpremultiplyAlpha, Rr as textureStorage2d, V as toHalfFloat, X as applyEdgeHandlingExpr, Y as createStateBuffer, Yn as textureStore, Yr as u32, at as ZERO, ct as call, ft as floatE, hr as max, jr as vec3f, mr as length, q as createGuardedCompute, qr as f32, t as defineStd, wr as smoothstep, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { s as transformEdges } from \"./transformations-CzFmhZww.js\";\nvar VORONOI_FORMAT = \"rgba16float\";\nfunction makeVoronoiGraph(count, size) {\n\tconst layout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\t\tcellPos: {\n\t\t\tstorage: arrayOf(f32, count * 2),\n\t\t\taccess: \"readonly\"\n\t\t},\n\t\tvoronoiTex: { storageTexture: textureStorage2d(VORONOI_FORMAT, \"write-only\") }\n\t}), \"layout\");\n\treturn {\n\t\tlayout,\n\t\tkernel: typegpu_default.fn([u32, u32])(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tconst u = __tsover_div(__tsover_add(f32(cx), .5), size);\n\t\t\tconst v = __tsover_div(__tsover_add(f32(cy), .5), size);\n\t\t\tlet d1 = f32(99999);\n\t\t\tlet d2 = f32(99999);\n\t\t\tlet idx1 = f32(0);\n\t\t\tlet idx2 = f32(0);\n\t\t\tfor (let i = 0; i \u003c count; i++) {\n\t\t\t\tconst cellX = layout.$.cellPos[__tsover_mul(i, 2)];\n\t\t\t\tconst cellY = layout.$.cellPos[__tsover_add(__tsover_mul(i, 2), 1)];\n\t\t\t\tconst ddx = __tsover_sub(u, cellX);\n\t\t\t\tconst ddy = __tsover_sub(v, cellY);\n\t\t\t\tconst distSq = __tsover_add(__tsover_mul(ddx, ddx), __tsover_mul(ddy, ddy));\n\t\t\t\tif (distSq \u003c d1) {\n\t\t\t\t\td2 = d1;\n\t\t\t\t\tidx2 = idx1;\n\t\t\t\t\td1 = distSq;\n\t\t\t\t\tidx1 = f32(i);\n\t\t\t\t} else if (distSq \u003c d2) {\n\t\t\t\t\td2 = distSq;\n\t\t\t\t\tidx2 = f32(i);\n\t\t\t\t}\n\t\t\t}\n\t\t\ttextureStore(layout.$.voronoiTex, vec2u(cx, cy), vec4f(idx1, idx2, 0, 0));\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cx\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"size\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t13,\n\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t[\"cy\"]\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"/\",\n\t\t\t\t\t\t\t\"size\"\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"99999\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"99999\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"idx1\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t12,\n\t\t\t\t\t\t\"idx2\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t[[5, \"0\"]]\n\t\t\t\t\t\t]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t14,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t12,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\"count\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t102,\n\t\t\t\t\t\t\t\"++\",\n\t\t\t\t\t\t\t\"i\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"cellX\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"cellPos\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"cellY\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t8,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"cellPos\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\t\"i\",\n\t\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\t[5, \"2\"]\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"u\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"cellX\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"v\",\n\t\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\t\"cellY\"\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t13,\n\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ddx\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"ddx\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"ddy\",\n\t\t\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t\t\t\"ddy\"\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\"d1\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t[0, [\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\"d1\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"idx2\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\"idx1\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"d1\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\"distSq\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"idx1\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t]],\n\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t11,\n\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\t\t\"distSq\",\n\t\t\t\t\t\t\t\t\t\t\"\u003c\",\n\t\t\t\t\t\t\t\t\t\t\"d2\"\n\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t[0, [[\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"d2\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t\"distSq\"\n\t\t\t\t\t\t\t\t\t], [\n\t\t\t\t\t\t\t\t\t\t2,\n\t\t\t\t\t\t\t\t\t\t\"idx2\",\n\t\t\t\t\t\t\t\t\t\t\"=\",\n\t\t\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\t\t\t\"d.f32\",\n\t\t\t\t\t\t\t\t\t\t\t[\"i\"]\n\t\t\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t\t]]]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]]\n\t\t\t\t\t],\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.textureStore\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"layout\",\n\t\t\t\t\t\t\t\t\t\"$\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"voronoiTex\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec2u\",\n\t\t\t\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t\t\"d.vec4f\",\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t\"idx1\",\n\t\t\t\t\t\t\t\t\t\"idx2\",\n\t\t\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\t\t[5, \"0\"]\n\t\t\t\t\t\t\t\t]\n\t\t\t\t\t\t\t]\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]]\n\t\t\t},\n\t\t\texternals: {\n\t\t\t\t\"d.f32\": () =\u003e f32,\n\t\t\t\t\"size\": () =\u003e size,\n\t\t\t\t\"count\": () =\u003e count,\n\t\t\t\t\"layout\": () =\u003e layout,\n\t\t\t\t\"std.textureStore\": () =\u003e textureStore,\n\t\t\t\t\"d.vec2u\": () =\u003e vec2u,\n\t\t\t\t\"d.vec4f\": () =\u003e vec4f\n\t\t\t}\n\t\t}) \u0026\u0026 $.f)({})).$name(\"voronoiNearest2\")\n\t};\n}\nvar voronoiGraphCache = /* @__PURE__ */ new Map();\nfunction voronoiNearest2Graph(count, size) {\n\tconst key = `${count}|${size}`;\n\tlet g = voronoiGraphCache.get(key);\n\tif (!g) {\n\t\tg = makeVoronoiGraph(count, size);\n\t\tvoronoiGraphCache.set(key, g);\n\t}\n\treturn g;\n}\nvar cellLaneUVCache = /* @__PURE__ */ new Map();\nfunction makeCellLaneUV(laneWidth) {\n\treturn typegpu_default.fn([f32, f32], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((idx, field) =\u003e {\n\t\t\"use gpu\";\n\t\treturn vec2f(__tsover_div(__tsover_add(__tsover_add(__tsover_mul(idx, 4), field), .5), laneWidth), .5);\n\t}), {\n\t\tv: 2,\n\t\tname: void 0,\n\t\tast: {\n\t\t\t\"params\": [{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"idx\"\n\t\t\t}, {\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"field\"\n\t\t\t}],\n\t\t\t\"body\": [0, [[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec2f\",\n\t\t\t\t[[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t\"idx\",\n\t\t\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\t\t[5, \"4\"]\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t\t\"field\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.5\"]\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t\"laneWidth\"\n\t\t\t\t], [5, \"0.5\"]]\n\t\t\t]]]]\n\t\t},\n\t\texternals: {\n\t\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\t\"laneWidth\": () =\u003e laneWidth\n\t\t}\n\t}) \u0026\u0026 $.f)({}));\n}\nfunction cellLaneUVFor(laneWidth) {\n\tlet fn = cellLaneUVCache.get(laneWidth);\n\tif (!fn) {\n\t\tfn = makeCellLaneUV(laneWidth);\n\t\tcellLaneUVCache.set(laneWidth, fn);\n\t}\n\treturn fn;\n}\nconst CrackGeom = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tcrackIntensity: f32,\n\tedgeNormal: vec2f,\n\tdisplacedUV: vec2f,\n\tdisp: vec2f\n}), \"CrackGeom\");\nconst crackGeom = typegpu_default.fn([\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], CrackGeom)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, nPosX, nPosY, sPosX, sPosY, dispX, dispY, crackWidth) =\u003e {\n\t\"use gpu\";\n\tconst nearestPos = vec2f(nPosX, nPosY);\n\tconst secondPos = vec2f(sPosX, sPosY);\n\tconst disp = vec2f(dispX, dispY);\n\tconst fromNearest = uv.sub(nearestPos);\n\tconst minDist1 = length(fromNearest);\n\tconst minDist2 = length(uv.sub(secondPos));\n\tconst displacementMag = length(disp);\n\tconst edgeDiff = __tsover_sub(minDist2, minDist1);\n\tconst crackThreshold = __tsover_mul(crackWidth, .005);\n\tconst baseCrackIntensity = __tsover_sub(1, smoothstep(0, crackThreshold, edgeDiff));\n\tconst displacementFactor = smoothstep(0, .01, displacementMag);\n\tconst crackIntensity = __tsover_mul(baseCrackIntensity, displacementFactor);\n\tconst toNearest = fromNearest.div(max(minDist1, 1e-5));\n\treturn CrackGeom({\n\t\tcrackIntensity,\n\t\tedgeNormal: vec2f(__tsover_mul(toNearest.y, -1), toNearest.x),\n\t\tdisplacedUV: uv.sub(disp),\n\t\tdisp\n\t});\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"uv\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"nPosX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"nPosY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sPosX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"sPosY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dispX\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"dispY\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"crackWidth\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"nearestPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"nPosX\", \"nPosY\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"secondPos\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"sPosX\", \"sPosY\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"disp\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[\"dispX\", \"dispY\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"fromNearest\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"nearestPos\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"minDist1\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"fromNearest\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"minDist2\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"secondPos\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacementMag\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"disp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeDiff\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"minDist2\",\n\t\t\t\t\t\"-\",\n\t\t\t\t\t\"minDist1\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"crackThreshold\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"crackWidth\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.005\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"baseCrackIntensity\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"-\",\n\t\t\t\t\t[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t\t\"crackThreshold\",\n\t\t\t\t\t\t\t\"edgeDiff\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacementFactor\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.01\"],\n\t\t\t\t\t\t\"displacementMag\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"crackIntensity\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"baseCrackIntensity\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t\"displacementFactor\"\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"toNearest\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"fromNearest\",\n\t\t\t\t\t\t\"div\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t\"std.max\",\n\t\t\t\t\t\t[\"minDist1\", [5, \"0.00001\"]]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"edgeNormal\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec2f\",\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"toNearest\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t4,\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t]\n\t\t\t\t\t], [\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"toNearest\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacedUV\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"uv\",\n\t\t\t\t\t\t\"sub\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"disp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"CrackGeom\",\n\t\t\t\t[[104, {\n\t\t\t\t\t\"crackIntensity\": \"crackIntensity\",\n\t\t\t\t\t\"edgeNormal\": \"edgeNormal\",\n\t\t\t\t\t\"displacedUV\": \"displacedUV\",\n\t\t\t\t\t\"disp\": \"disp\"\n\t\t\t\t}]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec2f\": () =\u003e vec2f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"std.max\": () =\u003e max,\n\t\t\"CrackGeom\": () =\u003e CrackGeom\n\t}\n}) \u0026\u0026 $.f)({}));\nconst crackRefractUV = typegpu_default.fn([\n\tvec2f,\n\tvec2f,\n\tf32,\n\tf32,\n\tf32,\n\tf32\n], vec2f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((displacedUV, edgeNormal, crackIntensity, refractionStrength, chromaticSplit, channel) =\u003e {\n\t\"use gpu\";\n\tconst refractionOffset = edgeNormal.mul(__tsover_mul(refractionStrength, .01));\n\tconst chromaticOffset = __tsover_mul(chromaticSplit, .005);\n\tconst chromaShift = edgeNormal.mul(__tsover_mul(channel, chromaticOffset));\n\tconst offset = refractionOffset.add(chromaShift);\n\treturn displacedUV.add(offset.mul(crackIntensity));\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"displacedUV\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"edgeNormal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"crackIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"refractionStrength\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"chromaticSplit\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"channel\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"refractionOffset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"edgeNormal\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"refractionStrength\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t[5, \"0.01\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chromaticOffset\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t\"chromaticSplit\",\n\t\t\t\t\t\"*\",\n\t\t\t\t\t[5, \"0.005\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"chromaShift\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"edgeNormal\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"channel\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"chromaticOffset\"\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"offset\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"refractionOffset\",\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"chromaShift\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t[\n\t\t\t\t\t7,\n\t\t\t\t\t\"displacedUV\",\n\t\t\t\t\t\"add\"\n\t\t\t\t],\n\t\t\t\t[[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"offset\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"crackIntensity\"]\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nvar SHARD_LIGHT_DIR_X = .3 / Math.hypot(.3, .6);\nvar SHARD_LIGHT_DIR_Y = .6 / Math.hypot(.3, .6);\nconst crackShardCompose = typegpu_default.fn([\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tvec4f,\n\tf32,\n\tvec2f,\n\tf32\n], vec4f)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((normalColor, rFinal, gFinal, bFinal, crackIntensity, disp, shardLighting) =\u003e {\n\t\"use gpu\";\n\tconst refractedRGB = vec3f(rFinal.x, gFinal.y, bFinal.z);\n\tconst shadedRGB = normalColor.xyz.mul(__tsover_sub(1, crackIntensity)).add(refractedRGB.mul(crackIntensity));\n\tconst displacementLength = length(disp);\n\tconst tiltX = __tsover_div(disp.x, __tsover_add(displacementLength, .001));\n\tconst tiltY = __tsover_div(disp.y, __tsover_add(displacementLength, .001));\n\tconst normalDot = __tsover_add(__tsover_mul(tiltX, SHARD_LIGHT_DIR_X), __tsover_mul(tiltY, SHARD_LIGHT_DIR_Y));\n\tconst lightingFactor = __tsover_add(1, __tsover_mul(normalDot, shardLighting));\n\tconst lightingIntensity = smoothstep(0, .02, displacementLength);\n\tconst finalLighting = __tsover_add(1, __tsover_mul(__tsover_sub(lightingFactor, 1), lightingIntensity));\n\treturn vec4f(shadedRGB.mul(finalLighting), normalColor.w);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"normalColor\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"rFinal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"gFinal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"bFinal\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"crackIntensity\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"disp\"\n\t\t\t},\n\t\t\t{\n\t\t\t\t\"type\": \"i\",\n\t\t\t\t\"name\": \"shardLighting\"\n\t\t\t}\n\t\t],\n\t\t\"body\": [0, [\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"refractedRGB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"d.vec3f\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"rFinal\",\n\t\t\t\t\t\t\t\"x\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"gFinal\",\n\t\t\t\t\t\t\t\"y\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"bFinal\",\n\t\t\t\t\t\t\t\"z\"\n\t\t\t\t\t\t]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"shadedRGB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t6,\n\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\t\t\"normalColor\",\n\t\t\t\t\t\t\t\t\t\"xyz\"\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t[[\n\t\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t\t\"crackIntensity\"\n\t\t\t\t\t\t\t]]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"add\"\n\t\t\t\t\t],\n\t\t\t\t\t[[\n\t\t\t\t\t\t6,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t7,\n\t\t\t\t\t\t\t\"refractedRGB\",\n\t\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t\t],\n\t\t\t\t\t\t[\"crackIntensity\"]\n\t\t\t\t\t]]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"displacementLength\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.length\",\n\t\t\t\t\t[\"disp\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tiltX\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"disp\",\n\t\t\t\t\t\t\"x\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"displacementLength\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"tiltY\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"disp\",\n\t\t\t\t\t\t\"y\"\n\t\t\t\t\t],\n\t\t\t\t\t\"/\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"displacementLength\",\n\t\t\t\t\t\t\"+\",\n\t\t\t\t\t\t[5, \"0.001\"]\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"normalDot\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tiltX\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"SHARD_LIGHT_DIR_X\"\n\t\t\t\t\t],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"tiltY\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"SHARD_LIGHT_DIR_Y\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightingFactor\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t\"normalDot\",\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"shardLighting\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"lightingIntensity\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t\"std.smoothstep\",\n\t\t\t\t\t[\n\t\t\t\t\t\t[5, \"0\"],\n\t\t\t\t\t\t[5, \"0.02\"],\n\t\t\t\t\t\t\"displacementLength\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalLighting\",\n\t\t\t\t[\n\t\t\t\t\t1,\n\t\t\t\t\t[5, \"1\"],\n\t\t\t\t\t\"+\",\n\t\t\t\t\t[\n\t\t\t\t\t\t1,\n\t\t\t\t\t\t[\n\t\t\t\t\t\t\t1,\n\t\t\t\t\t\t\t\"lightingFactor\",\n\t\t\t\t\t\t\t\"-\",\n\t\t\t\t\t\t\t[5, \"1\"]\n\t\t\t\t\t\t],\n\t\t\t\t\t\t\"*\",\n\t\t\t\t\t\t\"lightingIntensity\"\n\t\t\t\t\t]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[\n\t\t\t\t13,\n\t\t\t\t\"finalRGB\",\n\t\t\t\t[\n\t\t\t\t\t6,\n\t\t\t\t\t[\n\t\t\t\t\t\t7,\n\t\t\t\t\t\t\"shadedRGB\",\n\t\t\t\t\t\t\"mul\"\n\t\t\t\t\t],\n\t\t\t\t\t[\"finalLighting\"]\n\t\t\t\t]\n\t\t\t],\n\t\t\t[10, [\n\t\t\t\t6,\n\t\t\t\t\"d.vec4f\",\n\t\t\t\t[\"finalRGB\", [\n\t\t\t\t\t7,\n\t\t\t\t\t\"normalColor\",\n\t\t\t\t\t\"w\"\n\t\t\t\t]]\n\t\t\t]]\n\t\t]]\n\t},\n\texternals: {\n\t\t\"d.vec3f\": () =\u003e vec3f,\n\t\t\"std.length\": () =\u003e length,\n\t\t\"SHARD_LIGHT_DIR_X\": () =\u003e SHARD_LIGHT_DIR_X,\n\t\t\"SHARD_LIGHT_DIR_Y\": () =\u003e SHARD_LIGHT_DIR_Y,\n\t\t\"std.smoothstep\": () =\u003e smoothstep,\n\t\t\"d.vec4f\": () =\u003e vec4f\n\t}\n}) \u0026\u0026 $.f)({}));\nfunction voronoiRegionField(opts) {\n\treturn (params) =\u003e {\n\t\tconst { gpu, registerComputeTexture, getCpuValue, onCleanup } = params;\n\t\tconst root = gpu?.root;\n\t\tif (!root) return null;\n\t\tconst { layout, kernel } = voronoiNearest2Graph(opts.count, opts.size);\n\t\tconst cellPos = createStateBuffer(root, f32, opts.count * 2);\n\t\tconst voronoiTex = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(root.createTexture({\n\t\t\tsize: [opts.size, opts.size],\n\t\t\tformat: VORONOI_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\"), \"voronoiTex\");\n\t\tonCleanup(() =\u003e voronoiTex.destroy());\n\t\tconst field = registerComputeTexture(voronoiTex);\n\t\tconst bindGroup = root.createBindGroup(layout, {\n\t\t\tcellPos,\n\t\t\tvoronoiTex\n\t\t});\n\t\tconst pipeline = createGuardedCompute(root, /* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((cx, cy) =\u003e {\n\t\t\t\"use gpu\";\n\t\t\tkernel(cx, cy);\n\t\t}), {\n\t\t\tv: 2,\n\t\t\tname: void 0,\n\t\t\tast: {\n\t\t\t\t\"params\": [{\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cx\"\n\t\t\t\t}, {\n\t\t\t\t\t\"type\": \"i\",\n\t\t\t\t\t\"name\": \"cy\"\n\t\t\t\t}],\n\t\t\t\t\"body\": [0, [[\n\t\t\t\t\t6,\n\t\t\t\t\t\"kernel\",\n\t\t\t\t\t[\"cx\", \"cy\"]\n\t\t\t\t]]]\n\t\t\t},\n\t\t\texternals: { \"kernel\": () =\u003e kernel }\n\t\t}) \u0026\u0026 $.f)({}), {\n\t\t\tsize: [opts.size, opts.size],\n\t\t\tbindGroup\n\t\t});\n\t\tconst generateCells = (seed) =\u003e {\n\t\t\tcellPos.write(opts.sites(seed));\n\t\t};\n\t\tlet currentSeed = getCpuValue(opts.seedProp) ?? opts.seedDefault;\n\t\tgenerateCells(currentSeed);\n\t\tlet needsDispatch = true;\n\t\treturn {\n\t\t\toutputs: { [opts.output]: field },\n\t\t\tgetComputeNodes: () =\u003e {\n\t\t\t\tconst newSeed = getCpuValue(opts.seedProp) ?? opts.seedDefault;\n\t\t\t\tif (newSeed !== currentSeed) {\n\t\t\t\t\tcurrentSeed = newSeed;\n\t\t\t\t\tgenerateCells(currentSeed);\n\t\t\t\t\tneedsDispatch = true;\n\t\t\t\t}\n\t\t\t\tif (needsDispatch) {\n\t\t\t\t\tneedsDispatch = false;\n\t\t\t\t\treturn [pipeline];\n\t\t\t\t}\n\t\t\t\treturn null;\n\t\t\t}\n\t\t};\n\t};\n}\nvar seededRandom = (seed) =\u003e {\n\tconst x = Math.sin(seed) * 1e4;\n\treturn x - Math.floor(x);\n};\nvar SHARD_COUNT = 16;\nvar VORONOI_SIZE = 1024;\nvar DATA_WIDTH = SHARD_COUNT * 4;\nvar cellLaneUV = cellLaneUVFor(DATA_WIDTH);\nvar shardSites = (seed) =\u003e {\n\tconst positions = new Float32Array(SHARD_COUNT * 2);\n\tfor (let i = 0; i \u003c SHARD_COUNT; i++) {\n\t\tpositions[i * 2] = seededRandom(seed + i * 2);\n\t\tpositions[i * 2 + 1] = seededRandom(seed + i * 2 + 1);\n\t}\n\treturn positions;\n};\nfunction shardPhysics(getCpuValue) {\n\tconst cellData = new Float32Array(SHARD_COUNT * 4);\n\tconst displacementData = new Float32Array(SHARD_COUNT * 4);\n\tconst generateCells = (seed) =\u003e {\n\t\tconst sites = shardSites(seed);\n\t\tfor (let i = 0; i \u003c SHARD_COUNT; i++) {\n\t\t\tcellData[i * 4] = sites[i * 2];\n\t\t\tcellData[i * 4 + 1] = sites[i * 2 + 1];\n\t\t\tcellData[i * 4 + 2] = seededRandom(seed + i * 3);\n\t\t\tcellData[i * 4 + 3] = seededRandom(seed + i * 3 + 1);\n\t\t}\n\t};\n\tlet currentSeed = getCpuValue(\"seed\") ?? 2;\n\tgenerateCells(currentSeed);\n\tconst FRICTION = 1;\n\tlet prevX = .5;\n\tlet prevY = .5;\n\treturn {\n\t\tcellData,\n\t\tdisplacementData,\n\t\tstep(pointer, deltaTime, aspect) {\n\t\t\tconst dt = Math.min(deltaTime, .016);\n\t\t\tconst newSeed = getCpuValue(\"seed\") ?? 2;\n\t\t\tif (newSeed !== currentSeed) {\n\t\t\t\tcurrentSeed = newSeed;\n\t\t\t\tgenerateCells(currentSeed);\n\t\t\t\tdisplacementData.fill(0);\n\t\t\t}\n\t\t\tconst intensity = getCpuValue(\"intensity\") ?? 4;\n\t\t\tconst radius = getCpuValue(\"radius\") ?? .4;\n\t\t\tconst decay = getCpuValue(\"decay\") ?? 1;\n\t\t\tlet velX = dt \u003e 0 ? (pointer.x - prevX) / dt : 0;\n\t\t\tlet velY = dt \u003e 0 ? (pointer.y - prevY) / dt : 0;\n\t\t\tlet speed = Math.sqrt(velX * velX + velY * velY);\n\t\t\tconst maxVelocity = 5 + intensity * 2;\n\t\t\tif (speed \u003e maxVelocity) {\n\t\t\t\tconst scale = maxVelocity / speed;\n\t\t\t\tvelX *= scale;\n\t\t\t\tvelY *= scale;\n\t\t\t\tspeed = maxVelocity;\n\t\t\t}\n\t\t\tfor (let i = 0; i \u003c SHARD_COUNT; i++) {\n\t\t\t\tconst cellX = cellData[i * 4];\n\t\t\t\tconst cellY = cellData[i * 4 + 1];\n\t\t\t\tconst randomDirX = cellData[i * 4 + 2] - .5;\n\t\t\t\tconst randomDirY = cellData[i * 4 + 3] - .5;\n\t\t\t\tconst dx = aspect \u003e= 1 ? (cellX - pointer.x) * aspect : cellX - pointer.x;\n\t\t\t\tconst dy = aspect \u003e= 1 ? cellY - pointer.y : (cellY - pointer.y) / aspect;\n\t\t\t\tconst dist = Math.sqrt(dx * dx + dy * dy);\n\t\t\t\tlet currentDx = displacementData[i * 4];\n\t\t\t\tlet currentDy = displacementData[i * 4 + 1];\n\t\t\t\tconst decayTime = Math.max(.01, decay);\n\t\t\t\tconst decayFactor = Math.exp(-dt / decayTime);\n\t\t\t\tcurrentDx *= decayFactor;\n\t\t\t\tcurrentDy *= decayFactor;\n\t\t\t\tlet velocityDx = 0;\n\t\t\t\tlet velocityDy = 0;\n\t\t\t\tif (dist \u003c radius \u0026\u0026 speed \u003e .01) {\n\t\t\t\t\tconst influence = Math.max(0, 1 - dist / radius);\n\t\t\t\t\tconst influenceCurve = influence * influence;\n\t\t\t\t\tconst pushForce = influenceCurve * speed * intensity * dt * .5;\n\t\t\t\t\tvelocityDx = velX * pushForce;\n\t\t\t\t\tvelocityDy = velY * pushForce;\n\t\t\t\t\tconst jitterForce = influenceCurve * speed * intensity * dt * .1;\n\t\t\t\t\tvelocityDx += randomDirX * jitterForce;\n\t\t\t\t\tvelocityDy += randomDirY * jitterForce;\n\t\t\t\t}\n\t\t\t\tconst lerpFactor = Math.min(1, FRICTION * dt);\n\t\t\t\tdisplacementData[i * 4] = currentDx + velocityDx * lerpFactor;\n\t\t\t\tdisplacementData[i * 4 + 1] = currentDy + velocityDy * lerpFactor;\n\t\t\t}\n\t\t\tprevX = pointer.x;\n\t\t\tprevY = pointer.y;\n\t\t}\n\t};\n}\nfunction shardDataTexture(params, physics) {\n\tconst { createDataTexture, registerMediaTexture, onCleanup } = params;\n\tconst dataMirror = new Float32Array(DATA_WIDTH);\n\tconst texData = new Uint16Array(DATA_WIDTH);\n\tconst packMirror = () =\u003e {\n\t\tfor (let i = 0; i \u003c SHARD_COUNT; i++) {\n\t\t\tdataMirror[i * 4] = physics.cellData[i * 4];\n\t\t\tdataMirror[i * 4 + 1] = physics.cellData[i * 4 + 1];\n\t\t\tdataMirror[i * 4 + 2] = physics.displacementData[i * 4];\n\t\t\tdataMirror[i * 4 + 3] = physics.displacementData[i * 4 + 1];\n\t\t}\n\t\tfor (let i = 0; i \u003c DATA_WIDTH; i++) texData[i] = toHalfFloat(dataMirror[i]);\n\t};\n\tpackMirror();\n\tconst dataTex = createDataTexture({\n\t\twidth: DATA_WIDTH,\n\t\theight: 1,\n\t\tformat: \"r16float\",\n\t\tdata: texData,\n\t\tlabel: \"shatter-cells\"\n\t});\n\tonCleanup(() =\u003e dataTex.destroy());\n\treturn {\n\t\tdataKit: registerMediaTexture(() =\u003e dataTex.texture),\n\t\tupload() {\n\t\t\tpackMirror();\n\t\t\tdataTex.write(texData);\n\t\t}\n\t};\n}\nconst componentDefinition = defineStd({\n\tname: \"Shatter\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Broken glass effect with tectonic plate displacement\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tusesPointer: true,\n\tprops: {\n\t\tcrackWidth: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Thickness of crack lines\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Crack Width\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 4,\n\t\t\tdescription: \"How much shards shift\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Cursor influence radius\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdecay: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How fast shards return to rest\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Decay\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Random seed for pattern\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tchromaticSplit: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"RGB separation for prismatic glass effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Chromatic Split\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trefractionStrength: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"How much cracks bend/distort the underlying image\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Refraction\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tshardLighting: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Subtle lighting on tilted shards for 3D depth\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Shard Lighting\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"mirror\",\n\t\t\tdescription: \"How to handle edges when displacement pushes content out of bounds\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tcompute: voronoiRegionField({\n\t\tcount: SHARD_COUNT,\n\t\tsize: VORONOI_SIZE,\n\t\tsites: shardSites,\n\t\tseedProp: \"seed\",\n\t\tseedDefault: 2,\n\t\toutput: \"voronoiField\"\n\t}),\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { childNode, ctx, computeOutputs, propValues, convertToTexture } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst child = convertToTexture(childNode);\n\t\tconst voronoiField = computeOutputs?.voronoiField;\n\t\tif (!voronoiField) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [child.sample(ctx.uv)]);\n\t\tconst { onBeforeRender, getCpuValue, dimensions } = params;\n\t\tconst edgeMode = propValues.edges ?? 0;\n\t\tconst physics = shardPhysics(getCpuValue);\n\t\tconst cells = shardDataTexture(params, physics);\n\t\tconst dataKit = cells.dataKit;\n\t\tonBeforeRender((fp) =\u003e {\n\t\t\tconst { pointer, deltaTime } = fp;\n\t\t\tconst aspect = dimensions.width / Math.max(1, dimensions.height);\n\t\t\tphysics.step(pointer, deltaTime, aspect);\n\t\t\tcells.upload();\n\t\t});\n\t\tconst vSample = voronoiField.sample(ctx.uv, \"nearestClamp\");\n\t\tconst nearestI = vSample.member(\"r\");\n\t\tconst secondI = vSample.member(\"g\");\n\t\tconst nearestClamp = \"nearestClamp\";\n\t\tconst dataAt = (idx, field) =\u003e dataKit.sample(call(cellLaneUV, \"cellLaneUV\", [idx, floatE(field)]), nearestClamp).member(\"r\");\n\t\tconst geom = call(crackGeom, \"crackGeom\", [\n\t\t\tctx.uv,\n\t\t\tdataAt(nearestI, 0),\n\t\t\tdataAt(nearestI, 1),\n\t\t\tdataAt(secondI, 0),\n\t\t\tdataAt(secondI, 1),\n\t\t\tdataAt(nearestI, 2),\n\t\t\tdataAt(nearestI, 3),\n\t\t\tparams.uniforms.crackWidth\n\t\t]);\n\t\tconst crackIntensity = geom.member(\"crackIntensity\");\n\t\tconst edgeNormal = geom.member(\"edgeNormal\");\n\t\tconst displacedUV = geom.member(\"displacedUV\");\n\t\tconst disp = geom.member(\"disp\");\n\t\tconst sample = (uv) =\u003e applyEdgeHandlingExpr(uv, (u) =\u003e child.sample(u), edgeMode);\n\t\tconst normalColor = sample(displacedUV);\n\t\tconst refractUV = (channel) =\u003e call(crackRefractUV, \"crackRefractUV\", [\n\t\t\tdisplacedUV,\n\t\t\tedgeNormal,\n\t\t\tcrackIntensity,\n\t\t\tparams.uniforms.refractionStrength,\n\t\t\tparams.uniforms.chromaticSplit,\n\t\t\tfloatE(channel)\n\t\t]);\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [call(crackShardCompose, \"crackShardCompose\", [\n\t\t\tnormalColor,\n\t\t\tsample(refractUV(1)),\n\t\t\tsample(refractUV(0)),\n\t\t\tsample(refractUV(-1)),\n\t\t\tcrackIntensity,\n\t\t\tdisp,\n\t\t\tparams.uniforms.shardLighting\n\t\t])]);\n\t} }\n});\nvar Shatter_default = componentDefinition;\nexport { componentDefinition as n, Shatter_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, c as noiseField, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { S as signedTone, l as evolving, x as seededPlane } from \"./noise-d7rmP9yc.js\";\nimport { t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"SimplexNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Organic noise with animated movement\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tscale: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Pattern scale (higher = larger patterns)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Balance between colors (negative = more colorB, positive = more colorA)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Pattern contrast (higher = sharper transitions)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: rampOver(signedTone(seededPlane(evolving(noiseField(\"mx3signed\"), { rate: .5 }), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar SimplexNoise_default = componentDefinition;\nexport { componentDefinition as n, SimplexNoise_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition, r as transformAngle } from \"./transformations-CzFmhZww.js\";\nimport { t as sineStroke } from \"./figures-B3lUGP8u.js\";\nconst componentDefinition = defineStd({\n\tname: \"SineWave\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Animated wave with thickness and softness\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The color of the sine wave\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tamplitude: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"The height/amplitude of the sine wave\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Amplitude\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The frequency/number of wave cycles\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The animation speed of the wave\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"The rotation angle of the wave (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tposition: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center position of the wave\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Position\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"The thickness of the wave line\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Edge softness of the wave line\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: sineStroke({\n\t\tposition: p(\"position\"),\n\t\tangle: p(\"angle\"),\n\t\tfrequency: p(\"frequency\"),\n\t\tamplitude: p(\"amplitude\"),\n\t\tthickness: p(\"thickness\"),\n\t\tsoftness: p(\"softness\"),\n\t\tcolor: p(\"color\")\n\t})\n});\nvar SineWave_default = componentDefinition;\nexport { componentDefinition as n, SineWave_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { h as slicedSlide } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"SliceWipe\",\n\trole: \"warp\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Slice the content into strips that slide away in alternating directions\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the strips have slid (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Orientation of the strips in degrees (0 = vertical strips sliding up and down)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tsliceCount: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of strips across the frame\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 60,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Slices\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\tmap: slicedSlide({\n\t\tangle: p(\"angle\"),\n\t\tcount: p(\"sliceCount\"),\n\t\tprogress: p(\"progress\")\n\t}),\n\tedges: 1,\n\tresample: \"bilinear\",\n\tmissingChildMessage: \"You must pass a child component into the Slice Wipe shader.\"\n});\nvar SliceWipe_default = componentDefinition;\nexport { componentDefinition as n, SliceWipe_default as t };\n","import { At as colorMixing_exports, Br as struct, Gn as typegpu_default, Mr as vec4f, Rr as textureStorage2d, at as ZERO, ct as call, mt as vec4, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { Dt as mixColorStopsRuntime, M as buildStableFluidsKernels, O as buildEmitterSplatKernel, k as buildFluidOutputKernel, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { o as splat, r as fluidSim } from \"./fluids-umEWgdvj.js\";\nvar N = 256;\nvar COUNT = N * N;\nvar JACOBI_ITERS = 10;\nvar VELOCITY_DISSIPATION = .2;\nvar STATE_FORMAT = \"rgba16float\";\nvar cm = colorMixing_exports;\nvar FluidParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tdt: f32,\n\temitX: f32,\n\temitY: f32,\n\temitVelX: f32,\n\temitVelY: f32,\n\tperpDirX: f32,\n\tperpDirY: f32,\n\tspreadFactor: f32,\n\temitRad: f32,\n\temitIntensity: f32,\n\tdyeFade: f32,\n\tvelFade: f32,\n\tcurlStrength: f32,\n\tgravity: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\tcursorVelX: f32,\n\tcursorVelY: f32,\n\tmouseActive: f32,\n\tmouseRadSq: f32,\n\tcolorDecay: f32\n}), \"FluidParams\");\nvar fluidLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tvelA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tvelB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tpressure: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdivergence: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: FluidParams }\n}), \"fluidLayout\");\nvar outputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"readonly\"\n\t},\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"outputLayout\");\nconst splatKernel = buildEmitterSplatKernel(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"smoke\",\n\tcone: true,\n\tcursorPush: true,\n\tdensityGain: 8,\n\tvelocityBlendGain: 3\n});\nvar solverKernels = buildStableFluidsKernels(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"smoke\",\n\tboundary: \"clamped\",\n\tdye: \"densityAge\",\n\tdyeDissipation: true,\n\tageAdvance: true\n});\nconst { curl: curlKernel, vorticity: vorticityKernel, divergence: divergenceKernel, jacobi: jacobiKernel, gradSubtract: gradSubtractKernel, advectVel: advectVelKernel, copyVel: copyVelKernel, advectDye: advectDensKernel, copyDye: copyDensKernel } = solverKernels;\nconst outputKernel = buildFluidOutputKernel(outputLayout, {\n\tn: N,\n\tnamePrefix: \"smoke\",\n\tdye: \"densityAge\"\n});\nconst componentDefinition = defineStd({\n\tname: \"Smoke\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Realistic fluid smoke simulation with vorticity dynamics\",\n\tusesPointer: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#fc83f9\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of fresh smoke\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Start Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#c21c79\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color smoke transitions to as it ages\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"End Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\temitFrom: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: 1\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The emission source point\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Emit From\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tdirection: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Emission direction (0 = up, 90 = right, 180 = down, 270 = left)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Direction\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Emission velocity strength\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: 60,\n\t\t\tdescription: \"Emission cone angle in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\temitRadius: {\n\t\t\tdefault: .08,\n\t\t\tdescription: \"Size of the emission area\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Emit Size\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Smoke emission density\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdissipation: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"How fast smoke fades over time\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Dissipation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 25,\n\t\t\tdescription: \"Fine-scale swirling detail\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Detail\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgravity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Downward gravitational pull on smoke\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Gravity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorDecay: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How quickly smoke shifts from Color A to Color B\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Color Decay\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tmouseInfluence: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Strength of cursor influence\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Influence\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tmouseRadius: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Radius of cursor influence area\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Radius\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\t...fluidSim(() =\u003e ({\n\t\tresolution: N,\n\t\tlayout: fluidLayout,\n\t\toutputLayout,\n\t\tparamsSchema: FluidParams,\n\t\tsolver: {\n\t\t\tkernels: solverKernels,\n\t\t\tjacobiIters: JACOBI_ITERS\n\t\t},\n\t\toutput: {\n\t\t\tkernel: outputKernel,\n\t\t\tkey: \"smokeTexture\"\n\t\t},\n\t\tpointer: { minDrag: 5e-4 },\n\t\tinject: [splat({ kernel: splatKernel })],\n\t\tvalues: (f) =\u003e {\n\t\t\tconst speed = f.num(\"speed\", 3);\n\t\t\tconst dirRad = f.num(\"direction\", 0) * Math.PI / 180;\n\t\t\tconst spreadHalf = Math.min(89 * Math.PI / 180, f.num(\"spread\", 45) * Math.PI / 360);\n\t\t\tconst emitPos = f.getCpuValue(\"emitFrom\");\n\t\t\tconst epx = emitPos?.x ?? .5;\n\t\t\tconst epy = emitPos?.y ?? 0;\n\t\t\tconst velMag = speed * N * .15;\n\t\t\tconst mouseInf = f.num(\"mouseInfluence\", .5);\n\t\t\tconst mouseRad = f.num(\"mouseRadius\", .12);\n\t\t\tconst ptr = f.ptr;\n\t\t\tconst mouseRadGrid = mouseRad * N;\n\t\t\tconst active = ptr.moving \u0026\u0026 mouseInf \u003e 0;\n\t\t\treturn {\n\t\t\t\tdt: f.dt,\n\t\t\t\temitX: epx * N,\n\t\t\t\temitY: (1 - epy) * N,\n\t\t\t\temitVelX: Math.sin(dirRad) * velMag,\n\t\t\t\temitVelY: -Math.cos(dirRad) * velMag,\n\t\t\t\tperpDirX: Math.cos(dirRad),\n\t\t\t\tperpDirY: Math.sin(dirRad),\n\t\t\t\tspreadFactor: Math.tan(spreadHalf),\n\t\t\t\temitRad: f.num(\"emitRadius\", .06) * N,\n\t\t\t\temitIntensity: f.num(\"intensity\", .7),\n\t\t\t\tdyeFade: f.num(\"dissipation\", 1),\n\t\t\t\tvelFade: VELOCITY_DISSIPATION,\n\t\t\t\tcurlStrength: f.num(\"detail\", 30),\n\t\t\t\tgravity: f.num(\"gravity\", .5),\n\t\t\t\tcolorDecay: f.num(\"colorDecay\", 1),\n\t\t\t\tcursorX: active ? ptr.x * N : 0,\n\t\t\t\tcursorY: active ? ptr.y * N : 0,\n\t\t\t\tcursorVelX: active ? ptr.dx * N * 15 * mouseInf : 0,\n\t\t\t\tcursorVelY: active ? ptr.dy * N * 15 * mouseInf : 0,\n\t\t\t\tmouseActive: active ? 1 : 0,\n\t\t\t\tmouseRadSq: mouseRadGrid * mouseRadGrid\n\t\t\t};\n\t\t}\n\t})),\n\tgpu: { fragment: ({ ctx, computeOutputs, propValues, uniforms }) =\u003e {\n\t\tconst smokeField = computeOutputs?.smokeTexture;\n\t\tif (!smokeField) return ZERO;\n\t\tconst s = smokeField.sample(ctx.uv, \"linearClamp\");\n\t\tconst smokeDensity = s.member(\"x\");\n\t\tconst smokeAge = s.member(\"y\");\n\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\tconst stopCount = propValues.stopCount ?? 0;\n\t\tlet smokeColor;\n\t\tif (stopCount \u003e 1) smokeColor = mixColorStopsRuntime(smokeAge, {\n\t\t\tcolorsArray: uniforms.colorsArray,\n\t\t\tpositionsArray: uniforms.positionsArray,\n\t\t\tconvertedColorsArray: uniforms.convertedColorsArray,\n\t\t\tstopCount: uniforms.stopCount\n\t\t}, colorSpaceMode);\n\t\telse smokeColor = call(cm.mixColorsVariants[colorSpaceMode] ?? cm.mixColorsLinear, \"mixColors\", [\n\t\t\tuniforms.colorA,\n\t\t\tuniforms.colorB,\n\t\t\tsmokeAge\n\t\t]);\n\t\treturn vec4(smokeColor.member(\"rgb\"), smokeColor.member(\"a\").mul(smokeDensity));\n\t} }\n});\nvar Smoke_default = componentDefinition;\nexport { copyDensKernel as a, divergenceKernel as c, outputKernel as d, splatKernel as f, componentDefinition as i, gradSubtractKernel as l, advectDensKernel as n, copyVelKernel as o, vorticityKernel as p, advectVelKernel as r, curlKernel as s, Smoke_default as t, jacobiKernel as u };\n","import { At as colorMixing_exports, Br as struct, Gn as typegpu_default, I as sdf_exports, Mr as vec4f, Rr as textureStorage2d, at as ZERO, ct as call, mt as vec4, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { L as makeShapeMaskSet, M as buildStableFluidsKernels, O as buildEmitterSplatKernel, k as buildFluidOutputKernel } from \"./porters-OTkIMOyl.js\";\nimport { O as resolveShapeType, k as shapeEffectBoundingBoxDeclaration, w as sdf3d_exports } from \"./sdf3d-2AWC_wdn.js\";\nimport { n as glass_exports } from \"./glass-ABppDbYG.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { i as clamp, w as mul } from \"./math-D864seEs.js\";\nimport { o as splat, r as fluidSim } from \"./fluids-umEWgdvj.js\";\nvar { sdfSpaceUV } = glass_exports;\nvar { createSvgSdfSampler, createSdfDataTexture, createAnalyticSdfSampler, driveAnalyticSubProps, ANALYTIC_SDF_EXTRA_FIELDS } = sdf_exports;\nvar { createVolumetricFieldComputeNode, buildVolumetricFieldSampler, VOLUMETRIC_FIELD_EXTRA_FIELDS } = sdf3d_exports;\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar N = 256;\nvar COUNT = N * N;\nvar JACOBI_ITERS = 10;\nvar VELOCITY_DISSIPATION = .2;\nvar STATE_FORMAT = \"rgba16float\";\nvar cm = colorMixing_exports;\nvar FillParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tdt: f32,\n\temitX: f32,\n\temitY: f32,\n\temitVelX: f32,\n\temitVelY: f32,\n\tperpDirX: f32,\n\tperpDirY: f32,\n\tspreadFactor: f32,\n\temitRad: f32,\n\temitIntensity: f32,\n\tdyeFade: f32,\n\tvelFade: f32,\n\tcurlStrength: f32,\n\tgravity: f32,\n\tcolorDecay: f32,\n\tcenterX: f32,\n\tcenterY: f32,\n\tscale: f32,\n\trotation: f32,\n\taspect: f32,\n\tcursorX: f32,\n\tcursorY: f32,\n\tcursorVelX: f32,\n\tcursorVelY: f32,\n\tmouseActive: f32,\n\tmouseRadSq: f32,\n\tsaRadius: f32,\n\tsaSides: f32,\n\tsaRounding: f32,\n\tsaInnerRatio: f32,\n\tsaRotation: f32,\n\tsaHeight: f32,\n\tsaOffset: f32,\n\tsaAperture: f32,\n\tvfOriginX: f32,\n\tvfOriginY: f32,\n\tvfSpanX: f32,\n\tvfSpanY: f32,\n\tvfActiveRes: f32\n}), \"FillParams\");\nvar fluidLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tvelA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tvelB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tpressure: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdivergence: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tmaskBuf: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"readonly\"\n\t},\n\tparams: { uniform: FillParams }\n}), \"fluidLayout\");\nvar outputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"readonly\"\n\t},\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"outputLayout\");\nvar maskSet = makeShapeMaskSet(FillParams, {\n\tn: N,\n\tnamePrefix: \"smokeFill\"\n});\nconst makeMaskKernel = maskSet.analytic;\nconst svgMaskKernel = maskSet.svgKernel;\nconst vfMaskKernel = maskSet.fieldKernel;\nconst splatKernel = buildEmitterSplatKernel(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"smokeFill\",\n\tcone: true,\n\tcursorPush: true,\n\tmasked: true,\n\tdensityGain: 8,\n\tvelocityBlendGain: 3\n});\nvar solverKernels = buildStableFluidsKernels(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"smokeFill\",\n\tboundary: \"clamped\",\n\tdye: \"densityAge\",\n\tdyeDissipation: true,\n\tageAdvance: true,\n\tsolidMask: true\n});\nconst { curl: curlKernel, vorticity: vorticityKernel, divergence: divergenceKernel, jacobi: jacobiKernel, gradSubtract: gradSubtractKernel, advectVel: advectVelKernel, copyVel: copyVelKernel, advectDye: advectDensKernel, copyDye: copyDensKernel } = solverKernels;\nconst outputKernel = buildFluidOutputKernel(outputLayout, {\n\tn: N,\n\tnamePrefix: \"smokeFill\",\n\tdye: \"densityAge\"\n});\nfunction shapeContainerField(params) {\n\tconst { getCpuValue } = params;\n\tconst shapeSdfUrl = getCpuValue(\"shapeSdfUrl\") || \"\";\n\tconst shapeType = resolveShapeType(getCpuValue(\"shapeType\") || \"\", getCpuValue(\"shape\"));\n\tconst vf = createVolumetricFieldComputeNode(params, () =\u003e getCpuValue(\"shape\"), \"none\");\n\treturn {\n\t\tsetup(ctx) {\n\t\t\tconst { root } = ctx;\n\t\t\tconst maskBuf = ctx.buffers.maskBuf;\n\t\t\tconst paramsBuffer = ctx.paramsBuffer;\n\t\t\tlet maskPass;\n\t\t\tif (vf) {\n\t\t\t\tconst maskVfBg = root.createBindGroup(maskSet.fieldLayout, {\n\t\t\t\t\tmaskBuf,\n\t\t\t\t\tparams: paramsBuffer,\n\t\t\t\t\tfieldTex: vf.fieldTexture\n\t\t\t\t});\n\t\t\t\tmaskPass = ctx.pass(vfMaskKernel, maskVfBg);\n\t\t\t} else if (shapeSdfUrl) {\n\t\t\t\tconst sdfTex = createSdfDataTexture(ctx.params, shapeSdfUrl);\n\t\t\t\tconst maskSvgBg = root.createBindGroup(maskSet.svgLayout, {\n\t\t\t\t\tmaskBuf,\n\t\t\t\t\tparams: paramsBuffer,\n\t\t\t\t\tsdfSource: sdfTex.texture.texture\n\t\t\t\t});\n\t\t\t\tmaskPass = ctx.pass(svgMaskKernel, maskSvgBg);\n\t\t\t} else {\n\t\t\t\tconst maskBg = root.createBindGroup(maskSet.analyticLayout, {\n\t\t\t\t\tmaskBuf,\n\t\t\t\t\tparams: paramsBuffer\n\t\t\t\t});\n\t\t\t\tmaskPass = ctx.pass(makeMaskKernel(shapeType), maskBg);\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tmaskPass,\n\t\t\t\toutputs: vf ? vf.outputs : {},\n\t\t\t\tpreFrame: (fp) =\u003e vf?.getComputeNodes(fp) ?? null\n\t\t\t};\n\t\t},\n\t\tdomain: () =\u003e vf?.getFieldDomain()\n\t};\n}\nfunction makeSubPropResolver(getCpuValue) {\n\tconst num = (v, f) =\u003e typeof v === \"number\" ? v : f;\n\treturn () =\u003e {\n\t\tconst raw = getCpuValue(\"shape\");\n\t\tlet c = {};\n\t\tif (raw \u0026\u0026 typeof raw === \"object\") c = raw;\n\t\telse if (typeof raw === \"string\") try {\n\t\t\tc = JSON.parse(raw);\n\t\t} catch {\n\t\t\tc = {};\n\t\t}\n\t\treturn {\n\t\t\tsaRadius: num(c.radius, num(c.width, num(c.bottomWidth, .35))),\n\t\t\tsaSides: num(c.sides, 6),\n\t\t\tsaRounding: num(c.rounding, 0),\n\t\t\tsaInnerRatio: num(c.innerRatio, num(c.thickness, num(c.spread, num(c.topWidth, num(c.topRatio, .4))))),\n\t\t\tsaRotation: num(c.rotation, 0),\n\t\t\tsaHeight: num(c.height, .25),\n\t\t\tsaOffset: num(c.offset, num(c.skew, .2)),\n\t\t\tsaAperture: num(c.aperture, 270)\n\t\t};\n\t};\n}\nconst componentDefinition = defineStd({\n\tname: \"SmokeFill\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Fill a shape with swirling fluid smoke that interacts with the shape boundary\",\n\trequiresRTT: false,\n\trequiresChild: false,\n\tusesPointer: true,\n\textraFields: {\n\t\t...VOLUMETRIC_FIELD_EXTRA_FIELDS,\n\t\t...ANALYTIC_SDF_EXTRA_FIELDS\n\t},\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#8cf3ff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of fresh smoke\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Start Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#04a0d6\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color smoke transitions to as it ages\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"End Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\temitFrom: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Emission source point within the shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Emit From\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tdirection: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Emission direction (0 = up, 90 = right, 180 = down, 270 = left)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Direction\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Emission velocity strength\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: 60,\n\t\t\tdescription: \"Emission cone angle in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\temitRadius: {\n\t\t\tdefault: .03,\n\t\t\tdescription: \"Size of the emission area\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Emit Size\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Smoke emission density\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdissipation: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"How fast smoke fades over time\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Dissipation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 25,\n\t\t\tdescription: \"Fine-scale swirling detail\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Detail\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgravity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Downward gravitational pull on smoke — 0 = weightless, negative values = smoke rises\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Gravity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorDecay: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How quickly smoke shifts from Color A to Color B\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Color Decay\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tmouseInfluence: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Strength of cursor influence\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Influence\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tmouseRadius: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Radius of cursor influence area\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .02,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Radius\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...fluidSim((params) =\u003e {\n\t\tconst { getCpuValue } = params;\n\t\tconst container = shapeContainerField(params);\n\t\tconst resolveSub = makeSubPropResolver(getCpuValue);\n\t\treturn {\n\t\t\tresolution: N,\n\t\t\tlayout: fluidLayout,\n\t\t\toutputLayout,\n\t\t\tparamsSchema: FillParams,\n\t\t\tsolver: {\n\t\t\t\tkernels: solverKernels,\n\t\t\t\tjacobiIters: JACOBI_ITERS\n\t\t\t},\n\t\t\toutput: {\n\t\t\t\tkernel: outputKernel,\n\t\t\t\tkey: \"smokeTexture\"\n\t\t\t},\n\t\t\tpointer: { minDrag: 5e-4 },\n\t\t\tcontainer,\n\t\t\tinject: [splat({ kernel: splatKernel })],\n\t\t\tvalues: (f) =\u003e {\n\t\t\t\tconst speed = f.num(\"speed\", 2);\n\t\t\t\tconst dirRad = f.num(\"direction\", 0) * Math.PI / 180;\n\t\t\t\tconst spreadHalf = Math.min(89 * Math.PI / 180, f.num(\"spread\", 60) * Math.PI / 360);\n\t\t\t\tconst centerView = getCpuValue(\"center\");\n\t\t\t\tconst emitView = getCpuValue(\"emitFrom\");\n\t\t\t\tconst h = f.frameParams.dimensions?.height ?? 0;\n\t\t\t\tconst aspect = h \u003e 0 ? (f.frameParams.dimensions?.width ?? 0) / h : 1;\n\t\t\t\tconst velMag = speed * N * .15;\n\t\t\t\tconst sub = resolveSub();\n\t\t\t\tconst mouseInf = f.num(\"mouseInfluence\", .5);\n\t\t\t\tconst mouseRad = f.num(\"mouseRadius\", .12);\n\t\t\t\tconst ptr = f.ptr;\n\t\t\t\tconst active = ptr.moving \u0026\u0026 mouseInf \u003e 0;\n\t\t\t\tconst mouseRadGrid = mouseRad * N;\n\t\t\t\tconst dom = container.domain();\n\t\t\t\treturn {\n\t\t\t\t\tdt: f.dt,\n\t\t\t\t\temitX: (emitView?.x ?? .5) * N,\n\t\t\t\t\temitY: (1 - (emitView?.y ?? .5)) * N,\n\t\t\t\t\temitVelX: Math.sin(dirRad) * velMag,\n\t\t\t\t\temitVelY: -Math.cos(dirRad) * velMag,\n\t\t\t\t\tperpDirX: Math.cos(dirRad),\n\t\t\t\t\tperpDirY: Math.sin(dirRad),\n\t\t\t\t\tspreadFactor: Math.tan(spreadHalf),\n\t\t\t\t\temitRad: f.num(\"emitRadius\", .03) * N,\n\t\t\t\t\temitIntensity: f.num(\"intensity\", .8),\n\t\t\t\t\tdyeFade: f.num(\"dissipation\", .5),\n\t\t\t\t\tvelFade: VELOCITY_DISSIPATION,\n\t\t\t\t\tcurlStrength: f.num(\"detail\", 30),\n\t\t\t\t\tgravity: f.num(\"gravity\", .5),\n\t\t\t\t\tcolorDecay: f.num(\"colorDecay\", 1),\n\t\t\t\t\tcenterX: centerView?.x ?? .5,\n\t\t\t\t\tcenterY: 1 - (centerView?.y ?? .5),\n\t\t\t\t\tscale: f.num(\"scale\", 1),\n\t\t\t\t\trotation: f.num(\"rotation\", 0) * Math.PI / 180,\n\t\t\t\t\taspect,\n\t\t\t\t\tcursorX: active ? ptr.x * N : 0,\n\t\t\t\t\tcursorY: active ? ptr.y * N : 0,\n\t\t\t\t\tcursorVelX: active ? ptr.dx * N * 15 * mouseInf : 0,\n\t\t\t\t\tcursorVelY: active ? ptr.dy * N * 15 * mouseInf : 0,\n\t\t\t\t\tmouseActive: active ? 1 : 0,\n\t\t\t\t\tmouseRadSq: mouseRadGrid * mouseRadGrid,\n\t\t\t\t\t...sub,\n\t\t\t\t\tvfOriginX: dom?.originX ?? 0,\n\t\t\t\t\tvfOriginY: dom?.originY ?? 0,\n\t\t\t\t\tvfSpanX: dom?.spanX ?? 1,\n\t\t\t\t\tvfSpanY: dom?.spanY ?? 1,\n\t\t\t\t\tvfActiveRes: dom?.activeRes ?? 1\n\t\t\t\t};\n\t\t\t}\n\t\t};\n\t}),\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { ctx, computeOutputs, propValues, uniforms, getCpuValue } = params;\n\t\tconst smokeField = computeOutputs?.smokeTexture;\n\t\tif (!smokeField) return ZERO;\n\t\tlet sampler;\n\t\tconst fieldTex = computeOutputs?.volumetricFieldTexture;\n\t\tif (fieldTex) sampler = buildVolumetricFieldSampler(fieldTex, {\n\t\t\toriginX: uniforms._vfOriginX,\n\t\t\toriginY: uniforms._vfOriginY,\n\t\t\tspanX: uniforms._vfSpanX,\n\t\t\tspanY: uniforms._vfSpanY,\n\t\t\tactiveResF: uniforms._vfActiveRes,\n\t\t\trBound: uniforms._vfRBound\n\t\t}).volumetricFieldSampler;\n\t\telse {\n\t\t\tconst shapeSdfUrl = propValues.shapeSdfUrl || \"\";\n\t\t\tif (shapeSdfUrl) sampler = createSvgSdfSampler(params, shapeSdfUrl);\n\t\t\telse sampler = createAnalyticSdfSampler(resolveShapeType(propValues.shapeType || \"\", getCpuValue(\"shape\")), driveAnalyticSubProps(params, () =\u003e getCpuValue(\"shape\")));\n\t\t}\n\t\tconst sdfUV = call(sdfSpaceUV, \"sdfSpaceUV\", [\n\t\t\tuniforms.center,\n\t\t\tuniforms.scale,\n\t\t\tuniforms.rotation,\n\t\t\tctx.uv,\n\t\t\tctx.aspect\n\t\t]);\n\t\tconst shapeMask = clamp(mul(sampler(sdfUV).member(\"x\"), -(N * 4)), 0, 1);\n\t\tconst s = smokeField.sample(ctx.uv, \"linearClamp\");\n\t\tconst smokeDensity = s.member(\"x\");\n\t\tconst smokeAge = s.member(\"y\");\n\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\tconst smokeColor = call(cm.mixColorsVariants[colorSpaceMode] ?? cm.mixColorsLinear, \"mixColors\", [\n\t\t\tuniforms.colorA,\n\t\t\tuniforms.colorB,\n\t\t\tsmokeAge\n\t\t]);\n\t\treturn vec4(smokeColor.member(\"rgb\"), smokeColor.member(\"a\").mul(smokeDensity).mul(shapeMask));\n\t} }\n});\nvar SmokeFill_default = componentDefinition;\nexport { copyDensKernel as a, divergenceKernel as c, makeMaskKernel as d, outputKernel as f, vorticityKernel as g, vfMaskKernel as h, componentDefinition as i, gradSubtractKernel as l, svgMaskKernel as m, advectDensKernel as n, copyVelKernel as o, splatKernel as p, advectVelKernel as r, curlKernel as s, SmokeFill_default as t, jacobiKernel as u };\n","import { At as colorMixing_exports, Br as struct, Gn as typegpu_default, Mr as vec4f, Rr as textureStorage2d, W as decayFadeSeconds, at as ZERO, ct as call, mt as vec4, qr as f32, t as defineStd, zr as arrayOf } from \"./lower-Bd2jez_2.js\";\nimport { Dt as mixColorStopsRuntime, M as buildStableFluidsKernels, O as buildEmitterSplatKernel, k as buildFluidOutputKernel, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { n as cursorRibbon, r as fluidSim } from \"./fluids-umEWgdvj.js\";\nvar N = 256;\nvar COUNT = N * N;\nvar JACOBI_ITERS = 10;\nvar VELOCITY_DISSIPATION = .2;\nvar MAX_STEPS = 16;\nvar STATE_FORMAT = \"rgba16float\";\nvar cm = colorMixing_exports;\nvar FlowParams = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\tdt: f32,\n\temitX: f32,\n\temitY: f32,\n\temitVelX: f32,\n\temitVelY: f32,\n\temitGate: f32,\n\temitRad: f32,\n\temitIntensity: f32,\n\tdyeFade: f32,\n\tvelFade: f32,\n\tcurlStrength: f32,\n\tgravity: f32,\n\tcolorDecay: f32\n}), \"FlowParams\");\nvar fluidLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tvelA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tvelB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdyeB: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tpressure: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tdivergence: {\n\t\tstorage: arrayOf(f32, COUNT),\n\t\taccess: \"mutable\"\n\t},\n\tparams: { uniform: FlowParams }\n}), \"fluidLayout\");\nvar outputLayout = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(typegpu_default.bindGroupLayout({\n\tdyeA: {\n\t\tstorage: arrayOf(vec4f, COUNT),\n\t\taccess: \"readonly\"\n\t},\n\toutTex: { storageTexture: textureStorage2d(STATE_FORMAT, \"write-only\") }\n}), \"outputLayout\");\nconst splatKernel = buildEmitterSplatKernel(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"smokeFlow\",\n\tcone: false,\n\tcursorPush: false,\n\tgated: true,\n\tdensityGain: 10,\n\tvelocityBlendGain: 4\n});\nvar solverKernels = buildStableFluidsKernels(fluidLayout, {\n\tn: N,\n\tnamePrefix: \"smokeFlow\",\n\tboundary: \"clamped\",\n\tdye: \"densityAge\",\n\tdyeDissipation: true,\n\tageAdvance: true\n});\nconst { curl: curlKernel, vorticity: vorticityKernel, divergence: divergenceKernel, jacobi: jacobiKernel, gradSubtract: gradSubtractKernel, advectVel: advectVelKernel, copyVel: copyVelKernel, advectDye: advectDensKernel, copyDye: copyDensKernel } = solverKernels;\nconst outputKernel = buildFluidOutputKernel(outputLayout, {\n\tn: N,\n\tnamePrefix: \"smokeFlow\",\n\tdye: \"densityAge\"\n});\nconst componentDefinition = defineStd({\n\tname: \"SmokeFlow\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Interactive\",\n\tdescription: \"Cursor-driven smoke that lingers, swirls, and dissipates with fluid dynamics\",\n\tusesPointer: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#e29c8b\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of fresh smoke\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Fresh Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#d517f9\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color smoke transitions to as it ages\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Aged Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How much smoke is emitted as you move the cursor\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\temitRadius: {\n\t\t\tdefault: .07,\n\t\t\tdescription: \"Size of smoke puff emitted at cursor\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Puff Size\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tmomentum: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"How much cursor velocity is transferred into the smoke (higher = more directed flow)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 50,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Momentum\",\n\t\t\t\tgroup: \"Emission\"\n\t\t\t}\n\t\t},\n\t\tdissipation: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How fast smoke fades over time\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .05,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Dissipation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Fine-scale swirling detail driven by vorticity confinement\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 60,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Swirl Detail\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgravity: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Vertical drift — negative floats up, positive sinks down\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Gravity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorDecay: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How quickly smoke shifts from fresh to aged color\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Color Decay\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"OKLAB\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\t...fluidSim(() =\u003e {\n\t\tconst speedGateOf = (smoothSpeed) =\u003e Math.min(smoothSpeed * smoothSpeed * 60, 1);\n\t\tconst strokes = cursorRibbon({\n\t\t\ttracker: { teleportGuard: Number.POSITIVE_INFINITY },\n\t\t\tactiveWhen: (ptr) =\u003e speedGateOf(ptr.smoothSpeed) \u003e .005,\n\t\t\tfadeSeconds: (f) =\u003e decayFadeSeconds(255, f.num(\"dissipation\", .4)),\n\t\t\tpass: { kernel: splatKernel },\n\t\t\tribbon: (f, _ptr, values) =\u003e ({\n\t\t\t\tstepSize: Math.max(.004, f.num(\"emitRadius\", .07) * .5),\n\t\t\t\tmaxSteps: MAX_STEPS,\n\t\t\t\twrite: (emitX, emitY) =\u003e f.writeParams({\n\t\t\t\t\t...values,\n\t\t\t\t\temitX,\n\t\t\t\t\temitY\n\t\t\t\t})\n\t\t\t})\n\t\t});\n\t\treturn {\n\t\t\tresolution: N,\n\t\t\tlayout: fluidLayout,\n\t\t\toutputLayout,\n\t\t\tparamsSchema: FlowParams,\n\t\t\tsolver: {\n\t\t\t\tkernels: solverKernels,\n\t\t\t\tjacobiIters: JACOBI_ITERS\n\t\t\t},\n\t\t\toutput: {\n\t\t\t\tkernel: outputKernel,\n\t\t\t\tkey: \"smokeTexture\"\n\t\t\t},\n\t\t\tinject: [strokes],\n\t\t\tvalues: (f) =\u003e {\n\t\t\t\tconst ptr = strokes.ptr();\n\t\t\t\tconst momentumScale = f.num(\"momentum\", 1.2);\n\t\t\t\tconst speedGate = speedGateOf(ptr.smoothSpeed);\n\t\t\t\tconst isActive = strokes.active();\n\t\t\t\tconst emitRadiusUv = f.num(\"emitRadius\", .07);\n\t\t\t\treturn {\n\t\t\t\t\tdt: f.dt,\n\t\t\t\t\temitX: ptr.x * N,\n\t\t\t\t\temitY: ptr.y * N,\n\t\t\t\t\temitGate: isActive ? speedGate : 0,\n\t\t\t\t\temitVelX: ptr.smoothVelX * N * momentumScale * .12,\n\t\t\t\t\temitVelY: ptr.smoothVelY * N * momentumScale * .12,\n\t\t\t\t\temitRad: emitRadiusUv * N,\n\t\t\t\t\temitIntensity: f.num(\"intensity\", 1.2),\n\t\t\t\t\tdyeFade: f.num(\"dissipation\", .4),\n\t\t\t\t\tvelFade: VELOCITY_DISSIPATION,\n\t\t\t\t\tcurlStrength: f.num(\"detail\", 28),\n\t\t\t\t\tgravity: f.num(\"gravity\", -.3),\n\t\t\t\t\tcolorDecay: f.num(\"colorDecay\", .5)\n\t\t\t\t};\n\t\t\t}\n\t\t};\n\t}),\n\tgpu: { fragment: ({ ctx, computeOutputs, propValues, uniforms }) =\u003e {\n\t\tconst smokeField = computeOutputs?.smokeTexture;\n\t\tif (!smokeField) return ZERO;\n\t\tconst s = smokeField.sample(ctx.uv, \"linearClamp\");\n\t\tconst smokeDensity = s.member(\"x\");\n\t\tconst smokeAge = s.member(\"y\");\n\t\tconst colorSpaceMode = propValues.colorSpace ?? 0;\n\t\tconst stopCount = propValues.stopCount ?? 0;\n\t\tlet smokeColor;\n\t\tif (stopCount \u003e 1) smokeColor = mixColorStopsRuntime(smokeAge, {\n\t\t\tcolorsArray: uniforms.colorsArray,\n\t\t\tpositionsArray: uniforms.positionsArray,\n\t\t\tconvertedColorsArray: uniforms.convertedColorsArray,\n\t\t\tstopCount: uniforms.stopCount\n\t\t}, colorSpaceMode);\n\t\telse smokeColor = call(cm.mixColorsVariants[colorSpaceMode] ?? cm.mixColorsLinear, \"mixColors\", [\n\t\t\tuniforms.colorA,\n\t\t\tuniforms.colorB,\n\t\t\tsmokeAge\n\t\t]);\n\t\treturn vec4(smokeColor.member(\"rgb\"), smokeColor.member(\"a\").mul(smokeDensity));\n\t} }\n});\nvar SmokeFlow_default = componentDefinition;\nexport { copyDensKernel as a, divergenceKernel as c, outputKernel as d, splatKernel as f, componentDefinition as i, gradSubtractKernel as l, advectDensKernel as n, copyVelKernel as o, vorticityKernel as p, advectVelKernel as r, curlKernel as s, SmokeFlow_default as t, jacobiKernel as u };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { p as solarize } from \"./color-Do6tU0ry.js\";\nimport { i as isZero, n as crosses } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"Solarize\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Inverts tones above a luminance threshold — a classic darkroom and photo effect\",\n\tprops: {\n\t\tthreshold: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Luminance level above which colors are inverted. Pixels brighter than this threshold get flipped.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Threshold\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstrength: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Blend between original (0) and fully solarized (1)\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: solarize({\n\t\tthreshold: p(\"threshold\"),\n\t\tstrength: p(\"strength\")\n\t}),\n\tidentityWhen: isZero(\"strength\"),\n\tmissingChildMessage: \"You must pass a child component into the Solarize shader.\"\n});\nvar Solarize_default = componentDefinition;\nexport { componentDefinition as n, Solarize_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nimport { a as solidColor } from \"./gradients-CIxKrfME.js\";\nconst componentDefinition = defineStd({\n\tname: \"SolidColor\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Textures\",\n\tdescription: \"Fill the canvas with a single solid color\",\n\tacceptsUVContext: true,\n\tprops: { color: {\n\t\tdefault: \"#5b18ca\",\n\t\ttransform: transformColor,\n\t\tdescription: \"The solid color to display\",\n\t\tui: {\n\t\t\ttype: \"color\",\n\t\t\tlabel: \"Color\",\n\t\t\tgroup: \"Colors\"\n\t\t}\n\t} },\n\tpaint: solidColor(p(\"color\"))\n});\nvar SolidColor_default = componentDefinition;\nexport { componentDefinition as n, SolidColor_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { F as rimLit, U as sphereFrame, u as crispTap, v as gatherStack } from \"./blurs-d4B9aUyx.js\";\nvar sphere = sphereFrame({\n\tcenter: p(\"center\"),\n\tradius: p(\"radius\"),\n\tdepth: p(\"depth\")\n});\nconst componentDefinition = defineStd({\n\tname: \"Spherize\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tcategory: \"Distortions\",\n\tdescription: \"Map content onto a 3D sphere surface with depth distortion\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tradius: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Radius of the sphere (1 = half viewport height)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdepth: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How much the sphere bulges toward viewer (0 = flat, higher = more bulge)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Depth\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point of the sphere\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tlightPosition: {\n\t\t\tdefault: {\n\t\t\t\tx: .3,\n\t\t\t\ty: .3\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Position of the specular light source\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Light Position\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tlightIntensity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Intensity of the rim light (0 = off)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Light Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlightSoftness: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Softness of the rim light falloff (0 = hard edge, 1 = soft glow)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Light Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlightColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the specular highlight\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Light Color\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(crispTap(sphere), [rimLit(sphere, {\n\t\tposition: p(\"lightPosition\"),\n\t\tintensity: p(\"lightIntensity\"),\n\t\tsoftness: p(\"lightSoftness\"),\n\t\tcolor: p(\"lightColor\")\n\t})], { resultAlpha: \"straight\" })\n});\nvar Spherize_default = componentDefinition;\nexport { componentDefinition as n, Spherize_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { f as rampOver, l as pair, r as dist } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Spiral\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Rotating spiral pattern with animated movement\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Background color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Spiral stroke color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstrokeWidth: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Thickness of spiral stroke\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Stroke Width\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstrokeFalloff: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Stroke losing width further from center\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Stroke Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Color transition sharpness (0 = hard edge, 1 = smooth fade)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed (negative values reverse direction)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -3,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"The center point of the spiral\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale factor for spiral bands (higher = more bands, lower = fewer bands)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: rampOver(dist.spiral({\n\t\tcenter: p(\"center\"),\n\t\tscale: p(\"scale\"),\n\t\twidth: p(\"strokeWidth\"),\n\t\tfalloff: p(\"strokeFalloff\"),\n\t\tsoftness: p(\"softness\")\n\t}), pair(p(\"colorA\"), p(\"colorB\"), p(\"colorSpace\")))\n});\nvar Spiral_default = componentDefinition;\nexport { componentDefinition as n, Spiral_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { p as star } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Star\",\n\tdescription: \"Classic star polygon with straight sides and sharp pointed tips\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e star(x, y, u(\"radius\"), u(\"sides\"), u(\"innerRatio\")),\n\t\tcolorDescription: \"Fill color of the star\",\n\t\tcenterDescription: \"Center position of the star\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .4,\n\t\t\t\tdescription: \"Outer tip radius — distance from center to the pointed tips\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 0,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Radius\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tsides: {\n\t\t\t\tdefault: 5,\n\t\t\t\tdescription: \"Number of points on the star\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: 3,\n\t\t\t\t\tmax: 12,\n\t\t\t\t\tstep: 1,\n\t\t\t\t\tlabel: \"Points\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tinnerRatio: {\n\t\t\t\tdefault: .4,\n\t\t\t\tdescription: \"Inner vertex radius as a ratio of outer radius (0.382 = golden-ratio 5-star)\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .1,\n\t\t\t\t\tmax: .9,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Inner Ratio\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Star_default = componentDefinition;\nexport { componentDefinition as n, Star_default as t };\n","function reliefStylizeProps(defaults) {\n\treturn {\n\t\tintensity: {\n\t\t\tdefault: defaults.intensity,\n\t\t\tdescription: \"Strength of the relief shading applied to the child content\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: defaults.scale,\n\t\t\tdescription: \"Scale of the pattern — lower = larger features, higher = finer grain\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: defaults.contrast,\n\t\t\tdescription: \"Contrast of the texture — negative flattens it into a subtle overlay\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t},\n\t\tdistortion: {\n\t\t\tdefault: defaults.distortion,\n\t\t\tdescription: \"Surface distortion — warps the child along the texture like carved relief\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Distortion\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed for pattern variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Texture\"\n\t\t\t}\n\t\t}\n\t};\n}\nexport { reliefStylizeProps as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { p as noiseRelief, v as reliefBases } from \"./noise-d7rmP9yc.js\";\nimport { t as reliefStylizeProps } from \"./noiseStylize-CUrW_HiC.js\";\nconst componentDefinition = defineStd({\n\tname: \"Stone\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Applies a marbled stone relief and surface distortion to child content\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: reliefStylizeProps({\n\t\tintensity: .5,\n\t\tscale: 1,\n\t\tcontrast: 0,\n\t\tdistortion: .15\n\t}),\n\tgpu: { fragment: noiseRelief(reliefBases.stone) }\n});\nvar Stone_default = componentDefinition;\nexport { componentDefinition as n, Stone_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { C as tonePow, h as overRgb, t as backToP3, y as ribbons } from \"./noise-d7rmP9yc.js\";\nimport { c as transformPosition, i as transformBoolean, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Strands\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Flowing ribbons of light with a multi-color gradient\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\textraAnimatedTimes: { color: \"colorSpeed\" },\n\tprops: {\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Overall animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tamplitude: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"How far the strands wave away from their resting line\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Amplitude\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"How many waves run along each strand\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlineCount: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of strands\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 16,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Strand Count\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlineWidth: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Thickness of each strand’s solid core\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Strand Width\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Softness of each strand’s edge (0 is crisp, higher is feathered)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Strand Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspread: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"How far the strands fan out across the field\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tpinEdges: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Pin the strands so they converge to the start and end points\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Pin Edges\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstops: {\n\t\t\t...colorStopsPropConfig(),\n\t\t\tdefault: [\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#00e5ff\",\n\t\t\t\t\tposition: 0\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#5b8cff\",\n\t\t\t\t\tposition: .34\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#b06bff\",\n\t\t\t\t\tposition: .67\n\t\t\t\t},\n\t\t\t\t{\n\t\t\t\t\tcolor: \"#ff5fa2\",\n\t\t\t\t\tposition: 1\n\t\t\t\t}\n\t\t\t]\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space used to blend the gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorScale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How many times the gradient repeats along the strands\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 6,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Color Scale\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorVariance: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"At 0 every strand shares the same color; at 1 the strands spread across the full gradient\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Color Variance\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Speed at which the colors flow along the strands (loops)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Color Speed\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstart: {\n\t\t\tdefault: {\n\t\t\t\tx: 0,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Starting point of the strands\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Start\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tend: {\n\t\t\tdefault: {\n\t\t\t\tx: 1,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Ending point of the strands\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"End\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: overRgb(ribbons({\n\t\tfrom: p(\"start\"),\n\t\tto: p(\"end\"),\n\t\tcount: p(\"lineCount\"),\n\t\twidth: p(\"lineWidth\"),\n\t\tamplitude: p(\"amplitude\"),\n\t\tfrequency: p(\"frequency\"),\n\t\tsoftness: p(\"softness\"),\n\t\tspread: p(\"spread\"),\n\t\tpinEdges: p(\"pinEdges\"),\n\t\tcolorScale: p(\"colorScale\"),\n\t\tcolorVariance: p(\"colorVariance\")\n\t}), backToP3({ space: p(\"colorSpace\") }), tonePow())\n});\nvar Strands_default = componentDefinition;\nexport { componentDefinition as n, Strands_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { g as stretch } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Stretch\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Stretch content towards a direction from a center point\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"The center point of the stretch effect\"),\n\t\tstrength: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The intensity of the stretch effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"The direction of the stretch in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Controls the sharpness of the transition (0 = sharp edge, 1 = gradual transition)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"stretch\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: stretch({\n\t\tcenter: p(\"center\"),\n\t\tstrength: p(\"strength\"),\n\t\tangle: p(\"angle\"),\n\t\tfalloff: p(\"falloff\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Stretch shader.\"\n});\nvar Stretch_default = componentDefinition;\nexport { componentDefinition as n, Stretch_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, S as stripeBands } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Stripes\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Alternating colored stripes with animation\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First stripe color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second stripe color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 45,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Angle of stripes in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -180,\n\t\t\t\tmax: 180,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdensity: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Number of stripe pairs visible\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Density\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Ratio of the two colors\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Edge softness\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\toffset: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Phase offset for pattern positioning\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Offset\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokeOver({\n\t\tfill: p(\"colorA\"),\n\t\tstroke: p(\"colorB\"),\n\t\tmask: stripeBands({\n\t\t\tangle: p(\"angle\"),\n\t\t\tdensity: p(\"density\"),\n\t\t\tbalance: p(\"balance\"),\n\t\t\tsoftness: p(\"softness\"),\n\t\t\toffset: p(\"offset\")\n\t\t}),\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar Stripes_default = componentDefinition;\nexport { componentDefinition as n, Stripes_default as t };\n","import { Mr as vec4f, c as p, o as uniformOf, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, H as vec4, I as splat3, P as smoothstep, T as neg, V as vec3, c as exp, i as clamp, n as add, o as div, u as float, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { t as cpuHash01 } from \"./signal-emJuvOI3.js\";\nimport { s as surfaceOf } from \"./frames-BLqt7oaW.js\";\nimport { A as vignetteMask, _ as glowAt, v as glowSpot } from \"./light-D3BIVkxy.js\";\nvar TAU = Math.PI * 2;\nconst componentDefinition = defineStd({\n\tname: \"StudioBackground\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Multi-light studio background with ambient motion.\",\n\textraFields: {\n\t\tambPosA: {\n\t\t\tschema: vec4f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t},\n\t\tambPosB: {\n\t\t\tschema: vec4f,\n\t\t\tinitial: [\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\t0\n\t\t\t]\n\t\t},\n\t\tambSizeSq: {\n\t\t\tschema: vec4f,\n\t\t\tinitial: [\n\t\t\t\t.01,\n\t\t\t\t.01,\n\t\t\t\t.01,\n\t\t\t\t.01\n\t\t\t]\n\t\t}\n\t},\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#d8dbec\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Base studio surface color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Surface Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tkeyColor: {\n\t\t\tdefault: \"#d5e4ea\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the overhead key light\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Key Color\",\n\t\t\t\tgroup: \"Key Light\"\n\t\t\t}\n\t\t},\n\t\tkeyIntensity: {\n\t\t\tdefault: 40,\n\t\t\tdescription: \"Intensity of the key light\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Key Light\"\n\t\t\t}\n\t\t},\n\t\tkeySoftness: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"How diffuse the key light is\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Key Light\"\n\t\t\t}\n\t\t},\n\t\tfillColor: {\n\t\t\tdefault: \"#d5e4ea\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the side fill lights\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Fill Color\",\n\t\t\t\tgroup: \"Fill Lights\"\n\t\t\t}\n\t\t},\n\t\tfillIntensity: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Intensity of the fill lights\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Fill Lights\"\n\t\t\t}\n\t\t},\n\t\tfillSoftness: {\n\t\t\tdefault: 70,\n\t\t\tdescription: \"How diffuse the fill lights are\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Fill Lights\"\n\t\t\t}\n\t\t},\n\t\tfillAngle: {\n\t\t\tdefault: 70,\n\t\t\tdescription: \"How far apart the fill lights are from center\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Spread\",\n\t\t\t\tgroup: \"Fill Lights\"\n\t\t\t}\n\t\t},\n\t\tbackColor: {\n\t\t\tdefault: \"#c8d4e8\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the upward back wash\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Back Color\",\n\t\t\t\tgroup: \"Back Light\"\n\t\t\t}\n\t\t},\n\t\tbackIntensity: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Intensity of the back wash\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Back Light\"\n\t\t\t}\n\t\t},\n\t\tbackSoftness: {\n\t\t\tdefault: 80,\n\t\t\tdescription: \"How diffuse the back wash is\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Back Light\"\n\t\t\t}\n\t\t},\n\t\tbrightness: {\n\t\t\tdefault: 20,\n\t\t\tdescription: \"Overall ambient light level\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Ambient\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tvignette: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Edge darkening\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Vignette\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .8\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Where the spotlight meets the floor\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Stage Center\",\n\t\t\t\tgroup: \"Scene\"\n\t\t\t}\n\t\t},\n\t\tlightTarget: {\n\t\t\tdefault: 100,\n\t\t\tdescription: \"How far toward the floor vs wall the spotlights aim\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Depth\",\n\t\t\t\tgroup: \"Scene\"\n\t\t\t}\n\t\t},\n\t\twallCurvature: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"How rounded the cove is\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Wall Curvature\",\n\t\t\t\tgroup: \"Scene\"\n\t\t\t}\n\t\t},\n\t\tambientIntensity: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Intensity of drifting ambient lights\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Ambient Detail\",\n\t\t\t\tgroup: \"Environment\"\n\t\t\t}\n\t\t},\n\t\tambientSpeed: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Drift speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Environment\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Seed for ambient pattern\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Environment\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst { uniforms } = params;\n\t\tconst { uv, viewport } = surfaceOf(params);\n\t\tconst aspect = local(div(viewport.member(\"x\"), max(viewport.member(\"y\"), 1e-6)), \"aspect\");\n\t\tconst u = (name) =\u003e uniformOf(p(name), params);\n\t\tconst brightness = local(mul(u(\"brightness\"), .02), \"sbBrightness\");\n\t\tconst keyInt = local(mul(u(\"keyIntensity\"), .015), \"sbKeyInt\");\n\t\tconst fillInt = local(mul(u(\"fillIntensity\"), .015), \"sbFillInt\");\n\t\tconst fillOffset = mul(u(\"fillAngle\"), .005);\n\t\tconst backInt = mul(u(\"backIntensity\"), .015);\n\t\tconst lightTarget = local(mul(u(\"lightTarget\"), .01), \"sbTarget\");\n\t\tconst curvature = local(mul(u(\"wallCurvature\"), .01), \"sbCurvature\");\n\t\tconst keyDecay = mix(5, .8, mul(u(\"keySoftness\"), .01));\n\t\tconst fillDecay = mix(5, .8, mul(u(\"fillSoftness\"), .01));\n\t\tconst backDecay = local(mix(5, .8, mul(u(\"backSoftness\"), .01)), \"sbBackDecay\");\n\t\tconst centerX = local(u(\"center\").member(\"x\"), \"coveCenterX\");\n\t\tconst centerY = local(sub(1, u(\"center\").member(\"y\")), \"coveCenterY\");\n\t\tconst transitionWidth = local(mix(.015, .15, curvature), \"coveTransition\");\n\t\tconst isFloor = local(smoothstep(sub(centerY, transitionWidth), add(centerY, transitionWidth), uv.member(\"y\")), \"coveIsFloor\");\n\t\tconst notFloor = local(sub(1, isFloor), \"coveNotFloor\");\n\t\tconst wallNormY = local(clamp(div(uv.member(\"y\"), max(centerY, 1e-6)), 0, 1), \"coveWallY\");\n\t\tconst wallNormY2 = local(mul(wallNormY, wallNormY), \"coveWallY2\");\n\t\tconst floorNormY = clamp(div(sub(uv.member(\"y\"), centerY), max(sub(1, centerY), 1e-6)), 0, 1);\n\t\tconst uvXCentered = local(mul(sub(uv.member(\"x\"), centerX), aspect), \"coveX\");\n\t\tconst coneWidth = local(mix(.05, .45, wallNormY2), \"coveCone\");\n\t\tconst wallFallY = mul(sub(1, wallNormY), 1.2);\n\t\tconst wallFallY2 = local(mul(wallFallY, wallFallY), \"coveWallFall\");\n\t\tconst floorPoolY = add(centerY, mul(sub(1, centerY), .3));\n\t\tconst floorDy = mul(sub(uv.member(\"y\"), floorPoolY), 4);\n\t\tconst floorDy2 = local(mul(floorDy, floorDy), \"coveFloorFall\");\n\t\tconst ambient = mul(mix(mix(.2, .4, wallNormY), mix(.38, .18, floorNormY), isFloor), brightness);\n\t\tconst curveDist = div(sub(uv.member(\"y\"), centerY), add(transitionWidth, .001));\n\t\tconst neutralBase = local(add(ambient, mul(mul(mul(exp(mul(mul(-.5, curveDist), curveDist)), curvature), brightness), .1)), \"sbBase\");\n\t\tconst wallBias = local(add(mul(sub(1, lightTarget), 1.4), .3), \"sbWallBias\");\n\t\tconst floorBias = local(add(mul(lightTarget, 1.4), .3), \"sbFloorBias\");\n\t\tconst downSpot = (sourceX, decay) =\u003e {\n\t\t\tconst beamX = mix(sourceX, centerX, wallNormY2);\n\t\t\tconst wDx = div(mul(sub(uv.member(\"x\"), beamX), aspect), coneWidth);\n\t\t\tconst wall = mul(mul(exp(mul(neg(add(mul(wDx, wDx), wallFallY2)), decay)), notFloor), wallBias);\n\t\t\tconst poolX = mix(centerX, sourceX, .25);\n\t\t\tconst fDx = mul(mul(sub(uv.member(\"x\"), poolX), aspect), 1.4);\n\t\t\treturn add(wall, mul(mul(exp(mul(neg(add(mul(fDx, fDx), floorDy2)), mul(decay, 1.5))), isFloor), floorBias));\n\t\t};\n\t\tlet light = local(vec3(neutralBase, neutralBase, neutralBase), \"sbLight0\");\n\t\tlight = add(light, mul(u(\"keyColor\").member(\"rgb\"), mul(local(downSpot(centerX, keyDecay), \"sbKey\"), keyInt)));\n\t\tconst fills = add(mul(local(downSpot(sub(centerX, fillOffset), fillDecay), \"sbFillL\"), fillInt), mul(local(downSpot(add(centerX, fillOffset), fillDecay), \"sbFillR\"), fillInt));\n\t\tlight = add(light, mul(u(\"fillColor\").member(\"rgb\"), fills));\n\t\tconst backFloor = mul(glowSpot(mul(uvXCentered, .5), mul(sub(uv.member(\"y\"), mix(1, centerY, .15)), 4), backDecay), isFloor);\n\t\tconst backWall = mul(mul(glowSpot(mul(uvXCentered, .6), mul(sub(centerY, uv.member(\"y\")), 3), mul(backDecay, .8)), notFloor), wallNormY2);\n\t\tlight = add(light, mul(u(\"backColor\").member(\"rgb\"), mul(add(backFloor, backWall), backInt)));\n\t\tconst bounce = mul(mul(glowSpot(mul(uvXCentered, .7), mul(add(sub(uv.member(\"y\"), centerY), .02), 10), float(2.5)), mul(keyInt, .12)), notFloor);\n\t\tlight = add(light, splat3(bounce));\n\t\tconst ambAnchorY = sub(centerY, .2);\n\t\tconst orbits = add(add(add(glowAt({\n\t\t\tuv,\n\t\t\taspect,\n\t\t\tx: add(centerX, uniforms.ambPosA.member(\"x\")),\n\t\t\ty: add(ambAnchorY, uniforms.ambPosA.member(\"y\")),\n\t\t\tsizeSq: uniforms.ambSizeSq.member(\"x\")\n\t\t}), glowAt({\n\t\t\tuv,\n\t\t\taspect,\n\t\t\tx: add(centerX, uniforms.ambPosA.member(\"z\")),\n\t\t\ty: add(ambAnchorY, uniforms.ambPosA.member(\"w\")),\n\t\t\tsizeSq: uniforms.ambSizeSq.member(\"y\")\n\t\t})), glowAt({\n\t\t\tuv,\n\t\t\taspect,\n\t\t\tx: add(centerX, uniforms.ambPosB.member(\"x\")),\n\t\t\ty: add(ambAnchorY, uniforms.ambPosB.member(\"y\")),\n\t\t\tsizeSq: uniforms.ambSizeSq.member(\"z\")\n\t\t})), glowAt({\n\t\t\tuv,\n\t\t\taspect,\n\t\t\tx: add(centerX, uniforms.ambPosB.member(\"z\")),\n\t\t\ty: add(ambAnchorY, uniforms.ambPosB.member(\"w\")),\n\t\t\tsizeSq: uniforms.ambSizeSq.member(\"w\")\n\t\t}));\n\t\tlight = add(light, splat3(mul(orbits, mul(mul(u(\"ambientIntensity\"), .012), .25))));\n\t\tlet ambTime = 0;\n\t\tlet lastSeed = NaN;\n\t\tlet orbitConsts = [];\n\t\tparams.onBeforeRender((fp) =\u003e {\n\t\t\tambTime += (fp?.deltaTime ?? 0) * (params.getCpuValue(\"ambientSpeed\") ?? 2);\n\t\t\tconst seed = params.getCpuValue(\"seed\") ?? 0;\n\t\t\tif (seed !== lastSeed) {\n\t\t\t\tlastSeed = seed;\n\t\t\t\torbitConsts = [];\n\t\t\t\tfor (let i = 0; i \u003c 4; i++) {\n\t\t\t\t\tconst sd = seed + i * 73.1;\n\t\t\t\t\tconst sizeVal = cpuHash01(sd + 311) * .12 + .1;\n\t\t\t\t\torbitConsts.push({\n\t\t\t\t\t\tsizeSq: sizeVal * sizeVal,\n\t\t\t\t\t\tradiusX: cpuHash01(sd) * .5 + .2,\n\t\t\t\t\t\tradiusY: cpuHash01(sd + 37) * .25 + .1,\n\t\t\t\t\t\tfreqX: cpuHash01(sd + 91) * .3 + .1,\n\t\t\t\t\t\tfreqY: cpuHash01(sd + 143) * .25 + .08,\n\t\t\t\t\t\tphaseX: cpuHash01(sd + 200) * TAU,\n\t\t\t\t\t\tphaseY: cpuHash01(sd + 257) * TAU\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst off = orbitConsts.map((c) =\u003e [Math.sin(ambTime * c.freqX + c.phaseX) * c.radiusX, Math.cos(ambTime * c.freqY + c.phaseY) * c.radiusY]);\n\t\t\tparams.setExtraField(\"ambPosA\", [\n\t\t\t\toff[0][0],\n\t\t\t\toff[0][1],\n\t\t\t\toff[1][0],\n\t\t\t\toff[1][1]\n\t\t\t]);\n\t\t\tparams.setExtraField(\"ambPosB\", [\n\t\t\t\toff[2][0],\n\t\t\t\toff[2][1],\n\t\t\t\toff[3][0],\n\t\t\t\toff[3][1]\n\t\t\t]);\n\t\t\tparams.setExtraField(\"ambSizeSq\", [\n\t\t\t\torbitConsts[0].sizeSq,\n\t\t\t\torbitConsts[1].sizeSq,\n\t\t\t\torbitConsts[2].sizeSq,\n\t\t\t\torbitConsts[3].sizeSq\n\t\t\t]);\n\t\t});\n\t\tconst vig = vignetteMask({\n\t\t\tstrength: p(\"vignette\"),\n\t\t\tscale: .025\n\t\t})(params);\n\t\treturn vec4(clamp(mul(mul(u(\"color\").member(\"rgb\"), clamp(light, splat3(0), splat3(3))), vig), splat3(0), splat3(1)), 1);\n\t}\n});\nvar StudioBackground_default = componentDefinition;\nexport { componentDefinition as n, StudioBackground_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as radialFrame, a as coverageMix, j as withFrame, k as softRayLobes, l as featherMask, x as modulate } from \"./light-D3BIVkxy.js\";\nconst componentDefinition = defineStd({\n\tname: \"SunBurst\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Radial sunburst rays emanating from a center point\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#ffdd88\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Ray color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tbackground: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Background color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Background\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center point of the sunburst\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trayCount: {\n\t\t\tdefault: 12,\n\t\t\tdescription: \"Number of rays\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 3,\n\t\t\t\tmax: 64,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Ray Count\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Softness of ray edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"How far the rays extend from the center\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How gradually the rays fade at their outer edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Rotation speed — positive values rotate clockwise\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: coverageMix({\n\t\tcolor: p(\"color\"),\n\t\tbackground: p(\"background\"),\n\t\tcoverage: withFrame(radialFrame(p(\"center\")), modulate(softRayLobes({\n\t\t\tcount: p(\"rayCount\"),\n\t\t\tsoftness: p(\"softness\"),\n\t\t\tspin: -1\n\t\t}), featherMask({\n\t\t\tradius: p(\"radius\"),\n\t\t\tfeather: p(\"feather\")\n\t\t})), \"burstFrame\"),\n\t\thint: \"burstAlpha\"\n\t})\n});\nvar SunBurst_default = componentDefinition;\nexport { componentDefinition as n, SunBurst_default as t };\n","import { J as createPingPongPair, Ot as unpremultiplyAlpha, Pn as DEG_TO_RAD$1, at as ZERO, ct as call, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as heightFieldMarchLayout, E as waveEquationLayout, S as createWaveStateBuffers, T as makeWaveEquationKernel, _ as WAVE_GRID, b as createHeightFieldParamsUniform, g as WAVE_DECAY, h as HEIGHT_SLAB_PAD, m as HEIGHT_FIELD_STATE_FORMAT, p as CURSOR_WAVE_BOUND, v as WAVE_HALFEXTENT, w as makeHeightFieldMarchKernel, x as createKernelPass, y as WAVE_SETTLE_MS } from \"./porters-OTkIMOyl.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nimport { a as transformColor, s as transformEdges } from \"./transformations-CzFmhZww.js\";\nimport { H as vec4, V as vec3, i as clamp, w as mul, y as local } from \"./math-D864seEs.js\";\nimport { a as recompileWhen } from \"./slots-BqIef2iV.js\";\nvar COMPUTE_MAX = isMobileGpuViewport() ? 960 : 1600;\nvar COMPUTE_FALLBACK_W = 1600;\nvar COMPUTE_FALLBACK_H = 900;\nvar MARCH_STEPS = isMobileGpuViewport() ? 12 : 16;\nvar MARCH_REFINE = 6;\nvar DEG_TO_RAD = DEG_TO_RAD$1;\nconst componentDefinition = defineStd({\n\tname: \"Surface3D\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Distortions\",\n\tdescription: \"Drapes child content over a 3D wave surface with perspective and lighting\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tusesPointer: true,\n\tprovidesUVContextViaCompute: true,\n\tprops: {\n\t\tamplitude: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Wave height\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Amplitude\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\twaveType: {\n\t\t\tdefault: \"fractal\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Wave pattern type\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Fractal\",\n\t\t\t\t\t\tvalue: \"fractal\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Sine\",\n\t\t\t\t\t\tvalue: \"sine\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Ridge\",\n\t\t\t\t\t\tvalue: \"ridge\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Wave Type\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Wave frequency\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\toctaves: {\n\t\t\tdefault: 2,\n\t\t\trecompile: recompileWhen((prev, next) =\u003e Math.max(1, Math.floor(prev)) !== Math.max(1, Math.floor(next))),\n\t\t\tdescription: \"Detail octaves\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Octaves\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed offset\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\ttilt: {\n\t\t\tdefault: 35,\n\t\t\tdescription: \"Camera tilt in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 85,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Tilt\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\troll: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Camera roll in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -45,\n\t\t\t\tmax: 45,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Roll\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\theight: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Camera height\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Height\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\tzoom: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Camera zoom\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .3,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Zoom\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\tnearCutoff: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Near fade distance\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Near Cutoff\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\tfarCutoff: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Far fade distance\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Far Cutoff\",\n\t\t\t\tgroup: \"Camera\"\n\t\t\t}\n\t\t},\n\t\tedgePinning: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Smoothly flatten the surface at its edges (orthogonal to edge mode)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Pinning\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\tedges: {\n\t\t\tdefault: \"mirror\",\n\t\t\ttransform: transformEdges,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"How to handle content beyond the surface bounds\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Stretch\",\n\t\t\t\t\t\tvalue: \"stretch\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Transparent\",\n\t\t\t\t\t\tvalue: \"transparent\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirror\",\n\t\t\t\t\t\tvalue: \"mirror\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wrap\",\n\t\t\t\t\t\tvalue: \"wrap\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Edges\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\tlighting: {\n\t\t\tdefault: 30,\n\t\t\trecompile: recompileWhen((prev, next) =\u003e prev \u003c .01 !== next \u003c .01),\n\t\t\tdescription: \"Intensity of lighting and shading\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Lighting\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tglossiness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Surface glossiness\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Glossiness\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\thighlights: {\n\t\t\tdefault: 15,\n\t\t\tdescription: \"Specular highlight intensity\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Highlights\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tlightX: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"Light direction X\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Light X\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tlightY: {\n\t\t\tdefault: -.6,\n\t\t\tdescription: \"Light direction Y\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Light Y\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tlightZ: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Light direction Z\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Light Z\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tlightColor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Light color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Light Color\",\n\t\t\t\tgroup: \"Lighting\"\n\t\t\t}\n\t\t},\n\t\tcursorIntensity: {\n\t\t\tdefault: 1,\n\t\t\trecompile: recompileWhen((prev, next) =\u003e prev \u003c .01 !== next \u003c .01),\n\t\t\tdescription: \"Strength of cursor ripples\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Cursor Ripples\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t},\n\t\tcursorSpeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Speed of cursor ripple propagation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Ripple Speed\",\n\t\t\t\tgroup: \"Interaction\"\n\t\t\t}\n\t\t}\n\t},\n\tcompute: (params) =\u003e {\n\t\tconst { gpu, getCpuValue, registerComputeTexture, onCleanup, onResize, dimensions } = params;\n\t\tconst root = gpu?.root;\n\t\tif (!root) return null;\n\t\tconst waveType = getCpuValue(\"waveType\") === \"sine\" ? 1 : getCpuValue(\"waveType\") === \"ridge\" ? 2 : 0;\n\t\tconst octaveCount = Math.max(1, Math.floor(getCpuValue(\"octaves\") ?? 2));\n\t\tconst edgeMode = getCpuValue(\"edges\") ?? 2;\n\t\tconst lightingEnabled = (getCpuValue(\"lighting\") ?? 30) \u003e= .01;\n\t\tconst cursorEnabled = (getCpuValue(\"cursorIntensity\") ?? 1) \u003e= .01;\n\t\tconst canvasW = Math.round(dimensions.width);\n\t\tconst canvasH = Math.round(dimensions.height);\n\t\tlet computeW = Math.min(COMPUTE_MAX, COMPUTE_FALLBACK_W);\n\t\tlet computeH = Math.min(Math.round(COMPUTE_MAX * COMPUTE_FALLBACK_H / COMPUTE_FALLBACK_W), COMPUTE_FALLBACK_H);\n\t\tif (canvasW \u003e= 16 \u0026\u0026 canvasH \u003e= 16) {\n\t\t\tconst fit = Math.min(1, COMPUTE_MAX / Math.max(canvasW, canvasH));\n\t\t\tcomputeW = Math.max(16, Math.round(canvasW * fit));\n\t\t\tcomputeH = Math.max(16, Math.round(canvasH * fit));\n\t\t}\n\t\tconst uvMaskTex = root.createTexture({\n\t\t\tsize: [computeW, computeH],\n\t\t\tformat: HEIGHT_FIELD_STATE_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\");\n\t\tconst litTex = root.createTexture({\n\t\t\tsize: [computeW, computeH],\n\t\t\tformat: HEIGHT_FIELD_STATE_FORMAT\n\t\t}).$usage(\"storage\", \"sampled\");\n\t\tonCleanup(() =\u003e {\n\t\t\tuvMaskTex.destroy();\n\t\t\tlitTex.destroy();\n\t\t});\n\t\tconst uvMaskMap = registerComputeTexture(uvMaskTex);\n\t\tconst litMap = registerComputeTexture(litTex);\n\t\tconst { bufferA, bufferB, readBuf } = createWaveStateBuffers(root);\n\t\tconst paramsU = createHeightFieldParamsUniform(root);\n\t\tlet curW = Math.max(1, Math.round(dimensions.width));\n\t\tlet curH = Math.max(1, Math.round(dimensions.height));\n\t\tonResize(({ width, height }) =\u003e {\n\t\t\tcurW = Math.max(1, Math.round(width));\n\t\t\tcurH = Math.max(1, Math.round(height));\n\t\t});\n\t\tconst computeKernel = makeHeightFieldMarchKernel({\n\t\t\twaveType,\n\t\t\toctaveCount,\n\t\t\tedgeMode,\n\t\t\tlightingEnabled,\n\t\t\tcursorEnabled,\n\t\t\tmarchSteps: MARCH_STEPS,\n\t\t\tmarchRefine: MARCH_REFINE,\n\t\t\tcomputeW,\n\t\t\tcomputeH\n\t\t});\n\t\tconst computeBg = root.createBindGroup(heightFieldMarchLayout, {\n\t\t\treadBuf,\n\t\t\tparams: paramsU.buffer,\n\t\t\tuvMaskTex,\n\t\t\tlitTex\n\t\t});\n\t\tconst computePass = createKernelPass(root, computeKernel, {\n\t\t\tsize: [computeW, computeH],\n\t\t\tbindGroup: computeBg\n\t\t});\n\t\tconst propagate = cursorEnabled ? makeWaveEquationKernel() : null;\n\t\tconst wave = createPingPongPair(bufferA, bufferB);\n\t\tconst propGroup = cursorEnabled ? wave.groups((readSrc, writeBuf) =\u003e root.createBindGroup(waveEquationLayout, {\n\t\t\treadSrc,\n\t\t\twriteBuf,\n\t\t\treadBuf,\n\t\t\tparams: paramsU.buffer\n\t\t})) : null;\n\t\tconst propagatePass = cursorEnabled \u0026\u0026 propagate ? createKernelPass(root, propagate, { size: [256, 256] }) : null;\n\t\tlet prevPx = .5;\n\t\tlet prevPy = .5;\n\t\tlet lastTime = Date.now();\n\t\tlet simSinceActive = 0;\n\t\tlet animT = 0;\n\t\tlet lastSig = null;\n\t\tconst writeParams = (fp, mouseSpeed, cursorActive) =\u003e {\n\t\t\tconst aspect = Math.max(1, curW) / Math.max(1, curH);\n\t\t\tconst tilt = (getCpuValue(\"tilt\") ?? 35) * DEG_TO_RAD;\n\t\t\tconst roll = (getCpuValue(\"roll\") ?? 0) * DEG_TO_RAD;\n\t\t\tconst camHeight = getCpuValue(\"height\") ?? 0;\n\t\t\tconst zoom = getCpuValue(\"zoom\") ?? 1;\n\t\t\tconst { camPos, fwd, camRight, camUp, focal } = resolveOrbitCamera(tilt, roll, camHeight, zoom);\n\t\t\tconst px = fp.pointer?.x ?? .5;\n\t\t\tconst py = fp.pointer?.y ?? .5;\n\t\t\tconst cNdcX = (px - .5) * 2 * aspect;\n\t\t\tconst cNdcY = -(py - .5) * 2;\n\t\t\tconst rd = norm3([\n\t\t\t\tfwd[0] * focal + camRight[0] * cNdcX + camUp[0] * cNdcY,\n\t\t\t\tfwd[1] * focal + camRight[1] * cNdcX + camUp[1] * cNdcY,\n\t\t\t\tfwd[2] * focal + camRight[2] * cNdcX + camUp[2] * cNdcY\n\t\t\t]);\n\t\t\tconst cRayDownZ = Math.max(-rd[2], .001);\n\t\t\tconst cT0 = camPos[2] / cRayDownZ;\n\t\t\tconst cWX0 = camPos[0] + rd[0] * cT0;\n\t\t\tconst cWY0 = camPos[1] + rd[1] * cT0;\n\t\t\tconst cursorWorldUVx = cWX0 * .5 + .5;\n\t\t\tconst cursorWorldUVy = cWY0 * .5 + .5;\n\t\t\tconst lc = getCpuValue(\"lightColor\");\n\t\t\tconst amp = getCpuValue(\"amplitude\") ?? .3;\n\t\t\tconst cursorIntensity = getCpuValue(\"cursorIntensity\") ?? 1;\n\t\t\tconst freq = getCpuValue(\"frequency\") ?? 1.5;\n\t\t\tconst seed = getCpuValue(\"seed\") ?? 0;\n\t\t\tconst edgePin = getCpuValue(\"edgePinning\") ?? 0;\n\t\t\tconst lighting = (getCpuValue(\"lighting\") ?? 30) * .035;\n\t\t\tconst glossiness = (getCpuValue(\"glossiness\") ?? 0) * .01;\n\t\t\tconst highlights = (getCpuValue(\"highlights\") ?? 15) * .04;\n\t\t\tconst lightX = getCpuValue(\"lightX\") ?? .4;\n\t\t\tconst lightY = getCpuValue(\"lightY\") ?? -.6;\n\t\t\tconst lightZ = getCpuValue(\"lightZ\") ?? .7;\n\t\t\tconst nearCutoff = getCpuValue(\"nearCutoff\") ?? 0;\n\t\t\tconst farCutoff = getCpuValue(\"farCutoff\") ?? 1;\n\t\t\tconst waveSpeed = getCpuValue(\"cursorSpeed\") ?? .5;\n\t\t\tconst cursorWaveX = (cursorWorldUVx - .5) / 3 + .5;\n\t\t\tconst cursorWaveY = (cursorWorldUVy - .5) / 3 + .5;\n\t\t\tconst heightEnvelope = amp + HEIGHT_SLAB_PAD + (cursorActive \u003e 0 ? cursorIntensity * .05 * 6 : 0);\n\t\t\tparamsU.write({\n\t\t\t\tamp,\n\t\t\t\tfreq,\n\t\t\t\tseed,\n\t\t\t\tedgePin,\n\t\t\t\tcursorIntensity,\n\t\t\t\tt: animT,\n\t\t\t\taspect,\n\t\t\t\tfocal,\n\t\t\t\tcamPos,\n\t\t\t\tcamForward: fwd,\n\t\t\t\tcamRight,\n\t\t\t\tcamUp,\n\t\t\t\tlighting,\n\t\t\t\tglossiness,\n\t\t\t\thighlights,\n\t\t\t\tlightX,\n\t\t\t\tlightY,\n\t\t\t\tlightZ,\n\t\t\t\tlightColor: [\n\t\t\t\t\tlc?.x ?? 1,\n\t\t\t\t\tlc?.y ?? 1,\n\t\t\t\t\tlc?.z ?? 1\n\t\t\t\t],\n\t\t\t\tnearCutoff,\n\t\t\t\tfarCutoff,\n\t\t\t\tcursorWaveX,\n\t\t\t\tcursorWaveY,\n\t\t\t\tmouseSpeed,\n\t\t\t\tdt: .016,\n\t\t\t\tdecay: 10,\n\t\t\t\tradius: .025,\n\t\t\t\twaveSpeed,\n\t\t\t\theightEnvelope,\n\t\t\t\tcursorActive\n\t\t\t});\n\t\t\treturn [\n\t\t\t\tamp,\n\t\t\t\tfreq,\n\t\t\t\tseed,\n\t\t\t\tedgePin,\n\t\t\t\tcursorIntensity,\n\t\t\t\tanimT,\n\t\t\t\taspect,\n\t\t\t\ttilt,\n\t\t\t\troll,\n\t\t\t\tcamHeight,\n\t\t\t\tzoom,\n\t\t\t\tlighting,\n\t\t\t\tglossiness,\n\t\t\t\thighlights,\n\t\t\t\tlightX,\n\t\t\t\tlightY,\n\t\t\t\tlightZ,\n\t\t\t\tlc?.x ?? 1,\n\t\t\t\tlc?.y ?? 1,\n\t\t\t\tlc?.z ?? 1,\n\t\t\t\tnearCutoff,\n\t\t\t\tfarCutoff,\n\t\t\t\tcursorWaveX,\n\t\t\t\tcursorWaveY,\n\t\t\t\tmouseSpeed,\n\t\t\t\twaveSpeed,\n\t\t\t\theightEnvelope,\n\t\t\t\tcursorActive\n\t\t\t].join(\",\");\n\t\t};\n\t\treturn {\n\t\t\toutputs: {\n\t\t\t\tuvMaskMap,\n\t\t\t\tlitMap\n\t\t\t},\n\t\t\tgetComputeNodes: (frameParams) =\u003e {\n\t\t\t\tconst fp = frameParams;\n\t\t\t\tconst now = Date.now();\n\t\t\t\tconst dt = Math.min(fp.deltaTime ?? (now - lastTime) / 1e3, .016);\n\t\t\t\tlastTime = now;\n\t\t\t\tconst px = fp.pointer?.x ?? prevPx;\n\t\t\t\tconst py = fp.pointer?.y ?? prevPy;\n\t\t\t\tconst rawVelX = dt \u003e 0 ? (px - prevPx) / dt : 0;\n\t\t\t\tconst rawVelY = dt \u003e 0 ? (py - prevPy) / dt : 0;\n\t\t\t\tconst mouseSpeed = Math.min(Math.sqrt(rawVelX * rawVelX + rawVelY * rawVelY), 2);\n\t\t\t\tprevPx = px;\n\t\t\t\tprevPy = py;\n\t\t\t\tif (mouseSpeed \u003e .01) simSinceActive = 0;\n\t\t\t\telse simSinceActive += dt;\n\t\t\t\tanimT += dt * (getCpuValue(\"speed\") ?? .5);\n\t\t\t\tconst waveSettled = !cursorEnabled || !propagatePass || simSinceActive * 1e3 \u003e WAVE_SETTLE_MS \u0026\u0026 mouseSpeed \u003c .01;\n\t\t\t\tconst sig = writeParams(fp, mouseSpeed, waveSettled ? 0 : 1);\n\t\t\t\tif (waveSettled \u0026\u0026 sig === lastSig) return [];\n\t\t\t\tlastSig = sig;\n\t\t\t\tif (waveSettled || !propagatePass || !propGroup) return [computePass];\n\t\t\t\tconst prop = propagatePass.with(propGroup());\n\t\t\t\twave.swap();\n\t\t\t\treturn [prop, computePass];\n\t\t\t}\n\t\t};\n\t},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst { childNode, ctx, computeOutputs, convertToTexture } = params;\n\t\tif (!childNode) return ZERO;\n\t\tconst uvMaskTex = computeOutputs?.uvMaskMap;\n\t\tconst litTex = computeOutputs?.litMap;\n\t\tif (!uvMaskTex || !litTex) return ZERO;\n\t\tconst uvMaskSample = local(uvMaskTex.sample(ctx.uv, \"linearClamp\"), \"uvMaskSample\");\n\t\tconst litSample = litTex.sample(ctx.uv, \"linearClamp\");\n\t\tconst lookedUpUV = vec4(uvMaskSample.member(\"r\"), uvMaskSample.member(\"g\"), 0, 0).member(\"xy\");\n\t\tconst mask = uvMaskSample.member(\"b\");\n\t\tconst lit = litSample.member(\"rgb\");\n\t\tconst childColor = local(params.uvPropagationActive ? childNode : convertToTexture(childNode).sample(lookedUpUV), \"childColor\");\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [vec4(clamp(mul(childColor.member(\"xyz\"), lit), vec3(0, 0, 0), vec3(1, 1, 1)), mul(childColor.member(\"w\"), mask))]);\n\t} }\n});\nfunction cross3(a, b) {\n\treturn [\n\t\ta[1] * b[2] - a[2] * b[1],\n\t\ta[2] * b[0] - a[0] * b[2],\n\t\ta[0] * b[1] - a[1] * b[0]\n\t];\n}\nfunction norm3(a) {\n\tconst l = Math.max(1e-6, Math.hypot(a[0], a[1], a[2]));\n\treturn [\n\t\ta[0] / l,\n\t\ta[1] / l,\n\t\ta[2] / l\n\t];\n}\nfunction resolveOrbitCamera(tilt, roll, camHeight, zoom) {\n\tconst camDist = .85 / Math.max(1e-4, zoom);\n\tconst camY = -Math.sin(tilt) * camDist;\n\tconst orbitZ = Math.cos(tilt) * camDist;\n\tconst camPos = [\n\t\t0,\n\t\tcamY,\n\t\torbitZ + camHeight\n\t];\n\tconst fwd = norm3([\n\t\t0,\n\t\t-camY,\n\t\t-orbitZ\n\t]);\n\tconst right0 = [\n\t\t1,\n\t\t0,\n\t\t0\n\t];\n\tconst up0 = norm3(cross3(right0, fwd));\n\tconst cr = Math.cos(roll);\n\tconst sr = Math.sin(roll);\n\treturn {\n\t\tcamPos,\n\t\tfwd,\n\t\tcamRight: [\n\t\t\tright0[0] * cr + up0[0] * sr,\n\t\t\tright0[1] * cr + up0[1] * sr,\n\t\t\tright0[2] * cr + up0[2] * sr\n\t\t],\n\t\tcamUp: [\n\t\t\tup0[0] * cr - right0[0] * sr,\n\t\t\tup0[1] * cr - right0[1] * sr,\n\t\t\tup0[2] * cr - right0[2] * sr\n\t\t],\n\t\tfocal: 1.5\n\t};\n}\nvar Surface3D_default = componentDefinition;\nexport { componentDefinition as n, Surface3D_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { _ as share, b as stops, f as rampOver, i as flowField, u as pulse, v as shimmered, x as threshold } from \"./fields-DgADOKsP.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar swirlPatternField = share(flowField({ detail: p(\"detail\") }));\nconst componentDefinition = defineStd({\n\tname: \"Swirl\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Textures\",\n\tdescription: \"Flowing swirl pattern with multi-layered noise\",\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#1275d8\",\n\t\t\tdescription: \"Primary gradient color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#e19136\",\n\t\t\tdescription: \"Secondary gradient color\",\n\t\t\ttransform: transformColor,\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Flow animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Level of detail and intricacy in the swirl patterns\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Detail\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tblend: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Skew color balance toward A (lower values) or B (higher values)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Blend\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: shimmered(rampOver(threshold(swirlPatternField, {\n\t\tlow: .3,\n\t\thigh: .7,\n\t\tbias: {\n\t\t\tbase: p(\"blend\"),\n\t\t\tadd: -50,\n\t\t\tmul: .006\n\t\t}\n\t}), stops(p(\"colorSpace\"))), pulse(swirlPatternField, {\n\t\tspeed: 2.5,\n\t\tspan: 8,\n\t\tdepth: .015\n\t}))\n});\nvar Swirl_default = componentDefinition;\nexport { componentDefinition as n, Swirl_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { m as teardrop } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Teardrop\",\n\tdescription: \"Teardrop — a rounded bulb tapering to a sharp point\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e teardrop(x, y, u(\"radius\"), u(\"height\")),\n\t\tcolorDescription: \"Fill color of the teardrop\",\n\t\tcenterDescription: \"Center position of the teardrop\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"height\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .22,\n\t\t\t\tdescription: \"Radius of the rounded bulb\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .02,\n\t\t\t\t\tmax: .6,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Width\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdefault: .4,\n\t\t\t\tdescription: \"Length from the bulb to the point\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .1,\n\t\t\t\t\tmax: .7,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Length\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Teardrop_default = componentDefinition;\nexport { componentDefinition as n, Teardrop_default as t };\n","import { ct as call, mt as vec4, qr as f32, rt as sampleCatmullRomExpr, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { l as orientedBoxField } from \"./stylize-DiuoSq16.js\";\nimport { t as createSwappableMediaTexture } from \"./mediaLifecycle-BTPb5i1-.js\";\nimport { n as createFontDependentRaster, r as createRasterInvalidator, t as createCanvasRasterTarget } from \"./canvasRaster-DDBkrdY8.js\";\nimport { n as loadGoogleFont, t as isFontAvailable } from \"./fonts-BUXTd9qb.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nfunction applyTextTransform(text, mode) {\n\tswitch (mode) {\n\t\tcase \"uppercase\": return text.toUpperCase();\n\t\tcase \"lowercase\": return text.toLowerCase();\n\t\tcase \"capitalize\": return text.replace(/(^|\\s)(\\S)/g, (_, ws, ch) =\u003e ws + ch.toUpperCase());\n\t\tdefault: return text;\n\t}\n}\nvar generation = 0;\nfunction bumpMeasureGeneration() {\n\tgeneration++;\n}\nvar measureCtx = null;\nvar letterSpacingSupported = false;\nfunction getMeasureContext() {\n\tif (measureCtx) return measureCtx;\n\tif (typeof document === \"undefined\") return null;\n\tconst canvas = document.createElement(\"canvas\");\n\tcanvas.width = 1;\n\tcanvas.height = 1;\n\tmeasureCtx = canvas.getContext(\"2d\", { willReadFrequently: false });\n\tif (measureCtx) letterSpacingSupported = \"letterSpacing\" in measureCtx;\n\treturn measureCtx;\n}\nfunction supportsCanvasLetterSpacing() {\n\tgetMeasureContext();\n\treturn letterSpacingSupported;\n}\nvar MAX_CACHE_ENTRIES = 500;\nvar cache = /* @__PURE__ */ new Map();\nfunction measureText(spec) {\n\tconst text = applyTextTransform(spec.text, spec.textTransform);\n\tconst ctx = getMeasureContext();\n\tif (!ctx) return {\n\t\twidthPer100: text.length * 55,\n\t\tascentPer100: 80,\n\t\tdescentPer100: 20,\n\t\tinkAscentPer100: 80,\n\t\tinkDescentPer100: 20\n\t};\n\tconst fontLoaded = isFontAvailable(spec.fontFamily, spec.fontWeight, spec.italic);\n\tconst key = `${generation}|${fontLoaded ? 1 : 0}|${spec.fontFamily}|${spec.fontWeight}|${spec.italic ? 1 : 0}|${spec.letterSpacingEm}|${text}`;\n\tconst cached = cache.get(key);\n\tif (cached) return cached;\n\tctx.font = `${spec.italic ? \"italic \" : \"\"}${spec.fontWeight} 100px \"${spec.fontFamily}\", sans-serif`;\n\tif (letterSpacingSupported) ctx.letterSpacing = `${spec.letterSpacingEm * 100}px`;\n\tconst metrics = ctx.measureText(text);\n\tlet widthPer100 = metrics.width;\n\tif (letterSpacingSupported \u0026\u0026 text.length \u003e 0) widthPer100 = Math.max(0, widthPer100 - spec.letterSpacingEm * 100);\n\tconst ascentPer100 = metrics.fontBoundingBoxAscent ?? metrics.actualBoundingBoxAscent ?? 80;\n\tconst descentPer100 = metrics.fontBoundingBoxDescent ?? metrics.actualBoundingBoxDescent ?? 20;\n\tconst rawInkAsc = metrics.actualBoundingBoxAscent;\n\tconst rawInkDesc = metrics.actualBoundingBoxDescent;\n\tconst hasInk = rawInkAsc !== void 0 \u0026\u0026 rawInkDesc !== void 0 \u0026\u0026 rawInkAsc + rawInkDesc \u003e 1;\n\tconst result = {\n\t\twidthPer100,\n\t\tascentPer100,\n\t\tdescentPer100,\n\t\tinkAscentPer100: hasInk ? rawInkAsc : ascentPer100,\n\t\tinkDescentPer100: hasInk ? rawInkDesc : descentPer100\n\t};\n\tif (cache.size \u003e= MAX_CACHE_ENTRIES) cache.clear();\n\tcache.set(key, result);\n\treturn result;\n}\nfunction wrapLines(text, maxWidthPer100, measureLine) {\n\tconst explicit = text.split(/\\r\\n|\\r|\\n/);\n\tif (!(maxWidthPer100 \u003e 0)) return explicit;\n\tconst out = [];\n\tfor (const line of explicit) {\n\t\tconst words = line.split(\" \");\n\t\tlet current = \"\";\n\t\tfor (const word of words) {\n\t\t\tconst candidate = current ? `${current} ${word}` : word;\n\t\t\tif (current \u0026\u0026 measureLine(candidate) \u003e maxWidthPer100) {\n\t\t\t\tout.push(current);\n\t\t\t\tcurrent = word;\n\t\t\t} else current = candidate;\n\t\t}\n\t\tout.push(current);\n\t}\n\treturn out;\n}\nfunction measureTextBlock(spec, lineHeightEm, maxWidthPer100) {\n\tconst lines = wrapLines(applyTextTransform(spec.text, spec.textTransform), maxWidthPer100 ?? 0, (l) =\u003e measureText({\n\t\t...spec,\n\t\ttext: l,\n\t\ttextTransform: \"none\"\n\t}).widthPer100);\n\tconst per = lines.map((l) =\u003e measureText({\n\t\t...spec,\n\t\ttext: l,\n\t\ttextTransform: \"none\"\n\t}));\n\tconst n = Math.max(1, lines.length);\n\tconst first = per[0] ?? measureText(spec);\n\tconst last = per[per.length - 1] ?? first;\n\tconst pitchPer100 = Math.max(1, lineHeightEm * 100);\n\treturn {\n\t\tlines,\n\t\tlineWidthsPer100: per.map((m) =\u003e m.widthPer100),\n\t\twidthPer100: per.reduce((w, m) =\u003e Math.max(w, m.widthPer100), 0),\n\t\tascentPer100: first.ascentPer100,\n\t\tdescentPer100: first.descentPer100,\n\t\tinkAscentFirstPer100: first.inkAscentPer100,\n\t\tinkDescentLastPer100: last.inkDescentPer100,\n\t\tpitchPer100,\n\t\tblockHeightPer100: first.ascentPer100 + (n - 1) * pitchPer100 + first.descentPer100,\n\t\tinkHeightPer100: first.inkAscentPer100 + (n - 1) * pitchPer100 + last.inkDescentPer100\n\t};\n}\nvar MAX_TEXTURE_AXIS = 4096;\nvar TEXT_SUPERSAMPLE = 3;\nvar wrapWidthPxOf = (v, canvasWidth) =\u003e {\n\tif (v \u0026\u0026 typeof v === \"object\" \u0026\u0026 typeof v.value === \"number\") return v.unit === \"px\" ? v.value : v.value * canvasWidth;\n\treturn (typeof v === \"number\" ? v : 0) * canvasWidth;\n};\nvar measureBlockOf = (props, cw, ch) =\u003e {\n\tconst fontSizePx = fontSizePxOf(props.fontSize, ch);\n\tconst widthPx = wrapWidthPxOf(props.width, cw);\n\treturn {\n\t\tfontSizePx,\n\t\twidthPx,\n\t\tm: measureTextBlock({\n\t\t\ttext: String(props.text ?? \"\"),\n\t\t\tfontFamily: String(props.fontFamily ?? \"Inter\"),\n\t\t\tfontWeight: Number(props.fontWeight ?? 400),\n\t\t\titalic: !!props.italic,\n\t\t\tletterSpacingEm: Number(props.letterSpacing ?? 0),\n\t\t\ttextTransform: props.textTransform ?? \"none\"\n\t\t}, Number(props.lineHeight ?? 1.2) || 1.2, fontSizePx \u003e 0 \u0026\u0026 widthPx \u003e 0 ? widthPx * 100 / fontSizePx : 0)\n\t};\n};\nvar fontSizePxOf = (v, canvasHeight) =\u003e {\n\tif (v \u0026\u0026 typeof v === \"object\" \u0026\u0026 typeof v.value === \"number\") return v.unit === \"px\" ? v.value : v.value * canvasHeight;\n\treturn (typeof v === \"number\" ? v : .1) * canvasHeight;\n};\nfunction createGlyphRasterHost(params) {\n\tconst { dimensions, getCpuValue, setExtraField } = params;\n\tconst target = createCanvasRasterTarget(params, {\n\t\tmaxAxis: MAX_TEXTURE_AXIS,\n\t\tsupersample: TEXT_SUPERSAMPLE\n\t});\n\tconst rasterCtx = target.context();\n\tconst glyphTex = createSwappableMediaTexture(params, {\n\t\tlabel: \"Text:glyph\",\n\t\tinitial: {\n\t\t\twidth: 2,\n\t\t\theight: 2\n\t\t}\n\t});\n\tconst defaults = componentDefinition.props;\n\tconst readProps = () =\u003e ({\n\t\ttext: String(getCpuValue(\"text\") ?? defaults.text.default),\n\t\tfontFamily: String(getCpuValue(\"fontFamily\") ?? defaults.fontFamily.default),\n\t\tfontWeight: Number(getCpuValue(\"fontWeight\") ?? defaults.fontWeight.default),\n\t\titalic: Number(getCpuValue(\"italic\") ?? 0) \u003e .5,\n\t\tfontSizeUV: Number(getCpuValue(\"fontSize\") ?? defaults.fontSize.default),\n\t\tletterSpacing: Number(getCpuValue(\"letterSpacing\") ?? defaults.letterSpacing.default),\n\t\tlineHeight: Number(getCpuValue(\"lineHeight\") ?? defaults.lineHeight.default) || defaults.lineHeight.default,\n\t\ttextAlign: String(getCpuValue(\"textAlign\") ?? defaults.textAlign.default),\n\t\twidthUV: Number(getCpuValue(\"width\") ?? defaults.width.default),\n\t\ttextTransform: String(getCpuValue(\"textTransform\") ?? defaults.textTransform.default)\n\t});\n\tconst raster = () =\u003e {\n\t\tif (!rasterCtx || target.disposed) return;\n\t\tconst p = readProps();\n\t\tconst dimW = dimensions.width || 1;\n\t\tconst dimH = dimensions.height || 1;\n\t\tconst fontSizePx = p.fontSizeUV * dimH;\n\t\tconst wrapWidthPx = p.widthUV * dimW;\n\t\tif (!p.text.trim() || fontSizePx \u003c= 0) {\n\t\t\ttarget.resize(2, 2);\n\t\t\tglyphTex.ensureSize(2, 2);\n\t\t\tglyphTex.write(target.canvas());\n\t\t\tsetExtraField(\"halfW\", .001);\n\t\t\tsetExtraField(\"halfH\", .001);\n\t\t\treturn;\n\t\t}\n\t\tconst m = measureTextBlock({\n\t\t\ttext: p.text,\n\t\t\tfontFamily: p.fontFamily,\n\t\t\tfontWeight: p.fontWeight,\n\t\t\titalic: p.italic,\n\t\t\tletterSpacingEm: p.letterSpacing,\n\t\t\ttextTransform: p.textTransform\n\t\t}, p.lineHeight, wrapWidthPx \u003e 0 ? wrapWidthPx * 100 / fontSizePx : 0);\n\t\tconst f = fontSizePx / 100;\n\t\tconst contentWPx = Math.max(1, (wrapWidthPx \u003e 0 ? Math.max(wrapWidthPx * 100 / fontSizePx, m.widthPer100) : m.widthPer100) * f);\n\t\tconst pitchPx = m.pitchPer100 * f;\n\t\tconst lineBoxPx = Math.max(1, fontSizePx * p.lineHeight);\n\t\tconst blockHPx = Math.max(lineBoxPx, m.blockHeightPer100 * f);\n\t\tconst ascentPx = m.ascentPer100 * f;\n\t\tconst descentPx = m.descentPer100 * f;\n\t\tconst padPx = Math.max(.25 * fontSizePx, (ascentPx + descentPx - lineBoxPx) / 2 + .25 * fontSizePx);\n\t\tconst cssW = contentWPx + padPx * 2;\n\t\tconst cssH = blockHPx + padPx * 2;\n\t\tconst { scale, texW, texH } = target.rasterSize(cssW, cssH);\n\t\ttarget.resize(texW, texH);\n\t\trasterCtx.fillStyle = \"#ffffff\";\n\t\trasterCtx.font = `${p.italic ? \"italic \" : \"\"}${p.fontWeight} ${fontSizePx * scale}px \"${p.fontFamily}\", sans-serif`;\n\t\tif (supportsCanvasLetterSpacing()) rasterCtx.letterSpacing = `${p.letterSpacing * fontSizePx * scale}px`;\n\t\trasterCtx.textAlign = \"left\";\n\t\trasterCtx.textBaseline = \"alphabetic\";\n\t\tconst blockTopY = texH / 2 - blockHPx / 2 * scale;\n\t\tconst contentLeftX = (texW - contentWPx * scale) / 2;\n\t\tfor (let i = 0; i \u003c m.lines.length; i++) {\n\t\t\tconst line = m.lines[i];\n\t\t\tif (!line.trim()) continue;\n\t\t\tconst lineWPx = m.lineWidthsPer100[i] * f;\n\t\t\tconst drawX = p.textAlign === \"left\" ? contentLeftX : p.textAlign === \"right\" ? contentLeftX + (contentWPx - lineWPx) * scale : contentLeftX + (contentWPx - lineWPx) / 2 * scale;\n\t\t\tconst baselineY = blockTopY + (ascentPx + i * pitchPx) * scale;\n\t\t\trasterCtx.fillText(line, drawX, baselineY);\n\t\t}\n\t\tglyphTex.ensureSize(texW, texH);\n\t\tglyphTex.write(target.canvas());\n\t\tsetExtraField(\"halfW\", Math.max(1e-4, cssW / 2 / dimH));\n\t\tsetExtraField(\"halfH\", Math.max(1e-4, cssH / 2 / dimH));\n\t};\n\tconst font = createFontDependentRaster({\n\t\tkey: () =\u003e {\n\t\t\tconst p = readProps();\n\t\t\treturn `${p.fontFamily}|${p.fontWeight}|${p.italic}`;\n\t\t},\n\t\tload: () =\u003e {\n\t\t\tconst p = readProps();\n\t\t\treturn loadGoogleFont(p.fontFamily, p.fontWeight, p.italic);\n\t\t},\n\t\tonLoaded: () =\u003e {\n\t\t\tbumpMeasureGeneration();\n\t\t\traster();\n\t\t}\n\t});\n\tsetTimeout(() =\u003e {\n\t\traster();\n\t\tfont.ensure();\n\t}, 0);\n\tcreateRasterInvalidator(params, {\n\t\tkey: () =\u003e {\n\t\t\tconst p = readProps();\n\t\t\treturn `${p.text}|${p.fontFamily}|${p.fontWeight}|${p.italic}|${p.fontSizeUV}|${p.letterSpacing}|${p.lineHeight}|${p.textAlign}|${p.widthUV}|${p.textTransform}|${dimensions.width}x${dimensions.height}|${params.canvas.width}`;\n\t\t},\n\t\trun: () =\u003e {\n\t\t\traster();\n\t\t\tfont.ensure();\n\t\t}\n\t});\n\treturn glyphTex;\n}\nvar glyphFrame = ({ uniforms, ctx, uvContext }) =\u003e call(orientedBoxField, \"orientedBoxField\", [\n\tuvContext ?? ctx.uv,\n\tctx.aspect,\n\tuniforms.center,\n\tuniforms.rotation,\n\tuniforms.halfW,\n\tuniforms.halfH\n]);\nvar glyphTap = (glyph, frame) =\u003e sampleCatmullRomExpr(glyph, frame.member(\"xy\"), \"linearClamp\", \"unit\");\nvar tintGlyph = (sampled, frame, color) =\u003e vec4(color.member(\"rgb\"), sampled.member(\"a\").mul(color.member(\"a\")).mul(frame.member(\"z\")));\nconst componentDefinition = defineStd({\n\tname: \"Text\",\n\trole: \"media\",\n\tspecies: \"custom\",\n\tcategory: \"Textures\",\n\tdescription: \"Text with any Google font — multi-line with wrapping, alignment and line height — rendered crisp via a glyph texture\",\n\tacceptsUVContext: true,\n\textraFields: {\n\t\thalfW: {\n\t\t\tschema: f32,\n\t\t\tinitial: .001\n\t\t},\n\t\thalfH: {\n\t\t\tschema: f32,\n\t\t\tinitial: .001\n\t\t}\n\t},\n\tboundingBoxDeclaration: {\n\t\tpropBindings: {\n\t\t\tx: {\n\t\t\t\tprop: \"center\",\n\t\t\t\tas: \"position-x\"\n\t\t\t},\n\t\t\ty: {\n\t\t\t\tprop: \"center\",\n\t\t\t\tas: \"position-y\"\n\t\t\t},\n\t\t\trotation: {\n\t\t\t\tprop: \"rotation\",\n\t\t\t\tas: \"degrees\"\n\t\t\t}\n\t\t},\n\t\tcomputeBounds(props, cw, ch) {\n\t\t\tconst { fontSizePx, widthPx, m } = measureBlockOf(props, cw, ch);\n\t\t\tconst f = fontSizePx / 100;\n\t\t\tconst cx = typeof props.center?.x === \"number\" ? props.center.x : .5;\n\t\t\tconst cy = typeof props.center?.y === \"number\" ? props.center.y : .5;\n\t\t\tconst inkShiftPx = (m.ascentPer100 - m.descentPer100 + (m.inkDescentLastPer100 - m.inkAscentFirstPer100)) / 2 * f;\n\t\t\treturn {\n\t\t\t\tcenterXPx: cx * cw,\n\t\t\t\tcenterYPx: cy * ch + inkShiftPx,\n\t\t\t\twidthPx: Math.max(0, widthPx \u003e 0 ? widthPx : m.widthPer100 * f),\n\t\t\t\theightPx: Math.max(0, m.inkHeightPer100 * f),\n\t\t\t\trotationDeg: props.rotation ?? 0\n\t\t\t};\n\t\t},\n\t\twriteBounds(bounds, currentProps, cw, ch) {\n\t\t\tconst { fontSizePx: oldFontPx, widthPx: oldWidthPx, m } = measureBlockOf(currentProps, cw, ch);\n\t\t\tconst oldInkPx = Math.max(1, m.inkHeightPer100 * oldFontPx / 100);\n\t\t\tlet scale = bounds.heightPx / oldInkPx;\n\t\t\tif (oldWidthPx \u003e 0) {\n\t\t\t\tconst sW = bounds.widthPx / Math.max(1, oldWidthPx);\n\t\t\t\tconst sH = bounds.heightPx / oldInkPx;\n\t\t\t\tscale = Math.abs(sW - sH) \u003c .02 ? sH : 1;\n\t\t\t}\n\t\t\tconst newFontPx = Math.max(1, oldFontPx * scale);\n\t\t\tconst inkShiftPx = (m.ascentPer100 - m.descentPer100 + (m.inkDescentLastPer100 - m.inkAscentFirstPer100)) / 2 * (newFontPx / 100);\n\t\t\tconst rawFont = currentProps.fontSize;\n\t\t\tconst fontSize = rawFont \u0026\u0026 typeof rawFont === \"object\" \u0026\u0026 rawFont.unit === \"px\" ? {\n\t\t\t\tvalue: Math.max(1, Math.round(newFontPx)),\n\t\t\t\tunit: \"px\"\n\t\t\t} : Math.max(.001, ch \u003e 0 ? newFontPx / ch : .001);\n\t\t\tconst updates = {\n\t\t\t\tcenter: {\n\t\t\t\t\t...currentProps.center ?? {\n\t\t\t\t\t\tx: .5,\n\t\t\t\t\t\ty: .5\n\t\t\t\t\t},\n\t\t\t\t\tx: bounds.centerXPx / cw,\n\t\t\t\t\ty: (bounds.centerYPx - inkShiftPx) / ch\n\t\t\t\t},\n\t\t\t\tfontSize,\n\t\t\t\trotation: bounds.rotationDeg\n\t\t\t};\n\t\t\tif (oldWidthPx \u003e 0) {\n\t\t\t\tconst rawW = currentProps.width;\n\t\t\t\tupdates.width = rawW \u0026\u0026 typeof rawW === \"object\" \u0026\u0026 rawW.unit === \"px\" ? {\n\t\t\t\t\tvalue: Math.max(1, Math.round(bounds.widthPx)),\n\t\t\t\t\tunit: \"px\"\n\t\t\t\t} : Math.max(.001, cw \u003e 0 ? bounds.widthPx / cw : .001);\n\t\t\t}\n\t\t\treturn updates;\n\t\t}\n\t},\n\tprops: {\n\t\ttext: {\n\t\t\tdefault: \"Hello World\",\n\t\t\tdescription: \"The text to display (single line)\",\n\t\t\tui: {\n\t\t\t\ttype: \"text\",\n\t\t\t\tlabel: \"Text\",\n\t\t\t\tgroup: \"Text\",\n\t\t\t\thidden: true\n\t\t\t}\n\t\t},\n\t\tfontFamily: {\n\t\t\tdefault: \"Inter\",\n\t\t\tdescription: \"Google Fonts family name\",\n\t\t\tui: {\n\t\t\t\ttype: \"font-family\",\n\t\t\t\tlabel: \"Font\",\n\t\t\t\tgroup: \"Text\"\n\t\t\t}\n\t\t},\n\t\tfontWeight: {\n\t\t\tdefault: 400,\n\t\t\tdescription: \"Font weight (only weights published for the family render true; others are synthesized)\",\n\t\t\tui: {\n\t\t\t\ttype: \"font-weight\",\n\t\t\t\tlabel: \"Weight\",\n\t\t\t\tgroup: \"Text\"\n\t\t\t}\n\t\t},\n\t\titalic: {\n\t\t\tdefault: false,\n\t\t\tdescription: \"Italic style\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Italic\",\n\t\t\t\tgroup: \"Text\"\n\t\t\t},\n\t\t\ttransform: (value) =\u003e value ? 1 : 0\n\t\t},\n\t\ttextTransform: {\n\t\t\tdefault: \"none\",\n\t\t\tdescription: \"Case transformation applied to the text\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"None\",\n\t\t\t\t\t\tvalue: \"none\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Uppercase\",\n\t\t\t\t\t\tvalue: \"uppercase\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Lowercase\",\n\t\t\t\t\t\tvalue: \"lowercase\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Capitalize\",\n\t\t\t\t\t\tvalue: \"capitalize\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Transform\",\n\t\t\t\tgroup: \"Text\"\n\t\t\t}\n\t\t},\n\t\tfontSize: {\n\t\t\tdefault: .07,\n\t\t\tdescription: \"Font size as a fraction of canvas height\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Size\",\n\t\t\t\tgroup: \"Typography\",\n\t\t\t\tdimensional: \"canvas-height\"\n\t\t\t}\n\t\t},\n\t\tletterSpacing: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Letter spacing in em units\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -.1,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Letter Spacing\",\n\t\t\t\tgroup: \"Typography\"\n\t\t\t}\n\t\t},\n\t\tlineHeight: {\n\t\t\tdefault: 1.2,\n\t\t\tdescription: \"Line height as a multiple of font size (multi-line text)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .8,\n\t\t\t\tmax: 2.5,\n\t\t\t\tstep: .05,\n\t\t\t\tlabel: \"Line Height\",\n\t\t\t\tgroup: \"Paragraph\",\n\t\t\t\thidden: true\n\t\t\t}\n\t\t},\n\t\ttextAlign: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Horizontal alignment of lines within the text block\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Left\",\n\t\t\t\t\t\tvalue: \"left\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Center\",\n\t\t\t\t\t\tvalue: \"center\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Right\",\n\t\t\t\t\t\tvalue: \"right\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Align\",\n\t\t\t\tgroup: \"Paragraph\",\n\t\t\t\thidden: true\n\t\t\t}\n\t\t},\n\t\twidth: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Wrap width — text wraps to fit; 0 = auto (hug contents, single line per explicit break). Edited via the Typography panel's Auto/Fixed width toggle and the side drag handles, not a slider.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Max Width\",\n\t\t\t\tgroup: \"Paragraph\",\n\t\t\t\tunits: [\"%\", \"px\"],\n\t\t\t\tdimensional: \"canvas-width\",\n\t\t\t\thidden: true\n\t\t\t}\n\t\t},\n\t\tcolor: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Text color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the text relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the text\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t}\n\t},\n\tgpu: { fragment: (params) =\u003e {\n\t\tconst glyphTex = createGlyphRasterHost(params);\n\t\tconst frame = glyphFrame(params);\n\t\treturn tintGlyph(glyphTap(glyphTex.kit, frame), frame, params.uniforms.color);\n\t} }\n});\nvar Text_default = componentDefinition;\nexport { wrapLines as a, measureTextBlock as i, componentDefinition as n, measureText as r, Text_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as transformPosition, r as transformAngle } from \"./transformations-CzFmhZww.js\";\nimport { G as tiltShift } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"TiltShift\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Selective focus blur mimicking tilt-shift photography\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 50,\n\t\t\tdescription: \"Maximum blur intensity at edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\twidth: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Width of the sharp focus area\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Width\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Distance over which blur transitions to full strength\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation angle of the focus line (in degrees)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center point of the focus line\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t}\n\t},\n\t...tiltShift({\n\t\tintensity: p(\"intensity\"),\n\t\twidth: p(\"width\"),\n\t\tfalloff: p(\"falloff\"),\n\t\tangle: p(\"angle\"),\n\t\tcenter: p(\"center\")\n\t})\n});\nvar TiltShift_default = componentDefinition;\nexport { componentDefinition as n, TiltShift_default as t };\n","import { Et as blendModes, Ot as unpremultiplyAlpha, at as ZERO, ct as call, ft as floatE, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { i as buildFeedbackTrailStep } from \"./porters-OTkIMOyl.js\";\nimport { t as isMobileGpuViewport } from \"./device-m0ud8-Fn.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nimport { H as vec4, V as vec3, o as div, s as dot, w as mul, x as max, y as local } from \"./math-D864seEs.js\";\nimport { t as feedbackSim } from \"./feedback-Dro_hxd4.js\";\nvar STATE_RES = isMobileGpuViewport() ? 384 : 640;\nvar STATE_FORMAT = \"rgba16float\";\nvar DIFFUSE_HALF_UV = 2.5 * .5 / STATE_RES;\nvar DRIFT_SCALE = .5;\nvar RAINBOW_RATE = .35;\nvar TINT_MODES = {\n\tnone: 0,\n\tcolor: 1,\n\trainbow: 2\n};\nvar SOURCE_MODES = {\n\tmotion: 1,\n\talpha: 0\n};\nvar buildTrailKernel = (source, hueCycle) =\u003e buildFeedbackTrailStep({\n\tres: STATE_RES,\n\tformat: STATE_FORMAT,\n\tnamePrefix: \"timeTrail\",\n\tsource,\n\thueCycle,\n\tdiffuseHalfUv: DIFFUSE_HALF_UV,\n\tdriftScale: DRIFT_SCALE\n});\nconst timeTrailKernel = buildTrailKernel(\"motion\", false).kernel;\nvar resolveBlendKey = (v) =\u003e {\n\tconst key = v === \"add\" ? \"linearDodge\" : String(v ?? \"normal\");\n\treturn key in blendModes ? key : \"normal\";\n};\nvar stampModeFor = (key) =\u003e key === \"screen\" ? 1 : key === \"linearDodge\" ? 2 : 0;\nconst componentDefinition = defineStd({\n\tname: \"TimeTrail\",\n\trole: \"simulation\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"An Echo-style temporal trail — whatever moves sheds a smooth, decaying long-exposure ghost trail (frame-difference Motion mode works on opaque images and video; Alpha mode trails a shape's coverage), with optional zoom-feedback tunnels and rainbow light-painting\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tprops: {\n\t\ttrailSource: {\n\t\t\tdefault: \"motion\",\n\t\t\tdescription: \"What sheds the trail — Motion trails whatever changes frame-to-frame (works on opaque images and video), Alpha trails the child's transparency coverage (best for a clean shape over empty canvas)\",\n\t\t\tcompileTime: true,\n\t\t\ttransform: (v) =\u003e SOURCE_MODES[v] ?? 1,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [{\n\t\t\t\t\tlabel: \"Motion\",\n\t\t\t\t\tvalue: \"motion\"\n\t\t\t\t}, {\n\t\t\t\t\tlabel: \"Alpha\",\n\t\t\t\t\tvalue: \"alpha\"\n\t\t\t\t}],\n\t\t\t\tlabel: \"Source\",\n\t\t\t\tgroup: \"Trail\"\n\t\t\t}\n\t\t},\n\t\tmotionThreshold: {\n\t\t\tdefault: .06,\n\t\t\tdescription: \"How much a pixel must change between frames to shed a trail (Motion source only) — lower catches subtle movement, higher only fast motion\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: .5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Motion Threshold\",\n\t\t\t\tgroup: \"Trail\"\n\t\t\t}\n\t\t},\n\t\ttrailLength: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"How long the trail lingers, in seconds — the time constant of the fade (the star control)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .05,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Trail Length\",\n\t\t\t\tgroup: \"Trail\"\n\t\t\t}\n\t\t},\n\t\tdiffusion: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How much the trail smears and softens as it fades — 0 keeps crisp ghost frames, higher melts them together\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Diffusion\",\n\t\t\t\tgroup: \"Trail\"\n\t\t\t}\n\t\t},\n\t\ttrailOpacity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Overall strength of the trail behind the live frame\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Trail Opacity\",\n\t\t\t\tgroup: \"Trail\"\n\t\t\t}\n\t\t},\n\t\ttrailBlend: {\n\t\t\tdefault: \"normal\",\n\t\t\tdescription: \"How the trail combines with the frame — Add / Screen build glowing light-painting trails, Multiply lays down dark ink ghosts, plus the full standard blend set\",\n\t\t\tcompileTime: true,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Normal\",\n\t\t\t\t\t\tvalue: \"normal\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Add\",\n\t\t\t\t\t\tvalue: \"add\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Screen\",\n\t\t\t\t\t\tvalue: \"screen\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Multiply\",\n\t\t\t\t\t\tvalue: \"multiply\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Overlay\",\n\t\t\t\t\t\tvalue: \"overlay\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Soft Light\",\n\t\t\t\t\t\tvalue: \"softLight\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Hard Light\",\n\t\t\t\t\t\tvalue: \"hardLight\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Darken\",\n\t\t\t\t\t\tvalue: \"darken\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Lighten\",\n\t\t\t\t\t\tvalue: \"lighten\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Color Dodge\",\n\t\t\t\t\t\tvalue: \"colorDodge\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Color Burn\",\n\t\t\t\t\t\tvalue: \"colorBurn\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Linear Burn\",\n\t\t\t\t\t\tvalue: \"linearBurn\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Difference\",\n\t\t\t\t\t\tvalue: \"difference\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Exclusion\",\n\t\t\t\t\t\tvalue: \"exclusion\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Hue\",\n\t\t\t\t\t\tvalue: \"hue\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Saturation\",\n\t\t\t\t\t\tvalue: \"saturation\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Color\",\n\t\t\t\t\t\tvalue: \"color\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Luminosity\",\n\t\t\t\t\t\tvalue: \"luminosity\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Blend\",\n\t\t\t\tgroup: \"Trail\"\n\t\t\t}\n\t\t},\n\t\tdriftX: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Sideways drift of the trail per second — smears the trail in a direction\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Drift X\",\n\t\t\t\tgroup: \"Feedback\"\n\t\t\t}\n\t\t},\n\t\tdriftY: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Vertical drift of the trail per second\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Drift Y\",\n\t\t\t\tgroup: \"Feedback\"\n\t\t\t}\n\t\t},\n\t\tzoom: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Per-frame zoom of the trail around the centre — above 1 pulls the trail into an outward tunnel, below 1 sucks it inward\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .9,\n\t\t\t\tmax: 1.1,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Zoom\",\n\t\t\t\tgroup: \"Feedback\"\n\t\t\t}\n\t\t},\n\t\ttintMode: {\n\t\t\tdefault: \"none\",\n\t\t\tdescription: \"Colour the trail — Color tints it a single hue, Rainbow cycles hue as the trail ages\",\n\t\t\tcompileTime: true,\n\t\t\ttransform: (v) =\u003e TINT_MODES[v] ?? 0,\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"None\",\n\t\t\t\t\t\tvalue: \"none\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Color\",\n\t\t\t\t\t\tvalue: \"color\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Rainbow\",\n\t\t\t\t\t\tvalue: \"rainbow\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Tint Mode\",\n\t\t\t\tgroup: \"Color\"\n\t\t\t}\n\t\t},\n\t\ttint: {\n\t\t\tdefault: \"#33aaff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Trail tint colour (used in Color mode)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tint\",\n\t\t\t\tgroup: \"Color\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Simulation speed. 0 freezes the trail in place.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\t...feedbackSim((params, root) =\u003e {\n\t\tconst { getCpuValue, propValues } = params;\n\t\tconst tintMode = Number(propValues.tintMode) || 0;\n\t\tconst blendMode = stampModeFor(resolveBlendKey(propValues.trailBlend));\n\t\tconst isMotion = (propValues.trailSource == null ? 1 : Number(propValues.trailSource)) \u003e .5;\n\t\tconst trailSampler = root.createSampler({\n\t\t\tmagFilter: \"linear\",\n\t\t\tminFilter: \"linear\",\n\t\t\taddressModeU: \"clamp-to-edge\",\n\t\t\taddressModeV: \"clamp-to-edge\"\n\t\t});\n\t\tconst trail = buildTrailKernel(isMotion ? \"motion\" : \"alpha\", tintMode === 2);\n\t\treturn {\n\t\t\tsize: STATE_RES,\n\t\t\tformat: STATE_FORMAT,\n\t\t\textraSlots: { prevLive: isMotion ? STATE_RES : [1, 1] },\n\t\t\tspeedProp: \"speed\",\n\t\t\tparamsSchema: trail.Params,\n\t\t\tbindGroups: ({ childTexture, display, paramsBuffer }, read, write) =\u003e root.createBindGroup(trail.layout, {\n\t\t\t\tsrc: childTexture,\n\t\t\t\tprev: read.state,\n\t\t\t\tnext: write.state,\n\t\t\t\tdisplay,\n\t\t\t\tprevLive: read.extra.prevLive,\n\t\t\t\tprevLiveOut: write.extra.prevLive,\n\t\t\t\tsamp: trailSampler,\n\t\t\t\tparams: paramsBuffer\n\t\t\t}),\n\t\t\tstep: trail.kernel,\n\t\t\tskip: () =\u003e (getCpuValue(\"trailOpacity\") ?? 1) === 0,\n\t\t\tvalues: ({ dt }) =\u003e {\n\t\t\t\tconst zoom = getCpuValue(\"zoom\") ?? 1;\n\t\t\t\tconst trailLength = Math.max(getCpuValue(\"trailLength\") ?? .6, .001);\n\t\t\t\treturn {\n\t\t\t\t\tpersistence: Math.exp(-dt / trailLength),\n\t\t\t\t\tdiffusion: getCpuValue(\"diffusion\") ?? .3,\n\t\t\t\t\tdriftX: getCpuValue(\"driftX\") ?? 0,\n\t\t\t\t\tdriftY: getCpuValue(\"driftY\") ?? 0,\n\t\t\t\t\tdt,\n\t\t\t\t\tzoom: Math.pow(zoom, dt * 60),\n\t\t\t\t\thueRate: tintMode === 2 ? RAINBOW_RATE * dt : 0,\n\t\t\t\t\tblendMode,\n\t\t\t\t\tmotionThreshold: getCpuValue(\"motionThreshold\") ?? .06\n\t\t\t\t};\n\t\t\t}\n\t\t};\n\t}),\n\tgpu: { fragment: ({ childNode, ctx, computeOutputs, uniforms, propValues, convertToTexture }) =\u003e {\n\t\tif (!childNode) return ZERO;\n\t\tconst display = computeOutputs?.display;\n\t\tconst live = (computeOutputs?.childTexture ?? convertToTexture(childNode)).sample(ctx.uv);\n\t\tif (!display) return call(unpremultiplyAlpha, \"unpremultiplyAlpha\", [live]);\n\t\tconst blendKey = resolveBlendKey(propValues.trailBlend);\n\t\tconst blendFn = blendModes[blendKey];\n\t\tconst tintMode = Number(propValues.tintMode) || 0;\n\t\tconst sourceMode = propValues.trailSource == null ? 1 : Number(propValues.trailSource);\n\t\tlet trail = local(display.sample(ctx.uv, \"linearClamp\"), \"trail\");\n\t\tif (tintMode === 1) {\n\t\t\tconst a = max(trail.member(\"a\"), 1e-4);\n\t\t\tconst lum = dot(div(trail.member(\"rgb\"), a), vec3(.299, .587, .114));\n\t\t\ttrail = local(vec4(mul(mul(uniforms.tint.member(\"rgb\"), mul(lum, 1.5)), trail.member(\"a\")), trail.member(\"a\")), \"tinted\");\n\t\t}\n\t\tconst liveStraight = call(unpremultiplyAlpha, \"unpremultiplyLive\", [live]);\n\t\tif (sourceMode === 1) {\n\t\t\tconst trailStraight$1 = call(unpremultiplyAlpha, \"unpremultiplyTrail\", [trail]);\n\t\t\treturn call(unpremultiplyAlpha, \"unpremultiplyOut\", [call(blendFn, `trailBlend_${blendKey}`, [\n\t\t\t\tliveStraight,\n\t\t\t\ttrailStraight$1,\n\t\t\t\tuniforms.trailOpacity\n\t\t\t])]);\n\t\t}\n\t\tconst trailStraight = call(unpremultiplyAlpha, \"unpremultiplyTrail\", [mul(trail, uniforms.trailOpacity)]);\n\t\treturn call(unpremultiplyAlpha, \"unpremultiplyOut\", [call(blendFn, `trailBlend_${blendKey}`, [\n\t\t\ttrailStraight,\n\t\t\tliveStraight,\n\t\t\tfloatE(1)\n\t\t])]);\n\t} }\n});\nvar TimeTrail_default = componentDefinition;\nexport { componentDefinition as n, timeTrailKernel as r, TimeTrail_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { m as tint } from \"./color-Do6tU0ry.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Tint\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Apply a color tint to the image\",\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#ff8800\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Tint color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Tint Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tamount: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Tint amount (0 = no tint, 1 = full tint)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Amount\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tpreserveLuminosity: {\n\t\t\tdefault: true,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Preserve original brightness\",\n\t\t\ttransform: (v) =\u003e v ? 1 : 0,\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Preserve Luminosity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: tint({\n\t\tcolor: p(\"color\"),\n\t\tamount: p(\"amount\"),\n\t\tpreserveLuminosity: p(\"preserveLuminosity\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Tint shader.\"\n});\nvar Tint_default = componentDefinition;\nexport { componentDefinition as n, Tint_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { h as trapezoid } from \"./shape-CAkSlCi8.js\";\nfunction halfUvFromProp(value, canvasHeight, fallback) {\n\tconst safeFallback = Number.isFinite(fallback) ? fallback : .5;\n\tif (value != null \u0026\u0026 typeof value === \"object\" \u0026\u0026 typeof value.value === \"number\") {\n\t\tconst dv = value;\n\t\tif (!Number.isFinite(dv.value)) return safeFallback;\n\t\tif (dv.unit !== \"px\") return dv.value;\n\t\treturn Number.isFinite(canvasHeight) \u0026\u0026 canvasHeight !== 0 ? dv.value / (2 * canvasHeight) : safeFallback;\n\t}\n\treturn typeof value === \"number\" \u0026\u0026 Number.isFinite(value) ? value : safeFallback;\n}\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Trapezoid\",\n\tdescription: \"Trapezoid with adjustable top and bottom widths and height\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e trapezoid(x, y, u(\"topWidth\"), u(\"bottomWidth\"), u(\"height\")),\n\t\tcolorDescription: \"Fill color of the trapezoid\",\n\t\tcenterDescription: \"Center position of the trapezoid\",\n\t\tbounds: { custom: {\n\t\t\tpropBindings: {\n\t\t\t\tx: {\n\t\t\t\t\tprop: \"center\",\n\t\t\t\t\tas: \"position-x\"\n\t\t\t\t},\n\t\t\t\ty: {\n\t\t\t\t\tprop: \"center\",\n\t\t\t\t\tas: \"position-y\"\n\t\t\t\t},\n\t\t\t\trotation: {\n\t\t\t\t\tprop: \"rotation\",\n\t\t\t\t\tas: \"degrees\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tcomputeBounds(props, cw, ch) {\n\t\t\t\tconst bottom = halfUvFromProp(props.bottomWidth, ch, .35);\n\t\t\t\tconst top = typeof props.topWidth === \"number\" ? props.topWidth : .2;\n\t\t\t\tconst halfH = halfUvFromProp(props.height, ch, .25);\n\t\t\t\tconst cx = typeof props.center?.x === \"number\" ? props.center.x : .5;\n\t\t\t\tconst cy = typeof props.center?.y === \"number\" ? props.center.y : .5;\n\t\t\t\treturn {\n\t\t\t\t\tcenterXPx: cx * cw,\n\t\t\t\t\tcenterYPx: cy * ch,\n\t\t\t\t\twidthPx: Math.max(top, bottom) * 2 * ch,\n\t\t\t\t\theightPx: halfH * 2 * ch,\n\t\t\t\t\trotationDeg: props.rotation ?? 0\n\t\t\t\t};\n\t\t\t},\n\t\t\twriteBounds(bounds, currentProps, cw, ch) {\n\t\t\t\tconst keepUnit = (cur, newHalfUV) =\u003e cur != null \u0026\u0026 typeof cur === \"object\" \u0026\u0026 cur.unit === \"px\" ? {\n\t\t\t\t\tvalue: Math.max(0, Math.round(newHalfUV * 2 * ch)),\n\t\t\t\t\tunit: \"px\"\n\t\t\t\t} : Math.max(.001, newHalfUV);\n\t\t\t\tconst bottom = halfUvFromProp(currentProps.bottomWidth, ch, .35);\n\t\t\t\tconst top = typeof currentProps.topWidth === \"number\" ? currentProps.topWidth : .2;\n\t\t\t\tconst oldMax = Math.max(top, bottom);\n\t\t\t\tconst newMax = ch \u003e 0 ? bounds.widthPx / (2 * ch) : oldMax;\n\t\t\t\tconst factor = oldMax \u003e 0 ? newMax / oldMax : 1;\n\t\t\t\tconst prevCenter = currentProps.center ?? {\n\t\t\t\t\tx: .5,\n\t\t\t\t\ty: .5\n\t\t\t\t};\n\t\t\t\treturn {\n\t\t\t\t\tcenter: {\n\t\t\t\t\t\t...prevCenter,\n\t\t\t\t\t\tx: cw \u003e 0 ? bounds.centerXPx / cw : prevCenter.x ?? .5,\n\t\t\t\t\t\ty: ch \u003e 0 ? bounds.centerYPx / ch : prevCenter.y ?? .5\n\t\t\t\t\t},\n\t\t\t\t\tbottomWidth: keepUnit(currentProps.bottomWidth, bottom * factor),\n\t\t\t\t\ttopWidth: Math.max(.001, top * factor),\n\t\t\t\t\theight: keepUnit(currentProps.height, ch \u003e 0 ? bounds.heightPx / (2 * ch) : halfUvFromProp(currentProps.height, ch, .25)),\n\t\t\t\t\trotation: bounds.rotationDeg\n\t\t\t\t};\n\t\t\t},\n\t\t\tfreeResize: true\n\t\t} },\n\t\tshapeProps: {\n\t\t\tbottomWidth: {\n\t\t\t\tdefault: .35,\n\t\t\t\tdescription: \"Half-width of the bottom edge\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Bottom Width\",\n\t\t\t\t\tgroup: \"Shape\",\n\t\t\t\t\tunits: [\"%\", \"px\"],\n\t\t\t\t\tdimensional: \"half-canvas-height\"\n\t\t\t\t}\n\t\t\t},\n\t\t\ttopWidth: {\n\t\t\t\tdefault: .2,\n\t\t\t\tdescription: \"Half-width of the top edge\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Top Width\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\theight: {\n\t\t\t\tdefault: .25,\n\t\t\t\tdescription: \"Half-height of the trapezoid\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .01,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Height\",\n\t\t\t\t\tgroup: \"Shape\",\n\t\t\t\t\tunits: [\"%\", \"px\"],\n\t\t\t\t\tdimensional: \"half-canvas-height\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Trapezoid_default = componentDefinition;\nexport { componentDefinition as n, Trapezoid_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, D as vary, T as triangleLines, r as cellFrame } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar field = triangleLines({\n\tframe: cellFrame({\n\t\tcells: p(\"cells\"),\n\t\trotation: p(\"rotation\"),\n\t\tconvention: \"flippedY\"\n\t}),\n\tthickness: p(\"thickness\"),\n\tsoftness: p(\"softness\"),\n\tvariation: p(\"variation\"),\n\tspeedVariance: p(\"speedVariance\")\n});\nconst componentDefinition = defineStd({\n\tname: \"TriangularGrid\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Tiling grid of equilateral triangles with optional animated row offsets\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#1a1a1a\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Triangle fill color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Fill\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Grid line color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Lines\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcells: {\n\t\t\tdefault: 8,\n\t\t\tdescription: \"Number of triangle rows down the shortest canvas edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 40,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cells\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Thickness of the grid lines (0 = no lines)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation of the grid in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Softness of the line edges (0 = crisp, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tvariation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Per-triangle random lightening/darkening of the fill color\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Variation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Animates the triangle rows drifting horizontally (0 = static)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -3,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tspeedVariance: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Per-row random speed variance for irregular drifting motion\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed Variance\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokeOver({\n\t\tfill: vary(p(\"colorA\"), field.shade),\n\t\tstroke: p(\"colorB\"),\n\t\tmask: field.lines,\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar TriangularGrid_default = componentDefinition;\nexport { componentDefinition as n, TriangularGrid_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { h as tritone } from \"./color-Do6tU0ry.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Tritone\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Map colors to three tones: shadows, midtones, highlights\",\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#ce1bea\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"First color (used for shadows/darkest areas)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A (Shadows)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#2fff00\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Second color (used for midtones)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B (Midtones)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorC: {\n\t\t\tdefault: \"#ffff00\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Third color (used for highlights/brightest areas)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color C (Highlights)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tblendMid: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Midpoint position between the three colors\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Midpoint\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: tritone({\n\t\tcolorA: p(\"colorA\"),\n\t\tcolorB: p(\"colorB\"),\n\t\tcolorC: p(\"colorC\"),\n\t\tblendMid: p(\"blendMid\"),\n\t\tcolorSpace: p(\"colorSpace\")\n\t})\n});\nvar Tritone_default = componentDefinition;\nexport { componentDefinition as n, Tritone_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { C as strokeOver, E as truchetArcs, r as cellFrame } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor, o as transformColorSpace, r as transformAngle, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Truchet\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Quarter-circle arc tiles that connect to form organic, maze-like flowing curves\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Background color between the arcs\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Arc line color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcells: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Number of tiles across the shortest canvas edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 40,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cells\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tthickness: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Thickness of the arc lines\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Thickness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\ttransform: transformAngle,\n\t\t\tdescription: \"Rotation of the tiling in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Softness of the arc edges (0 = crisp, 1 = very soft)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed — changes which tiles flip, producing a different maze pattern\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: strokeOver({\n\t\tfill: p(\"colorA\"),\n\t\tstroke: p(\"colorB\"),\n\t\tmask: truchetArcs({\n\t\t\tframe: cellFrame({\n\t\t\t\tcells: p(\"cells\"),\n\t\t\t\trotation: p(\"rotation\"),\n\t\t\t\tconvention: \"clockwise\"\n\t\t\t}),\n\t\t\tthickness: p(\"thickness\"),\n\t\t\tsoftness: p(\"softness\"),\n\t\t\tseed: p(\"seed\")\n\t\t}),\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar Truchet_default = componentDefinition;\nexport { componentDefinition as n, Truchet_default as t };\n","import { c as p, l as centerPropConfig, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { v as twirl } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"Twirl\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Rotate and twist content around a center point\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tprops: {\n\t\tcenter: centerPropConfig(\"The center point of the twirl effect\"),\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"The strength of the twirl effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -5,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"stretch\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: twirl({\n\t\tcenter: p(\"center\"),\n\t\tintensity: p(\"intensity\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Twirl shader.\"\n});\nvar Twirl_default = componentDefinition;\nexport { componentDefinition as n, Twirl_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as reveal, t as coverage } from \"./reveal-CfaAg-rg.js\";\nimport { i as transformBoolean } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"VenetianBlinds\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Transitions\",\n\tdescription: \"Wipe the content away behind a set of parallel closing strips\",\n\tprops: {\n\t\tprogress: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"How far the blinds have closed (0 = fully visible, 1 = fully wiped away)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Progress\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Orientation of the strips in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tstripCount: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"Number of strips across the frame\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 60,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Strips\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tfeather: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Softness of each closing strip edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Feather\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t},\n\t\tinvert: {\n\t\t\tdefault: false,\n\t\t\ttransform: transformBoolean,\n\t\t\tdescription: \"Close each strip from the opposite edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Invert\",\n\t\t\t\tgroup: \"Transition\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: reveal({\n\t\tcoverage: coverage.directional(p(\"angle\")).tiled(p(\"stripCount\")),\n\t\tprogress: p(\"progress\"),\n\t\tfeather: p(\"feather\"),\n\t\tinvert: p(\"invert\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the Venetian Blinds shader.\"\n});\nvar VenetianBlinds_default = componentDefinition;\nexport { componentDefinition as n, VenetianBlinds_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { g as vesica } from \"./shape-CAkSlCi8.js\";\nconst componentDefinition = defineStd({\n\trole: \"shape\",\n\tname: \"Vesica\",\n\tdescription: \"Vesica piscis (lens shape) formed by the intersection of two overlapping circles\",\n\tshape: {\n\t\tdistance: ({ x, y }, u) =\u003e vesica(x, y, u(\"radius\"), u(\"spread\")),\n\t\tcolorDescription: \"Fill color of the vesica\",\n\t\tcenterDescription: \"Center position of the vesica\",\n\t\tbounds: { size: {\n\t\t\twidth: \"radius\",\n\t\t\theight: \"radius\"\n\t\t} },\n\t\tshapeProps: {\n\t\t\tradius: {\n\t\t\t\tdefault: .35,\n\t\t\t\tdescription: \"Radius of the two overlapping circles\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .05,\n\t\t\t\t\tmax: 1,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Size\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tspread: {\n\t\t\t\tdefault: .5,\n\t\t\t\tdescription: \"Circle separation — 0 = full circle overlap, 1 = infinitely thin lens\",\n\t\t\t\tui: {\n\t\t\t\t\ttype: \"range\",\n\t\t\t\t\tmin: .05,\n\t\t\t\t\tmax: .95,\n\t\t\t\t\tstep: .01,\n\t\t\t\t\tlabel: \"Spread\",\n\t\t\t\t\tgroup: \"Shape\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\nvar Vesica_default = componentDefinition;\nexport { componentDefinition as n, Vesica_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { W as tapeWarp, c as chromaSmearTaps, n as beatPulse, v as gatherStack } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"VHS\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Analog VHS tape with intermittent tape damage, chroma bleed, and per-scanline noise\",\n\tprops: {\n\t\twobble: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Overall amount of tape damage — waves, creases, and head-switching noise. Bursts on and off organically over time.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Wobble\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tscanlineNoise: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Per-scanline fine chroma/luma jitter. Adds the classic horizontal-streak detail.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scanline Noise\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tsmear: {\n\t\t\tdefault: .2,\n\t\t\tdescription: \"Horizontal chroma smear (color bleed) amount. Positive trails colour to the right (classic VHS), negative trails it to the left.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Smear\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed of the tape effects.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: gatherStack(chromaSmearTaps({\n\t\twarp: tapeWarp({\n\t\t\twobble: p(\"wobble\"),\n\t\t\tjitter: p(\"scanlineNoise\"),\n\t\t\tspeed: p(\"speed\")\n\t\t}),\n\t\tsmear: p(\"smear\")\n\t}), [beatPulse({\n\t\twobble: p(\"wobble\"),\n\t\tspeed: p(\"speed\")\n\t})])\n});\nvar VHS_default = componentDefinition;\nexport { componentDefinition as n, VHS_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { g as vibrance } from \"./color-Do6tU0ry.js\";\nimport { i as isZero, n as crosses } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"Vibrance\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Adjustments\",\n\tdescription: \"Selective saturation adjustment protecting skin tones\",\n\tprops: { intensity: {\n\t\tdefault: 0,\n\t\tdescription: \"The intensity of the vibrance effect\",\n\t\trecompile: crosses(0),\n\t\tui: {\n\t\t\ttype: [\"range\", \"map\"],\n\t\t\tmin: -2,\n\t\t\tmax: 2,\n\t\t\tstep: .1,\n\t\t\tlabel: \"Intensity\",\n\t\t\tgroup: \"Adjustments\"\n\t\t}\n\t} },\n\teffect: vibrance(p(\"intensity\")),\n\tidentityWhen: isZero(\"intensity\"),\n\tmissingChildMessage: \"You must pass a child component into the Vibrance shader.\"\n});\nvar Vibrance_default = componentDefinition;\nexport { componentDefinition as n, Vibrance_default as t };\n","import { c as p, f as objectFitProp, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { n as videoMedia } from \"./media-DXUY3ltG.js\";\nconst componentDefinition = defineStd({\n\tname: \"VideoTexture\",\n\trole: \"media\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Display a video with customizable playback and object-fit modes\",\n\tacceptsUVContext: true,\n\tnaturalSizeKey: { fromProp: \"url\" },\n\tprops: {\n\t\turl: {\n\t\t\tdefault: \"https://shaders.com/sample.mp4\",\n\t\t\tdescription: \"Upload a video or provide a URL\",\n\t\t\tui: {\n\t\t\t\ttype: \"video-upload\",\n\t\t\t\tlabel: \"Video\",\n\t\t\t\tgroup: \"Media\"\n\t\t\t}\n\t\t},\n\t\tobjectFit: objectFitProp(\"fill\", \"How the video should be sized within the viewport\", { allowNone: false }),\n\t\tloop: {\n\t\t\tdefault: true,\n\t\t\tdescription: \"Loop the video playback\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Loop\",\n\t\t\t\tgroup: \"Playback\"\n\t\t\t}\n\t\t}\n\t},\n\t...videoMedia({\n\t\tsrc: p(\"url\"),\n\t\tfit: p(\"objectFit\"),\n\t\tloop: p(\"loop\"),\n\t\tdecode: \"srgb-linear-alpha-cut\",\n\t\tmetadataTimeoutMs: 1e4,\n\t\tonError: (error, { stage }) =\u003e {\n\t\t\tif (stage === \"autoplay\") console.warn(\"[VideoTexture] Autoplay failed (browser policy):\", error);\n\t\t\telse console.error(\"[VideoTexture] Failed to load video:\", error);\n\t\t}\n\t})\n});\nvar VideoTexture_default = componentDefinition;\nexport { componentDefinition as n, VideoTexture_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { r as tintToward } from \"./filter-BrhpSs3Z.js\";\nimport { r as radialMask } from \"./mask-CeSwL79Q.js\";\nimport { i as isZero, n as crosses } from \"./slots-BqIef2iV.js\";\nconst componentDefinition = defineStd({\n\tname: \"Vignette\",\n\trole: \"filter\",\n\tspecies: \"pointwise\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Darkens or tints the edges of the frame, drawing attention toward the center\",\n\tprops: {\n\t\tcolor: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the vignette at the edges\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center of the clear area where the vignette begins\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tradius: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Distance from center where the vignette begins to fade in\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Radius\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfalloff: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Width of the transition zone from clear to full vignette\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .01,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Falloff\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tintensity: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Strength of the vignette effect\",\n\t\t\trecompile: crosses(0),\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: tintToward(p(\"color\"), { amount: radialMask({\n\t\tcenter: p(\"center\"),\n\t\tradius: p(\"radius\"),\n\t\tfalloff: p(\"falloff\")\n\t}).times(p(\"intensity\")) }),\n\tidentityWhen: isZero(\"intensity\"),\n\tmissingChildMessage: \"You must pass a child component into the Vignette shader.\"\n});\nvar Vignette_default = componentDefinition;\nexport { componentDefinition as n, Vignette_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { _ as share, b as stops, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { a as cellDistances, i as cellBorders, o as cellFill, r as borderOverlay } from \"./noise-d7rmP9yc.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nvar cells = share(cellDistances({\n\tscale: p(\"scale\"),\n\tseed: p(\"seed\")\n}));\nconst componentDefinition = defineStd({\n\tname: \"Voronoi\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Cellular pattern where each pixel is colored by its distance to the nearest of many scattered points\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#3186cf\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color near each cell's center point\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A (Center)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#fc02dd\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at cell boundaries, far from any center point\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B (Edge)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tcolorBorder: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color of the cell boundary lines\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Border Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Number of cells across the canvas\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Animation speed — how fast the cell points drift\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed — shifts the cell pattern without changing the overall structure\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedgeIntensity: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"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.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Width of the cell boundary lines.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .4,\n\t\t\t\tstep: .005,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: borderOverlay(rampOver(share(cellFill(cells, { edgeIntensity: p(\"edgeIntensity\") })), stops(p(\"colorSpace\"))), cellBorders(cells, {\n\t\tsoftness: p(\"edgeSoftness\"),\n\t\tscale: p(\"scale\")\n\t}), { color: p(\"colorBorder\") })\n});\nvar Voronoi_default = componentDefinition;\nexport { componentDefinition as n, Voronoi_default as t };\n","import { at as ZERO, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime } from \"./porters-OTkIMOyl.js\";\nimport { F as shapedSurface, I as sharpGlint, O as opticalThickness, P as schlickFresnel, R as silhouette, U as surfaceNoiseAt, V as surfaceField, W as surfacePattern, b as keyLightAt, g as guarded, l as fieldSlope, m as grazingFlat, n as beerLambert, u as flowWarp, v as insideShape, w as marchedNormal } from \"./materials-4Oqvm_9m.js\";\nimport { k as shapeEffectBoundingBoxDeclaration } from \"./sdf3d-2AWC_wdn.js\";\nimport { a as transformColor, c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { B as vec2, C as mix, D as pow, E as normalize, H as vec4, I as splat3, N as sin, O as reflect, P as smoothstep, V as vec3, i as clamp, k as refract, n as add, o as div, s as dot, t as abs, u as float, v as length, w as mul, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as direction } from \"./frames-BLqt7oaW.js\";\nvar DEFAULT_SHAPE_CONFIG = JSON.stringify({\n\ttype: \"circleSDF\",\n\tradius: .35\n});\nvar waterFbm = (uvE, hint) =\u003e {\n\tconst uv = local(uvE, hint);\n\tconst n0 = surfaceNoiseAt(uv);\n\tconst n1 = mul(surfaceNoiseAt(add(mul(uv, 2.07), vec2(4.3, 9.1))), .5);\n\tconst n2 = mul(surfaceNoiseAt(add(mul(uv, 4.13), vec2(1.7, 8.2))), .25);\n\treturn mul(add(add(n0, n1), n2), .52);\n};\nvar waterNoise1 = (uv) =\u003e mul(surfaceNoiseAt(uv), .52);\nvar waterSky = (rx, ry, lx, ly, envC, envS, sharp, hint) =\u003e {\n\tconst ex = local(sub(mul(rx, envC), mul(ry, envS)), `${hint}Ex`);\n\tconst ey = local(add(mul(rx, envS), mul(ry, envC)), `${hint}Ey`);\n\tconst up = local(clamp(add(mul(ey, .5), .5), 0, 1), `${hint}Up`);\n\tconst horizon = vec3(.9, .96, 1);\n\tconst zenith = vec3(.2, .46, .85);\n\tconst base = mix(vec3(.04, .1, .16), mix(horizon, zenith, splat3(smoothstep(.5, 1, up))), splat3(smoothstep(.4, .55, up)));\n\tconst sunCenter = vec2(mul(lx, .8), add(mul(ly, .8), .12));\n\tconst sunRad = local(mix(.5, .13, sharp), `${hint}SunRad`);\n\tconst sd = length(sub(vec2(ex, ey), sunCenter));\n\tconst sun = smoothstep(sunRad, mul(sunRad, .15), sd);\n\treturn add(base, mul(vec3(1, .97, .88), mul(sun, 1.5)));\n};\nconst componentDefinition = defineStd({\n\tname: \"Water\",\n\trole: \"shapeEffect\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: shapeEffectBoundingBoxDeclaration,\n\tcategory: \"Shape Effects\",\n\tdescription: \"Translucent water — a refractive, light-absorbing body that deepens to its colour 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\",\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\torigin: {\n\t\t\tdefault: \"center\",\n\t\t\tdescription: \"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",\n\t\t\tui: {\n\t\t\t\ttype: \"origin\",\n\t\t\t\tlabel: \"Origin\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center position of the water shape\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Scale of the water shape (1 = default size)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the water shape in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t},\n\t\twaterColor: {\n\t\t\tdefault: \"#00bfeb\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"The colour the water saturates toward with depth\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Water Color\",\n\t\t\t\tgroup: \"Water\"\n\t\t\t}\n\t\t},\n\t\tclarity: {\n\t\t\tdefault: .4,\n\t\t\tdescription: \"How much of the reflected sky transmits through the body\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Clarity\",\n\t\t\t\tgroup: \"Water\"\n\t\t\t}\n\t\t},\n\t\tdepth: {\n\t\t\tdefault: 5,\n\t\t\tdescription: \"How quickly the water darkens and saturates toward its colour with thickness\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Depth\",\n\t\t\t\tgroup: \"Water\"\n\t\t\t}\n\t\t},\n\t\tshallows: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Brightness of the thin shallow water at the edges — high fades the rim to light translucent water, low keeps the edges close to the deep water colour\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Shallows\",\n\t\t\t\tgroup: \"Water\"\n\t\t\t}\n\t\t},\n\t\tcaustics: {\n\t\t\tdefault: .15,\n\t\t\tdescription: \"Intensity of the light caustics bubbling up through the body — bright veins of focused light churning inside the water\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Caustics\",\n\t\t\t\tgroup: \"Water\"\n\t\t\t}\n\t\t},\n\t\tcausticScale: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Size of the caustic veins — higher = finer, busier light patterns inside the body\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 20,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Caustic Scale\",\n\t\t\t\tgroup: \"Water\"\n\t\t\t}\n\t\t},\n\t\tchoppiness: {\n\t\t\tdefault: .8,\n\t\t\tdescription: \"Height of the wind-driven waves — the depth of the folds that bend the reflection\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Choppiness\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\twaveScale: {\n\t\t\tdefault: 3.5,\n\t\t\tdescription: \"Scale of the wave fronts — higher = smaller, busier ripples\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: .5,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Wave Scale\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\tswirl: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Swirl of the flow — domain-warps the wave fronts into curling eddies\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1.5,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Swirl\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Speed of the rolling waves. 0 pauses the surface.\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Waves\"\n\t\t\t}\n\t\t},\n\t\treflection: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Strength of the reflected sky across the surface\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Reflection\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tenvRotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotates the reflected sky — spins where the bright sky and sun fall\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Env Rotation\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tsharpness: {\n\t\t\tdefault: .1,\n\t\t\tdescription: \"Tightness of the sun glint and reflected sun\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Sharpness\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tlightAngle: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Direction of the sun, in degrees — drives the glint and where the sun reflects\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Light Angle\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tfoam: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"White foam breaking on the wave crests and along the shoreline edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Foam\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tedgeSoftness: {\n\t\t\tdefault: .05,\n\t\t\tdescription: \"Softness of the shape boundary edge\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Edge Softness\",\n\t\t\t\tgroup: \"Surface\"\n\t\t\t}\n\t\t},\n\t\tshape: {\n\t\t\tdefault: DEFAULT_SHAPE_CONFIG,\n\t\t\tdescription: \"Serialized shape configuration (JSON)\",\n\t\t\tui: {\n\t\t\t\ttype: \"shape\",\n\t\t\t\tlabel: \"Shape\",\n\t\t\t\tgroup: \"Shape\"\n\t\t\t}\n\t\t},\n\t\tshapeSdfUrl: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"URL to a pre-generated SDF .bin file\"\n\t\t},\n\t\tshapeType: {\n\t\t\tdefault: \"\",\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Active SDF shape type\"\n\t\t}\n\t},\n\t...shapedSurface({\n\t\tpattern: \"raw\",\n\t\tsurface: (frame, params) =\u003e {\n\t\t\tconst { uniforms: u } = params;\n\t\t\tconst t = animatedTime(params);\n\t\t\tconst vol = frame.volumetric;\n\t\t\tconst field = surfaceField(frame, params, { scale: u.scale });\n\t\t\tconst { sdf, pxH } = field;\n\t\t\tconst light = direction(u.lightAngle, \"light\");\n\t\t\tconst lx = light.member(\"x\");\n\t\t\tconst ly = light.member(\"y\");\n\t\t\tconst env = direction(u.envRotation, \"env\");\n\t\t\tconst envC = env.member(\"x\");\n\t\t\tconst envS = env.member(\"y\");\n\t\t\tconst grad = fieldSlope(field);\n\t\t\tlet nGeo;\n\t\t\tif (vol) nGeo = marchedNormal(field);\n\t\t\telse {\n\t\t\t\tconst rimBevel = local(mul(sub(1, clamp(div(mul(sdf, -1), .05), 0, 1)), 1.6), \"rimBevel\");\n\t\t\t\tnGeo = local(normalize(vec3(mul(grad.member(\"x\"), rimBevel), mul(grad.member(\"y\"), rimBevel), -1)), \"nGeo\");\n\t\t\t}\n\t\t\tconst pat = surfacePattern(frame, field);\n\t\t\tconst fx = pat.member(\"x\");\n\t\t\tconst fy = pat.member(\"y\");\n\t\t\tconst freq = local(mul(u.waveScale, 2.4), \"freq\");\n\t\t\tconst flowT = local(mul(t, .2), \"flowT\");\n\t\t\tconst q = local(vec2(mul(mul(fx, freq), .8), mul(mul(fy, freq), 1.25)), \"q\");\n\t\t\tconst wAmt = mul(u.swirl, .9);\n\t\t\tconst qw = local(add(add(q, mul(flowWarp(mul(q, .6), flowT), wAmt)), vec2(0, mul(flowT, -1))), \"qw\");\n\t\t\tconst re = .06;\n\t\t\tconst h0 = local(waterFbm(qw, \"fbmH0\"), \"h0\");\n\t\t\tconst h0n1 = local(waterNoise1(qw), \"h0n1\");\n\t\t\tconst hx = clamp(div(sub(waterNoise1(add(qw, vec2(re, 0))), h0n1), re), -4, 4);\n\t\t\tconst hy = clamp(div(sub(waterNoise1(add(qw, vec2(0, re))), h0n1), re), -4, 4);\n\t\t\tconst fineRe = .025;\n\t\t\tconst qf = local(add(add(mul(qw, 3.3), vec2(mul(flowT, 1.7), mul(flowT, -1.15))), vec2(11.3, 4.7)), \"qf\");\n\t\t\tconst f0n1 = local(waterNoise1(qf), \"f0n1\");\n\t\t\tconst fxg = clamp(div(sub(waterNoise1(add(qf, vec2(fineRe, 0))), f0n1), fineRe), -4, 4);\n\t\t\tconst fyg = clamp(div(sub(waterNoise1(add(qf, vec2(0, fineRe))), f0n1), fineRe), -4, 4);\n\t\t\tconst relief = local(mul(u.choppiness, .5), \"relief\");\n\t\t\tconst reliefFine = local(mul(u.choppiness, .22), \"reliefFine\");\n\t\t\tconst n = local(normalize(vec3(sub(sub(nGeo.member(\"x\"), mul(hx, relief)), mul(fxg, reliefFine)), sub(sub(nGeo.member(\"y\"), mul(hy, relief)), mul(fyg, reliefFine)), nGeo.member(\"z\"))), \"n\");\n\t\t\tconst sharp = local(clamp(u.sharpness, 0, 1), \"sharp\");\n\t\t\tconst R = local(reflect(vec3(0, 0, 1), n), \"R\");\n\t\t\tconst reflCol = local(mul(waterSky(R.member(\"x\"), R.member(\"y\"), lx, ly, envC, envS, sharp, \"refl\"), u.reflection), \"reflCol\");\n\t\t\tconst thickness = local(mul(opticalThickness(field, frame), u.depth), \"thickness\");\n\t\t\tconst depthT = local(clamp(mul(thickness, 1.3), 0, 1), \"depthT\");\n\t\t\tconst wc = local(u.waterColor.member(\"rgb\"), \"wc\");\n\t\t\tconst transmit = local(beerLambert(thickness, vec3(mul(sub(1, wc.member(\"x\")), 2.2), mul(sub(1, wc.member(\"y\")), 2.2), mul(sub(1, wc.member(\"z\")), 2.2))), \"transmit\");\n\t\t\tconst shallowsC = clamp(u.shallows, 0, 1);\n\t\t\tconst bodyTint = local(add(mul(mix(mix(wc, vec3(1, 1, 1), splat3(shallowsC)), wc, splat3(depthT)), transmit), mul(wc, mul(depthT, .18))), \"bodyTint\");\n\t\t\tconst kl = keyLightAt(light, -.7);\n\t\t\tconst diffuse = local(add(mul(pow(clamp(add(mul(dot(n, kl.member(\"L\")), .5), .5), 0, 1), .8), .5), .5), \"diffuse\");\n\t\t\tconst tDir = local(refract(vec3(0, 0, 1), n, float(1 / 1.333)), \"tDir\");\n\t\t\tconst transSky = mul(waterSky(tDir.member(\"x\"), tDir.member(\"y\"), lx, ly, envC, envS, sharp, \"trans\"), transmit);\n\t\t\tconst clarityT = mul(clamp(u.clarity, 0, 1), sub(1, mul(depthT, .8)));\n\t\t\tconst body0 = mul(mix(bodyTint, add(mul(transSky, .6), mul(bodyTint, .4)), splat3(clarityT)), diffuse);\n\t\t\tconst causT = local(mul(t, 3), \"causT\");\n\t\t\tconst causP = local(add(mul(vec2(fx, fy), u.causticScale), vec2(mul(sin(mul(causT, .15)), .4), mul(mul(causT, .3), -1))), \"causP\");\n\t\t\tconst c1 = sub(1, abs(waterFbm(causP, \"fbmC1\")));\n\t\t\tconst c2 = sub(1, abs(waterFbm(add(mul(causP, 1.9), vec2(3.7, mul(mul(causT, .18), -1))), \"fbmC2\")));\n\t\t\tconst causV = local(pow(clamp(add(mul(c1, .6), mul(c2, .4)), 0, 1), 3), \"causV\");\n\t\t\tconst causMask = local(mul(add(mul(depthT, .8), .2), u.caustics), \"causMask\");\n\t\t\tconst surface0 = mix(add(mul(body0, add(1, mul(mul(causV, causMask), .7))), mul(vec3(.55, .82, 1), mul(mul(causV, causMask), .45))), reflCol, splat3(clamp(schlickFresnel(grazingFlat(n), { gain: .96 }), 0, 1)));\n\t\t\tconst spec = sharpGlint(clamp(dot(n, kl.member(\"H\")), 0, 1), sharp, vec4(40, 600, .3, 1.3));\n\t\t\tconst surface1 = add(surface0, mul(vec3(1, .98, .92), spec));\n\t\t\tconst foamMask = local(mul(clamp(add(smoothstep(.62, .92, clamp(add(mul(h0, .5), .5), 0, 1)), mul(sub(1, smoothstep(0, .045, mul(sdf, -1))), .7)), 0, 1), u.foam), \"foamMask\");\n\t\t\tconst surface2 = local(mix(surface1, vec3(1, 1, 1), splat3(mul(foamMask, .85))), \"waterRgb\");\n\t\t\tconst transition = silhouette(field, u.edgeSoftness);\n\t\t\treturn guarded(insideShape(sdf, pxH), vec4(surface2, transition), ZERO, \"water\");\n\t\t}\n\t})\n});\nvar Water_default = componentDefinition;\nexport { componentDefinition as n, Water_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { f as wash, s as kuwahara, t as bleedWarp, u as paperGrain } from \"./stylize-DiuoSq16.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nimport { n as crosses } from \"./slots-BqIef2iV.js\";\nvar wet = bleedWarp({ amount: p(\"bleed\") });\nconst componentDefinition = defineStd({\n\tname: \"Watercolor\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Painterly watercolor look — Kuwahara flattening, pigment edge darkening, paper grain and bleeding\",\n\tprops: {\n\t\tradius: {\n\t\t\tdefault: 3,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Brush size — radius of the painterly flattening\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 8,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Brush\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\thidden: true\n\t\t\t}\n\t\t},\n\t\tbleed: {\n\t\t\tdefault: 1,\n\t\t\trecompile: crosses(0),\n\t\t\tdescription: \"Amount the pigment bleeds and wobbles past hard edges\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bleed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tstrength: {\n\t\t\tdefault: 1,\n\t\t\trecompile: crosses(0),\n\t\t\tdescription: \"Blend between the original image (0) and the full watercolor effect (1)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tpaper: {\n\t\t\tdefault: .35,\n\t\t\trecompile: crosses(0),\n\t\t\tdescription: \"Strength of the paper grain the pigment settles into\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Paper\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tpaperColor: {\n\t\t\tdefault: \"#fbf7ec\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Tint of the paper grain\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Paper Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: wash({\n\t\tat: wet,\n\t\tbrush: kuwahara({\n\t\t\tat: wet,\n\t\t\tradius: p(\"radius\")\n\t\t}),\n\t\tgrain: paperGrain({ amount: p(\"paper\") }),\n\t\tpaper: p(\"paper\"),\n\t\tpaperColor: p(\"paperColor\"),\n\t\tstrength: p(\"strength\")\n\t})\n});\nvar Watercolor_default = componentDefinition;\nexport { componentDefinition as n, Watercolor_default as t };\n","import { c as p, t as defineStd, u as edgesPropConfig } from \"./lower-Bd2jez_2.js\";\nimport { y as wave } from \"./warps-P5O3NWLe.js\";\nconst componentDefinition = defineStd({\n\tname: \"WaveDistortion\",\n\trole: \"warp\",\n\tcategory: \"Distortions\",\n\tdescription: \"Wave-based distortion with multiple waveform types\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tstrength: {\n\t\t\tdefault: .3,\n\t\t\tdescription: \"Distortion intensity\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Strength\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Number of bends/waves\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 10,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tangle: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Direction of wave distortion in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Angle\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\twaveType: {\n\t\t\tdefault: \"sine\",\n\t\t\tdescription: \"Shape of the distortion wave\",\n\t\t\tcompileTime: true,\n\t\t\ttransform: (value) =\u003e {\n\t\t\t\treturn {\n\t\t\t\t\t\"sine\": 0,\n\t\t\t\t\t\"triangle\": 1,\n\t\t\t\t\t\"square\": 2,\n\t\t\t\t\t\"sawtooth\": 3,\n\t\t\t\t\t\"bounce\": 4\n\t\t\t\t}[value] ?? 0;\n\t\t\t},\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Sine\",\n\t\t\t\t\t\tvalue: \"sine\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Triangle\",\n\t\t\t\t\t\tvalue: \"triangle\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Square\",\n\t\t\t\t\t\tvalue: \"square\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Sawtooth\",\n\t\t\t\t\t\tvalue: \"sawtooth\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bounce\",\n\t\t\t\t\t\tvalue: \"bounce\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Wave Type\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tedges: edgesPropConfig(\"stretch\", \"How to handle edges when distortion pushes content out of bounds\")\n\t},\n\tmap: wave({\n\t\tstrength: p(\"strength\"),\n\t\tfrequency: p(\"frequency\"),\n\t\tangle: p(\"angle\"),\n\t\twaveType: p(\"waveType\")\n\t}),\n\tmissingChildMessage: \"You must pass a child component into the WaveDistortion shader.\"\n});\nvar WaveDistortion_default = componentDefinition;\nexport { componentDefinition as n, WaveDistortion_default as t };\n","import { c as p, o as uniformOf, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { t as animatedTime, vt as colorStopsPropConfig } from \"./porters-OTkIMOyl.js\";\nimport { b as stops } from \"./fields-DgADOKsP.js\";\nimport { O as waves } from \"./noise-d7rmP9yc.js\";\nimport { a as transformColor, c as transformPosition, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nimport { C as mix, H as vec4, L as sqrt, P as smoothstep, R as step, T as neg, d as floor, f as fract, i as clamp, n as add, o as div, p as gaussBell, t as abs, w as mul, x as max, y as local, z as sub } from \"./math-D864seEs.js\";\nimport { n as crispStroke, t as crispFill } from \"./mask-CeSwL79Q.js\";\nimport { f as roundedRect, r as circle } from \"./shape-CAkSlCi8.js\";\nimport { o as segmentFrame, s as surfaceOf } from \"./frames-BLqt7oaW.js\";\nvar SPECTRUM = [\n\t{\n\t\twaves: [{\n\t\t\tx: 5.1,\n\t\t\tt: 1.3\n\t\t}],\n\t\tweight: .28\n\t},\n\t{\n\t\twaves: [{\n\t\t\tx: 9.7,\n\t\t\tt: -1.9\n\t\t}, {\n\t\t\tx: 1.7,\n\t\t\tt: .6\n\t\t}],\n\t\tweight: .24\n\t},\n\t{\n\t\twaves: [{\n\t\t\tx: 17.3,\n\t\t\tt: 2.7\n\t\t}],\n\t\tweight: .18\n\t},\n\t{\n\t\twaves: [{\n\t\t\tx: 31.9,\n\t\t\tt: -3.4\n\t\t}, {\n\t\t\tx: 3.3,\n\t\t\tt: -.9\n\t\t}],\n\t\tweight: .14\n\t},\n\t{\n\t\twaves: [{\n\t\t\tx: 67.7,\n\t\t\tt: 4.1\n\t\t}],\n\t\tweight: .09\n\t},\n\t{\n\t\twaves: [{\n\t\t\tx: 131.3,\n\t\t\tt: -5.3\n\t\t}, {\n\t\t\tx: 7.9,\n\t\t\tt: 1.1\n\t\t}],\n\t\tweight: .07\n\t}\n];\nvar EDGE_LEVEL = .4;\nvar ENVELOPE_FALLOFF = 4;\nvar LEVEL_FLOOR = .45;\nvar LEVEL_SWING = .6;\nvar SLOPE_EPS = .002;\nvar STYLE_MODES = {\n\tbars: 0,\n\twave: 1,\n\tline: 2,\n\tdots: 3\n};\nvar ALIGN_MODES = {\n\tmirrored: 0,\n\ttop: 1,\n\tbottom: 2\n};\nvar styleOf = (raw) =\u003e {\n\tif (typeof raw === \"number\") return Object.keys(STYLE_MODES)[raw] ?? \"bars\";\n\treturn raw === \"wave\" || raw === \"line\" || raw === \"dots\" ? raw : \"bars\";\n};\nvar alignOf = (raw) =\u003e {\n\tif (typeof raw === \"number\") return Object.keys(ALIGN_MODES)[raw] ?? \"mirrored\";\n\treturn raw === \"top\" || raw === \"bottom\" ? raw : \"mirrored\";\n};\nconst componentDefinition = defineStd({\n\tname: \"Waveform\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Audio-visualizer waveform — equalizer bars, a filled wave, an oscilloscope line, or a dot matrix — driven by a simulated signal whose amplitude you can map to your own audio level\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tstyle: {\n\t\t\tdefault: \"bars\",\n\t\t\ttransform: (value) =\u003e STYLE_MODES[value] ?? 0,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Visualizer style: equalizer bars, a filled wave envelope, an oscilloscope line, or a dot matrix\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bars\",\n\t\t\t\t\t\tvalue: \"bars\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Wave\",\n\t\t\t\t\t\tvalue: \"wave\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Line\",\n\t\t\t\t\t\tvalue: \"line\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Dots\",\n\t\t\t\t\t\tvalue: \"dots\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Style\",\n\t\t\t\tgroup: \"Style\"\n\t\t\t}\n\t\t},\n\t\tcolorA: {\n\t\t\tdefault: \"#3b5bff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the start\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#ff3bd4\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color at the end\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tstops: colorStopsPropConfig(),\n\t\tcolorSpace: {\n\t\t\tdefault: \"oklab\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for the start→end gradient\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tfrom: {\n\t\t\tdefault: {\n\t\t\t\tx: 0,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Where the waveform starts (Color A end)\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Start\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tto: {\n\t\t\tdefault: {\n\t\t\t\tx: 1,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Where the waveform ends (Color B end)\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"End\",\n\t\t\t\tgroup: \"Position\",\n\t\t\t\tunits: [\"%\", \"px\"]\n\t\t\t}\n\t\t},\n\t\tamplitude: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Overall signal level (0 = silence). Map this to your own audio level to make the waveform react to real sound.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Amplitude\",\n\t\t\t\tgroup: \"Signal\"\n\t\t\t}\n\t\t},\n\t\tfrequency: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How busy the signal is across the width (higher = more peaks)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Frequency\",\n\t\t\t\tgroup: \"Signal\"\n\t\t\t}\n\t\t},\n\t\theight: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Maximum vertical extent of the waveform as a fraction of the canvas height\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .05,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Height\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\talign: {\n\t\t\tdefault: \"mirrored\",\n\t\t\ttransform: (value) =\u003e ALIGN_MODES[value] ?? 0,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Which side of the start→end baseline the waveform grows on: mirrored around it, above it (top), or below it (bottom)\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Mirrored\",\n\t\t\t\t\t\tvalue: \"mirrored\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Top\",\n\t\t\t\t\t\tvalue: \"top\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Bottom\",\n\t\t\t\t\t\tvalue: \"bottom\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Align\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcount: {\n\t\t\tdefault: 32,\n\t\t\tdescription: \"Number of bars (or dot columns) across the width\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 4,\n\t\t\t\tmax: 128,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Count\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: [\"bars\", \"dots\"] }\n\t\t\t}\n\t\t},\n\t\tbarWidth: {\n\t\t\tdefault: .6,\n\t\t\tdescription: \"Bar thickness as a fraction of its column (1 = bars touch)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Bar Width\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: \"bars\" }\n\t\t\t}\n\t\t},\n\t\trounding: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Rounds the bar ends (0 = square, 1 = fully rounded caps)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Rounding\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: \"bars\" }\n\t\t\t}\n\t\t},\n\t\tdotSize: {\n\t\t\tdefault: .7,\n\t\t\tdescription: \"Dot diameter as a fraction of its cell\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .2,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Dot Size\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: \"dots\" }\n\t\t\t}\n\t\t},\n\t\tlineWidth: {\n\t\t\tdefault: .006,\n\t\t\tdescription: \"Stroke thickness of the line. A value of one (1) matches the canvas height.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .001,\n\t\t\t\tmax: .05,\n\t\t\t\tstep: .001,\n\t\t\t\tlabel: \"Line Width\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tdimensional: \"canvas-height\",\n\t\t\t\tcondition: { style: \"line\" }\n\t\t\t}\n\t\t},\n\t\tsoftness: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Feathers the wave's edge into a glow\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Softness\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { style: \"wave\" }\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Animation speed of the simulated signal\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 3,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Adjusts the starting state, useful for variation\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: (params) =\u003e {\n\t\tconst style = styleOf(params.propValues.style);\n\t\tconst align = alignOf(params.propValues.align);\n\t\tconst { viewport } = surfaceOf(params);\n\t\tconst u = (name) =\u003e uniformOf(p(name), params);\n\t\tconst { along, across, length } = segmentFrame({\n\t\t\tfrom: p(\"from\"),\n\t\t\tto: p(\"to\")\n\t\t})(params, surfaceOf(params));\n\t\tconst x = local(div(along, length), \"wfX\");\n\t\tconst px = local(div(1, viewport.member(\"y\")), \"wfPx\");\n\t\tconst t = local(animatedTime(params, \"seed\"), \"wfTime\");\n\t\tconst amplitude = u(\"amplitude\");\n\t\tconst frequency = u(\"frequency\");\n\t\tconst height = u(\"height\");\n\t\tconst rawAt = (xs) =\u003e waves({\n\t\t\tx: mul(xs, frequency),\n\t\t\tt\n\t\t}, SPECTRUM);\n\t\tconst envelopeAt = (xs) =\u003e mix(EDGE_LEVEL, 1, gaussBell(sub(xs, .5), ENVELOPE_FALLOFF));\n\t\tconst signalAt = (xs) =\u003e clamp(mul(mul(rawAt(xs), envelopeAt(xs)), amplitude), -1, 1);\n\t\tconst levelAt = (xs) =\u003e clamp(mul(mul(add(LEVEL_FLOOR, mul(rawAt(xs), LEVEL_SWING)), envelopeAt(xs)), amplitude), 0, 1);\n\t\tconst mirrored = align === \"mirrored\";\n\t\tconst dy = local(align === \"top\" ? neg(across) : across, \"wfDy\");\n\t\tconst rise = mirrored ? abs(dy) : dy;\n\t\tconst extentOf = (level) =\u003e mul(mul(level, height), mirrored ? .5 : 1);\n\t\tconst bandDistance = (extent) =\u003e mirrored ? sub(rise, extent) : max(sub(rise, extent), neg(rise));\n\t\tconst count = u(\"count\");\n\t\tconst cell = local(div(length, count), \"wfCell\");\n\t\tconst xCells = local(mul(x, count), \"wfXCells\");\n\t\tconst columnX = local(div(add(floor(xCells), .5), count), \"wfColX\");\n\t\tconst acrossColumn = local(mul(sub(fract(xCells), .5), cell), \"wfColDx\");\n\t\tlet coverage;\n\t\tif (style === \"bars\") {\n\t\t\tconst halfW = local(mul(mul(u(\"barWidth\"), cell), .5), \"wfHalfW\");\n\t\t\tconst extent = local(max(extentOf(levelAt(columnX)), mirrored ? halfW : mul(halfW, 2)), \"wfExtent\");\n\t\t\tconst halfH = mirrored ? extent : mul(extent, .5);\n\t\t\tcoverage = crispFill({\n\t\t\t\tdistance: roundedRect(acrossColumn, mirrored ? dy : sub(dy, halfH), halfW, halfH, mul(u(\"rounding\"), halfW)),\n\t\t\t\tfootprint: px\n\t\t\t});\n\t\t} else if (style === \"dots\") {\n\t\t\tconst rows = local(div(rise, cell), \"wfRows\");\n\t\t\tconst rowCentre = local(mul(add(floor(rows), .5), cell), \"wfRowY\");\n\t\t\tconst extent = local(extentOf(levelAt(columnX)), \"wfExtent\");\n\t\t\tconst lit = mul(sub(1, smoothstep(sub(extent, mul(cell, .5)), add(extent, mul(cell, .5)), rowCentre)), mirrored ? 1 : step(0, rise));\n\t\t\tconst radius = mul(mul(u(\"dotSize\"), cell), .5);\n\t\t\tcoverage = mul(crispFill({\n\t\t\t\tdistance: circle(acrossColumn, mul(sub(fract(rows), .5), cell), radius),\n\t\t\t\tfootprint: px\n\t\t\t}), lit);\n\t\t} else if (style === \"line\") {\n\t\t\tconst curveAt = (xs) =\u003e mirrored ? extentOf(signalAt(xs)) : extentOf(levelAt(xs));\n\t\t\tconst curve = local(curveAt(x), \"wfCurve\");\n\t\t\tconst slope = local(div(sub(curveAt(add(x, SLOPE_EPS)), curveAt(sub(x, SLOPE_EPS))), mul(2 * SLOPE_EPS, length)), \"wfSlope\");\n\t\t\tcoverage = crispStroke({\n\t\t\t\tdistance: div(sub(dy, curve), sqrt(add(1, mul(slope, slope)))),\n\t\t\t\twidth: u(\"lineWidth\"),\n\t\t\t\tfootprint: px\n\t\t\t});\n\t\t} else coverage = crispFill({\n\t\t\tdistance: bandDistance(local(extentOf(levelAt(x)), \"wfExtent\")),\n\t\t\tfootprint: add(px, mul(u(\"softness\"), .2))\n\t\t});\n\t\tconst inSpan = crispFill({\n\t\t\tdistance: max(neg(along), sub(along, length)),\n\t\t\tfootprint: px\n\t\t});\n\t\tconst color = local(stops(p(\"colorSpace\"))(x, params), \"wfColor\");\n\t\treturn vec4(color.member(\"rgb\"), mul(mul(color.member(\"a\"), coverage), inSpan));\n\t}\n});\nvar Waveform_default = componentDefinition;\nexport { componentDefinition as n, Waveform_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { b as stops, f as rampOver } from \"./fields-DgADOKsP.js\";\nimport { D as waveletBands, E as unitized, m as noiseTone, x as seededPlane } from \"./noise-d7rmP9yc.js\";\nimport { i as noiseToneProps, r as noiseSpeedProp, t as noiseColorProps } from \"./noiseColor-DuWjYRmO.js\";\nconst componentDefinition = defineStd({\n\tname: \"WaveletNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Rotating banded wavelets that ripple as they animate\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\t...noiseColorProps(),\n\t\tscale: {\n\t\t\tdefault: 1.5,\n\t\t\tdescription: \"Pattern scale (higher = larger patterns)\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: -2,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdetail: {\n\t\t\tdefault: 1.24,\n\t\t\tdescription: \"Per-octave frequency ratio — higher adds finer wavelet detail\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1.05,\n\t\t\t\tmax: 2,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Detail\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\t...noiseToneProps(),\n\t\t...noiseSpeedProp()\n\t},\n\tpaint: rampOver(noiseTone(seededPlane(unitized(waveletBands({ detail: p(\"detail\") })), {\n\t\tscale: p(\"scale\"),\n\t\tseed: p(\"seed\")\n\t}), {\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\")\n\t}), stops(p(\"colorSpace\")))\n});\nvar WaveletNoise_default = componentDefinition;\nexport { componentDefinition as n, WaveletNoise_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { O as weaveThreads, r as cellFrame } from \"./patterns-Bg8lSdqH.js\";\nimport { a as transformColor } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"Weave\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Interlaced textile weave pattern with two thread colors going over and under each other\",\n\tacceptsUVContext: true,\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#c4c4c4\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Horizontal thread color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"X Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#4d4d4d\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Vertical thread color\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Y Color\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcells: {\n\t\t\tdefault: 10,\n\t\t\tdescription: \"Number of threads across the shortest canvas edge\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 2,\n\t\t\t\tmax: 40,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Cells\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tgap: {\n\t\t\tdefault: .25,\n\t\t\tdescription: \"Gap between threads (0 = no gap, 0.5 = maximum gap)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: .45,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Gap\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\trotation: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Rotation of the weave pattern in degrees\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 360,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Rotation\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: weaveThreads({\n\t\tframe: cellFrame({\n\t\t\tcells: p(\"cells\"),\n\t\t\trotation: p(\"rotation\"),\n\t\t\tconvention: \"plain\"\n\t\t}),\n\t\tgap: p(\"gap\"),\n\t\tcolors: [p(\"colorA\"), p(\"colorB\")]\n\t})\n});\nvar Weave_default = componentDefinition;\nexport { componentDefinition as n, Weave_default as t };\n","import { c as p, f as objectFitProp, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { r as webcamMedia } from \"./media-DXUY3ltG.js\";\nconst componentDefinition = defineStd({\n\tname: \"WebcamTexture\",\n\trole: \"media\",\n\tspecies: \"custom\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Display a live webcam feed with customizable object-fit modes\",\n\tacceptsUVContext: true,\n\tnaturalSizeKey: { fixed: \"webcam\" },\n\tprops: {\n\t\tobjectFit: objectFitProp(\"cover\", \"How the webcam feed should be sized within the viewport\", { allowNone: true }),\n\t\tmirror: {\n\t\t\tdefault: true,\n\t\t\tdescription: \"Mirror the webcam feed horizontally (selfie mode)\",\n\t\t\tui: {\n\t\t\t\ttype: \"checkbox\",\n\t\t\t\tlabel: \"Mirror\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t}\n\t},\n\t...webcamMedia({\n\t\tfit: p(\"objectFit\"),\n\t\tmirror: p(\"mirror\"),\n\t\tdecode: \"srgb-linear-alpha-cut\",\n\t\tconstraints: {\n\t\t\tvideo: {\n\t\t\t\twidth: { ideal: 1280 },\n\t\t\t\theight: { ideal: 720 },\n\t\t\t\tfacingMode: \"user\"\n\t\t\t},\n\t\t\taudio: false\n\t\t},\n\t\tnaturalSizeKey: \"webcam\",\n\t\tonError: (error) =\u003e {\n\t\t\tif (error instanceof DOMException) if (error.name === \"NotAllowedError\") console.error(\"[WebcamTexture] Camera permission denied by user\");\n\t\t\telse if (error.name === \"NotFoundError\") console.error(\"[WebcamTexture] No camera found on this device\");\n\t\t\telse if (error.name === \"NotReadableError\") console.error(\"[WebcamTexture] Camera is already in use by another application\");\n\t\t\telse console.error(\"[WebcamTexture] Camera error:\", error.message);\n\t\t\telse console.error(\"[WebcamTexture] Failed to start webcam:\", error);\n\t\t}\n\t})\n});\nvar WebcamTexture_default = componentDefinition;\nexport { componentDefinition as n, WebcamTexture_default as t };\n","import { t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { p as noiseRelief, v as reliefBases } from \"./noise-d7rmP9yc.js\";\nimport { t as reliefStylizeProps } from \"./noiseStylize-CUrW_HiC.js\";\nconst componentDefinition = defineStd({\n\tname: \"Wool\",\n\trole: \"filter\",\n\tspecies: \"custom\",\n\trequiresRTT: true,\n\trequiresChild: true,\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Stylize\",\n\tdescription: \"Applies an interwoven fibrous fabric texture and distortion to child content\",\n\tprops: reliefStylizeProps({\n\t\tintensity: .5,\n\t\tscale: 4,\n\t\tcontrast: -.5,\n\t\tdistortion: .15\n\t}),\n\tgpu: { fragment: noiseRelief(reliefBases.wool) }\n});\nvar Wool_default = componentDefinition;\nexport { componentDefinition as n, Wool_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { T as transformWorleyMode, j as worleyNoise, w as transformWorleyDistance } from \"./noise-d7rmP9yc.js\";\nimport { a as transformColor, o as transformColorSpace, t as colorSpaceOptions } from \"./transformations-CzFmhZww.js\";\nconst componentDefinition = defineStd({\n\tname: \"WorleyNoise\",\n\trole: \"generator\",\n\tboundingBoxDeclaration: {\n\t\taspectRatio: null,\n\t\tsupportsResizeFit: true\n\t},\n\tcategory: \"Textures\",\n\tdescription: \"Cellular noise field — distance-based, with selectable feature combinations and fractal octaves\",\n\tacceptsUVContext: true,\n\tanimatedTime: { speed: \"speed\" },\n\tprops: {\n\t\tcolorA: {\n\t\t\tdefault: \"#ffffff\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color where the noise field is low (typically near cell centers)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color A (Low)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorB: {\n\t\t\tdefault: \"#000000\",\n\t\t\ttransform: transformColor,\n\t\t\tdescription: \"Color where the noise field is high (typically near cell boundaries)\",\n\t\t\tui: {\n\t\t\t\ttype: \"color\",\n\t\t\t\tlabel: \"Color B (High)\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tcolorSpace: {\n\t\t\tdefault: \"linear\",\n\t\t\ttransform: transformColorSpace,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Color space for color interpolation\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: colorSpaceOptions,\n\t\t\t\tlabel: \"Color Space\",\n\t\t\t\tgroup: \"Colors\"\n\t\t\t}\n\t\t},\n\t\tscale: {\n\t\t\tdefault: 6,\n\t\t\tdescription: \"Number of cells across the canvas at the base octave\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 30,\n\t\t\t\tstep: .5,\n\t\t\t\tlabel: \"Scale\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tmode: {\n\t\t\tdefault: \"f1\",\n\t\t\ttransform: transformWorleyMode,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Field type. F1 = distance to nearest point. F2 = distance to second-nearest. F2 − F1 emphasises cell boundaries.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"F1 (Cells)\",\n\t\t\t\t\t\tvalue: \"f1\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"F2 (Wider Cells)\",\n\t\t\t\t\t\tvalue: \"f2\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"F2 − F1 (Edges)\",\n\t\t\t\t\t\tvalue: \"f2MinusF1\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"F1 + F2\",\n\t\t\t\t\t\tvalue: \"f1PlusF2\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"F1 × F2\",\n\t\t\t\t\t\tvalue: \"f1TimesF2\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Mode\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tdistance: {\n\t\t\tdefault: \"euclidean\",\n\t\t\ttransform: transformWorleyDistance,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Distance metric. Euclidean = round cells. Manhattan = diamond. Chebyshev = square.\",\n\t\t\tui: {\n\t\t\t\ttype: \"select\",\n\t\t\t\toptions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Euclidean\",\n\t\t\t\t\t\tvalue: \"euclidean\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Manhattan\",\n\t\t\t\t\t\tvalue: \"manhattan\"\n\t\t\t\t\t},\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: \"Chebyshev\",\n\t\t\t\t\t\tvalue: \"chebyshev\"\n\t\t\t\t\t}\n\t\t\t\t],\n\t\t\t\tlabel: \"Distance\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\toctaves: {\n\t\t\tdefault: 1,\n\t\t\tcompileTime: true,\n\t\t\tdescription: \"Number of fractal layers stacked at progressively finer scales\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 1,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Octaves\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tlacunarity: {\n\t\t\tdefault: 2,\n\t\t\tdescription: \"Scale multiplier between octaves (only active when Octaves \u003e 1)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 1.5,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Lacunarity\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { octaves: [\n\t\t\t\t\t2,\n\t\t\t\t\t3,\n\t\t\t\t\t4\n\t\t\t\t] }\n\t\t\t}\n\t\t},\n\t\tpersistence: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Amplitude multiplier between octaves (only active when Octaves \u003e 1)\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Persistence\",\n\t\t\t\tgroup: \"Effect\",\n\t\t\t\tcondition: { octaves: [\n\t\t\t\t\t2,\n\t\t\t\t\t3,\n\t\t\t\t\t4\n\t\t\t\t] }\n\t\t\t}\n\t\t},\n\t\tjitter: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"How much each cell's point drifts inside its cell. 0 = rigid grid (banded look), 1 = fully random.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Jitter\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcontrast: {\n\t\t\tdefault: 1,\n\t\t\tdescription: \"Steepness of the gradient between low and high regions\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: .25,\n\t\t\t\tmax: 4,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Contrast\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tbalance: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Shifts the gradient midpoint. Negative pulls the field toward Color A, positive toward Color B.\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: -1,\n\t\t\t\tmax: 1,\n\t\t\t\tstep: .01,\n\t\t\t\tlabel: \"Balance\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tseed: {\n\t\t\tdefault: 0,\n\t\t\tdescription: \"Random seed — shifts the cell pattern without changing its overall structure\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Seed\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tspeed: {\n\t\t\tdefault: .5,\n\t\t\tdescription: \"Animation speed — how fast each cell's point drifts\",\n\t\t\tui: {\n\t\t\t\ttype: \"range\",\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 5,\n\t\t\t\tstep: .1,\n\t\t\t\tlabel: \"Speed\",\n\t\t\t\tgroup: \"Animation\"\n\t\t\t}\n\t\t}\n\t},\n\tpaint: worleyNoise({\n\t\tscale: p(\"scale\"),\n\t\tjitter: p(\"jitter\"),\n\t\tlacunarity: p(\"lacunarity\"),\n\t\tpersistence: p(\"persistence\"),\n\t\tcontrast: p(\"contrast\"),\n\t\tbalance: p(\"balance\"),\n\t\tseed: p(\"seed\"),\n\t\tmode: p(\"mode\"),\n\t\tdistance: p(\"distance\"),\n\t\toctaves: p(\"octaves\"),\n\t\tspace: p(\"colorSpace\")\n\t})\n});\nvar WorleyNoise_default = componentDefinition;\nexport { componentDefinition as n, WorleyNoise_default as t };\n","import { c as p, t as defineStd } from \"./lower-Bd2jez_2.js\";\nimport { c as transformPosition } from \"./transformations-CzFmhZww.js\";\nimport { C as motionBlur, i as blurPath } from \"./blurs-d4B9aUyx.js\";\nconst componentDefinition = defineStd({\n\tname: \"ZoomBlur\",\n\trole: \"filter\",\n\tspecies: \"gather\",\n\tboundingBoxDeclaration: { aspectRatio: null },\n\tcategory: \"Blurs\",\n\tdescription: \"Radial zoom blur expanding from a center point\",\n\tprops: {\n\t\tintensity: {\n\t\t\tdefault: 30,\n\t\t\tdescription: \"Intensity of the zoom blur effect\",\n\t\t\tui: {\n\t\t\t\ttype: [\"range\", \"map\"],\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 100,\n\t\t\t\tstep: 1,\n\t\t\t\tlabel: \"Intensity\",\n\t\t\t\tgroup: \"Effect\"\n\t\t\t}\n\t\t},\n\t\tcenter: {\n\t\t\tdefault: {\n\t\t\t\tx: .5,\n\t\t\t\ty: .5\n\t\t\t},\n\t\t\ttransform: transformPosition,\n\t\t\tdescription: \"Center point of the zoom blur\",\n\t\t\tui: {\n\t\t\t\ttype: \"position\",\n\t\t\t\tlabel: \"Center\",\n\t\t\t\tgroup: \"Position\"\n\t\t\t}\n\t\t}\n\t},\n\teffect: motionBlur({\n\t\tpath: blurPath.zoom(p(\"center\")),\n\t\tamount: p(\"intensity\")\n\t})\n});\nvar ZoomBlur_default = componentDefinition;\nexport { componentDefinition as n, ZoomBlur_default as t };\n","import { n as componentDefinition$141 } from \"./Repeater-C5LILb_Y.js\";\nimport { n as componentDefinition$187 } from \"./Voxels-Ca-6rRrz.js\";\nimport { n as componentDefinition$113 } from \"./Neon-Cf95sJ7W.js\";\nimport { n as componentDefinition$52 } from \"./Emboss-BjOlYydL.js\";\nimport { n as componentDefinition$66 } from \"./Form3D-D-eUD4_k.js\";\nimport { n as componentDefinition$171 } from \"./ThinFilm-CTQeVw7E.js\";\nimport { n as componentDefinition$40 } from \"./CursorRipples-C1PNyYcB.js\";\nimport { n as componentDefinition } from \"./AngularBlur-g4-fDx1N.js\";\nimport { n as componentDefinition$1 } from \"./Arc-B4VGPOtO.js\";\nimport { n as componentDefinition$2 } from \"./Ascii-DxiduEzP.js\";\nimport { n as componentDefinition$3 } from \"./Aurora-FgWLcSkh.js\";\nimport { n as componentDefinition$4 } from \"./BarnDoors-BC0LM0aD.js\";\nimport { n as componentDefinition$5 } from \"./BarShift-BukEd3jr.js\";\nimport { n as componentDefinition$6 } from \"./Beam-CxAXVlAf.js\";\nimport { n as componentDefinition$7 } from \"./Bend-BfVVIo2C.js\";\nimport { n as componentDefinition$8 } from \"./Blob-D_IbcUCc.js\";\nimport { n as componentDefinition$9 } from \"./BlockDissolve-C9nsgIz9.js\";\nimport { n as componentDefinition$10 } from \"./BlockNoise-BgwbD0rx.js\";\nimport { n as componentDefinition$11 } from \"./BlueNoise-BdwOaq4G.js\";\nimport { n as componentDefinition$12 } from \"./Blur-ceuv7ZTm.js\";\nimport { o as componentDefinition$13 } from \"./Boids-DEHsYo46.js\";\nimport { n as componentDefinition$14 } from \"./BokehBlur-C8xJ0xA8.js\";\nimport { n as componentDefinition$15 } from \"./BrickPattern-C-6QFzp6.js\";\nimport { n as componentDefinition$16 } from \"./BrightnessContrast-CMUaNvo0.js\";\nimport { n as componentDefinition$17 } from \"./BrushedMetal-CQsu_96R.js\";\nimport { n as componentDefinition$18 } from \"./Bulge-CgO7_0fe.js\";\nimport { n as componentDefinition$19 } from \"./CarbonFiber-D0vgwlrV.js\";\nimport { n as componentDefinition$20 } from \"./Chalkboard-CDUJz_Ae.js\";\nimport { n as componentDefinition$21 } from \"./ChannelBlur-Z8ZvN6W3.js\";\nimport { n as componentDefinition$22 } from \"./Checkerboard-DZAABNKo.js\";\nimport { n as componentDefinition$23 } from \"./CheckerWipe-DXm9kDaS.js\";\nimport { n as componentDefinition$24 } from \"./Chevron-Dn1iHSiS.js\";\nimport { n as componentDefinition$25 } from \"./ChromaFlow-lnaJ4o1Y.js\";\nimport { n as componentDefinition$26 } from \"./ChromaticAberration-CGOQe4Pp.js\";\nimport { n as componentDefinition$27 } from \"./Chrome-DPAmErfN.js\";\nimport { n as componentDefinition$28 } from \"./Circle-DVPhvXdr.js\";\nimport { n as componentDefinition$29 } from \"./ColorWheel-DXkVOQl2.js\";\nimport { r as componentDefinition$30 } from \"./CompressionArtifacts-CEw9gfTu.js\";\nimport { n as componentDefinition$31 } from \"./ConcentricSpin-GtNEq1T1.js\";\nimport { n as componentDefinition$32 } from \"./ConicGradient-DYPNJAOg.js\";\nimport { n as componentDefinition$33 } from \"./ContourLines-DEmEepvT.js\";\nimport { n as componentDefinition$34 } from \"./CornerPin-CJJeGyVf.js\";\nimport { n as componentDefinition$35 } from \"./Crescent-C7yy9-xf.js\";\nimport { n as componentDefinition$36 } from \"./Cross-DyYrdTVw.js\";\nimport { n as componentDefinition$37 } from \"./CRTScreen-DNqe2klB.js\";\nimport { n as componentDefinition$38 } from \"./Crystal-DQJd5oAd.js\";\nimport { n as componentDefinition$39 } from \"./CurlNoise-Bjc6hhjR.js\";\nimport { n as componentDefinition$41 } from \"./CursorTrail-C6v97bId.js\";\nimport { n as componentDefinition$42 } from \"./DataMosh-AX4kIi4R.js\";\nimport { n as componentDefinition$43 } from \"./DiamondGradient-Bj6mUxOy.js\";\nimport { n as componentDefinition$44 } from \"./DiamondWipe-BNSkpUn9.js\";\nimport { n as componentDefinition$45 } from \"./DiffuseBlur-C7l-5Dw3.js\";\nimport { n as componentDefinition$46 } from \"./DisplacementMap-DGpLSlxs.js\";\nimport { n as componentDefinition$47 } from \"./Dither-C9KDpqgP.js\";\nimport { n as componentDefinition$48 } from \"./DotGrid-CkAtf-j_.js\";\nimport { n as componentDefinition$49 } from \"./DropShadow-BxI_a7dC.js\";\nimport { n as componentDefinition$50 } from \"./Duotone-CrJ0P0SL.js\";\nimport { n as componentDefinition$51 } from \"./Ellipse-C2Tie_19.js\";\nimport { n as componentDefinition$53 } from \"./Engraving-RpxXPqQq.js\";\nimport { n as componentDefinition$54 } from \"./ErosionNoise-D0qefxhq.js\";\nimport { n as componentDefinition$55 } from \"./Exposure-B7W7AVbY.js\";\nimport { n as componentDefinition$56 } from \"./FallingLines-Cxhmtqf4.js\";\nimport { n as componentDefinition$57 } from \"./FilmGrain-CghUJIeK.js\";\nimport { n as componentDefinition$58 } from \"./FilmStock-DmOaROtC.js\";\nimport { n as componentDefinition$59 } from \"./Flip-BuOdbWjK.js\";\nimport { n as componentDefinition$60 } from \"./FloatingParticles-BfFlt06Y.js\";\nimport { n as componentDefinition$61 } from \"./Flower-CwdJOVR1.js\";\nimport { n as componentDefinition$62 } from \"./FlowField-A2njOtGx.js\";\nimport { n as componentDefinition$63 } from \"./FlowingGradient-D3BG2FW9.js\";\nimport { n as componentDefinition$64 } from \"./FlutedGlass-BWlTrLF-.js\";\nimport { a as componentDefinition$65 } from \"./Fog-CpmIyRtJ.js\";\nimport { n as componentDefinition$67 } from \"./FractalNoise-DsESU8cP.js\";\nimport { n as componentDefinition$68 } from \"./Frost-B1s1W_Qm.js\";\nimport { n as componentDefinition$69 } from \"./GaborNoise-D3U1iz9E.js\";\nimport { n as componentDefinition$70 } from \"./Glass-O5o5OxlN.js\";\nimport { n as componentDefinition$71 } from \"./GlassTiles-BxdT6Ee8.js\";\nimport { n as componentDefinition$72 } from \"./Glitch-DQeLaNdU.js\";\nimport { n as componentDefinition$73 } from \"./Glow-DksG7wdu.js\";\nimport { n as componentDefinition$74 } from \"./Godrays-D2Pzd9K9.js\";\nimport { n as componentDefinition$75 } from \"./Goo-BL_ifIPI.js\";\nimport { n as componentDefinition$76 } from \"./GradientMap-B-5yUYjX.js\";\nimport { n as componentDefinition$77 } from \"./Grayscale-g7jQsxgi.js\";\nimport { n as componentDefinition$78 } from \"./Grid-DAglpJFP.js\";\nimport { n as componentDefinition$79 } from \"./GridDistortion-CNlIESbs.js\";\nimport { n as componentDefinition$80 } from \"./Group-CeOfFv2K.js\";\nimport { n as componentDefinition$81 } from \"./Halftone-DCiP4EDq.js\";\nimport { n as componentDefinition$82 } from \"./Heart-CQhtzwFu.js\";\nimport { n as componentDefinition$83 } from \"./Heatmap-e-lF_uZu.js\";\nimport { n as componentDefinition$84 } from \"./HexGrid-BY_BPH8J.js\";\nimport { n as componentDefinition$85 } from \"./Hologram-BA_LJPm0.js\";\nimport { n as componentDefinition$86 } from \"./Holographic-CX8OG-Wa.js\";\nimport { n as componentDefinition$87 } from \"./HTMLInCanvas-BgwCnbYn.js\";\nimport { n as componentDefinition$88 } from \"./HueShift-BnwOshrg.js\";\nimport { n as componentDefinition$89 } from \"./ImageTexture-Cd6vH2Z0.js\";\nimport { i as componentDefinition$90 } from \"./InkFlow-B7F9i3Kd.js\";\nimport { n as componentDefinition$91 } from \"./Invert-6Q5kX8vd.js\";\nimport { n as componentDefinition$92 } from \"./IrisWipe-Cl5yYdEi.js\";\nimport { n as componentDefinition$93 } from \"./Irradiance-B36wYze9.js\";\nimport { n as componentDefinition$94 } from \"./IsometricCubes-BhK9MhCy.js\";\nimport { n as componentDefinition$95 } from \"./Kaleidoscope-D4X5N_qk.js\";\nimport { n as componentDefinition$96 } from \"./KeyFrames-Dv1vFfMa.js\";\nimport { n as componentDefinition$97 } from \"./LensDistortion-BqVp5WBS.js\";\nimport { n as componentDefinition$98 } from \"./LensFlare-z0k68uJ1.js\";\nimport { n as componentDefinition$99 } from \"./LightEdge-AFfkNhDP.js\";\nimport { n as componentDefinition$100 } from \"./LightLeak-BgFq4bLG.js\";\nimport { n as componentDefinition$101 } from \"./Line--Ur3CJp1.js\";\nimport { n as componentDefinition$102 } from \"./LinearBlur-BkHF6lVm.js\";\nimport { n as componentDefinition$103 } from \"./LinearGradient-DIdq_fiw.js\";\nimport { n as componentDefinition$104 } from \"./LinearWipe-DuCB9oV_.js\";\nimport { n as componentDefinition$105 } from \"./LiquidMetal-B2Cz80Ka.js\";\nimport { n as componentDefinition$106 } from \"./Liquify-CvPn1ze-.js\";\nimport { n as componentDefinition$107 } from \"./MagneticFilings-BOgYrPhz.js\";\nimport { n as componentDefinition$108 } from \"./Marble-c2QGDXxB.js\";\nimport { n as componentDefinition$109 } from \"./MeshGradient-DMsza5tg.js\";\nimport { n as componentDefinition$110 } from \"./Mirror-Ck8qk1Km.js\";\nimport { n as componentDefinition$111 } from \"./MultiPointGradient-DwO6snxn.js\";\nimport { n as componentDefinition$112 } from \"./Nebula-3a9pYBDC.js\";\nimport { n as componentDefinition$114 } from \"./NoiseDissolve-DgvzEFOD.js\";\nimport { n as componentDefinition$115 } from \"./ObjectTracker-IopW8Jvf.js\";\nimport { n as componentDefinition$116 } from \"./Obsidian-BL_0ordp.js\";\nimport { n as componentDefinition$117 } from \"./PagePeel-BeAr_n0U.js\";\nimport { n as componentDefinition$118 } from \"./Paper-BDEsyIPI.js\";\nimport { n as componentDefinition$119 } from \"./Parallelogram-Duj-0MLr.js\";\nimport { n as componentDefinition$120 } from \"./ParticleField-gk7JuNx4.js\";\nimport { n as componentDefinition$121 } from \"./ParticleFlow-BzWOl7Hm.js\";\nimport { n as componentDefinition$122 } from \"./Particles-DYAtR6jZ.js\";\nimport { n as componentDefinition$123 } from \"./PerlinNoise-BHQ318g4.js\";\nimport { n as componentDefinition$124 } from \"./Perspective-xBfd9BSE.js\";\nimport { n as componentDefinition$125 } from \"./Pixelate-CvCzoA0h.js\";\nimport { n as componentDefinition$126 } from \"./PixelSort-Bx9sUnGm.js\";\nimport { r as componentDefinition$127 } from \"./PixelThrow-0nJiGsmZ.js\";\nimport { n as componentDefinition$128 } from \"./Plasma-Be1yxNcP.js\";\nimport { n as componentDefinition$129 } from \"./Plastic-Bom1oFFR.js\";\nimport { n as componentDefinition$130 } from \"./PolarCoordinates-BGwTZ6NO.js\";\nimport { n as componentDefinition$131 } from \"./Polygon-Byw5C7Qy.js\";\nimport { n as componentDefinition$132 } from \"./Posterize-BHOstvyj.js\";\nimport { n as componentDefinition$133 } from \"./Prism-pNsLhW8w.js\";\nimport { n as componentDefinition$134 } from \"./ProgressiveBlur-CR1IbvKQ.js\";\nimport { n as componentDefinition$135 } from \"./RadialGradient-BFOrMAK1.js\";\nimport { n as componentDefinition$136 } from \"./RadialWipe-BYnlbrNm.js\";\nimport { n as componentDefinition$137 } from \"./RandomBars-B7erRRHx.js\";\nimport { n as componentDefinition$138 } from \"./ReactionDiffusion-BnY40jHs.js\";\nimport { n as componentDefinition$139 } from \"./RectangularCoordinates-D9-3PQAz.js\";\nimport { n as componentDefinition$140 } from \"./ReflectivePlane-BI-LIR2c.js\";\nimport { n as componentDefinition$142 } from \"./Ring-CvvtJYAf.js\";\nimport { n as componentDefinition$143 } from \"./Ripples-BFLep1r1.js\";\nimport { n as componentDefinition$144 } from \"./RippleWipe-kAzZWsjR.js\";\nimport { n as componentDefinition$145 } from \"./RoundedRect-DirNijIY.js\";\nimport { n as componentDefinition$146 } from \"./Saturation-CfkRhJpe.js\";\nimport { n as componentDefinition$147 } from \"./Scratches-Dchfw1_5.js\";\nimport { n as componentDefinition$148 } from \"./Sharpness-DZzAnlsl.js\";\nimport { n as componentDefinition$149 } from \"./Shatter-Dz3sH2ON.js\";\nimport { n as componentDefinition$150 } from \"./SimplexNoise-CmV42gYT.js\";\nimport { n as componentDefinition$151 } from \"./SineWave-TqnpIKO4.js\";\nimport { n as componentDefinition$152 } from \"./SliceWipe-Dz8vj6bi.js\";\nimport { i as componentDefinition$153 } from \"./Smoke-B1TnZnG6.js\";\nimport { i as componentDefinition$154 } from \"./SmokeFill-C8gSZ22X.js\";\nimport { i as componentDefinition$155 } from \"./SmokeFlow-dd5uLztm.js\";\nimport { n as componentDefinition$156 } from \"./Solarize-CIQa9pKw.js\";\nimport { n as componentDefinition$157 } from \"./SolidColor-DuoQVKGk.js\";\nimport { n as componentDefinition$158 } from \"./Spherize-FWwWEUyE.js\";\nimport { n as componentDefinition$159 } from \"./Spiral-DI1eG0E3.js\";\nimport { n as componentDefinition$160 } from \"./Star-DT-hnlIJ.js\";\nimport { n as componentDefinition$161 } from \"./Stone-oW35zD22.js\";\nimport { n as componentDefinition$162 } from \"./Strands-asB3fUr9.js\";\nimport { n as componentDefinition$163 } from \"./Stretch-Cm_B4WGY.js\";\nimport { n as componentDefinition$164 } from \"./Stripes-BnJiniJY.js\";\nimport { n as componentDefinition$165 } from \"./StudioBackground-DwSO5KNV.js\";\nimport { n as componentDefinition$166 } from \"./SunBurst-BL-BryZO.js\";\nimport { n as componentDefinition$167 } from \"./Surface3D-DSvh7Zof.js\";\nimport { n as componentDefinition$168 } from \"./Swirl-BVPy039a.js\";\nimport { n as componentDefinition$169 } from \"./Teardrop-CR1UqYaF.js\";\nimport { n as componentDefinition$170 } from \"./Text-fP5temat.js\";\nimport { n as componentDefinition$172 } from \"./TiltShift-BvYpYELk.js\";\nimport { n as componentDefinition$173 } from \"./TimeTrail-DqdYuHn7.js\";\nimport { n as componentDefinition$174 } from \"./Tint-BXJMHYvg.js\";\nimport { n as componentDefinition$175 } from \"./Trapezoid--AgyKOWQ.js\";\nimport { n as componentDefinition$176 } from \"./TriangularGrid-CmDApxz9.js\";\nimport { n as componentDefinition$177 } from \"./Tritone-DCd_IRp7.js\";\nimport { n as componentDefinition$178 } from \"./Truchet-g1_jcoZ4.js\";\nimport { n as componentDefinition$179 } from \"./Twirl-JY-PXDS2.js\";\nimport { n as componentDefinition$180 } from \"./VenetianBlinds-B7laTyPO.js\";\nimport { n as componentDefinition$181 } from \"./Vesica-BTNW2p5u.js\";\nimport { n as componentDefinition$182 } from \"./VHS-ZWR6D4Da.js\";\nimport { n as componentDefinition$183 } from \"./Vibrance-DmhtRT2D.js\";\nimport { n as componentDefinition$184 } from \"./VideoTexture-DK3EaAHY.js\";\nimport { n as componentDefinition$185 } from \"./Vignette-hyFfUS20.js\";\nimport { n as componentDefinition$186 } from \"./Voronoi-DhexPwNM.js\";\nimport { n as componentDefinition$188 } from \"./Water-BsBnXYYB.js\";\nimport { n as componentDefinition$189 } from \"./Watercolor-C1HipGGO.js\";\nimport { n as componentDefinition$190 } from \"./WaveDistortion-VXyHFcJ3.js\";\nimport { n as componentDefinition$191 } from \"./Waveform-CSP_4nZF.js\";\nimport { n as componentDefinition$192 } from \"./WaveletNoise-CQqAufyv.js\";\nimport { n as componentDefinition$193 } from \"./Weave-DwX8T4_Q.js\";\nimport { n as componentDefinition$194 } from \"./WebcamTexture-B4SLwIP1.js\";\nimport { n as componentDefinition$195 } from \"./Wool-qg-z_TFC.js\";\nimport { n as componentDefinition$196 } from \"./WorleyNoise-CjVw20Fl.js\";\nimport { n as componentDefinition$197 } from \"./ZoomBlur-Lm_pVpMf.js\";\nvar createShaderRegistry = () =\u003e {\n\tconst registry = {};\n\tconst shaderDefinitions = {\n\t\tAngularBlur: componentDefinition,\n\t\tArc: componentDefinition$1,\n\t\tAscii: componentDefinition$2,\n\t\tAurora: componentDefinition$3,\n\t\tBarnDoors: componentDefinition$4,\n\t\tBarShift: componentDefinition$5,\n\t\tBeam: componentDefinition$6,\n\t\tBend: componentDefinition$7,\n\t\tBlob: componentDefinition$8,\n\t\tBlockDissolve: componentDefinition$9,\n\t\tBlockNoise: componentDefinition$10,\n\t\tBlueNoise: componentDefinition$11,\n\t\tBlur: componentDefinition$12,\n\t\tBoids: componentDefinition$13,\n\t\tBokehBlur: componentDefinition$14,\n\t\tBrickPattern: componentDefinition$15,\n\t\tBrightnessContrast: componentDefinition$16,\n\t\tBrushedMetal: componentDefinition$17,\n\t\tBulge: componentDefinition$18,\n\t\tCarbonFiber: componentDefinition$19,\n\t\tChalkboard: componentDefinition$20,\n\t\tChannelBlur: componentDefinition$21,\n\t\tCheckerboard: componentDefinition$22,\n\t\tCheckerWipe: componentDefinition$23,\n\t\tChevron: componentDefinition$24,\n\t\tChromaFlow: componentDefinition$25,\n\t\tChromaticAberration: componentDefinition$26,\n\t\tChrome: componentDefinition$27,\n\t\tCircle: componentDefinition$28,\n\t\tColorWheel: componentDefinition$29,\n\t\tCompressionArtifacts: componentDefinition$30,\n\t\tConcentricSpin: componentDefinition$31,\n\t\tConicGradient: componentDefinition$32,\n\t\tContourLines: componentDefinition$33,\n\t\tCornerPin: componentDefinition$34,\n\t\tCrescent: componentDefinition$35,\n\t\tCross: componentDefinition$36,\n\t\tCRTScreen: componentDefinition$37,\n\t\tCrystal: componentDefinition$38,\n\t\tCurlNoise: componentDefinition$39,\n\t\tCursorRipples: componentDefinition$40,\n\t\tCursorTrail: componentDefinition$41,\n\t\tDataMosh: componentDefinition$42,\n\t\tDiamondGradient: componentDefinition$43,\n\t\tDiamondWipe: componentDefinition$44,\n\t\tDiffuseBlur: componentDefinition$45,\n\t\tDisplacementMap: componentDefinition$46,\n\t\tDither: componentDefinition$47,\n\t\tDotGrid: componentDefinition$48,\n\t\tDropShadow: componentDefinition$49,\n\t\tDuotone: componentDefinition$50,\n\t\tEllipse: componentDefinition$51,\n\t\tEmboss: componentDefinition$52,\n\t\tEngraving: componentDefinition$53,\n\t\tErosionNoise: componentDefinition$54,\n\t\tExposure: componentDefinition$55,\n\t\tFallingLines: componentDefinition$56,\n\t\tFilmGrain: componentDefinition$57,\n\t\tFilmStock: componentDefinition$58,\n\t\tFlip: componentDefinition$59,\n\t\tFloatingParticles: componentDefinition$60,\n\t\tFlower: componentDefinition$61,\n\t\tFlowField: componentDefinition$62,\n\t\tFlowingGradient: componentDefinition$63,\n\t\tFlutedGlass: componentDefinition$64,\n\t\tFog: componentDefinition$65,\n\t\tForm3D: componentDefinition$66,\n\t\tFractalNoise: componentDefinition$67,\n\t\tFrost: componentDefinition$68,\n\t\tGaborNoise: componentDefinition$69,\n\t\tGlass: componentDefinition$70,\n\t\tGlassTiles: componentDefinition$71,\n\t\tGlitch: componentDefinition$72,\n\t\tGlow: componentDefinition$73,\n\t\tGodrays: componentDefinition$74,\n\t\tGoo: componentDefinition$75,\n\t\tGradientMap: componentDefinition$76,\n\t\tGrayscale: componentDefinition$77,\n\t\tGrid: componentDefinition$78,\n\t\tGridDistortion: componentDefinition$79,\n\t\tGroup: componentDefinition$80,\n\t\tHalftone: componentDefinition$81,\n\t\tHeart: componentDefinition$82,\n\t\tHeatmap: componentDefinition$83,\n\t\tHexGrid: componentDefinition$84,\n\t\tHologram: componentDefinition$85,\n\t\tHolographic: componentDefinition$86,\n\t\tHTMLInCanvas: componentDefinition$87,\n\t\tHueShift: componentDefinition$88,\n\t\tImageTexture: componentDefinition$89,\n\t\tInkFlow: componentDefinition$90,\n\t\tInvert: componentDefinition$91,\n\t\tIrisWipe: componentDefinition$92,\n\t\tIrradiance: componentDefinition$93,\n\t\tIsometricCubes: componentDefinition$94,\n\t\tKaleidoscope: componentDefinition$95,\n\t\tKeyFrames: componentDefinition$96,\n\t\tLensDistortion: componentDefinition$97,\n\t\tLensFlare: componentDefinition$98,\n\t\tLightEdge: componentDefinition$99,\n\t\tLightLeak: componentDefinition$100,\n\t\tLine: componentDefinition$101,\n\t\tLinearBlur: componentDefinition$102,\n\t\tLinearGradient: componentDefinition$103,\n\t\tLinearWipe: componentDefinition$104,\n\t\tLiquidMetal: componentDefinition$105,\n\t\tLiquify: componentDefinition$106,\n\t\tMagneticFilings: componentDefinition$107,\n\t\tMarble: componentDefinition$108,\n\t\tMeshGradient: componentDefinition$109,\n\t\tMirror: componentDefinition$110,\n\t\tMultiPointGradient: componentDefinition$111,\n\t\tNebula: componentDefinition$112,\n\t\tNeon: componentDefinition$113,\n\t\tNoiseDissolve: componentDefinition$114,\n\t\tObjectTracker: componentDefinition$115,\n\t\tObsidian: componentDefinition$116,\n\t\tPagePeel: componentDefinition$117,\n\t\tPaper: componentDefinition$118,\n\t\tParallelogram: componentDefinition$119,\n\t\tParticleField: componentDefinition$120,\n\t\tParticleFlow: componentDefinition$121,\n\t\tParticles: componentDefinition$122,\n\t\tPerlinNoise: componentDefinition$123,\n\t\tPerspective: componentDefinition$124,\n\t\tPixelate: componentDefinition$125,\n\t\tPixelSort: componentDefinition$126,\n\t\tPixelThrow: componentDefinition$127,\n\t\tPlasma: componentDefinition$128,\n\t\tPlastic: componentDefinition$129,\n\t\tPolarCoordinates: componentDefinition$130,\n\t\tPolygon: componentDefinition$131,\n\t\tPosterize: componentDefinition$132,\n\t\tPrism: componentDefinition$133,\n\t\tProgressiveBlur: componentDefinition$134,\n\t\tRadialGradient: componentDefinition$135,\n\t\tRadialWipe: componentDefinition$136,\n\t\tRandomBars: componentDefinition$137,\n\t\tReactionDiffusion: componentDefinition$138,\n\t\tRectangularCoordinates: componentDefinition$139,\n\t\tReflectivePlane: componentDefinition$140,\n\t\tRepeater: componentDefinition$141,\n\t\tRing: componentDefinition$142,\n\t\tRipples: componentDefinition$143,\n\t\tRippleWipe: componentDefinition$144,\n\t\tRoundedRect: componentDefinition$145,\n\t\tSaturation: componentDefinition$146,\n\t\tScratches: componentDefinition$147,\n\t\tSharpness: componentDefinition$148,\n\t\tShatter: componentDefinition$149,\n\t\tSimplexNoise: componentDefinition$150,\n\t\tSineWave: componentDefinition$151,\n\t\tSliceWipe: componentDefinition$152,\n\t\tSmoke: componentDefinition$153,\n\t\tSmokeFill: componentDefinition$154,\n\t\tSmokeFlow: componentDefinition$155,\n\t\tSolarize: componentDefinition$156,\n\t\tSolidColor: componentDefinition$157,\n\t\tSpherize: componentDefinition$158,\n\t\tSpiral: componentDefinition$159,\n\t\tStar: componentDefinition$160,\n\t\tStone: componentDefinition$161,\n\t\tStrands: componentDefinition$162,\n\t\tStretch: componentDefinition$163,\n\t\tStripes: componentDefinition$164,\n\t\tStudioBackground: componentDefinition$165,\n\t\tSunBurst: componentDefinition$166,\n\t\tSurface3D: componentDefinition$167,\n\t\tSwirl: componentDefinition$168,\n\t\tTeardrop: componentDefinition$169,\n\t\tText: componentDefinition$170,\n\t\tThinFilm: componentDefinition$171,\n\t\tTiltShift: componentDefinition$172,\n\t\tTimeTrail: componentDefinition$173,\n\t\tTint: componentDefinition$174,\n\t\tTrapezoid: componentDefinition$175,\n\t\tTriangularGrid: componentDefinition$176,\n\t\tTritone: componentDefinition$177,\n\t\tTruchet: componentDefinition$178,\n\t\tTwirl: componentDefinition$179,\n\t\tVenetianBlinds: componentDefinition$180,\n\t\tVesica: componentDefinition$181,\n\t\tVHS: componentDefinition$182,\n\t\tVibrance: componentDefinition$183,\n\t\tVideoTexture: componentDefinition$184,\n\t\tVignette: componentDefinition$185,\n\t\tVoronoi: componentDefinition$186,\n\t\tVoxels: componentDefinition$187,\n\t\tWater: componentDefinition$188,\n\t\tWatercolor: componentDefinition$189,\n\t\tWaveDistortion: componentDefinition$190,\n\t\tWaveform: componentDefinition$191,\n\t\tWaveletNoise: componentDefinition$192,\n\t\tWeave: componentDefinition$193,\n\t\tWebcamTexture: componentDefinition$194,\n\t\tWool: componentDefinition$195,\n\t\tWorleyNoise: componentDefinition$196,\n\t\tZoomBlur: componentDefinition$197\n\t};\n\tObject.entries(shaderDefinitions).forEach(([fileName, def]) =\u003e {\n\t\tconst propsMetadata = {};\n\t\tif (def.props) Object.entries(def.props).forEach(([propName, propConfig]) =\u003e {\n\t\t\tif (propConfig.ui) propsMetadata[propName] = {\n\t\t\t\tui: propConfig.ui,\n\t\t\t\tdefault: propConfig.default,\n\t\t\t\tdescription: propConfig.description\n\t\t\t};\n\t\t});\n\t\tregistry[def.name] = {\n\t\t\tname: def.name,\n\t\t\tfileName,\n\t\t\tcategory: def.category || \"Uncategorized\",\n\t\t\tdefinition: def,\n\t\t\tpropsMetadata\n\t\t};\n\t});\n\treturn registry;\n};\nconst shaderRegistry = createShaderRegistry();\nconst deprecatedShaderNames = (() =\u003e {\n\tconst map = {};\n\tfor (const entry of Object.values(shaderRegistry)) for (const oldName of entry.definition.deprecatedNames ?? []) map[oldName] = entry.name;\n\treturn map;\n})();\nfunction resolveShaderName(name) {\n\tif (shaderRegistry[name]) return name;\n\treturn deprecatedShaderNames[name] ?? name;\n}\nfunction getAllShaders() {\n\treturn Object.values(shaderRegistry);\n}\nfunction getShaderByName(name) {\n\treturn shaderRegistry[resolveShaderName(name)];\n}\nfunction getShadersByCategory(category) {\n\treturn Object.values(shaderRegistry).filter((shader) =\u003e shader.category === category);\n}\nfunction getShaderCategories() {\n\tconst categories = new Set(Object.values(shaderRegistry).map((shader) =\u003e shader.category));\n\treturn Array.from(categories).sort();\n}\nexport { shaderRegistry as a, getShadersByCategory as i, getShaderByName as n, getShaderCategories as r, getAllShaders as t };\n","import { $n as vertexFn, Br as struct, Gn as typegpu_default, Hn as FieldHandle, Hr as mul, K as createComputeDispatcher, Nr as builtin, Or as vec2f$1, Qr as warn, St as screenUVToBoxLocal$1, Un as createUniformStore, Vn as ArrayFieldHandle, Wn as updateFieldValue, Wr as vec2f, _t as DEFAULT_BOUNDING_BOX, bt as boundingBoxToUVParams, it as SHARED_SAMPLER_LAYOUT, lt as collectStructuralHashInputs, qr as f32, ut as composeNodeTree, vt as isIdentityBoundingBox, xt as needsTransformation, yt as resolveBoundingBox } from \"./lower-Bd2jez_2.js\";\nimport \"./agents-CBSp2UK_.js\";\nimport { a as getWebGPUSupport, c as isWebGPUSupported, i as getGpuUnusableReason, l as markGpuUnusable, n as debugError, o as isGpuUnavailableError, r as debugWarn, s as isShadersDebug, t as GpuUnavailableError, u as setShadersDebug } from \"./support-GJphyuEe.js\";\nimport \"./tone-BKhfiOBn.js\";\nimport \"./patterns-Bg8lSdqH.js\";\nimport \"./gradientPaints-5HpJVNfb.js\";\nimport \"./noisePaints-CfHcXL02.js\";\nimport \"./lightfields-DvrUaH_6.js\";\nimport \"./color-Do6tU0ry.js\";\nimport { $ as buildDimensionalPlan, Ot as packConvertedStops, Q as boxHalfExtentsUV, X as createGpuUniformsMap, Z as bindingSizePx, _t as MAX_COLOR_STOPS, at as colorToRGBA, bt as resolveStops, ct as listCountName, dt as listHasDrivers, et as buildExtraSizeProps, gt as resolveListItems, ht as parseListDriverPath, it as setShaderCanvasDimensions, kt as packStops, lt as listDriverPath, mt as packList, n as rootPassthrough, nt as isDimensionalValue, ot as setColorSpaceModeGpu, pt as listPropTransform, rt as resolveDimensionalProp, st as isPositionDriver, tt as isDimensionalProp, ut as listFieldName, xt as sortStops, yt as colorStopsTransform } from \"./porters-OTkIMOyl.js\";\nimport \"./warpMaps-Y8xSo-QJ.js\";\nimport \"./blur-7yjVyMvI.js\";\nimport \"./motionBlur-g_WSi2iq.js\";\nimport \"./shapePaints-Bg2UwCZo.js\";\nimport \"./stylize-DiuoSq16.js\";\nimport \"./materials-4Oqvm_9m.js\";\nimport { a as getNaturalSize, o as onNaturalSizeChange, s as registerNaturalSize } from \"./mediaLifecycle-BTPb5i1-.js\";\nimport \"./canvasRaster-DDBkrdY8.js\";\nimport \"./fonts-BUXTd9qb.js\";\nimport \"./overlay-D5w0585O.js\";\nimport \"./Repeater-C5LILb_Y.js\";\nimport { n as maxPixelRatioForDevice } from \"./device-m0ud8-Fn.js\";\nimport \"./lens-DJQNJKCW.js\";\nimport \"./fields-DgADOKsP.js\";\nimport \"./noise-d7rmP9yc.js\";\nimport \"./reveal-CfaAg-rg.js\";\nimport { A as SHAPE3D_DEFAULTS, B as awaitGpuIdle, F as isSvg3dShapeType, G as runFrameSequence, H as createFrameLoop, I as isVolumetricShapeType, K as getSdfContentBounds, L as shape3dBoundingRadius, M as SVG3D_DEFAULTS, N as SVG3D_TYPES, P as is3dShapeType, R as applyEasing, U as deriveElapsedTime, V as clampToTextureCap, W as frameGate, j as SHAPE3D_TYPES, q as isSdfContentBoundsScanned, z as applySpring } from \"./sdf3d-2AWC_wdn.js\";\nimport \"./Voxels-Ca-6rRrz.js\";\nimport \"./glass-ABppDbYG.js\";\nimport \"./Neon-Cf95sJ7W.js\";\nimport \"./Emboss-BjOlYydL.js\";\nimport \"./Form3D-D-eUD4_k.js\";\nimport \"./ThinFilm-CTQeVw7E.js\";\nimport \"./media-DXUY3ltG.js\";\nimport \"./agents-DXoEcto0.js\";\nimport { o as transformColorSpace } from \"./transformations-CzFmhZww.js\";\nimport \"./math-D864seEs.js\";\nimport \"./filter-BrhpSs3Z.js\";\nimport \"./mask-CeSwL79Q.js\";\nimport \"./CursorRipples-C1PNyYcB.js\";\nimport \"./signal-emJuvOI3.js\";\nimport \"./slots-BqIef2iV.js\";\nimport \"./blurs-d4B9aUyx.js\";\nimport \"./AngularBlur-g4-fDx1N.js\";\nimport \"./shape-CAkSlCi8.js\";\nimport \"./Arc-B4VGPOtO.js\";\nimport \"./Ascii-DxiduEzP.js\";\nimport \"./frames-BLqt7oaW.js\";\nimport \"./light-D3BIVkxy.js\";\nimport \"./compose-Dkf3v-xS.js\";\nimport \"./Aurora-FgWLcSkh.js\";\nimport \"./BarnDoors-BC0LM0aD.js\";\nimport \"./warps-P5O3NWLe.js\";\nimport \"./BarShift-BukEd3jr.js\";\nimport \"./gradients-CIxKrfME.js\";\nimport \"./Beam-CxAXVlAf.js\";\nimport \"./Bend-BfVVIo2C.js\";\nimport \"./Blob-D_IbcUCc.js\";\nimport \"./BlockDissolve-C9nsgIz9.js\";\nimport \"./noiseColor-DuWjYRmO.js\";\nimport \"./BlockNoise-BgwbD0rx.js\";\nimport \"./BlueNoise-BdwOaq4G.js\";\nimport \"./Blur-ceuv7ZTm.js\";\nimport \"./Boids-DEHsYo46.js\";\nimport \"./BokehBlur-C8xJ0xA8.js\";\nimport \"./BrickPattern-C-6QFzp6.js\";\nimport \"./BrightnessContrast-CMUaNvo0.js\";\nimport \"./BrushedMetal-CQsu_96R.js\";\nimport \"./Bulge-CgO7_0fe.js\";\nimport \"./CarbonFiber-D0vgwlrV.js\";\nimport \"./Chalkboard-CDUJz_Ae.js\";\nimport \"./ChannelBlur-Z8ZvN6W3.js\";\nimport \"./Checkerboard-DZAABNKo.js\";\nimport \"./CheckerWipe-DXm9kDaS.js\";\nimport \"./Chevron-Dn1iHSiS.js\";\nimport \"./grids-Cv99xcJg.js\";\nimport \"./ChromaFlow-lnaJ4o1Y.js\";\nimport \"./ChromaticAberration-CGOQe4Pp.js\";\nimport \"./Chrome-DPAmErfN.js\";\nimport \"./Circle-DVPhvXdr.js\";\nimport \"./ColorWheel-DXkVOQl2.js\";\nimport \"./CompressionArtifacts-CEw9gfTu.js\";\nimport \"./ConcentricSpin-GtNEq1T1.js\";\nimport \"./ConicGradient-DYPNJAOg.js\";\nimport \"./ContourLines-DEmEepvT.js\";\nimport \"./CornerPin-CJJeGyVf.js\";\nimport \"./Crescent-C7yy9-xf.js\";\nimport \"./Cross-DyYrdTVw.js\";\nimport \"./CRTScreen-DNqe2klB.js\";\nimport \"./Crystal-DQJd5oAd.js\";\nimport \"./CurlNoise-Bjc6hhjR.js\";\nimport \"./CursorTrail-C6v97bId.js\";\nimport \"./feedback-Dro_hxd4.js\";\nimport \"./DataMosh-AX4kIi4R.js\";\nimport \"./DiamondGradient-Bj6mUxOy.js\";\nimport \"./DiamondWipe-BNSkpUn9.js\";\nimport \"./DiffuseBlur-C7l-5Dw3.js\";\nimport \"./DisplacementMap-DGpLSlxs.js\";\nimport \"./Dither-C9KDpqgP.js\";\nimport \"./DotGrid-CkAtf-j_.js\";\nimport \"./DropShadow-BxI_a7dC.js\";\nimport \"./Duotone-CrJ0P0SL.js\";\nimport \"./Ellipse-C2Tie_19.js\";\nimport \"./Engraving-RpxXPqQq.js\";\nimport \"./ErosionNoise-D0qefxhq.js\";\nimport \"./Exposure-B7W7AVbY.js\";\nimport \"./FallingLines-Cxhmtqf4.js\";\nimport \"./FilmGrain-CghUJIeK.js\";\nimport \"./FilmStock-DmOaROtC.js\";\nimport \"./Flip-BuOdbWjK.js\";\nimport \"./FloatingParticles-BfFlt06Y.js\";\nimport \"./Flower-CwdJOVR1.js\";\nimport \"./FlowField-A2njOtGx.js\";\nimport \"./FlowingGradient-D3BG2FW9.js\";\nimport \"./FlutedGlass-BWlTrLF-.js\";\nimport \"./fluids-umEWgdvj.js\";\nimport \"./Fog-CpmIyRtJ.js\";\nimport \"./FractalNoise-DsESU8cP.js\";\nimport \"./Frost-B1s1W_Qm.js\";\nimport \"./GaborNoise-D3U1iz9E.js\";\nimport \"./Glass-O5o5OxlN.js\";\nimport \"./GlassTiles-BxdT6Ee8.js\";\nimport \"./Glitch-DQeLaNdU.js\";\nimport \"./Glow-DksG7wdu.js\";\nimport \"./Godrays-D2Pzd9K9.js\";\nimport \"./Goo-BL_ifIPI.js\";\nimport \"./GradientMap-B-5yUYjX.js\";\nimport \"./Grayscale-g7jQsxgi.js\";\nimport \"./Grid-DAglpJFP.js\";\nimport \"./pointerFields-CRecZwuZ.js\";\nimport \"./GridDistortion-CNlIESbs.js\";\nimport \"./Group-CeOfFv2K.js\";\nimport \"./Halftone-DCiP4EDq.js\";\nimport \"./Heart-CQhtzwFu.js\";\nimport \"./Heatmap-e-lF_uZu.js\";\nimport \"./HexGrid-BY_BPH8J.js\";\nimport \"./Hologram-BA_LJPm0.js\";\nimport \"./Holographic-CX8OG-Wa.js\";\nimport \"./HTMLInCanvas-BgwCnbYn.js\";\nimport \"./HueShift-BnwOshrg.js\";\nimport \"./ImageTexture-Cd6vH2Z0.js\";\nimport \"./InkFlow-B7F9i3Kd.js\";\nimport \"./Invert-6Q5kX8vd.js\";\nimport \"./IrisWipe-Cl5yYdEi.js\";\nimport \"./Irradiance-B36wYze9.js\";\nimport \"./IsometricCubes-BhK9MhCy.js\";\nimport \"./Kaleidoscope-D4X5N_qk.js\";\nimport \"./KeyFrames-Dv1vFfMa.js\";\nimport \"./LensDistortion-BqVp5WBS.js\";\nimport \"./LensFlare-z0k68uJ1.js\";\nimport \"./LightEdge-AFfkNhDP.js\";\nimport \"./LightLeak-BgFq4bLG.js\";\nimport \"./figures-B3lUGP8u.js\";\nimport \"./Line--Ur3CJp1.js\";\nimport \"./LinearBlur-BkHF6lVm.js\";\nimport \"./LinearGradient-DIdq_fiw.js\";\nimport \"./LinearWipe-DuCB9oV_.js\";\nimport \"./LiquidMetal-B2Cz80Ka.js\";\nimport \"./Liquify-CvPn1ze-.js\";\nimport \"./MagneticFilings-BOgYrPhz.js\";\nimport \"./Marble-c2QGDXxB.js\";\nimport \"./MeshGradient-DMsza5tg.js\";\nimport \"./Mirror-Ck8qk1Km.js\";\nimport \"./MultiPointGradient-DwO6snxn.js\";\nimport \"./Nebula-3a9pYBDC.js\";\nimport \"./NoiseDissolve-DgvzEFOD.js\";\nimport \"./ObjectTracker-IopW8Jvf.js\";\nimport \"./Obsidian-BL_0ordp.js\";\nimport \"./PagePeel-BeAr_n0U.js\";\nimport \"./Paper-BDEsyIPI.js\";\nimport \"./Parallelogram-Duj-0MLr.js\";\nimport \"./ParticleField-gk7JuNx4.js\";\nimport \"./ParticleFlow-BzWOl7Hm.js\";\nimport \"./Particles-DYAtR6jZ.js\";\nimport \"./PerlinNoise-BHQ318g4.js\";\nimport \"./Perspective-xBfd9BSE.js\";\nimport \"./Pixelate-CvCzoA0h.js\";\nimport \"./PixelSort-Bx9sUnGm.js\";\nimport \"./PixelThrow-0nJiGsmZ.js\";\nimport \"./Plasma-Be1yxNcP.js\";\nimport \"./Plastic-Bom1oFFR.js\";\nimport \"./PolarCoordinates-BGwTZ6NO.js\";\nimport \"./Polygon-Byw5C7Qy.js\";\nimport \"./Posterize-BHOstvyj.js\";\nimport \"./Prism-pNsLhW8w.js\";\nimport \"./ProgressiveBlur-CR1IbvKQ.js\";\nimport \"./RadialGradient-BFOrMAK1.js\";\nimport \"./RadialWipe-BYnlbrNm.js\";\nimport \"./RandomBars-B7erRRHx.js\";\nimport \"./ReactionDiffusion-BnY40jHs.js\";\nimport \"./RectangularCoordinates-D9-3PQAz.js\";\nimport \"./ReflectivePlane-BI-LIR2c.js\";\nimport \"./Ring-CvvtJYAf.js\";\nimport \"./Ripples-BFLep1r1.js\";\nimport \"./RippleWipe-kAzZWsjR.js\";\nimport \"./RoundedRect-DirNijIY.js\";\nimport \"./Saturation-CfkRhJpe.js\";\nimport \"./Scratches-Dchfw1_5.js\";\nimport \"./Sharpness-DZzAnlsl.js\";\nimport \"./Shatter-Dz3sH2ON.js\";\nimport \"./SimplexNoise-CmV42gYT.js\";\nimport \"./SineWave-TqnpIKO4.js\";\nimport \"./SliceWipe-Dz8vj6bi.js\";\nimport \"./Smoke-B1TnZnG6.js\";\nimport \"./SmokeFill-C8gSZ22X.js\";\nimport \"./SmokeFlow-dd5uLztm.js\";\nimport \"./Solarize-CIQa9pKw.js\";\nimport \"./SolidColor-DuoQVKGk.js\";\nimport \"./Spherize-FWwWEUyE.js\";\nimport \"./Spiral-DI1eG0E3.js\";\nimport \"./Star-DT-hnlIJ.js\";\nimport \"./noiseStylize-CUrW_HiC.js\";\nimport \"./Stone-oW35zD22.js\";\nimport \"./Strands-asB3fUr9.js\";\nimport \"./Stretch-Cm_B4WGY.js\";\nimport \"./Stripes-BnJiniJY.js\";\nimport \"./StudioBackground-DwSO5KNV.js\";\nimport \"./SunBurst-BL-BryZO.js\";\nimport \"./Surface3D-DSvh7Zof.js\";\nimport \"./Swirl-BVPy039a.js\";\nimport \"./Teardrop-CR1UqYaF.js\";\nimport { a as wrapLines, i as measureTextBlock, r as measureText } from \"./Text-fP5temat.js\";\nimport \"./TiltShift-BvYpYELk.js\";\nimport \"./TimeTrail-DqdYuHn7.js\";\nimport \"./Tint-BXJMHYvg.js\";\nimport \"./Trapezoid--AgyKOWQ.js\";\nimport \"./TriangularGrid-CmDApxz9.js\";\nimport \"./Tritone-DCd_IRp7.js\";\nimport \"./Truchet-g1_jcoZ4.js\";\nimport \"./Twirl-JY-PXDS2.js\";\nimport \"./VenetianBlinds-B7laTyPO.js\";\nimport \"./Vesica-BTNW2p5u.js\";\nimport \"./VHS-ZWR6D4Da.js\";\nimport \"./Vibrance-DmhtRT2D.js\";\nimport \"./VideoTexture-DK3EaAHY.js\";\nimport \"./Vignette-hyFfUS20.js\";\nimport \"./Voronoi-DhexPwNM.js\";\nimport \"./Water-BsBnXYYB.js\";\nimport \"./Watercolor-C1HipGGO.js\";\nimport \"./WaveDistortion-VXyHFcJ3.js\";\nimport \"./Waveform-CSP_4nZF.js\";\nimport \"./WaveletNoise-CQqAufyv.js\";\nimport \"./Weave-DwX8T4_Q.js\";\nimport \"./WebcamTexture-B4SLwIP1.js\";\nimport \"./Wool-qg-z_TFC.js\";\nimport \"./WorleyNoise-CjVw20Fl.js\";\nimport \"./ZoomBlur-Lm_pVpMf.js\";\nimport { n as getShaderByName, t as getAllShaders } from \"./shaderRegistry-BUvL8ZZS.js\";\nconst fullScreenTriangle = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(vertexFn({\n\tin: { vertexIndex: builtin.vertexIndex },\n\tout: {\n\t\tpos: builtin.position,\n\t\tuv: vec2f\n\t}\n})`{\n  const pos = array\u003cvec2f, 3\u003e(vec2f(-1, -1), vec2f(3, -1), vec2f(-1, 3));\n  const uv = array\u003cvec2f, 3\u003e(vec2f(0, 1), vec2f(2, 1), vec2f(0, -1));\n\n  return Out(vec4f(pos[in.vertexIndex], 0, 1), uv[in.vertexIndex]);\n}`, \"fullScreenTriangle\");\nif (process.env.NODE_ENV !== \"development\" \u0026\u0026 process.env.NODE_ENV !== \"test\") warn.disable(\"external-omitted\");\nvar OPTIONAL_FEATURES = [\"float32-filterable\", \"timestamp-query\"];\nvar rootsByDevice = /* @__PURE__ */ new WeakMap();\nvar lostCallbacks = /* @__PURE__ */ new WeakMap();\nvar lostDevices = /* @__PURE__ */ new WeakSet();\nvar defaultRootPromise = null;\nvar destroyedDefaultRoots = /* @__PURE__ */ new WeakSet();\nasync function acquireRoot(options = {}) {\n\tif (options.device \u0026\u0026 !lostDevices.has(options.device)) {\n\t\tconst device = options.device;\n\t\tlet root = rootsByDevice.get(device);\n\t\tif (!root) {\n\t\t\troot = typegpu_default.initFromDevice({ device });\n\t\t\trootsByDevice.set(device, root);\n\t\t}\n\t\tconst release$1 = wireDeviceLost(root, options.onDeviceLost);\n\t\treturn {\n\t\t\troot,\n\t\t\tdevice,\n\t\t\tadapter: options.adapter,\n\t\t\tcreatedDevice: false,\n\t\t\trelease: release$1\n\t\t};\n\t}\n\tif (options.device) debugWarn(\"[gpu] injected GPU device was lost — falling back to the shared default device\");\n\tconst ctx = await acquireDefaultRoot();\n\tconst release = wireDeviceLost(ctx.root, options.onDeviceLost);\n\treturn {\n\t\troot: ctx.root,\n\t\tdevice: ctx.device,\n\t\tadapter: ctx.adapter,\n\t\tcreatedDevice: false,\n\t\trelease\n\t};\n}\nasync function acquireDefaultRoot() {\n\tfor (;;) {\n\t\tconst cached = defaultRootPromise;\n\t\tif (!cached) break;\n\t\tconst ctx = await cached.catch(() =\u003e null);\n\t\tif (ctx \u0026\u0026 !destroyedDefaultRoots.has(cached) \u0026\u0026 !lostDevices.has(ctx.device)) return ctx;\n\t\tif (defaultRootPromise === cached) defaultRootPromise = null;\n\t}\n\tconst pending = createOwnRoot();\n\tdefaultRootPromise = pending;\n\ttry {\n\t\treturn await pending;\n\t} catch (error) {\n\t\tif (defaultRootPromise === pending) defaultRootPromise = null;\n\t\tthrow error;\n\t}\n}\nfunction destroyDefaultGpuDevice() {\n\tconst pending = defaultRootPromise;\n\tdefaultRootPromise = null;\n\tif (!pending) return;\n\tdestroyedDefaultRoots.add(pending);\n\tpending.then((ctx) =\u003e {\n\t\tlostDevices.add(ctx.device);\n\t\ttry {\n\t\t\tctx.root.destroy();\n\t\t} catch {}\n\t}).catch(() =\u003e {});\n}\nasync function createOwnRoot() {\n\tif (typeof navigator === \"undefined\" || !navigator.gpu) throw new GpuUnavailableError(\"unsupported\", \"[gpu] WebGPU is not available in this environment (navigator.gpu is undefined).\");\n\tlet root;\n\ttry {\n\t\troot = await typegpu_default.init({\n\t\t\tadapter: { powerPreference: \"high-performance\" },\n\t\t\tdevice: { optionalFeatures: OPTIONAL_FEATURES }\n\t\t});\n\t} catch (error) {\n\t\tconst info = await getWebGPUSupport();\n\t\tthrow new GpuUnavailableError(info.supported ? \"no-device\" : info.reason ?? \"init-failed\", void 0, { cause: error });\n\t}\n\tif (!root.device) throw new GpuUnavailableError(\"no-device\", \"[gpu] adapter returned no device.\");\n\trootsByDevice.set(root.device, root);\n\treturn {\n\t\troot,\n\t\tdevice: root.device,\n\t\tcreatedDevice: true\n\t};\n}\nfunction configureCanvasContext(root, canvas, options = {}) {\n\treturn root.configureContext({\n\t\tcanvas,\n\t\talphaMode: \"premultiplied\",\n\t\t...options\n\t});\n}\nfunction wireDeviceLost(root, onDeviceLost) {\n\tconst device = root.device;\n\tlet callbacks = lostCallbacks.get(device);\n\tif (!callbacks) {\n\t\tcallbacks = /* @__PURE__ */ new Set();\n\t\tlostCallbacks.set(device, callbacks);\n\t\troot.device.lost.then((info) =\u003e {\n\t\t\tlostDevices.add(device);\n\t\t\tif (info.reason === \"destroyed\") return;\n\t\t\tfor (const cb of [...lostCallbacks.get(device) ?? []]) cb(info);\n\t\t});\n\t}\n\tif (!onDeviceLost) return () =\u003e {};\n\tconst set = callbacks;\n\tset.add(onDeviceLost);\n\treturn () =\u003e set.delete(onDeviceLost);\n}\nfunction createAnimatedTimeState() {\n\tconst state = {\n\t\tvalue: 0,\n\t\tadvance(deltaTime, speed) {\n\t\t\tstate.value += deltaTime * speed;\n\t\t}\n\t};\n\treturn state;\n}\nvar accumulatedTimeCache = /* @__PURE__ */ new WeakMap();\nfunction getAnimatedTimeState(key) {\n\tlet state = accumulatedTimeCache.get(key);\n\tif (!state) {\n\t\tstate = createAnimatedTimeState();\n\t\taccumulatedTimeCache.set(key, state);\n\t}\n\treturn state;\n}\nconst SystemUniforms = /* @__PURE__ */ (globalThis.__TYPEGPU_AUTONAME__ ?? ((a) =\u003e a))(struct({\n\ttime: f32,\n\tviewportSize: vec2f$1,\n\tlogicalViewportSize: vec2f$1,\n\taspect: f32,\n\tpointer: vec2f$1,\n\tpointerActive: f32\n}), \"SystemUniforms\");\ntypegpu_default.fn([vec2f$1, vec2f$1], vec2f$1)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((uv, viewportSize) =\u003e {\n\t\"use gpu\";\n\treturn mul(uv, viewportSize);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"uv\"\n\t\t}, {\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"viewportSize\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t6,\n\t\t\t\"std.mul\",\n\t\t\t[\"uv\", \"viewportSize\"]\n\t\t]]]]\n\t},\n\texternals: { \"std.mul\": () =\u003e mul }\n}) \u0026\u0026 $.f)({}));\ntypegpu_default.fn([vec2f$1], f32)(/* @__PURE__ */ (($) =\u003e (globalThis.__TYPEGPU_META__ ??= /* @__PURE__ */ new WeakMap()).set($.f = ((viewportSize) =\u003e {\n\t\"use gpu\";\n\treturn __tsover_div(viewportSize.x, viewportSize.y);\n}), {\n\tv: 2,\n\tname: void 0,\n\tast: {\n\t\t\"params\": [{\n\t\t\t\"type\": \"i\",\n\t\t\t\"name\": \"viewportSize\"\n\t\t}],\n\t\t\"body\": [0, [[10, [\n\t\t\t1,\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t\"viewportSize\",\n\t\t\t\t\"x\"\n\t\t\t],\n\t\t\t\"/\",\n\t\t\t[\n\t\t\t\t7,\n\t\t\t\t\"viewportSize\",\n\t\t\t\t\"y\"\n\t\t\t]\n\t\t]]]]\n\t},\n\texternals: {}\n}) \u0026\u0026 $.f)({}));\nfunction structuralHash(inputs) {\n\tlet h = 2166136261;\n\tconst joined = inputs.join(\"\u0001\");\n\tfor (let i = 0; i \u003c joined.length; i++) {\n\t\th ^= joined.charCodeAt(i);\n\t\th = Math.imul(h, 16777619);\n\t}\n\treturn `${(h \u003e\u003e\u003e 0).toString(16).padStart(8, \"0\")}:${joined.length}`;\n}\nfunction createPipelineCache(options = {}) {\n\tconst maxSize = options.maxSize ?? 4;\n\tconst dispose = options.dispose;\n\tconst entries = /* @__PURE__ */ new Map();\n\tlet clock = 0;\n\tlet activeHash = null;\n\tlet pendingHash = null;\n\tfunction touch(entry) {\n\t\tentry.lastUsed = ++clock;\n\t}\n\tfunction evictIfNeeded() {\n\t\twhile (entries.size \u003e maxSize) {\n\t\t\tlet victim = null;\n\t\t\tfor (const e of entries.values()) {\n\t\t\t\tif (e.hash === activeHash || e.hash === pendingHash) continue;\n\t\t\t\tif (!victim || e.lastUsed \u003c victim.lastUsed) victim = e;\n\t\t\t}\n\t\t\tif (!victim) break;\n\t\t\tentries.delete(victim.hash);\n\t\t\tdispose?.(victim.value, victim.hash);\n\t\t}\n\t}\n\treturn {\n\t\tgetOrBuild(hash, buildFn) {\n\t\t\tconst existing = entries.get(hash);\n\t\t\tif (existing) {\n\t\t\t\ttouch(existing);\n\t\t\t\tif (hash === activeHash) pendingHash = null;\n\t\t\t\telse pendingHash = hash;\n\t\t\t\treturn existing.value;\n\t\t\t}\n\t\t\tconst value = buildFn();\n\t\t\tconst entry = {\n\t\t\t\thash,\n\t\t\t\tvalue,\n\t\t\t\tlastUsed: ++clock\n\t\t\t};\n\t\t\tentries.set(hash, entry);\n\t\t\tif (activeHash === null) {\n\t\t\t\tactiveHash = hash;\n\t\t\t\tpendingHash = null;\n\t\t\t} else pendingHash = hash;\n\t\t\tevictIfNeeded();\n\t\t\treturn value;\n\t\t},\n\t\tmarkReady(hash) {\n\t\t\tif (hash !== pendingHash) return;\n\t\t\tconst entry = entries.get(hash);\n\t\t\tif (!entry) return;\n\t\t\tactiveHash = hash;\n\t\t\tpendingHash = null;\n\t\t\ttouch(entry);\n\t\t\tevictIfNeeded();\n\t\t},\n\t\tget renderValue() {\n\t\t\tconst hash = activeHash ?? pendingHash;\n\t\t\treturn hash ? entries.get(hash)?.value ?? null : null;\n\t\t},\n\t\tget activeHash() {\n\t\t\treturn activeHash;\n\t\t},\n\t\tget pendingHash() {\n\t\t\treturn pendingHash;\n\t\t},\n\t\trelease(hash) {\n\t\t\tconst entry = entries.get(hash);\n\t\t\tif (!entry) return;\n\t\t\tentries.delete(hash);\n\t\t\tdispose?.(entry.value, hash);\n\t\t\tif (activeHash === hash) activeHash = null;\n\t\t\tif (pendingHash === hash) pendingHash = null;\n\t\t},\n\t\thas(hash) {\n\t\t\treturn entries.has(hash);\n\t\t},\n\t\tget size() {\n\t\t\treturn entries.size;\n\t\t},\n\t\tclear() {\n\t\t\tfor (const e of entries.values()) dispose?.(e.value, e.hash);\n\t\t\tentries.clear();\n\t\t\tactiveHash = null;\n\t\t\tpendingHash = null;\n\t\t}\n\t};\n}\nvar LABEL = \"passManager\";\nfunction createPassManager(root, options) {\n\tconst { textureManager, dispatcher } = options;\n\tconst canvasFormat = options.canvasFormat ?? preferredCanvasFormat();\n\tconst rttFormat = options.rttFormat ?? \"rgba16float\";\n\tconst deviceMaxSampled = root.device?.limits?.maxSampledTexturesPerShaderStage;\n\tconst maxSampled = options.maxSampledTextures ?? (typeof deviceMaxSampled === \"number\" \u0026\u0026 deviceMaxSampled \u003e 0 ? deviceMaxSampled : 16);\n\tconst vertex = options.fullScreenTriangle ?? fullScreenTriangle;\n\tconst rttTextures = /* @__PURE__ */ new Map();\n\tconst liveTextures = /* @__PURE__ */ new Set();\n\tlet current = null;\n\tfunction buildSamplerBindGroup() {\n\t\tconst s = textureManager.samplers;\n\t\ttry {\n\t\t\treturn root.createBindGroup(SHARED_SAMPLER_LAYOUT, {\n\t\t\t\tlinearClamp: s.linearClamp,\n\t\t\t\tnearestClamp: s.nearestClamp,\n\t\t\t\tlinearRepeat: s.linearRepeat,\n\t\t\t\tnearestRepeat: s.nearestRepeat\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tdebugError(`[${LABEL}] failed to build sampler bind group:`, e);\n\t\t\treturn;\n\t\t}\n\t}\n\tfunction allocateRttTextures(ir, size) {\n\t\tconst needed = /* @__PURE__ */ new Set();\n\t\tfor (const t of ir.textures) {\n\t\t\tif (t.kind !== \"rtt\") continue;\n\t\t\tneeded.add(t.key);\n\t\t\tif (!rttTextures.has(t.key)) {\n\t\t\t\tconst rt = textureManager.createRenderTexture({\n\t\t\t\t\twidth: size.width,\n\t\t\t\t\theight: size.height,\n\t\t\t\t\tformat: rttFormat,\n\t\t\t\t\tlabel: `rtt:${t.key}`\n\t\t\t\t});\n\t\t\t\trttTextures.set(t.key, rt);\n\t\t\t\tliveTextures.add(rt);\n\t\t\t} else rttTextures.get(t.key).resize(size.width, size.height);\n\t\t}\n\t\tfor (const [key, rt] of [...rttTextures]) if (!needed.has(key)) {\n\t\t\trt.destroy();\n\t\t\tliveTextures.delete(rt);\n\t\t\trttTextures.delete(key);\n\t\t}\n\t}\n\tfunction buildTextureBindGroup(fragment, mediaResources) {\n\t\tif (!fragment.textureLayout || fragment.reads.length === 0) return void 0;\n\t\tconst entries = {};\n\t\tfor (const key of fragment.reads) {\n\t\t\tconst rt = rttTextures.get(key);\n\t\t\tconst media = mediaResources?.[key];\n\t\t\tconst resource = rt ?? media;\n\t\t\tif (!resource) {\n\t\t\t\tdebugError(`[${LABEL}] pass \"${fragment.entry}\" reads unknown texture \"${key}\"`);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tentries[key] = resource.texture;\n\t\t}\n\t\tif (fragment.reads.length \u003e maxSampled) debugWarn(`[${LABEL}] pass samples ${fragment.reads.length} textures (\u003e device limit ~${maxSampled}); composition may fail on this device.`);\n\t\ttry {\n\t\t\treturn root.createBindGroup(fragment.textureLayout, entries);\n\t\t} catch (e) {\n\t\t\tdebugError(`[${LABEL}] failed to build texture bind group:`, e);\n\t\t\treturn;\n\t\t}\n\t}\n\tfunction buildPipeline(fragment, targetFormat) {\n\t\treturn root.createRenderPipeline({\n\t\t\tvertex,\n\t\t\tfragment: fragment.entry,\n\t\t\ttargets: { format: targetFormat }\n\t\t});\n\t}\n\tfunction buildExternalBinding(fragment, externalSources) {\n\t\tif (!fragment.externalLayout || fragment.externalReads.length === 0) return void 0;\n\t\tconst keys = fragment.externalReads;\n\t\tif (keys.length === 1) {\n\t\t\tconst getSource = externalSources.get(keys[0]);\n\t\t\tif (!getSource) {\n\t\t\t\tdebugError(`[${LABEL}] external read \"${keys[0]}\" has no registered source`);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\treturn textureManager.createExternalTextureBinding({\n\t\t\t\tlayout: fragment.externalLayout,\n\t\t\t\tentryKey: keys[0],\n\t\t\t\tgetSource\n\t\t\t});\n\t\t}\n\t\tlet current$1 = null;\n\t\treturn {\n\t\t\tupdate() {\n\t\t\t\tconst entries = {};\n\t\t\t\tfor (const key of keys) {\n\t\t\t\t\tconst source = externalSources.get(key)?.();\n\t\t\t\t\tif (!source) {\n\t\t\t\t\t\tcurrent$1 = null;\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t\ttry {\n\t\t\t\t\t\tentries[key] = root.device.importExternalTexture({ source });\n\t\t\t\t\t} catch {\n\t\t\t\t\t\tcurrent$1 = null;\n\t\t\t\t\t\treturn null;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tcurrent$1 = root.createBindGroup(fragment.externalLayout, entries);\n\t\t\t\treturn current$1;\n\t\t\t},\n\t\t\tget current() {\n\t\t\t\treturn current$1;\n\t\t\t},\n\t\t\tdestroy() {\n\t\t\t\tcurrent$1 = null;\n\t\t\t}\n\t\t};\n\t}\n\tfunction buildExecutablePass(fragment, target, mediaResources, externalSources) {\n\t\tconst targetFormat = target.kind === \"canvas\" ? canvasFormat : rttFormat;\n\t\tconst mediaReads = fragment.reads.filter((k) =\u003e mediaResources?.[k]);\n\t\tconst mediaSnapshot = new Map(mediaReads.map((k) =\u003e [k, mediaResources[k].texture]));\n\t\treturn {\n\t\t\tfragment,\n\t\t\tpipeline: buildPipeline(fragment, targetFormat),\n\t\t\ttextureBindGroup: buildTextureBindGroup(fragment, mediaResources),\n\t\t\texternalBinding: buildExternalBinding(fragment, externalSources),\n\t\t\ttarget,\n\t\t\tmediaReads,\n\t\t\tmediaSnapshot\n\t\t};\n\t}\n\tfunction setComposition(ir, uniformBindGroup, size, mediaResources) {\n\t\tallocateRttTextures(ir, size);\n\t\tfor (const spec of ir.computeSteps) spec.bindInputs?.((key) =\u003e rttTextures.get(key) ?? mediaResources?.[key]);\n\t\tconst samplerBindGroup = buildSamplerBindGroup();\n\t\tconst externalSources = /* @__PURE__ */ new Map();\n\t\tfor (const e of ir.externalTextures) externalSources.set(e.key, e.getSource);\n\t\tconst rttPasses = ir.rttPasses.map((p) =\u003e buildExecutablePass(p.fragment, {\n\t\t\tkind: \"rtt\",\n\t\t\tkey: p.textureKey\n\t\t}, mediaResources, externalSources));\n\t\tconst finalPass = buildExecutablePass(ir.finalPass, { kind: \"canvas\" }, mediaResources, externalSources);\n\t\tcurrent = {\n\t\t\tir,\n\t\t\tuniformBindGroup,\n\t\t\tsamplerBindGroup,\n\t\t\tcomputeSteps: ir.computeSteps,\n\t\t\trttPasses,\n\t\t\tfinalPass,\n\t\t\tsize,\n\t\t\tmediaResources\n\t\t};\n\t}\n\tfunction execPass(pass, view) {\n\t\tlet p = pass.pipeline;\n\t\tif (current?.uniformBindGroup) p = p.with(current.uniformBindGroup);\n\t\tif (pass.mediaReads \u0026\u0026 pass.mediaReads.length \u003e 0 \u0026\u0026 current?.mediaResources) {\n\t\t\tlet swapped = false;\n\t\t\tfor (const key of pass.mediaReads) if (current.mediaResources[key].texture !== pass.mediaSnapshot.get(key)) swapped = true;\n\t\t\tif (swapped) {\n\t\t\t\tpass.textureBindGroup = buildTextureBindGroup(pass.fragment, current.mediaResources);\n\t\t\t\tfor (const key of pass.mediaReads) pass.mediaSnapshot.set(key, current.mediaResources[key].texture);\n\t\t\t}\n\t\t}\n\t\tif (pass.textureBindGroup) p = p.with(pass.textureBindGroup);\n\t\tif (pass.fragment.usesSamplers \u0026\u0026 current?.samplerBindGroup) p = p.with(current.samplerBindGroup);\n\t\tif (pass.fragment.externalReads.length \u003e 0) {\n\t\t\tconst bg = pass.externalBinding?.update() ?? null;\n\t\t\tif (!bg) {\n\t\t\t\tif (!pass.externalSkipLogged) {\n\t\t\t\t\tdebugWarn(`[${LABEL}] external texture not ready — skipping pass (${pass.fragment.externalReads.join(\", \")})`);\n\t\t\t\t\tpass.externalSkipLogged = true;\n\t\t\t\t}\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tp = p.with(bg);\n\t\t}\n\t\tp.withColorAttachment({ view }).draw(3);\n\t}\n\tfunction render(canvasView, frameParams, afterCompute) {\n\t\tif (!current) return;\n\t\tfor (const step of current.computeSteps) {\n\t\t\tconst steps = step.getComputeNodes(frameParams);\n\t\t\tif (steps \u0026\u0026 steps.length) dispatcher.dispatch(steps);\n\t\t}\n\t\tafterCompute?.();\n\t\trepaintRtt();\n\t\texecPass(current.finalPass, canvasView);\n\t}\n\tfunction repaintRtt() {\n\t\tif (!current) return;\n\t\tfor (const pass of current.rttPasses) {\n\t\t\tconst rt = rttTextures.get(pass.target.key);\n\t\t\tif (!rt) continue;\n\t\t\texecPass(pass, renderView(rt));\n\t\t}\n\t}\n\tfunction renderView(rt) {\n\t\treturn root.unwrap(rt.texture).createView();\n\t}\n\tfunction rebindPassTextures(pass) {\n\t\tif (!pass.fragment.textureLayout || pass.fragment.reads.length === 0) return;\n\t\tpass.textureBindGroup = buildTextureBindGroup(pass.fragment, current?.mediaResources);\n\t\tif (pass.mediaReads \u0026\u0026 pass.mediaSnapshot \u0026\u0026 current?.mediaResources) for (const key of pass.mediaReads) pass.mediaSnapshot.set(key, current.mediaResources[key].texture);\n\t}\n\tfunction resize(width, height) {\n\t\tlet recreated = false;\n\t\tfor (const rt of rttTextures.values()) if (rt.resize(width, height)) recreated = true;\n\t\tif (!current) return recreated;\n\t\tcurrent.size = {\n\t\t\twidth,\n\t\t\theight\n\t\t};\n\t\tif (!recreated) return false;\n\t\tfor (const spec of current.computeSteps) spec.bindInputs?.((key) =\u003e rttTextures.get(key) ?? current.mediaResources?.[key]);\n\t\tfor (const pass of current.rttPasses) rebindPassTextures(pass);\n\t\trebindPassTextures(current.finalPass);\n\t\treturn true;\n\t}\n\treturn {\n\t\tsetComposition,\n\t\trender,\n\t\trepaintRtt,\n\t\tresize,\n\t\tget textureCount() {\n\t\t\treturn liveTextures.size;\n\t\t},\n\t\tget passCount() {\n\t\t\treturn current ? current.rttPasses.length + 1 : 0;\n\t\t},\n\t\tdispose() {\n\t\t\tfor (const rt of [...liveTextures]) rt.destroy();\n\t\t\tliveTextures.clear();\n\t\t\trttTextures.clear();\n\t\t\tcurrent = null;\n\t\t}\n\t};\n}\nfunction preferredCanvasFormat() {\n\tif (typeof navigator !== \"undefined\" \u0026\u0026 navigator.gpu) return navigator.gpu.getPreferredCanvasFormat();\n\treturn \"bgra8unorm\";\n}\nfunction srgbViewFormat(format) {\n\treturn `${format}-srgb`;\n}\nfunction createTextureManager(root) {\n\tconst live = /* @__PURE__ */ new Set();\n\tfunction createRaw(props, ...usages) {\n\t\treturn root.createTexture.call(root, props).$usage(...usages);\n\t}\n\tlet linearClamp;\n\tlet nearestClamp;\n\tlet linearRepeat;\n\tlet nearestRepeat;\n\tconst samplers = {\n\t\tget linearClamp() {\n\t\t\treturn linearClamp ??= root.createSampler({\n\t\t\t\tmagFilter: \"linear\",\n\t\t\t\tminFilter: \"linear\",\n\t\t\t\tmipmapFilter: \"linear\",\n\t\t\t\taddressModeU: \"clamp-to-edge\",\n\t\t\t\taddressModeV: \"clamp-to-edge\"\n\t\t\t});\n\t\t},\n\t\tget nearestClamp() {\n\t\t\treturn nearestClamp ??= root.createSampler({\n\t\t\t\tmagFilter: \"nearest\",\n\t\t\t\tminFilter: \"nearest\",\n\t\t\t\taddressModeU: \"clamp-to-edge\",\n\t\t\t\taddressModeV: \"clamp-to-edge\"\n\t\t\t});\n\t\t},\n\t\tget linearRepeat() {\n\t\t\treturn linearRepeat ??= root.createSampler({\n\t\t\t\tmagFilter: \"linear\",\n\t\t\t\tminFilter: \"linear\",\n\t\t\t\tmipmapFilter: \"linear\",\n\t\t\t\taddressModeU: \"repeat\",\n\t\t\t\taddressModeV: \"repeat\"\n\t\t\t});\n\t\t},\n\t\tget nearestRepeat() {\n\t\t\treturn nearestRepeat ??= root.createSampler({\n\t\t\t\tmagFilter: \"nearest\",\n\t\t\t\tminFilter: \"nearest\",\n\t\t\t\taddressModeU: \"repeat\",\n\t\t\t\taddressModeV: \"repeat\"\n\t\t\t});\n\t\t}\n\t};\n\tfunction wrap(texture, width, height, format, srgb) {\n\t\tconst managed = {\n\t\t\ttexture,\n\t\t\twidth,\n\t\t\theight,\n\t\t\tformat,\n\t\t\twrite(source) {\n\t\t\t\ttexture.write(source);\n\t\t\t},\n\t\t\tunwrap() {\n\t\t\t\treturn root.unwrap(texture);\n\t\t\t},\n\t\t\tcreateSrgbView() {\n\t\t\t\tif (!srgb) return void 0;\n\t\t\t\treturn root.unwrap(texture).createView({ format: srgbViewFormat(format) });\n\t\t\t},\n\t\t\tgenerateMipmaps() {\n\t\t\t\ttexture.generateMipmaps?.();\n\t\t\t},\n\t\t\tdestroy() {\n\t\t\t\tif (!live.has(managed)) return;\n\t\t\t\ttexture.destroy();\n\t\t\t\tlive.delete(managed);\n\t\t\t}\n\t\t};\n\t\tlive.add(managed);\n\t\treturn managed;\n\t}\n\tfunction createMediaTexture(options) {\n\t\tconst { width, height, srgb = false, mipLevelCount } = options;\n\t\tconst format = options.format ?? \"rgba8unorm\";\n\t\treturn wrap(createRaw({\n\t\t\tsize: [width, height],\n\t\t\tformat,\n\t\t\t...srgb ? { viewFormats: [srgbViewFormat(format)] } : {},\n\t\t\t...mipLevelCount ? { mipLevelCount } : {}\n\t\t}, \"sampled\", \"render\"), width, height, format, srgb);\n\t}\n\tfunction createDataTexture(options) {\n\t\tconst { width, height, format, data } = options;\n\t\tconst managed = wrap(createRaw({\n\t\t\tsize: [width, height],\n\t\t\tformat\n\t\t}, \"sampled\"), width, height, format, false);\n\t\tif (data) managed.write(data);\n\t\treturn managed;\n\t}\n\tfunction createRenderTexture(options) {\n\t\tconst format = options.format ?? \"rgba16float\";\n\t\tconst { mipLevelCount } = options;\n\t\tlet width = options.width;\n\t\tlet height = options.height;\n\t\tfunction build(w, h) {\n\t\t\treturn wrap(createRaw({\n\t\t\t\tsize: [w, h],\n\t\t\t\tformat,\n\t\t\t\t...mipLevelCount ? { mipLevelCount } : {}\n\t\t\t}, \"sampled\", \"render\"), w, h, format, false);\n\t\t}\n\t\tlet inner = build(width, height);\n\t\treturn {\n\t\t\tget texture() {\n\t\t\t\treturn inner.texture;\n\t\t\t},\n\t\t\tget width() {\n\t\t\t\treturn width;\n\t\t\t},\n\t\t\tget height() {\n\t\t\t\treturn height;\n\t\t\t},\n\t\t\tformat,\n\t\t\twrite(source) {\n\t\t\t\tinner.write(source);\n\t\t\t},\n\t\t\tunwrap() {\n\t\t\t\treturn inner.unwrap();\n\t\t\t},\n\t\t\tcreateSrgbView() {\n\t\t\t\treturn inner.createSrgbView();\n\t\t\t},\n\t\t\tgenerateMipmaps() {\n\t\t\t\tinner.generateMipmaps();\n\t\t\t},\n\t\t\tresize(w, h) {\n\t\t\t\tif (w === width \u0026\u0026 h === height) return false;\n\t\t\t\tinner.destroy();\n\t\t\t\twidth = w;\n\t\t\t\theight = h;\n\t\t\t\tinner = build(w, h);\n\t\t\t\treturn true;\n\t\t\t},\n\t\t\tdestroy() {\n\t\t\t\tinner.destroy();\n\t\t\t}\n\t\t};\n\t}\n\tfunction createExternalTextureBinding(options) {\n\t\tconst { layout, entryKey, getSource, staticEntries = {} } = options;\n\t\tlet current = null;\n\t\treturn {\n\t\t\tupdate() {\n\t\t\t\tconst source = getSource();\n\t\t\t\tif (!source) {\n\t\t\t\t\tcurrent = null;\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tlet external;\n\t\t\t\ttry {\n\t\t\t\t\texternal = root.device.importExternalTexture({ source });\n\t\t\t\t} catch {\n\t\t\t\t\tcurrent = null;\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\t\t\t\tcurrent = root.createBindGroup(layout, {\n\t\t\t\t\t...staticEntries,\n\t\t\t\t\t[entryKey]: external\n\t\t\t\t});\n\t\t\t\treturn current;\n\t\t\t},\n\t\t\tget current() {\n\t\t\t\treturn current;\n\t\t\t},\n\t\t\tdestroy() {\n\t\t\t\tcurrent = null;\n\t\t\t}\n\t\t};\n\t}\n\treturn {\n\t\tsamplers,\n\t\tcreateMediaTexture,\n\t\tcreateDataTexture,\n\t\tcreateRenderTexture,\n\t\tcreateExternalTextureBinding,\n\t\tget textureCount() {\n\t\t\treturn live.size;\n\t\t},\n\t\tdestroy() {\n\t\t\tfor (const t of [...live]) t.destroy();\n\t\t\tlive.clear();\n\t\t}\n\t};\n}\nfunction mediaKey(type, props) {\n\tconst decl = (getShaderByName(type)?.definition)?.naturalSizeKey;\n\tif (!decl) return null;\n\tif (\"fixed\" in decl) return decl.fixed || null;\n\tconst value = props[decl.fromProp];\n\treturn typeof value === \"string\" \u0026\u0026 value ? value : null;\n}\nfunction explicitBoxSize(bbox, cw, ch) {\n\tif (!bbox || typeof bbox !== \"object\") return null;\n\tconst dimPx = (d, dim) =\u003e {\n\t\tif (!d || typeof d !== \"object\" || typeof d.value !== \"number\") return null;\n\t\treturn d.unit === \"px\" ? d.value : d.value * dim;\n\t};\n\tconst w = dimPx(bbox.width, cw);\n\tconst h = dimPx(bbox.height, ch);\n\treturn w != null \u0026\u0026 h != null \u0026\u0026 w \u003e 0 \u0026\u0026 h \u003e 0 ? {\n\t\twidthPx: w,\n\t\theightPx: h\n\t} : null;\n}\nfunction measureNode(input, cw, ch) {\n\tconst { type, decl, props, boundingBox } = input;\n\tif (!(cw \u003e 0) || !(ch \u003e 0)) return null;\n\tif (input.requiresChild) return null;\n\tif (decl?.computeBounds) {\n\t\tconst b = decl.computeBounds(props, cw, ch);\n\t\tif (b.widthPx \u003e 0 \u0026\u0026 b.heightPx \u003e 0) return {\n\t\t\twidthPx: b.widthPx,\n\t\t\theightPx: b.heightPx\n\t\t};\n\t\treturn null;\n\t}\n\tconst pb = decl?.propBindings;\n\tif (pb?.width \u0026\u0026 pb?.height) {\n\t\tconst w = bindingSizePx(pb.width, props[pb.width.prop], cw, ch);\n\t\tconst h = bindingSizePx(pb.height, props[pb.height.prop], cw, ch);\n\t\tif (w \u003e 0 \u0026\u0026 h \u003e 0) return {\n\t\t\twidthPx: w,\n\t\t\theightPx: h\n\t\t};\n\t\treturn null;\n\t}\n\tconst boxed = explicitBoxSize(boundingBox, cw, ch);\n\tif (boxed) return boxed;\n\tconst key = mediaKey(type, props);\n\tif (key) {\n\t\tconst natural = getNaturalSize(key);\n\t\tif (natural) return {\n\t\t\twidthPx: natural.width,\n\t\t\theightPx: natural.height\n\t\t};\n\t}\n\treturn null;\n}\nfunction gapToPx(gap, mainAxisDim) {\n\tif (gap == null) return 0;\n\tif (typeof gap === \"number\") return gap;\n\treturn gap.unit === \"px\" ? gap.value : gap.value * mainAxisDim;\n}\nfunction resolveLayoutConfig(cfg, cw, ch) {\n\tif (!cfg || cfg.mode !== \"column\" \u0026\u0026 cfg.mode !== \"row\") return null;\n\treturn {\n\t\tmode: cfg.mode,\n\t\tgapPx: Math.max(0, gapToPx(cfg.gap, cfg.mode === \"column\" ? ch : cw)),\n\t\talign: cfg.align ?? \"center\",\n\t\tanchor: cfg.anchor ?? \"center\",\n\t\tanchorOffsetX: cfg.anchorOffset?.x ?? 0,\n\t\tanchorOffsetY: cfg.anchorOffset?.y ?? 0\n\t};\n}\nvar anchorEdges = (origin) =\u003e ({\n\tox: origin.includes(\"left\") ? \"start\" : origin.includes(\"right\") ? \"end\" : \"center\",\n\toy: origin.includes(\"top\") ? \"start\" : origin.includes(\"bottom\") ? \"end\" : \"center\"\n});\nvar anchorTopLeft = (edge, blockSize, canvasDim, offsetPx) =\u003e edge === \"start\" ? offsetPx : edge === \"end\" ? canvasDim - blockSize - offsetPx : (canvasDim - blockSize) / 2 + offsetPx;\nfunction layoutBlockSize(layout, items) {\n\tlet main = 0;\n\tlet cross = 0;\n\tfor (const item of items) {\n\t\tconst m = layout.mode === \"column\" ? item.size.heightPx : item.size.widthPx;\n\t\tconst c = layout.mode === \"column\" ? item.size.widthPx : item.size.heightPx;\n\t\tmain += m;\n\t\tcross = Math.max(cross, c);\n\t}\n\tif (items.length \u003e 1) main += layout.gapPx * (items.length - 1);\n\treturn layout.mode === \"column\" ? {\n\t\twidthPx: cross,\n\t\theightPx: main\n\t} : {\n\t\twidthPx: main,\n\t\theightPx: cross\n\t};\n}\nfunction computeLayout(layout, items, cw, ch) {\n\tconst placements = /* @__PURE__ */ new Map();\n\tif (items.length === 0) return placements;\n\tconst block = layoutBlockSize(layout, items);\n\tconst { ox, oy } = anchorEdges(layout.anchor);\n\tconst blockLeft = anchorTopLeft(ox, block.widthPx, cw, layout.anchorOffsetX);\n\tconst blockTop = anchorTopLeft(oy, block.heightPx, ch, layout.anchorOffsetY);\n\tconst crossPos = (childCross, blockCross) =\u003e layout.align === \"start\" ? 0 : layout.align === \"end\" ? blockCross - childCross : (blockCross - childCross) / 2;\n\tlet cursor = 0;\n\tfor (const item of items) if (layout.mode === \"column\") {\n\t\tconst x = blockLeft + crossPos(item.size.widthPx, block.widthPx) + item.size.widthPx / 2;\n\t\tconst y = blockTop + cursor + item.size.heightPx / 2;\n\t\tplacements.set(item.id, {\n\t\t\tcenterXPx: x,\n\t\t\tcenterYPx: y\n\t\t});\n\t\tcursor += item.size.heightPx + layout.gapPx;\n\t} else {\n\t\tconst x = blockLeft + cursor + item.size.widthPx / 2;\n\t\tconst y = blockTop + crossPos(item.size.heightPx, block.heightPx) + item.size.heightPx / 2;\n\t\tplacements.set(item.id, {\n\t\t\tcenterXPx: x,\n\t\t\tcenterYPx: y\n\t\t});\n\t\tcursor += item.size.widthPx + layout.gapPx;\n\t}\n\treturn placements;\n}\nfunction measureChild(view, cw, ch) {\n\tconst nested = resolveLayoutConfig(view.layout, cw, ch);\n\tif (nested) {\n\t\tconst items = flowItems(view, cw, ch);\n\t\tif (items.length === 0) return null;\n\t\treturn layoutBlockSize(nested, items);\n\t}\n\treturn measureNode({\n\t\ttype: view.componentName,\n\t\tdecl: view.decl,\n\t\tprops: view.props,\n\t\tboundingBox: view.boundingBox,\n\t\trequiresChild: view.requiresChild,\n\t\tavailableWidthPx: cw\n\t}, cw, ch);\n}\nfunction flowItems(group, cw, ch) {\n\tconst items = [];\n\tfor (const child of group.children) {\n\t\tif (child.visible === false || child.absolute) continue;\n\t\tconst size = measureChild(child, cw, ch);\n\t\tif (size) items.push({\n\t\t\tid: child.id,\n\t\t\tsize,\n\t\t\tview: child\n\t\t});\n\t}\n\treturn items;\n}\nfunction computeBoundsShift(view, cw, ch) {\n\tif (!view.decl?.computeBounds) return {\n\t\tx: 0,\n\t\ty: 0\n\t};\n\tconst b = view.decl.computeBounds(view.props, cw, ch);\n\tconst cx = typeof view.props.center?.x === \"number\" ? view.props.center.x : .5;\n\tconst cy = typeof view.props.center?.y === \"number\" ? view.props.center.y : .5;\n\treturn {\n\t\tx: b.centerXPx - cx * cw,\n\t\ty: b.centerYPx - cy * ch\n\t};\n}\nfunction placeChild(view, size, centerXPx, centerYPx, cw, ch, out, rects) {\n\tconst nested = resolveLayoutConfig(view.layout, cw, ch);\n\tif (nested) {\n\t\tplaceGroup(view, nested, cw, ch, out, {\n\t\t\tcenterXPx,\n\t\t\tcenterYPx\n\t\t}, rects);\n\t\treturn;\n\t}\n\tconst posProp = view.decl?.propBindings?.x?.prop ?? view.decl?.propBindings?.y?.prop;\n\tif (posProp) {\n\t\tif (!view.positionDriven) {\n\t\t\tconst shift = computeBoundsShift(view, cw, ch);\n\t\t\tout.push({\n\t\t\t\tkind: \"position\",\n\t\t\t\tid: view.id,\n\t\t\t\tprop: posProp,\n\t\t\t\tvalue: {\n\t\t\t\t\tx: (centerXPx - shift.x) / cw,\n\t\t\t\t\ty: (centerYPx - shift.y) / ch\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\treturn;\n\t}\n\tout.push({\n\t\tkind: \"box\",\n\t\tid: view.id,\n\t\txPx: centerXPx - size.widthPx / 2,\n\t\tyPx: centerYPx - size.heightPx / 2,\n\t\twidthPx: size.widthPx,\n\t\theightPx: size.heightPx\n\t});\n}\nfunction placeGroup(group, layout, cw, ch, out, at, rects, precomputedItems) {\n\tconst items = precomputedItems ?? flowItems(group, cw, ch);\n\tif (items.length === 0) return;\n\tlet effective = layout;\n\tif (at) {\n\t\tconst block = layoutBlockSize(layout, items);\n\t\teffective = {\n\t\t\t...layout,\n\t\t\tanchor: \"top-left\",\n\t\t\tanchorOffsetX: at.centerXPx - block.widthPx / 2,\n\t\t\tanchorOffsetY: at.centerYPx - block.heightPx / 2\n\t\t};\n\t}\n\tif (rects) {\n\t\tconst block = layoutBlockSize(effective, items);\n\t\tconst { ox, oy } = anchorEdges(effective.anchor);\n\t\trects.set(group.id, {\n\t\t\tleftPx: anchorTopLeft(ox, block.widthPx, cw, effective.anchorOffsetX),\n\t\t\ttopPx: anchorTopLeft(oy, block.heightPx, ch, effective.anchorOffsetY),\n\t\t\twidthPx: block.widthPx,\n\t\t\theightPx: block.heightPx\n\t\t});\n\t}\n\tconst placements = computeLayout(effective, items, cw, ch);\n\tfor (const item of items) {\n\t\tconst p = placements.get(item.id);\n\t\tif (p) placeChild(item.view, item.size, p.centerXPx, p.centerYPx, cw, ch, out, rects);\n\t}\n}\nfunction anchorOffsetForBlockTopLeft(group, leftPx, topPx, cw, ch) {\n\tconst layout = resolveLayoutConfig(group.layout, cw, ch);\n\tif (!layout) return null;\n\tconst items = flowItems(group, cw, ch);\n\tif (items.length === 0) return null;\n\tconst block = layoutBlockSize(layout, items);\n\tconst { ox, oy } = anchorEdges(layout.anchor);\n\tconst invert = (edge, pos, size, dim) =\u003e edge === \"start\" ? pos : edge === \"end\" ? dim - pos - size : pos - (dim - size) / 2;\n\treturn {\n\t\tx: invert(ox, leftPx, block.widthPx, cw),\n\t\ty: invert(oy, topPx, block.heightPx, ch)\n\t};\n}\nfunction computeTreeLayout(roots, cw, ch, rects) {\n\tconst out = [];\n\tconst walk = (view) =\u003e {\n\t\tconst layout = resolveLayoutConfig(view.layout, cw, ch);\n\t\tif (layout) {\n\t\t\tconst items = flowItems(view, cw, ch);\n\t\t\tplaceGroup(view, layout, cw, ch, out, void 0, rects, items);\n\t\t\tconst placed = new Set(items.map((i) =\u003e i.id));\n\t\t\tfor (const child of view.children) {\n\t\t\t\tif (child.visible === false) continue;\n\t\t\t\tif (!placed.has(child.id)) walk(child);\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tfor (const child of view.children) if (child.visible !== false) walk(child);\n\t};\n\tfor (const root of roots) if (root.visible !== false) walk(root);\n\treturn out;\n}\nfunction computeGroupBlockRects(roots, cw, ch) {\n\tconst rects = /* @__PURE__ */ new Map();\n\tcomputeTreeLayout(roots, cw, ch, rects);\n\treturn rects;\n}\nvar PerformanceTracker = class {\n\tframeTimesMs = [];\n\tframeTimesIndex = 0;\n\tframeTimesCount = 0;\n\tmaxSamples = 60;\n\ttargetFrameTime = 16.67;\n\tjankFrameCount = 0;\n\ttotalFrameCount = 0;\n\tmemorySnapshots = [];\n\tmemorySnapshotIndex = 0;\n\tmaxMemorySnapshots = 300;\n\tnodeCount = 0;\n\trttNodeCount = 0;\n\tlastCpuTime = null;\n\tlastGpuTime = null;\n\tisRendering = false;\n\tlastFrameTimestamp = 0;\n\tframeIntervals = [];\n\tframeIntervalsIndex = 0;\n\tframeIntervalsCount = 0;\n\tpushToCircularBuffer(buffer, value, index, _count, maxSize) {\n\t\tif (buffer.length \u003c maxSize) {\n\t\t\tbuffer.push(value);\n\t\t\treturn {\n\t\t\t\tindex: buffer.length,\n\t\t\t\tcount: buffer.length\n\t\t\t};\n\t\t}\n\t\tbuffer[index % maxSize] = value;\n\t\treturn {\n\t\t\tindex: index + 1,\n\t\t\tcount: maxSize\n\t\t};\n\t}\n\tgetBufferValues(buffer, count) {\n\t\treturn count \u003c= buffer.length ? buffer.slice(0, count) : buffer;\n\t}\n\trecordFrame(frameTimeMs) {\n\t\tconst result = this.pushToCircularBuffer(this.frameTimesMs, frameTimeMs, this.frameTimesIndex, this.frameTimesCount, this.maxSamples);\n\t\tthis.frameTimesIndex = result.index;\n\t\tthis.frameTimesCount = result.count;\n\t\tthis.totalFrameCount++;\n\t\tif (frameTimeMs \u003e this.targetFrameTime) this.jankFrameCount++;\n\t\tconst now = performance.now();\n\t\tif (this.lastFrameTimestamp \u003e 0) {\n\t\t\tconst interval = now - this.lastFrameTimestamp;\n\t\t\tconst intervalResult = this.pushToCircularBuffer(this.frameIntervals, interval, this.frameIntervalsIndex, this.frameIntervalsCount, this.maxSamples);\n\t\t\tthis.frameIntervalsIndex = intervalResult.index;\n\t\t\tthis.frameIntervalsCount = intervalResult.count;\n\t\t}\n\t\tthis.lastFrameTimestamp = now;\n\t\tthis.recordMemorySnapshot();\n\t}\n\trecordCpuTime(timeMs) {\n\t\tthis.lastCpuTime = timeMs;\n\t}\n\trecordGpuTime(timeMs) {\n\t\tthis.lastGpuTime = timeMs;\n\t}\n\tupdateNodeCounts(nodeCount, rttNodeCount) {\n\t\tthis.nodeCount = nodeCount;\n\t\tthis.rttNodeCount = rttNodeCount;\n\t}\n\tsetRendering(rendering) {\n\t\tthis.isRendering = rendering;\n\t}\n\trecordMemorySnapshot() {\n\t\tif (!performance.memory) return;\n\t\tconst now = performance.now();\n\t\tconst bytes = performance.memory.usedJSHeapSize;\n\t\tif (this.memorySnapshots.length \u003c this.maxMemorySnapshots) this.memorySnapshots.push({\n\t\t\ttime: now,\n\t\t\tbytes\n\t\t});\n\t\telse {\n\t\t\tconst entry = this.memorySnapshots[this.memorySnapshotIndex];\n\t\t\tentry.time = now;\n\t\t\tentry.bytes = bytes;\n\t\t\tthis.memorySnapshotIndex = (this.memorySnapshotIndex + 1) % this.maxMemorySnapshots;\n\t\t}\n\t}\n\tcalculateMemoryGrowthRate() {\n\t\tif (this.memorySnapshots.length \u003c 2) return null;\n\t\tconst len = this.memorySnapshots.length;\n\t\tconst oldestIdx = len \u003c this.maxMemorySnapshots ? 0 : this.memorySnapshotIndex;\n\t\tconst newestIdx = len \u003c this.maxMemorySnapshots ? len - 1 : (this.memorySnapshotIndex - 1 + len) % len;\n\t\tconst oldest = this.memorySnapshots[oldestIdx];\n\t\tconst newest = this.memorySnapshots[newestIdx];\n\t\tconst timeDeltaSeconds = (newest.time - oldest.time) / 1e3;\n\t\tif (timeDeltaSeconds \u003c= 0) return null;\n\t\treturn (newest.bytes - oldest.bytes) / (1024 * 1024) / timeDeltaSeconds;\n\t}\n\tcalculateStdDev(values) {\n\t\tif (values.length === 0) return 0;\n\t\tconst mean = values.reduce((a, b) =\u003e a + b, 0) / values.length;\n\t\tlet sumSquaredDiff = 0;\n\t\tfor (let i = 0; i \u003c values.length; i++) {\n\t\t\tconst diff = values[i] - mean;\n\t\t\tsumSquaredDiff += diff * diff;\n\t\t}\n\t\treturn Math.sqrt(sumSquaredDiff / values.length);\n\t}\n\tsortBuffer = [];\n\tcalculateP99(values) {\n\t\tconst len = values.length;\n\t\tif (len === 0) return 0;\n\t\twhile (this.sortBuffer.length \u003c len) this.sortBuffer.push(0);\n\t\tfor (let i = 0; i \u003c len; i++) this.sortBuffer[i] = values[i];\n\t\tfor (let i = 1; i \u003c len; i++) {\n\t\t\tconst current = this.sortBuffer[i];\n\t\t\tlet j = i - 1;\n\t\t\twhile (j \u003e= 0 \u0026\u0026 this.sortBuffer[j] \u003e current) {\n\t\t\t\tthis.sortBuffer[j + 1] = this.sortBuffer[j];\n\t\t\t\tj--;\n\t\t\t}\n\t\t\tthis.sortBuffer[j + 1] = current;\n\t\t}\n\t\tconst index = Math.floor(len * .99);\n\t\treturn this.sortBuffer[Math.min(index, len - 1)];\n\t}\n\tcalculateComplexityScore() {\n\t\treturn this.nodeCount + this.rttNodeCount * 10;\n\t}\n\tcalculateIntensityScore() {\n\t\tconst frameTimes = this.getBufferValues(this.frameTimesMs, this.frameTimesCount);\n\t\tconst frameCount = frameTimes.length;\n\t\tif (frameCount === 0) return {\n\t\t\tscore: 0,\n\t\t\tlabel: \"N/A\"\n\t\t};\n\t\tconst avgFrameTime = frameTimes.reduce((a, b) =\u003e a + b, 0) / frameCount;\n\t\tconst frameTimeScore = Math.min(avgFrameTime / 16.67 * 100, 100);\n\t\tconst complexity = this.calculateComplexityScore();\n\t\tconst complexityScore = Math.min(complexity / 100 * 100, 100);\n\t\tlet gpuTimeScore = 0;\n\t\tif (this.lastGpuTime !== null) gpuTimeScore = Math.min(this.lastGpuTime / 16.67 * 100, 100);\n\t\tconst weights = this.lastGpuTime !== null ? {\n\t\t\tframe: .4,\n\t\t\tgpu: .4,\n\t\t\tcomplexity: .2\n\t\t} : {\n\t\t\tframe: .7,\n\t\t\tgpu: 0,\n\t\t\tcomplexity: .3\n\t\t};\n\t\tconst finalScore = Math.round(frameTimeScore * weights.frame + gpuTimeScore * weights.gpu + complexityScore * weights.complexity);\n\t\tlet label;\n\t\tif (finalScore \u003c= 20) label = \"Very Light\";\n\t\telse if (finalScore \u003c= 40) label = \"Light\";\n\t\telse if (finalScore \u003c= 60) label = \"Medium\";\n\t\telse if (finalScore \u003c= 80) label = \"Heavy\";\n\t\telse label = \"Very Heavy\";\n\t\treturn {\n\t\t\tscore: Math.min(finalScore, 100),\n\t\t\tlabel\n\t\t};\n\t}\n\tgetStats(rendererInfo) {\n\t\tconst frameTimes = this.getBufferValues(this.frameTimesMs, this.frameTimesCount);\n\t\tconst intervals = this.getBufferValues(this.frameIntervals, this.frameIntervalsCount);\n\t\tconst frameCount = frameTimes.length;\n\t\tconst fps = intervals.length \u003e 0 ? 1e3 / (intervals.reduce((a, b) =\u003e a + b, 0) / intervals.length) : 0;\n\t\tconst avgFrameTime = frameCount \u003e 0 ? frameTimes.reduce((a, b) =\u003e a + b, 0) / frameCount : 0;\n\t\tconst minFrameTime = frameCount \u003e 0 ? Math.min(...frameTimes) : 0;\n\t\tconst maxFrameTime = frameCount \u003e 0 ? Math.max(...frameTimes) : 0;\n\t\tconst p99FrameTime = this.calculateP99(frameTimes);\n\t\tconst stdDevFrameTime = this.calculateStdDev(frameTimes);\n\t\tconst jankPercent = this.totalFrameCount \u003e 0 ? this.jankFrameCount / this.totalFrameCount * 100 : 0;\n\t\tconst memory = performance.memory;\n\t\tconst memoryUsedMB = memory ? memory.usedJSHeapSize / (1024 * 1024) : null;\n\t\tconst memoryGrowthRate = this.calculateMemoryGrowthRate();\n\t\tconst budgetUsed = avgFrameTime \u003e 0 ? avgFrameTime / this.targetFrameTime * 100 : 0;\n\t\tconst drawCalls = rendererInfo?.render?.calls ?? null;\n\t\tconst shaderPrograms = rendererInfo?.programs?.length ?? null;\n\t\tconst textureCount = rendererInfo?.memory?.textures ?? null;\n\t\tconst intensity = this.calculateIntensityScore();\n\t\treturn {\n\t\t\tfps: Math.round(fps),\n\t\t\tavgFrameTime: Math.round(avgFrameTime * 100) / 100,\n\t\t\tminFrameTime: Math.round(minFrameTime * 100) / 100,\n\t\t\tmaxFrameTime: Math.round(maxFrameTime * 100) / 100,\n\t\t\tp99FrameTime: Math.round(p99FrameTime * 100) / 100,\n\t\t\tstdDevFrameTime: Math.round(stdDevFrameTime * 100) / 100,\n\t\t\tjankCount: this.jankFrameCount,\n\t\t\tjankPercent: Math.round(jankPercent * 10) / 10,\n\t\t\tnodeCount: this.nodeCount,\n\t\t\trttNodeCount: this.rttNodeCount,\n\t\t\tcomplexityScore: this.calculateComplexityScore(),\n\t\t\tmemoryUsedMB: memoryUsedMB !== null ? Math.round(memoryUsedMB * 100) / 100 : null,\n\t\t\tmemoryGrowthRate: memoryGrowthRate !== null ? Math.round(memoryGrowthRate * 1e3) / 1e3 : null,\n\t\t\tcpuTime: this.lastCpuTime !== null ? Math.round(this.lastCpuTime * 100) / 100 : null,\n\t\t\tgpuTime: this.lastGpuTime !== null ? Math.round(this.lastGpuTime * 100) / 100 : null,\n\t\t\tbudgetUsed: Math.round(budgetUsed * 10) / 10,\n\t\t\tdrawCalls,\n\t\t\tshaderPrograms,\n\t\t\ttextureCount,\n\t\t\tintensityScore: intensity.score,\n\t\t\tintensityLabel: intensity.label,\n\t\t\tisRendering: this.isRendering\n\t\t};\n\t}\n\treset() {\n\t\tthis.frameTimesMs.length = 0;\n\t\tthis.frameTimesIndex = 0;\n\t\tthis.frameTimesCount = 0;\n\t\tthis.frameIntervals.length = 0;\n\t\tthis.frameIntervalsIndex = 0;\n\t\tthis.frameIntervalsCount = 0;\n\t\tthis.lastFrameTimestamp = 0;\n\t\tthis.jankFrameCount = 0;\n\t\tthis.totalFrameCount = 0;\n\t\tthis.memorySnapshots.length = 0;\n\t\tthis.memorySnapshotIndex = 0;\n\t\tthis.sortBuffer.length = 0;\n\t\tthis.lastCpuTime = null;\n\t\tthis.lastGpuTime = null;\n\t}\n};\nvar MAX_UNCAPTURED_VALIDATION_ERRORS = 32;\nvar MAX_CONSECUTIVE_RENDER_ERRORS = 5;\nvar globalEventManager = (() =\u003e {\n\tlet instanceCount = 0;\n\tconst callbacks = /* @__PURE__ */ new Set();\n\tconst fan = (key, arg) =\u003e {\n\t\tcallbacks.forEach((cb) =\u003e {\n\t\t\ttry {\n\t\t\t\tcb[key](arg);\n\t\t\t} catch (error) {\n\t\t\t\tdebugError(\"[Shaders] Error in pointer handler:\", error);\n\t\t\t}\n\t\t});\n\t};\n\tconst onMove = (e) =\u003e fan(\"onMouseMove\", e);\n\tconst onTouch = (e) =\u003e fan(\"onTouchMove\", e);\n\tconst onDown = (e) =\u003e fan(\"onMouseDown\", e);\n\tconst onStart = (e) =\u003e fan(\"onTouchStart\", e);\n\tconst onUp = () =\u003e fan(\"onMouseUp\");\n\tconst onEnd = () =\u003e fan(\"onTouchEnd\");\n\treturn { register(handlers) {\n\t\tcallbacks.add(handlers);\n\t\tinstanceCount++;\n\t\tif (instanceCount === 1 \u0026\u0026 typeof window !== \"undefined\") {\n\t\t\twindow.addEventListener(\"mousemove\", onMove);\n\t\t\twindow.addEventListener(\"touchmove\", onTouch);\n\t\t\twindow.addEventListener(\"mousedown\", onDown, true);\n\t\t\twindow.addEventListener(\"touchstart\", onStart, true);\n\t\t\twindow.addEventListener(\"mouseup\", onUp, true);\n\t\t\twindow.addEventListener(\"touchend\", onEnd, true);\n\t\t}\n\t\treturn () =\u003e {\n\t\t\tcallbacks.delete(handlers);\n\t\t\tinstanceCount--;\n\t\t\tif (instanceCount === 0 \u0026\u0026 typeof window !== \"undefined\") {\n\t\t\t\twindow.removeEventListener(\"mousemove\", onMove);\n\t\t\t\twindow.removeEventListener(\"touchmove\", onTouch);\n\t\t\t\twindow.removeEventListener(\"mousedown\", onDown, true);\n\t\t\t\twindow.removeEventListener(\"touchstart\", onStart, true);\n\t\t\t\twindow.removeEventListener(\"mouseup\", onUp, true);\n\t\t\t\twindow.removeEventListener(\"touchend\", onEnd, true);\n\t\t\t}\n\t\t};\n\t} };\n})();\nfunction shapeConfigUsesMouse(raw) {\n\tif (!raw) return false;\n\tlet cfg = raw;\n\tif (typeof raw === \"string\") try {\n\t\tcfg = JSON.parse(raw);\n\t} catch {\n\t\treturn false;\n\t}\n\tif (!cfg || typeof cfg !== \"object\") return false;\n\tfor (const key in cfg) {\n\t\tconst v = cfg[key];\n\t\tif (v \u0026\u0026 typeof v === \"object\" \u0026\u0026 v.type === \"mouse\") return true;\n\t}\n\treturn false;\n}\nfunction shaderRendererGPU() {\n\tlet rootCtx = null;\n\tlet root = null;\n\tlet context = null;\n\tlet textureManager = null;\n\tlet dispatcher = null;\n\tlet canvasElement = null;\n\tlet isInitialized = false;\n\tlet isInitializing = false;\n\tlet isRendererReady = false;\n\tlet initializationAbortController = null;\n\tconst nodes = /* @__PURE__ */ new Map();\n\tlet rootId = null;\n\tconst parentToChildren = /* @__PURE__ */ new Map();\n\tlet pendingRegistrationQueue = [];\n\tlet pendingNodeUpdates = [];\n\tconst pipelineCache = createPipelineCache({\n\t\tmaxSize: 4,\n\t\tdispose: (bc) =\u003e disposeComposition(bc)\n\t});\n\tconst liveCompositions = /* @__PURE__ */ new Set();\n\tlet boundComposition = null;\n\tlet desiredHash = null;\n\tlet structuralDirty = true;\n\tlet currentWidth = 0;\n\tlet currentHeight = 0;\n\tlet logicalWidth = 0;\n\tlet logicalHeight = 0;\n\tlet pixelRatio = 1;\n\tlet cachedMaxTextureDim = 8192;\n\tlet lastRequestedWidth = 0;\n\tlet lastRequestedHeight = 0;\n\tlet hasInitialDimensions = false;\n\tconst pxResWidth = () =\u003e logicalWidth || currentWidth || 1;\n\tconst pxResHeight = () =\u003e logicalHeight || currentHeight || 1;\n\tlet shouldAnimate = true;\n\tlet isVisible = false;\n\tlet forceFullFrameRate = false;\n\tlet lastRenderTime = 0;\n\tlet frameIntervalCap = 0;\n\tlet globalElapsedTime = 0;\n\tlet sharedTimeOrigin = null;\n\tlet pendingRenderRAF = null;\n\tlet pointerX = -10;\n\tlet pointerY = -10;\n\tlet pointerActive = false;\n\tlet pointerSeen = false;\n\tlet cachedCanvasRect = null;\n\tlet mouseListenersNeeded = false;\n\tlet globalEventUnregister = null;\n\tlet resizeObserver = null;\n\tlet intersectionObserver = null;\n\tlet unloadHandler = null;\n\tlet windowResizeHandler = null;\n\tlet pendingResize = null;\n\tlet isResizeScheduled = false;\n\tlet rendererColorSpace = \"p3-linear\";\n\tlet rendererToneMapping = \"linear\";\n\tlet enablePerformanceTracking = false;\n\tlet setColorSpaceModeFn = null;\n\tlet onReadyCallback = null;\n\tlet hasEmittedReady = false;\n\tlet firstRenderPending = false;\n\tlet onDeviceLostCallback = null;\n\tlet deviceLostFired = false;\n\tlet failureReason = null;\n\tlet onUnavailableCallback = null;\n\tlet hasNotifiedUnavailable = false;\n\tlet uncapturedErrorDevice = null;\n\tlet uncapturedErrorHandler = null;\n\tlet uncapturedValidationErrors = 0;\n\tlet consecutiveRenderErrors = 0;\n\tconst performanceTracker = new PerformanceTracker();\n\tconst frameParams = {\n\t\tdeltaTime: 0,\n\t\tpointer: {\n\t\t\tx: -10,\n\t\t\ty: -10,\n\t\t\tseen: false\n\t\t},\n\t\tpointerActive: false,\n\t\tdimensions: {\n\t\t\twidth: 0,\n\t\t\theight: 0\n\t\t}\n\t};\n\tconst frameLoop = createFrameLoop(() =\u003e renderFrame());\n\tconst sanitizeId = (id) =\u003e id.replace(/[^a-zA-Z0-9_]/g, \"_\");\n\tconst findChildNodes = (parentId) =\u003e {\n\t\tconst childIds = parentToChildren.get(parentId);\n\t\tif (!childIds) return [];\n\t\tconst out = [];\n\t\tfor (const cid of childIds) {\n\t\t\tconst info = nodes.get(cid);\n\t\t\tif (info) out.push(info);\n\t\t}\n\t\treturn out;\n\t};\n\tconst findNodeByCustomId = (customId) =\u003e {\n\t\tconst sanitized = sanitizeId(customId);\n\t\tfor (const [nodeId, info] of nodes) if (info.metadata.id === sanitized) return nodeId;\n\t\treturn null;\n\t};\n\tconst computeDimExtent = (node, origin) =\u003e {\n\t\tif (origin === \"center\") return void 0;\n\t\tconst decl = node.boundingBoxDeclaration;\n\t\tif (!decl) return void 0;\n\t\tconst snap = {};\n\t\tfor (const [k, u] of Object.entries(node.uniforms)) snap[k] = u._rawDimensional !== void 0 ? u._rawDimensional : u.value;\n\t\tsubscribeSdfBoundsReresolve(node, snap.shapeSdfUrl);\n\t\treturn boxHalfExtentsUV(decl, snap, pxResWidth(), pxResHeight());\n\t};\n\tconst sdfBoundsSubscribed = /* @__PURE__ */ new WeakMap();\n\tconst subscribeSdfBoundsReresolve = (node, url) =\u003e {\n\t\tif (typeof url !== \"string\" || !url || isSdfContentBoundsScanned(url)) return;\n\t\tconst seen = sdfBoundsSubscribed.get(node) ?? /* @__PURE__ */ new Set();\n\t\tsdfBoundsSubscribed.set(node, seen);\n\t\tif (seen.has(url)) return;\n\t\tseen.add(url);\n\t\tgetSdfContentBounds(url, () =\u003e {\n\t\t\tseen.delete(url);\n\t\t\tif (nodes.get(node.id) !== node) return;\n\t\t\treresolveDimensionalUniforms(node);\n\t\t\tif (anyLayoutGroups()) markLayoutDirty();\n\t\t\trequestRender();\n\t\t});\n\t};\n\tconst reresolveDimensionalUniforms = (node) =\u003e {\n\t\tconst decl = node.boundingBoxDeclaration;\n\t\tconst extra = node.extraDimProps;\n\t\tconst plan = buildDimensionalPlan(decl, extra);\n\t\tif (!plan) return;\n\t\tconst origin = node.uniforms[\"origin\"]?.value ?? \"center\";\n\t\tconst he = computeDimExtent(node, origin);\n\t\tconst names = [...plan.positionProps, ...plan.sizeProps.keys()];\n\t\tfor (const name of names) {\n\t\t\tconst u = node.uniforms[name];\n\t\t\tif (!u || u._rawDimensional === void 0) continue;\n\t\t\tconst resolved = resolveDimensionalProp(decl, name, u._rawDimensional, origin, pxResWidth(), pxResHeight(), extra, he);\n\t\t\tu.value = resolved;\n\t\t\twritePropHandle(node, name, resolved);\n\t\t}\n\t};\n\tconst resolveDynamicBound = (node, propName, bound) =\u003e {\n\t\tif (typeof bound === \"number\") return bound;\n\t\tconst origin = node.uniforms[\"origin\"]?.value ?? \"center\";\n\t\tconst resolved = resolveDimensionalProp(node.boundingBoxDeclaration, propName, bound, origin, pxResWidth(), pxResHeight(), node.extraDimProps);\n\t\treturn typeof resolved === \"number\" ? resolved : bound?.value ?? 0;\n\t};\n\tconst aspectRatio = () =\u003e {\n\t\tconst { width, height } = bufferSize();\n\t\treturn width / Math.max(1, height);\n\t};\n\tconst transformFieldValues = (node) =\u003e {\n\t\tconst t = node.metadata.transform;\n\t\treturn {\n\t\t\toffsetX: t?.offsetX ?? 0,\n\t\t\toffsetY: t?.offsetY ?? 0,\n\t\t\trotation: t?.rotation ?? 0,\n\t\t\tscale: t?.scale ?? 1,\n\t\t\tanchorX: t?.anchorX ?? .5,\n\t\t\tanchorY: t?.anchorY ?? .5,\n\t\t\taspectRatio: aspectRatio()\n\t\t};\n\t};\n\tconst bboxFieldValues = (node) =\u003e {\n\t\tconst bbox = node.metadata.boundingBox;\n\t\tif (!bbox) return null;\n\t\tconst p = boundingBoxToUVParams(bbox, pxResWidth(), pxResHeight());\n\t\treturn {\n\t\t\tcenterX: p.centerX,\n\t\t\tcenterY: p.centerY,\n\t\t\thalfWidth: p.halfWidthUV,\n\t\t\thalfHeight: p.halfHeightUV,\n\t\t\tcornerRadius: p.cornerRadiusUV,\n\t\t\trotation: p.rotation,\n\t\t\taspectRatio: aspectRatio()\n\t\t};\n\t};\n\tconst bboxActive = (node) =\u003e !!node.metadata.boundingBox \u0026\u0026 !!node.boundingBoxDeclaration \u0026\u0026 !isIdentityBoundingBox(node.metadata.boundingBox);\n\tconst computeNodeBoundsUV = (node) =\u003e {\n\t\tconst decl = node.boundingBoxDeclaration;\n\t\tif (!decl || !node.uniforms) return null;\n\t\tif (!decl.computeBounds \u0026\u0026 !decl.propBindings) return null;\n\t\tconst snap = {};\n\t\tfor (const [k, u] of Object.entries(node.uniforms)) snap[k] = u._rawDimensional !== void 0 ? u._rawDimensional : u.value;\n\t\tconst he = boxHalfExtentsUV(decl, snap, pxResWidth(), pxResHeight());\n\t\tif (he.hwx \u003c= 0 \u0026\u0026 he.hhy \u003c= 0) return null;\n\t\tlet cx = .5;\n\t\tlet cy = .5;\n\t\tconst posProp = decl.propBindings?.x?.prop ?? decl.propBindings?.y?.prop;\n\t\tconst posValue = posProp ? node.uniforms[posProp]?.value : void 0;\n\t\tif (posValue \u0026\u0026 typeof posValue.x === \"number\" \u0026\u0026 typeof posValue.y === \"number\") {\n\t\t\tcx = posValue.x;\n\t\t\tcy = posValue.y;\n\t\t}\n\t\tif (posProp) {\n\t\t\tconst driver = node.metadata.maps?.[posProp];\n\t\t\tif (driver?.type === \"mouse-position\") {\n\t\t\t\tconst s = node.mouseDriverState[posProp];\n\t\t\t\tif (s) {\n\t\t\t\t\tcx = s.liveX ?? (typeof driver.x === \"number\" ? driver.x : s.currentX);\n\t\t\t\t\tcy = s.liveY ?? (typeof driver.y === \"number\" ? driver.y : s.currentY);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn {\n\t\t\tcenterX: cx,\n\t\t\tcenterY: cy,\n\t\t\thalfWidth: he.hwx,\n\t\t\thalfHeight: he.hhy\n\t\t};\n\t};\n\tconst childBoundsValues = (node) =\u003e {\n\t\tif (!node.definition.wantsBoundsParams) return null;\n\t\tconst children = findChildNodes(node.id).sort((a, b) =\u003e a.metadata.renderOrder - b.metadata.renderOrder);\n\t\tfor (const child of children) {\n\t\t\tif (child.metadata.visible === false) continue;\n\t\t\tif (bboxActive(child)) return null;\n\t\t\tconst b = computeNodeBoundsUV(child);\n\t\t\tif (b) return b;\n\t\t}\n\t\treturn null;\n\t};\n\tconst updateChildBounds = () =\u003e {\n\t\tfor (const node of nodes.values()) {\n\t\t\tif (!node.definition.wantsBoundsParams) continue;\n\t\t\tconst b = childBoundsValues(node);\n\t\t\tif (!b) continue;\n\t\t\twriteSyntheticScalar(node, \"_childBounds_centerX\", b.centerX);\n\t\t\twriteSyntheticScalar(node, \"_childBounds_centerY\", b.centerY);\n\t\t\twriteSyntheticScalar(node, \"_childBounds_halfWidth\", b.halfWidth);\n\t\t\twriteSyntheticScalar(node, \"_childBounds_halfHeight\", b.halfHeight);\n\t\t}\n\t};\n\tlet layoutDirty = false;\n\tconst markLayoutDirty = () =\u003e {\n\t\tlayoutDirty = true;\n\t\trequestRender();\n\t};\n\tconst anyLayoutGroups = () =\u003e {\n\t\tfor (const node of nodes.values()) {\n\t\t\tconst m = node.metadata.flow?.mode;\n\t\t\tif (m === \"column\" || m === \"row\") return true;\n\t\t}\n\t\treturn false;\n\t};\n\tconst buildLayoutView = (node) =\u003e {\n\t\tconst snap = {};\n\t\tfor (const [k, u] of Object.entries(node.uniforms)) snap[k] = u._rawDimensional !== void 0 ? u._rawDimensional : u.value;\n\t\tconst posProp = node.boundingBoxDeclaration?.propBindings?.x?.prop ?? node.boundingBoxDeclaration?.propBindings?.y?.prop;\n\t\tconst posValue = posProp ? node.uniforms[posProp]?.value : void 0;\n\t\tconst positionDriven = !!(posProp \u0026\u0026 (posValue?.type === \"mouse-position\" || node.metadata.maps?.[posProp]));\n\t\treturn {\n\t\t\tid: node.id,\n\t\t\tcomponentName: node.componentName,\n\t\t\tvisible: node.metadata.visible !== false,\n\t\t\tabsolute: node.metadata.absolute === true,\n\t\t\trequiresChild: node.requiresChild,\n\t\t\tlayout: node.metadata.flow,\n\t\t\tdecl: node.boundingBoxDeclaration,\n\t\t\tprops: snap,\n\t\t\tboundingBox: node.metadata.boundingBox,\n\t\t\tpositionDriven,\n\t\t\tchildren: findChildNodes(node.id).sort((a, b) =\u003e a.metadata.renderOrder - b.metadata.renderOrder).map(buildLayoutView)\n\t\t};\n\t};\n\tconst runLayoutPass = () =\u003e {\n\t\tif (!anyLayoutGroups()) {\n\t\t\tlayoutDirty = false;\n\t\t\treturn;\n\t\t}\n\t\tconst cw = pxResWidth();\n\t\tconst ch = pxResHeight();\n\t\tif (cw \u003c= 1 || ch \u003c= 1) return;\n\t\tlayoutDirty = false;\n\t\tconst roots = [];\n\t\tfor (const node of nodes.values()) if (node.parentId === null) roots.push(buildLayoutView(node));\n\t\tconst writes = computeTreeLayout(roots, cw, ch);\n\t\tfor (const w of writes) {\n\t\t\tconst node = nodes.get(w.id);\n\t\t\tif (!node) continue;\n\t\t\tif (w.kind === \"position\") {\n\t\t\t\tconst u = node.uniforms[w.prop];\n\t\t\t\tif (!u) continue;\n\t\t\t\tconst prev = u.value;\n\t\t\t\tconst next = prev \u0026\u0026 typeof prev === \"object\" ? {\n\t\t\t\t\t...prev,\n\t\t\t\t\tx: w.value.x,\n\t\t\t\t\ty: w.value.y\n\t\t\t\t} : w.value;\n\t\t\t\tu.value = next;\n\t\t\t\twritePropHandle(node, w.prop, next);\n\t\t\t} else {\n\t\t\t\tconst wasActive = bboxActive(node);\n\t\t\t\tnode.metadata.boundingBox = {\n\t\t\t\t\tx: {\n\t\t\t\t\t\tvalue: w.xPx,\n\t\t\t\t\t\tunit: \"px\"\n\t\t\t\t\t},\n\t\t\t\t\ty: {\n\t\t\t\t\t\tvalue: w.yPx,\n\t\t\t\t\t\tunit: \"px\"\n\t\t\t\t\t},\n\t\t\t\t\twidth: {\n\t\t\t\t\t\tvalue: w.widthPx,\n\t\t\t\t\t\tunit: \"px\"\n\t\t\t\t\t},\n\t\t\t\t\theight: {\n\t\t\t\t\t\tvalue: w.heightPx,\n\t\t\t\t\t\tunit: \"px\"\n\t\t\t\t\t},\n\t\t\t\t\torigin: \"top-left\",\n\t\t\t\t\trotation: node.metadata.boundingBox?.rotation ?? 0,\n\t\t\t\t\t...node.metadata.boundingBox?.cornerRadius ? { cornerRadius: node.metadata.boundingBox.cornerRadius } : {},\n\t\t\t\t\t...node.metadata.boundingBox?.lockAspect !== void 0 ? { lockAspect: node.metadata.boundingBox.lockAspect } : {}\n\t\t\t\t};\n\t\t\t\tif (!wasActive \u0026\u0026 bboxActive(node)) markStructuralDirty();\n\t\t\t\telse {\n\t\t\t\t\tconst bb = bboxFieldValues(node);\n\t\t\t\t\tif (bb) for (const [k, v] of Object.entries(bb)) writeSyntheticScalar(node, `_bbox_${k}`, v);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tconst runLayoutPassIfDirty = () =\u003e {\n\t\tif (layoutDirty) runLayoutPass();\n\t};\n\tlet unsubscribeNaturalSize = null;\n\tconst onFontsLoadedLayout = () =\u003e {\n\t\tif (anyLayoutGroups()) markLayoutDirty();\n\t};\n\tconst attachLayoutListeners = () =\u003e {\n\t\tif (!unsubscribeNaturalSize) unsubscribeNaturalSize = onNaturalSizeChange(() =\u003e {\n\t\t\tif (anyLayoutGroups()) markLayoutDirty();\n\t\t});\n\t\tif (typeof document !== \"undefined\" \u0026\u0026 document.fonts?.addEventListener) document.fonts.addEventListener(\"loadingdone\", onFontsLoadedLayout);\n\t};\n\tattachLayoutListeners();\n\tconst transformActive = (node) =\u003e needsTransformation(node.metadata.transform);\n\tconst ensureMapValues = (node, prop, driver) =\u003e {\n\t\tconst mv = node.mapValues[prop] ?? {\n\t\t\tinputMin: 0,\n\t\t\tinputMax: 1,\n\t\t\toutputMin: 0,\n\t\t\toutputMax: 1,\n\t\t\tcurve: 0\n\t\t};\n\t\tif (driver.type === \"map\") {\n\t\t\tconst c = driver;\n\t\t\tmv.inputMin = c.inputMin;\n\t\t\tmv.inputMax = c.inputMax;\n\t\t\tmv.outputMin = resolveDynamicBound(node, prop, c.outputMin);\n\t\t\tmv.outputMax = resolveDynamicBound(node, prop, c.outputMax);\n\t\t\tmv.curve = c.curve ?? 0;\n\t\t} else if (driver.type === \"mouse\") {\n\t\t\tconst c = driver;\n\t\t\tmv.outputMin = resolveDynamicBound(node, prop, c.outputMin);\n\t\t\tmv.outputMax = resolveDynamicBound(node, prop, c.outputMax);\n\t\t\tmv.curve = c.curve ?? 0;\n\t\t} else if (driver.type === \"auto-animate\") {\n\t\t\tconst c = driver;\n\t\t\tmv.outputMin = resolveDynamicBound(node, prop, c.outputMin);\n\t\t\tmv.outputMax = resolveDynamicBound(node, prop, c.outputMax);\n\t\t}\n\t\tnode.mapValues[prop] = mv;\n\t\treturn mv;\n\t};\n\tconst ensureMouseState = (node, prop, driver) =\u003e {\n\t\tlet s = node.mouseDriverState[prop];\n\t\tif (s) return s;\n\t\tif (driver.type === \"mouse-position\") {\n\t\t\tconst trackX = driver.x === void 0 || driver.x === \"mouse\";\n\t\t\tconst trackY = driver.y === void 0 || driver.y === \"mouse\";\n\t\t\ts = {\n\t\t\t\tcurrentX: trackX ? pointerX : driver.x,\n\t\t\t\tcurrentY: trackY ? pointerY : driver.y,\n\t\t\t\tvelocityX: 0,\n\t\t\t\tvelocityY: 0,\n\t\t\t\tpointerSnapped: pointerSeen\n\t\t\t};\n\t\t} else s = {\n\t\t\tcurrentX: Math.max(.001, driver.axis === \"x\" ? pointerX : pointerY),\n\t\t\tcurrentY: 0,\n\t\t\tvelocityX: 0,\n\t\t\tvelocityY: 0,\n\t\t\tpointerSnapped: pointerSeen\n\t\t};\n\t\tnode.mouseDriverState[prop] = s;\n\t\treturn s;\n\t};\n\tconst ensureDriverState = (node) =\u003e {\n\t\tconst maps = node.metadata.maps;\n\t\tif (!maps) return;\n\t\tfor (const [prop, driver] of Object.entries(maps)) {\n\t\t\tif (!(prop in node.uniforms)) continue;\n\t\t\tif (driver.type === \"map\") ensureMapValues(node, prop, driver);\n\t\t\telse if (driver.type === \"mouse-position\") ensureMouseState(node, prop, driver);\n\t\t\telse if (driver.type === \"mouse\") {\n\t\t\t\tensureMouseState(node, prop, driver);\n\t\t\t\tensureMapValues(node, prop, driver);\n\t\t\t} else if (driver.type === \"auto-animate\") {\n\t\t\t\tif (!node.autoAnimateState[prop]) node.autoAnimateState[prop] = {};\n\t\t\t\tensureMapValues(node, prop, driver);\n\t\t\t}\n\t\t}\n\t};\n\tconst animatedTimeKey = (node) =\u003e {\n\t\tconst at = node.definition.animatedTime;\n\t\treturn (at ? node.uniforms[at.speed] : void 0) ?? node;\n\t};\n\tconst extraAnimatedTimeKey = (node, speedProp) =\u003e node.uniforms[speedProp] ?? node;\n\tconst buildFieldInits = (node) =\u003e {\n\t\tconst inits = [];\n\t\tfor (const [propName, u] of Object.entries(node.uniforms)) inits.push({\n\t\t\tname: propName,\n\t\t\tinitial: u.value,\n\t\t\ttransform: u.transform,\n\t\t\tcpu: u.cpu,\n\t\t\tschema: u.schema\n\t\t});\n\t\tinits.push({\n\t\t\tname: \"_opacity\",\n\t\t\tschema: f32,\n\t\t\tinitial: node.metadata.opacity ?? 1\n\t\t});\n\t\tif (node.definition.animatedTime) inits.push({\n\t\t\tname: \"_animTime\",\n\t\t\tschema: f32,\n\t\t\tinitial: getAnimatedTimeState(animatedTimeKey(node)).value\n\t\t});\n\t\tif (node.definition.extraAnimatedTimes) for (const [key, speedProp] of Object.entries(node.definition.extraAnimatedTimes)) inits.push({\n\t\t\tname: `_animTime_${key}`,\n\t\t\tschema: f32,\n\t\t\tinitial: getAnimatedTimeState(extraAnimatedTimeKey(node, speedProp)).value\n\t\t});\n\t\tconst extraFields = node.definition.extraFields;\n\t\tif (extraFields) for (const [name, f] of Object.entries(extraFields)) inits.push({\n\t\t\tname,\n\t\t\tschema: f.schema,\n\t\t\tinitial: f.initial\n\t\t});\n\t\tif (transformActive(node)) {\n\t\t\tconst tf = transformFieldValues(node);\n\t\t\tfor (const [k, v] of Object.entries(tf)) inits.push({\n\t\t\t\tname: `_xform_${k}`,\n\t\t\t\tschema: f32,\n\t\t\t\tinitial: v\n\t\t\t});\n\t\t}\n\t\tif (bboxActive(node)) {\n\t\t\tconst bb = bboxFieldValues(node);\n\t\t\tif (bb) for (const [k, v] of Object.entries(bb)) inits.push({\n\t\t\t\tname: `_bbox_${k}`,\n\t\t\t\tschema: f32,\n\t\t\t\tinitial: v\n\t\t\t});\n\t\t}\n\t\tif (node.definition.wantsBoundsParams) {\n\t\t\tconst cb = childBoundsValues(node) ?? {\n\t\t\t\tcenterX: .5,\n\t\t\t\tcenterY: .5,\n\t\t\t\thalfWidth: .5,\n\t\t\t\thalfHeight: .5\n\t\t\t};\n\t\t\tfor (const [k, v] of Object.entries(cb)) inits.push({\n\t\t\t\tname: `_childBounds_${k}`,\n\t\t\t\tschema: f32,\n\t\t\t\tinitial: v\n\t\t\t});\n\t\t}\n\t\tconst maps = node.metadata.maps;\n\t\tif (maps) {\n\t\t\tensureDriverState(node);\n\t\t\tfor (const [prop, driver] of Object.entries(maps)) {\n\t\t\t\tif (!(prop in node.uniforms)) continue;\n\t\t\t\tif (driver.type === \"map\") {\n\t\t\t\t\tconst mv = node.mapValues[prop];\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_map_${prop}_inputMin`,\n\t\t\t\t\t\tschema: f32,\n\t\t\t\t\t\tinitial: mv.inputMin\n\t\t\t\t\t});\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_map_${prop}_inputMax`,\n\t\t\t\t\t\tschema: f32,\n\t\t\t\t\t\tinitial: mv.inputMax\n\t\t\t\t\t});\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_map_${prop}_outputMin`,\n\t\t\t\t\t\tschema: f32,\n\t\t\t\t\t\tinitial: mv.outputMin\n\t\t\t\t\t});\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_map_${prop}_outputMax`,\n\t\t\t\t\t\tschema: f32,\n\t\t\t\t\t\tinitial: mv.outputMax\n\t\t\t\t\t});\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_map_${prop}_curve`,\n\t\t\t\t\t\tschema: f32,\n\t\t\t\t\t\tinitial: mv.curve\n\t\t\t\t\t});\n\t\t\t\t} else if (driver.type === \"mouse-position\") {\n\t\t\t\t\tconst s = node.mouseDriverState[prop];\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_smoothed_${prop}`,\n\t\t\t\t\t\tschema: vec2f$1,\n\t\t\t\t\t\tinitial: [s.currentX, 1 - s.currentY]\n\t\t\t\t\t});\n\t\t\t\t} else if (driver.type === \"mouse\") {\n\t\t\t\t\tconst mv = node.mapValues[prop];\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_smoothed_${prop}`,\n\t\t\t\t\t\tschema: f32,\n\t\t\t\t\t\tinitial: mv.outputMin\n\t\t\t\t\t});\n\t\t\t\t} else if (driver.type === \"auto-animate\") {\n\t\t\t\t\tconst mv = node.mapValues[prop];\n\t\t\t\t\tinits.push({\n\t\t\t\t\t\tname: `_smoothed_${prop}`,\n\t\t\t\t\t\tschema: f32,\n\t\t\t\t\t\tinitial: mv.outputMin\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn inits;\n\t};\n\tconst writePropHandle = (node, propName, value) =\u003e {\n\t\tconst h = node._liveHandles?.[propName];\n\t\tif (!h) return;\n\t\tsetColorSpaceModeFn?.(rendererColorSpace);\n\t\tupdateFieldValue(h, value);\n\t};\n\tconst writeSyntheticScalar = (node, field, value) =\u003e {\n\t\tconst h = node._liveHandles?.[field];\n\t\tif (h instanceof FieldHandle) h.value = value;\n\t};\n\tconst writeExtraFieldValue = (node, field, value) =\u003e {\n\t\tconst h = node._liveHandles?.[field];\n\t\tif (h instanceof FieldHandle) h.value = value;\n\t\telse if (h instanceof ArrayFieldHandle \u0026\u0026 Array.isArray(value)) h.array = value;\n\t};\n\tconst nodeColorSpaceMode = (node) =\u003e {\n\t\tfor (const u of Object.values(node.uniforms)) if (u.transform === transformColorSpace) {\n\t\t\tconst raw = u.value;\n\t\t\tif (typeof raw === \"string\") return transformColorSpace(raw);\n\t\t\tif (typeof raw === \"number\") return raw;\n\t\t}\n\t\treturn 0;\n\t};\n\tconst repackColorStops = (node) =\u003e {\n\t\tif (!node.uniforms.convertedColorsArray) return;\n\t\tlet stops = null;\n\t\tfor (const u of Object.values(node.uniforms)) if (u.transform === colorStopsTransform) {\n\t\t\tstops = u.value ?? null;\n\t\t\tbreak;\n\t\t}\n\t\tconst packed = packStops(stops, colorToRGBA);\n\t\tconst converted = packConvertedStops(packed.colors, packed.stopCount, nodeColorSpaceMode(node));\n\t\tconst write = (name, value) =\u003e {\n\t\t\tconst u = node.uniforms[name];\n\t\t\tif (u) u.value = value;\n\t\t\twritePropHandle(node, name, value);\n\t\t};\n\t\twrite(\"colorsArray\", packed.colors);\n\t\twrite(\"positionsArray\", packed.positions);\n\t\twrite(\"convertedColorsArray\", converted);\n\t\twrite(\"stopCount\", packed.stopCount);\n\t};\n\tconst repackListProp = (node, propName) =\u003e {\n\t\tconst u = node.uniforms[propName];\n\t\tconst spec = u?._listSpec;\n\t\tif (!u || !spec) return;\n\t\tconst raw = u._rawList;\n\t\tconst driven = /* @__PURE__ */ new Set();\n\t\tconst items = resolveListItems(raw, spec, {\n\t\t\tcolor: colorToRGBA,\n\t\t\tdrivenPosition: (index, field, driver) =\u003e {\n\t\t\t\tconst key = listDriverPath(propName, index, field);\n\t\t\t\tdriven.add(key);\n\t\t\t\tconst st = ensureMouseState(node, key, driver);\n\t\t\t\treturn st.liveX !== void 0 \u0026\u0026 st.liveY !== void 0 ? {\n\t\t\t\t\tx: st.liveX,\n\t\t\t\t\ty: 1 - st.liveY\n\t\t\t\t} : void 0;\n\t\t\t}\n\t\t});\n\t\tfor (const key of Object.keys(node.mouseDriverState)) {\n\t\t\tconst path = parseListDriverPath(key);\n\t\t\tif (path \u0026\u0026 path.prop === propName \u0026\u0026 !driven.has(key)) delete node.mouseDriverState[key];\n\t\t}\n\t\tu.value = items;\n\t\twritePropHandle(node, propName, items);\n\t\tconst packed = packList(items, spec);\n\t\tconst write = (name, value) =\u003e {\n\t\t\tconst f = node.uniforms[name];\n\t\t\tif (f) f.value = value;\n\t\t\twritePropHandle(node, name, value);\n\t\t};\n\t\tfor (const [field, lanes] of Object.entries(packed.fields)) write(listFieldName(propName, field), lanes);\n\t\twrite(listCountName(propName), packed.count);\n\t};\n\tconst driverForKey = (node, key) =\u003e {\n\t\tconst top = node.metadata.maps?.[key];\n\t\tif (top) return top;\n\t\tconst path = parseListDriverPath(key);\n\t\tif (!path) return void 0;\n\t\tconst raw = node.uniforms[path.prop]?._rawList;\n\t\tconst value = (Array.isArray(raw) ? raw[path.index] : void 0)?.[path.field];\n\t\treturn isPositionDriver(value) ? value : void 0;\n\t};\n\tconst listsUseMouse = (node) =\u003e Object.values(node.uniforms).some((u) =\u003e u._listSpec \u0026\u0026 listHasDrivers(u._rawList, u._listSpec));\n\tconst writeNodeSynthetic = (node) =\u003e {\n\t\twriteSyntheticScalar(node, \"_opacity\", node.metadata.opacity ?? 1);\n\t\tif (node.definition.animatedTime) writeSyntheticScalar(node, \"_animTime\", getAnimatedTimeState(animatedTimeKey(node)).value);\n\t\tif (node.definition.extraAnimatedTimes) for (const [key, speedProp] of Object.entries(node.definition.extraAnimatedTimes)) writeSyntheticScalar(node, `_animTime_${key}`, getAnimatedTimeState(extraAnimatedTimeKey(node, speedProp)).value);\n\t\tif (transformActive(node)) for (const [k, v] of Object.entries(transformFieldValues(node))) writeSyntheticScalar(node, `_xform_${k}`, v);\n\t\tif (bboxActive(node)) {\n\t\t\tconst bb = bboxFieldValues(node);\n\t\t\tif (bb) for (const [k, v] of Object.entries(bb)) writeSyntheticScalar(node, `_bbox_${k}`, v);\n\t\t}\n\t\tconst maps = node.metadata.maps;\n\t\tif (maps) {\n\t\t\tfor (const [prop, driver] of Object.entries(maps)) if (driver.type === \"map\" \u0026\u0026 node.mapValues[prop]) {\n\t\t\t\tconst mv = node.mapValues[prop];\n\t\t\t\twriteSyntheticScalar(node, `_map_${prop}_inputMin`, mv.inputMin);\n\t\t\t\twriteSyntheticScalar(node, `_map_${prop}_inputMax`, mv.inputMax);\n\t\t\t\twriteSyntheticScalar(node, `_map_${prop}_outputMin`, mv.outputMin);\n\t\t\t\twriteSyntheticScalar(node, `_map_${prop}_outputMax`, mv.outputMax);\n\t\t\t\twriteSyntheticScalar(node, `_map_${prop}_curve`, mv.curve);\n\t\t\t}\n\t\t}\n\t};\n\tconst propHandleView = (node, handles) =\u003e {\n\t\tconst out = {};\n\t\tfor (const propName of Object.keys(node.uniforms)) {\n\t\t\tconst h = handles[propName];\n\t\t\tif (h) out[propName] = h;\n\t\t}\n\t\treturn out;\n\t};\n\tconst sotHandleView = (node) =\u003e {\n\t\tconst out = {};\n\t\tfor (const [propName, u] of Object.entries(node.uniforms)) out[propName] = {\n\t\t\taccessorPath: \"\",\n\t\t\tcpu: !!u.cpu,\n\t\t\tvalue: u.value\n\t\t};\n\t\treturn out;\n\t};\n\tconst makeRegistryNode = (node, handles) =\u003e ({\n\t\tid: node.id,\n\t\tcustomId: node.metadata.id,\n\t\tcomponentName: node.componentName,\n\t\tparentId: node.parentId,\n\t\tdefinition: node.definition,\n\t\tmetadata: node.metadata,\n\t\thandles,\n\t\tdomCanvas: node.domCanvas\n\t});\n\tconst buildRegistryView = (store, handlesById) =\u003e {\n\t\tconst cache = /* @__PURE__ */ new Map();\n\t\tconst build = (node) =\u003e {\n\t\t\treturn makeRegistryNode(node, store \u0026\u0026 handlesById ? propHandleView(node, handlesById.get(node.id) ?? {}) : sotHandleView(node));\n\t\t};\n\t\tconst getNode = (id) =\u003e {\n\t\t\tconst hit = cache.get(id);\n\t\t\tif (hit) return hit;\n\t\t\tconst node = nodes.get(id);\n\t\t\tif (!node) return void 0;\n\t\t\tconst rn = build(node);\n\t\t\tcache.set(id, rn);\n\t\t\treturn rn;\n\t\t};\n\t\treturn {\n\t\t\trootId,\n\t\t\tgetNode,\n\t\t\tgetChildren: (pid) =\u003e findChildNodes(pid).map((n) =\u003e getNode(n.id)),\n\t\t\tresolveCustomId: (cid) =\u003e findNodeByCustomId(cid),\n\t\t\tstore: {\n\t\t\t\tgpuAccessor: (h, layoutVar) =\u003e store ? store.gpuAccessor(h, layoutVar) : \"\",\n\t\t\t\tlayout: store?.layout\n\t\t\t}\n\t\t};\n\t};\n\tconst composeOptions = () =\u003e ({\n\t\ttoneMapping: rendererToneMapping,\n\t\tflipY: false,\n\t\tpremultiplyAlpha: true,\n\t\tcanvas: canvasElement ?? void 0,\n\t\tdimensions: bufferSize(),\n\t\tgpu: root ? {\n\t\t\tdevice: root.device,\n\t\t\troot\n\t\t} : void 0,\n\t\twriteExtraField: (nodeId, name, value) =\u003e {\n\t\t\tconst node = nodes.get(nodeId);\n\t\t\tif (node) writeExtraFieldValue(node, name, value);\n\t\t},\n\t\tcreateMediaTexture: (opts) =\u003e {\n\t\t\tif (!textureManager) throw new Error(\"[gpu] createMediaTexture before init\");\n\t\t\treturn textureManager.createMediaTexture(opts);\n\t\t},\n\t\tcreateDataTexture: (opts) =\u003e {\n\t\t\tif (!textureManager) throw new Error(\"[gpu] createDataTexture before init\");\n\t\t\treturn textureManager.createDataTexture(opts);\n\t\t},\n\t\tresolveMapWindow: (nodeId, prop) =\u003e {\n\t\t\tconst node = nodes.get(nodeId);\n\t\t\tconst driver = node?.metadata.maps?.[prop];\n\t\t\tif (!node || !driver || driver.type !== \"map\") return void 0;\n\t\t\tconst mv = ensureMapValues(node, prop, driver);\n\t\t\treturn {\n\t\t\t\tinputMin: mv.inputMin,\n\t\t\t\tinputMax: mv.inputMax,\n\t\t\t\toutputMin: mv.outputMin,\n\t\t\t\toutputMax: mv.outputMax,\n\t\t\t\tcurve: mv.curve\n\t\t\t};\n\t\t},\n\t\tresolveDriverCpuValue: (nodeId, prop) =\u003e {\n\t\t\tconst node = nodes.get(nodeId);\n\t\t\tif (!node) return void 0;\n\t\t\tif (prop === \"_animTime\" || prop.startsWith(\"_animTime_\")) {\n\t\t\t\tconst h = node._liveHandles?.[prop];\n\t\t\t\treturn h instanceof FieldHandle ? h.value : void 0;\n\t\t\t}\n\t\t\tconst driver = node.metadata.maps?.[prop];\n\t\t\tif (!driver) return void 0;\n\t\t\tif (driver.type === \"mouse-position\") {\n\t\t\t\tconst s = node.mouseDriverState[prop];\n\t\t\t\tif (!s || s.liveX === void 0 || s.liveY === void 0) return void 0;\n\t\t\t\treturn {\n\t\t\t\t\tx: s.liveX,\n\t\t\t\t\ty: 1 - s.liveY\n\t\t\t\t};\n\t\t\t}\n\t\t\tif (driver.type === \"mouse\" || driver.type === \"auto-animate\") {\n\t\t\t\tconst h = node._liveHandles?.[`_smoothed_${prop}`];\n\t\t\t\treturn h instanceof FieldHandle ? h.value : void 0;\n\t\t\t}\n\t\t}\n\t});\n\tconst extraHashInputs = () =\u003e {\n\t\tconst parts = [];\n\t\tfor (const [id, node] of nodes) {\n\t\t\tconst m = node.metadata;\n\t\t\tparts.push(`aopac:${id}:${(m.opacity ?? 1) \u003c 1}`);\n\t\t\tconst sc = node.uniforms.stopCount?.value;\n\t\t\tif (typeof sc === \"number\") parts.push(`stops:${id}:${sc \u003e 1 ? sc : 0}`);\n\t\t\tfor (const [prop, u] of Object.entries(node.uniforms)) {\n\t\t\t\tif (!u.compileTimeWhen) continue;\n\t\t\t\tconst v = u._lastCompiledValue;\n\t\t\t\tif (typeof v !== \"number\" \u0026\u0026 typeof v !== \"boolean\") continue;\n\t\t\t\tparts.push(`ctw:${id}:${prop}:${String(v)}`);\n\t\t\t}\n\t\t\tif (m.maps) {\n\t\t\t\tconst fp = Object.entries(m.maps).sort(([a], [b]) =\u003e a \u003c b ? -1 : a \u003e b ? 1 : 0).map(([p, dr]) =\u003e {\n\t\t\t\t\tconst cfg = dr;\n\t\t\t\t\treturn `${p}=${cfg.type}:${cfg.source ?? \"\"}:${cfg.channel ?? \"\"}:${cfg.axis ?? \"\"}`;\n\t\t\t\t}).join(\",\");\n\t\t\t\tparts.push(`mapfp:${id}:${fp}`);\n\t\t\t}\n\t\t}\n\t\treturn parts;\n\t};\n\tconst computeStructuralHash = () =\u003e {\n\t\tif (!rootId) return null;\n\t\treturn structuralHash([...collectStructuralHashInputs(buildRegistryView(null, null), composeOptions()), ...extraHashInputs()]);\n\t};\n\tconst bufferSize = () =\u003e ({\n\t\twidth: Math.max(1, Math.round(currentWidth * pixelRatio)),\n\t\theight: Math.max(1, Math.round(currentHeight * pixelRatio))\n\t});\n\tconst mediaResourcesFromIr = (ir) =\u003e {\n\t\tconst out = {};\n\t\tfor (const t of ir.textures) if (t.kind !== \"rtt\" \u0026\u0026 t.resource) out[t.key] = t.resource;\n\t\treturn out;\n\t};\n\tconst buildComposition = (hash) =\u003e {\n\t\tif (!root || !textureManager || !dispatcher) throw new Error(\"[gpu] buildComposition before init\");\n\t\tconst store = createUniformStore(root, { systemSchema: SystemUniforms });\n\t\tconst handlesById = /* @__PURE__ */ new Map();\n\t\tfor (const [id, node] of nodes) handlesById.set(id, store.defineNode(id, buildFieldInits(node)));\n\t\tstore.defineSystem();\n\t\tstore.finalize();\n\t\tconst ir = composeNodeTree(buildRegistryView(store, handlesById), composeOptions());\n\t\tconst pm = createPassManager(root, {\n\t\t\ttextureManager,\n\t\t\tdispatcher\n\t\t});\n\t\tpm.setComposition(ir, store.bindGroup, bufferSize(), mediaResourcesFromIr(ir));\n\t\tconst bc = {\n\t\t\thash,\n\t\t\tstore,\n\t\t\tir,\n\t\t\tpassManager: pm,\n\t\t\thandlesById,\n\t\t\tfresh: true\n\t\t};\n\t\tliveCompositions.add(bc);\n\t\treturn bc;\n\t};\n\tconst disposeComposition = (bc) =\u003e {\n\t\ttry {\n\t\t\tfor (const cb of bc.ir.onCleanup) cb();\n\t\t} catch (e) {\n\t\t\tdebugError(\"[gpu] composition onCleanup error:\", e);\n\t\t}\n\t\ttry {\n\t\t\tbc.passManager.dispose();\n\t\t} catch (e) {\n\t\t\tdebugError(\"[gpu] passManager dispose error:\", e);\n\t\t}\n\t\ttry {\n\t\t\tbc.store.destroy();\n\t\t} catch (e) {\n\t\t\tdebugError(\"[gpu] store destroy error:\", e);\n\t\t}\n\t\tliveCompositions.delete(bc);\n\t\tif (boundComposition === bc) boundComposition = null;\n\t};\n\tconst bindComposition = (bc) =\u003e {\n\t\tlet repointed = false;\n\t\tfor (const [id, handles] of bc.handlesById) {\n\t\t\tconst node = nodes.get(id);\n\t\t\tif (node \u0026\u0026 node._liveHandles !== handles) {\n\t\t\t\tnode._liveHandles = handles;\n\t\t\t\trepointed = true;\n\t\t\t}\n\t\t}\n\t\tif (bc === boundComposition \u0026\u0026 !repointed) return;\n\t\tif (!bc.fresh) {\n\t\t\tfor (const node of nodes.values()) {\n\t\t\t\tfor (const [propName, u] of Object.entries(node.uniforms)) writePropHandle(node, propName, u.value);\n\t\t\t\tensureDriverState(node);\n\t\t\t\twriteNodeSynthetic(node);\n\t\t\t}\n\t\t\tbc.store.writeAll();\n\t\t}\n\t\tbc.fresh = false;\n\t\tboundComposition = bc;\n\t\tif (!hasEmittedReady \u0026\u0026 bc.ir.composedNodeIds.size \u003e 0) firstRenderPending = true;\n\t};\n\tconst markStructuralDirty = () =\u003e {\n\t\tstructuralDirty = true;\n\t\tif (anyLayoutGroups()) layoutDirty = true;\n\t\trequestRender();\n\t};\n\tconst requestRender = () =\u003e {\n\t\tif (failureReason) return;\n\t\tif (frameLoop.running) return;\n\t\tif (pendingRenderRAF !== null) return;\n\t\tif (typeof requestAnimationFrame !== \"function\") return;\n\t\tpendingRenderRAF = requestAnimationFrame(() =\u003e {\n\t\t\tpendingRenderRAF = null;\n\t\t\trenderFrame();\n\t\t});\n\t};\n\tconst registerNode = (id, fragmentNodeFunc, parentId, metadata, uniforms = {}, componentDefinition, domCanvas) =\u003e {\n\t\tif (failureReason) return;\n\t\tif (fragmentNodeFunc === null) {\n\t\t\tconst queueIndex = pendingRegistrationQueue.findIndex((item) =\u003e item.id === id);\n\t\t\tif (queueIndex !== -1) {\n\t\t\t\tpendingRegistrationQueue.splice(queueIndex, 1);\n\t\t\t\tpendingNodeUpdates = pendingNodeUpdates.filter((u) =\u003e u.id !== id);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tremoveNode(id);\n\t\t\treturn;\n\t\t}\n\t\tif (!componentDefinition) {\n\t\t\tconsole.error(`[gpu] registerNode(\"${id}\") requires a componentDefinition`);\n\t\t\treturn;\n\t\t}\n\t\tif (!isRendererReady) {\n\t\t\tconst existing = pendingRegistrationQueue.findIndex((item) =\u003e item.id === id);\n\t\t\tconst entry = {\n\t\t\t\tid,\n\t\t\t\tdefinition: componentDefinition,\n\t\t\t\tparentId,\n\t\t\t\tmetadata,\n\t\t\t\tuniforms,\n\t\t\t\tdomCanvas\n\t\t\t};\n\t\t\tif (existing !== -1) {\n\t\t\t\tpendingRegistrationQueue[existing] = entry;\n\t\t\t\tpendingNodeUpdates = pendingNodeUpdates.filter((u) =\u003e u.id !== id);\n\t\t\t} else pendingRegistrationQueue.push(entry);\n\t\t\treturn;\n\t\t}\n\t\tlet defaultRenderOrder = 0;\n\t\tif (parentId !== null) {\n\t\t\tconst siblings = parentToChildren.get(parentId);\n\t\t\tif (siblings \u0026\u0026 siblings.size \u003e 0) {\n\t\t\t\tlet maxOrder = 0;\n\t\t\t\tfor (const siblingId of siblings) {\n\t\t\t\t\tconst sibling = nodes.get(siblingId);\n\t\t\t\t\tif (sibling \u0026\u0026 sibling.metadata.renderOrder \u003e maxOrder) maxOrder = sibling.metadata.renderOrder;\n\t\t\t\t}\n\t\t\t\tdefaultRenderOrder = maxOrder + 1;\n\t\t\t}\n\t\t}\n\t\tconst nodeMetadata = {\n\t\t\tblendMode: metadata?.blendMode || \"normal\",\n\t\t\topacity: metadata?.opacity,\n\t\t\tvisible: metadata?.visible === false ? false : true,\n\t\t\tid: metadata?.id ? sanitizeId(metadata.id) : metadata?.id,\n\t\t\tmask: metadata?.mask,\n\t\t\tmaps: metadata?.maps,\n\t\t\trenderOrder: metadata?.renderOrder !== void 0 ? metadata.renderOrder : defaultRenderOrder,\n\t\t\ttransform: metadata?.transform,\n\t\t\tboundingBox: metadata?.boundingBox,\n\t\t\tflow: metadata?.flow,\n\t\t\tabsolute: metadata?.absolute\n\t\t};\n\t\tconst decl = componentDefinition.boundingBoxDeclaration;\n\t\tconst extraDimProps = componentDefinition.props ? buildExtraSizeProps(componentDefinition.props) : void 0;\n\t\tconst node = {\n\t\t\tid,\n\t\t\tcomponentName: componentDefinition.name || \"Unknown\",\n\t\t\tparentId,\n\t\t\tdefinition: componentDefinition,\n\t\t\tmetadata: nodeMetadata,\n\t\t\tuniforms,\n\t\t\tdomCanvas,\n\t\t\trequiresRTT: !!componentDefinition.requiresRTT,\n\t\t\trequiresChild: !!componentDefinition.requiresChild,\n\t\t\tblendWithChildren: !!componentDefinition.blendWithChildren,\n\t\t\tacceptsUVContext: !!componentDefinition.acceptsUVContext,\n\t\t\tprovidesUVContextViaCompute: !!componentDefinition.providesUVContextViaCompute,\n\t\t\tusesPointer: !!componentDefinition.usesPointer,\n\t\t\thasUvRemap: !!componentDefinition.uvRemap,\n\t\t\tboundingBoxDeclaration: decl,\n\t\t\twantsBoundsParams: !!componentDefinition.wantsBoundsParams,\n\t\t\textraDimProps,\n\t\t\tmouseDriverState: {},\n\t\t\tautoAnimateState: {},\n\t\t\tmapValues: {},\n\t\t\t_liveHandles: null\n\t\t};\n\t\tif (decl || extraDimProps) {\n\t\t\tconst plan = buildDimensionalPlan(decl, extraDimProps);\n\t\t\tif (plan) {\n\t\t\t\tconst origin = uniforms[\"origin\"]?.value ?? \"center\";\n\t\t\t\tconst he = computeDimExtent(node, origin);\n\t\t\t\tfor (const name of [...plan.positionProps, ...plan.sizeProps.keys()]) {\n\t\t\t\t\tconst u = uniforms[name];\n\t\t\t\t\tif (!u) continue;\n\t\t\t\t\tif (u._rawDimensional === void 0) u._rawDimensional = u.value;\n\t\t\t\t\tu.value = resolveDimensionalProp(decl, name, u._rawDimensional, origin, pxResWidth(), pxResHeight(), extraDimProps, he);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tfor (const u of Object.values(uniforms)) if (u.compileTimeWhen \u0026\u0026 u._lastCompiledValue === void 0) u._lastCompiledValue = u.value;\n\t\tnodes.set(id, node);\n\t\tif (parentId === null) rootId = id;\n\t\tconst childrenSet = parentToChildren.get(parentId) || /* @__PURE__ */ new Set();\n\t\tchildrenSet.add(id);\n\t\tparentToChildren.set(parentId, childrenSet);\n\t\tupdateMouseListenerRegistration();\n\t\tmarkStructuralDirty();\n\t\tif (anyLayoutGroups()) markLayoutDirty();\n\t};\n\tconst deferUntilRegistered = (update) =\u003e {\n\t\tif (pendingRegistrationQueue.some((q) =\u003e q.id === update.id)) pendingNodeUpdates.push(update);\n\t};\n\tconst updateUniformValue = (nodeId, uniformName, value) =\u003e {\n\t\tconst node = nodes.get(nodeId);\n\t\tif (!node) {\n\t\t\tdeferUntilRegistered({\n\t\t\t\tid: nodeId,\n\t\t\t\tkind: \"uniform\",\n\t\t\t\tname: uniformName,\n\t\t\t\tvalue\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tconst u = node.uniforms[uniformName];\n\t\tif (!u) return;\n\t\tconst decl = node.boundingBoxDeclaration;\n\t\tconst extra = node.extraDimProps;\n\t\tif ((decl || extra) \u0026\u0026 isDimensionalProp(decl, uniformName, extra)) {\n\t\t\tu._rawDimensional = value;\n\t\t\tconst origin = node.uniforms[\"origin\"]?.value ?? \"center\";\n\t\t\tconst he = computeDimExtent(node, origin);\n\t\t\tvalue = resolveDimensionalProp(decl, uniformName, value, origin, pxResWidth(), pxResHeight(), extra, he);\n\t\t}\n\t\tif (u.transform === listPropTransform) {\n\t\t\tu._rawList = value;\n\t\t\trepackListProp(node, uniformName);\n\t\t\tupdateMouseListenerRegistration();\n\t\t\trequestRender();\n\t\t\treturn;\n\t\t}\n\t\tu.value = value;\n\t\twritePropHandle(node, uniformName, value);\n\t\tif (u.transform === colorStopsTransform || u.transform === transformColorSpace) repackColorStops(node);\n\t\tif (uniformName === \"origin\" \u0026\u0026 decl) reresolveDimensionalUniforms(node);\n\t\telse if (decl) {\n\t\t\tif ((node.uniforms[\"origin\"]?.value ?? \"center\") !== \"center\") {\n\t\t\t\tconst plan = buildDimensionalPlan(decl, extra);\n\t\t\t\tconst affectsExtent = !!decl.computeBounds || (plan?.sizeProps.has(uniformName) ?? false);\n\t\t\t\tconst isPositionProp = plan?.positionProps.has(uniformName) ?? false;\n\t\t\t\tif (affectsExtent \u0026\u0026 !isPositionProp) reresolveDimensionalUniforms(node);\n\t\t\t}\n\t\t}\n\t\tif (uniformName === \"shape\") updateMouseListenerRegistration();\n\t\tif (anyLayoutGroups()) markLayoutDirty();\n\t\tif (u.compileTime) {\n\t\t\tmarkStructuralDirty();\n\t\t\treturn;\n\t\t}\n\t\tif (u.compileTimeWhen) {\n\t\t\tconst prev = u._lastCompiledValue;\n\t\t\tif (u.compileTimeWhen(prev, value)) {\n\t\t\t\tu._lastCompiledValue = value;\n\t\t\t\tmarkStructuralDirty();\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\trequestRender();\n\t};\n\tconst updateNodeMetadata = (nodeId, metadata) =\u003e {\n\t\tconst node = nodes.get(nodeId);\n\t\tif (!node) {\n\t\t\tdeferUntilRegistered({\n\t\t\t\tid: nodeId,\n\t\t\t\tkind: \"metadata\",\n\t\t\t\tmetadata\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tlet needsRecompose = false;\n\t\tif (metadata.blendMode !== void 0 \u0026\u0026 node.metadata.blendMode !== metadata.blendMode) {\n\t\t\tnode.metadata.blendMode = metadata.blendMode;\n\t\t\tneedsRecompose = true;\n\t\t}\n\t\tif (metadata.opacity !== void 0 \u0026\u0026 node.metadata.opacity !== metadata.opacity) {\n\t\t\tconst oldOpacity = node.metadata.opacity ?? 1;\n\t\t\tconst newOpacity = metadata.opacity;\n\t\t\tnode.metadata.opacity = newOpacity;\n\t\t\twriteSyntheticScalar(node, \"_opacity\", newOpacity);\n\t\t\tif (oldOpacity \u003e= 1 !== newOpacity \u003e= 1) needsRecompose = true;\n\t\t}\n\t\tif (metadata.renderOrder !== void 0 \u0026\u0026 node.metadata.renderOrder !== metadata.renderOrder) {\n\t\t\tnode.metadata.renderOrder = metadata.renderOrder;\n\t\t\tneedsRecompose = true;\n\t\t}\n\t\tif (\"visible\" in metadata) {\n\t\t\tconst newVisible = metadata.visible === false ? false : true;\n\t\t\tif (node.metadata.visible !== newVisible) {\n\t\t\t\tnode.metadata.visible = newVisible;\n\t\t\t\tneedsRecompose = true;\n\t\t\t}\n\t\t}\n\t\tif (metadata.id !== void 0) {\n\t\t\tconst sanitized = sanitizeId(metadata.id);\n\t\t\tif (node.metadata.id !== sanitized) {\n\t\t\t\tnode.metadata.id = sanitized;\n\t\t\t\tneedsRecompose = true;\n\t\t\t}\n\t\t}\n\t\tif (\"mask\" in metadata \u0026\u0026 (node.metadata.mask?.source !== metadata.mask?.source || node.metadata.mask?.type !== metadata.mask?.type)) {\n\t\t\tnode.metadata.mask = metadata.mask;\n\t\t\tneedsRecompose = true;\n\t\t}\n\t\tif (\"maps\" in metadata \u0026\u0026 JSON.stringify(node.metadata.maps) !== JSON.stringify(metadata.maps)) {\n\t\t\tconst oldMaps = node.metadata.maps;\n\t\t\tconst newMaps = metadata.maps;\n\t\t\tnode.metadata.maps = newMaps;\n\t\t\tupdateMouseListenerRegistration();\n\t\t\tif ((() =\u003e {\n\t\t\t\tif (!oldMaps || !newMaps) return true;\n\t\t\t\tconst oldKeys = Object.keys(oldMaps);\n\t\t\t\tconst newKeys = Object.keys(newMaps);\n\t\t\t\tif (oldKeys.length !== newKeys.length || !oldKeys.every((k) =\u003e k in newMaps)) return true;\n\t\t\t\tfor (const key of newKeys) {\n\t\t\t\t\tconst oldCfg = oldMaps[key];\n\t\t\t\t\tconst newCfg = newMaps[key];\n\t\t\t\t\tif (oldCfg.type !== newCfg.type) return true;\n\t\t\t\t\tif (newCfg.type === \"map\") {\n\t\t\t\t\t\tconst oc = oldCfg;\n\t\t\t\t\t\tconst nc = newCfg;\n\t\t\t\t\t\tif (oc.source !== nc.source || oc.channel !== nc.channel) return true;\n\t\t\t\t\t} else if (newCfg.type === \"mouse\") {\n\t\t\t\t\t\tif (oldCfg.axis !== newCfg.axis) return true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn false;\n\t\t\t})()) {\n\t\t\t\tif (oldMaps \u0026\u0026 newMaps) {\n\t\t\t\t\tfor (const key of Object.keys(oldMaps)) if (key in newMaps \u0026\u0026 oldMaps[key].type !== newMaps[key].type) {\n\t\t\t\t\t\tdelete node.mouseDriverState[key];\n\t\t\t\t\t\tdelete node.autoAnimateState[key];\n\t\t\t\t\t\tdelete node.mapValues[key];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tneedsRecompose = true;\n\t\t\t} else if (newMaps) for (const [key, driver] of Object.entries(newMaps)) {\n\t\t\t\tconst mv = ensureMapValues(node, key, driver);\n\t\t\t\tif (driver.type === \"map\") {\n\t\t\t\t\twriteSyntheticScalar(node, `_map_${key}_inputMin`, mv.inputMin);\n\t\t\t\t\twriteSyntheticScalar(node, `_map_${key}_inputMax`, mv.inputMax);\n\t\t\t\t\twriteSyntheticScalar(node, `_map_${key}_outputMin`, mv.outputMin);\n\t\t\t\t\twriteSyntheticScalar(node, `_map_${key}_outputMax`, mv.outputMax);\n\t\t\t\t\twriteSyntheticScalar(node, `_map_${key}_curve`, mv.curve);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (metadata.transform !== void 0) {\n\t\t\tconst prev = node.metadata.transform;\n\t\t\tconst merged = {\n\t\t\t\toffsetX: metadata.transform.offsetX ?? prev?.offsetX ?? 0,\n\t\t\t\toffsetY: metadata.transform.offsetY ?? prev?.offsetY ?? 0,\n\t\t\t\trotation: metadata.transform.rotation ?? prev?.rotation ?? 0,\n\t\t\t\tscale: metadata.transform.scale ?? prev?.scale ?? 1,\n\t\t\t\tanchorX: metadata.transform.anchorX ?? prev?.anchorX ?? .5,\n\t\t\t\tanchorY: metadata.transform.anchorY ?? prev?.anchorY ?? .5,\n\t\t\t\tedges: metadata.transform.edges ?? prev?.edges ?? \"transparent\"\n\t\t\t};\n\t\t\tconst wasActive = transformActive(node);\n\t\t\tnode.metadata.transform = merged;\n\t\t\tconst nowActive = needsTransformation(merged);\n\t\t\tif (wasActive !== nowActive || prev \u0026\u0026 prev.edges !== merged.edges) needsRecompose = true;\n\t\t\telse if (nowActive) for (const [k, v] of Object.entries(transformFieldValues(node))) writeSyntheticScalar(node, `_xform_${k}`, v);\n\t\t}\n\t\tif (metadata.boundingBox !== void 0 \u0026\u0026 metadata.boundingBox !== null \u0026\u0026 node.boundingBoxDeclaration !== void 0) {\n\t\t\tconst wasActive = bboxActive(node);\n\t\t\tnode.metadata.boundingBox = metadata.boundingBox;\n\t\t\tconst nowActive = bboxActive(node);\n\t\t\tif (wasActive !== nowActive) needsRecompose = true;\n\t\t\telse if (nowActive) {\n\t\t\t\tconst bb = bboxFieldValues(node);\n\t\t\t\tif (bb) for (const [k, v] of Object.entries(bb)) writeSyntheticScalar(node, `_bbox_${k}`, v);\n\t\t\t}\n\t\t} else if (metadata.boundingBox === null) {\n\t\t\tif (node.metadata.boundingBox !== void 0) {\n\t\t\t\tnode.metadata.boundingBox = void 0;\n\t\t\t\tneedsRecompose = true;\n\t\t\t}\n\t\t}\n\t\tif (\"flow\" in metadata \u0026\u0026 JSON.stringify(node.metadata.flow) !== JSON.stringify(metadata.flow)) {\n\t\t\tconst wasActive = node.metadata.flow?.mode === \"column\" || node.metadata.flow?.mode === \"row\";\n\t\t\tnode.metadata.flow = metadata.flow ?? void 0;\n\t\t\tconst nowActive = node.metadata.flow?.mode === \"column\" || node.metadata.flow?.mode === \"row\";\n\t\t\tif (wasActive \u0026\u0026 !nowActive) {\n\t\t\t\tconst restore = (id) =\u003e {\n\t\t\t\t\tfor (const child of findChildNodes(id)) {\n\t\t\t\t\t\treresolveDimensionalUniforms(child);\n\t\t\t\t\t\trestore(child.id);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\trestore(nodeId);\n\t\t\t}\n\t\t\tmarkLayoutDirty();\n\t\t}\n\t\tif (\"absolute\" in metadata \u0026\u0026 node.metadata.absolute !== metadata.absolute) {\n\t\t\tnode.metadata.absolute = metadata.absolute;\n\t\t\tif (metadata.absolute) reresolveDimensionalUniforms(node);\n\t\t\tmarkLayoutDirty();\n\t\t}\n\t\tif (anyLayoutGroups()) markLayoutDirty();\n\t\tif (needsRecompose) markStructuralDirty();\n\t\telse requestRender();\n\t};\n\tconst removeNode = (id) =\u003e {\n\t\tconst node = nodes.get(id);\n\t\tif (!node) return;\n\t\tfor (const child of findChildNodes(id)) removeNode(child.id);\n\t\tif (rootId === id) rootId = null;\n\t\tconst siblingSet = parentToChildren.get(node.parentId);\n\t\tif (siblingSet) {\n\t\t\tsiblingSet.delete(id);\n\t\t\tif (siblingSet.size === 0) parentToChildren.delete(node.parentId);\n\t\t}\n\t\tnodes.delete(id);\n\t\tupdateMouseListenerRegistration();\n\t\tmarkStructuralDirty();\n\t\tif (anyLayoutGroups()) markLayoutDirty();\n\t};\n\tconst updateMouseDrivers = () =\u003e {\n\t\tconst deltaTime = frameParams.deltaTime;\n\t\tglobalElapsedTime = deriveElapsedTime(sharedTimeOrigin, globalElapsedTime, deltaTime, performance.now());\n\t\tfor (const node of nodes.values()) {\n\t\t\tconst maps = node.metadata.maps ?? {};\n\t\t\tfor (const propName in node.mouseDriverState) {\n\t\t\t\tconst state = node.mouseDriverState[propName];\n\t\t\t\tconst driver = driverForKey(node, propName);\n\t\t\t\tif (!driver) continue;\n\t\t\t\tif (driver.type === \"mouse-position\") {\n\t\t\t\t\tconst smoothing = driver.smoothing ?? 0;\n\t\t\t\t\tconst momentum = driver.momentum ?? 0;\n\t\t\t\t\tconst trackX = driver.x === void 0 || driver.x === \"mouse\";\n\t\t\t\t\tconst trackY = driver.y === void 0 || driver.y === \"mouse\";\n\t\t\t\t\tif (!state.pointerSnapped \u0026\u0026 pointerSeen) {\n\t\t\t\t\t\tstate.pointerSnapped = true;\n\t\t\t\t\t\tif (trackX) {\n\t\t\t\t\t\t\tstate.currentX = pointerX;\n\t\t\t\t\t\t\tstate.velocityX = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (trackY) {\n\t\t\t\t\t\t\tstate.currentY = pointerY;\n\t\t\t\t\t\t\tstate.velocityY = 0;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tlet finalX;\n\t\t\t\t\tlet finalY;\n\t\t\t\t\tif (trackX) {\n\t\t\t\t\t\tconst [nx, vx] = applySpring(state.currentX, state.velocityX, pointerX, smoothing, momentum, deltaTime);\n\t\t\t\t\t\tstate.currentX = nx;\n\t\t\t\t\t\tstate.velocityX = vx;\n\t\t\t\t\t\tfinalX = nx;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfinalX = driver.x;\n\t\t\t\t\t\tstate.velocityX = 0;\n\t\t\t\t\t}\n\t\t\t\t\tif (trackY) {\n\t\t\t\t\t\tconst [ny, vy] = applySpring(state.currentY, state.velocityY, pointerY, smoothing, momentum, deltaTime);\n\t\t\t\t\t\tstate.currentY = ny;\n\t\t\t\t\t\tstate.velocityY = vy;\n\t\t\t\t\t\tfinalY = ny;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfinalY = driver.y;\n\t\t\t\t\t\tstate.velocityY = 0;\n\t\t\t\t\t}\n\t\t\t\t\tconst reach = driver.reach ?? 1;\n\t\t\t\t\tconst originX = driver.originX ?? .5;\n\t\t\t\t\tconst originY = driver.originY ?? .5;\n\t\t\t\t\tconst xSign = driver.invertX ? -1 : 1;\n\t\t\t\t\tconst ySign = driver.invertY ? -1 : 1;\n\t\t\t\t\tconst scaledX = originX + xSign * (finalX - originX) * reach;\n\t\t\t\t\tconst scaledY = originY + ySign * (finalY - originY) * reach;\n\t\t\t\t\tlet localX = scaledX;\n\t\t\t\t\tlet localY = scaledY;\n\t\t\t\t\tconst bb = node.metadata.boundingBox;\n\t\t\t\t\tif (bb \u0026\u0026 node.boundingBoxDeclaration?.supportsResizeFit \u0026\u0026 bboxActive(node)) {\n\t\t\t\t\t\tconst p = boundingBoxToUVParams(bb, pxResWidth(), pxResHeight());\n\t\t\t\t\t\tconst bl = screenUVToBoxLocal$1(scaledX, scaledY, {\n\t\t\t\t\t\t\tcenterX: p.centerX,\n\t\t\t\t\t\t\tcenterY: p.centerY,\n\t\t\t\t\t\t\thalfWidthUV: p.halfWidthUV,\n\t\t\t\t\t\t\thalfHeightUV: p.halfHeightUV,\n\t\t\t\t\t\t\trotationDeg: p.rotation,\n\t\t\t\t\t\t\taspectRatio: aspectRatio()\n\t\t\t\t\t\t});\n\t\t\t\t\t\tlocalX = bl.x;\n\t\t\t\t\t\tlocalY = bl.y;\n\t\t\t\t\t}\n\t\t\t\t\tstate.liveX = localX;\n\t\t\t\t\tstate.liveY = localY;\n\t\t\t\t\tconst h = node._liveHandles?.[`_smoothed_${propName}`];\n\t\t\t\t\tif (h instanceof FieldHandle) h.setComponents(localX, 1 - localY);\n\t\t\t\t} else if (driver.type === \"mouse\") {\n\t\t\t\t\tconst smoothing = driver.smoothing ?? 0;\n\t\t\t\t\tconst momentum = driver.momentum ?? 0;\n\t\t\t\t\tconst target = driver.axis === \"x\" ? pointerX : pointerY;\n\t\t\t\t\tif (!state.pointerSnapped \u0026\u0026 pointerSeen) {\n\t\t\t\t\t\tstate.pointerSnapped = true;\n\t\t\t\t\t\tstate.currentX = Math.max(.001, target);\n\t\t\t\t\t\tstate.velocityX = 0;\n\t\t\t\t\t}\n\t\t\t\t\tconst [nx, vx] = applySpring(state.currentX, state.velocityX, target, smoothing, momentum, deltaTime);\n\t\t\t\t\tstate.currentX = nx;\n\t\t\t\t\tstate.velocityX = vx;\n\t\t\t\t\tconst smoothed01 = Math.max(.001, nx);\n\t\t\t\t\tconst mv = node.mapValues[propName];\n\t\t\t\t\tconst resolved = mv ? mv.outputMin + (mv.outputMax - mv.outputMin) * Math.pow(smoothed01, Math.pow(2, -mv.curve * 2)) : smoothed01;\n\t\t\t\t\tstate.liveScalar = resolved;\n\t\t\t\t\twriteSyntheticScalar(node, `_smoothed_${propName}`, resolved);\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor (const [prop, u] of Object.entries(node.uniforms)) if (u._listSpec \u0026\u0026 listHasDrivers(u._rawList, u._listSpec)) repackListProp(node, prop);\n\t\t\tfor (const propName in node.autoAnimateState) {\n\t\t\t\tconst driver = maps[propName];\n\t\t\t\tif (!driver || driver.type !== \"auto-animate\") continue;\n\t\t\t\tconst globalT = globalElapsedTime * (driver.speed ?? 1) * .2;\n\t\t\t\tlet phase;\n\t\t\t\tconst easing = driver.easing ?? driver.waveform ?? \"sine\";\n\t\t\t\tif (driver.mode === \"loop\") phase = applyEasing((globalT % 1 + 1) % 1, easing);\n\t\t\t\telse {\n\t\t\t\t\tconst t01 = (globalT % 1 + 1) % 1;\n\t\t\t\t\tphase = applyEasing(t01 \u003c .5 ? t01 * 2 : (1 - t01) * 2, easing);\n\t\t\t\t}\n\t\t\t\tconst mv = node.mapValues[propName];\n\t\t\t\tconst outputMin = mv ? mv.outputMin : resolveDynamicBound(node, propName, driver.outputMin);\n\t\t\t\tconst outputMax = mv ? mv.outputMax : resolveDynamicBound(node, propName, driver.outputMax);\n\t\t\t\tconst newValue = outputMin + phase * (outputMax - outputMin);\n\t\t\t\tconst u = node.uniforms[propName];\n\t\t\t\tif (u?.compileTimeWhen) {\n\t\t\t\t\tconst prev = u._lastCompiledValue;\n\t\t\t\t\tif (u.compileTimeWhen(prev, newValue)) {\n\t\t\t\t\t\tu._lastCompiledValue = newValue;\n\t\t\t\t\t\tmarkStructuralDirty();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\twriteSyntheticScalar(node, `_smoothed_${propName}`, newValue);\n\t\t\t}\n\t\t}\n\t};\n\tconst updateAnimatedTime = () =\u003e {\n\t\tconst dt = frameParams.deltaTime;\n\t\tfor (const node of nodes.values()) {\n\t\t\tconst at = node.definition.animatedTime;\n\t\t\tif (at) {\n\t\t\t\tconst speedU = node.uniforms[at.speed];\n\t\t\t\tconst speed = speedU ? Number(speedU.value) || 0 : 0;\n\t\t\t\tconst state = getAnimatedTimeState(animatedTimeKey(node));\n\t\t\t\tstate.advance(dt, speed);\n\t\t\t\twriteSyntheticScalar(node, \"_animTime\", state.value);\n\t\t\t}\n\t\t\tconst extras = node.definition.extraAnimatedTimes;\n\t\t\tif (extras) for (const [key, speedProp] of Object.entries(extras)) {\n\t\t\t\tconst su = node.uniforms[speedProp];\n\t\t\t\tconst sp = su ? Number(su.value) || 0 : 0;\n\t\t\t\tconst st = getAnimatedTimeState(extraAnimatedTimeKey(node, speedProp));\n\t\t\t\tst.advance(dt, sp);\n\t\t\t\twriteSyntheticScalar(node, `_animTime_${key}`, st.value);\n\t\t\t}\n\t\t}\n\t};\n\tconst clampToTextureCap$1 = (w, h) =\u003e clampToTextureCap(w, h, {\n\t\tmaxTextureDim: cachedMaxTextureDim,\n\t\tpixelRatio,\n\t\tviewportWidth: typeof window !== \"undefined\" ? window.innerWidth : w,\n\t\tviewportHeight: typeof window !== \"undefined\" ? window.innerHeight : h\n\t});\n\tconst basePixelRatio = () =\u003e {\n\t\tconst deviceRatio = (typeof window !== \"undefined\" ? window.devicePixelRatio : 1) || 1;\n\t\treturn Math.min(deviceRatio, maxPixelRatioForDevice());\n\t};\n\tconst applyRendererDimensions = (width, height, rawWidth, rawHeight) =\u003e {\n\t\tif (hasInitialDimensions \u0026\u0026 width === currentWidth \u0026\u0026 height === currentHeight \u0026\u0026 rawWidth === logicalWidth \u0026\u0026 rawHeight === logicalHeight) {\n\t\t\tconst { width: curBufW, height: curBufH } = bufferSize();\n\t\t\tif (!canvasElement || canvasElement.width === curBufW \u0026\u0026 canvasElement.height === curBufH) return;\n\t\t}\n\t\tcurrentWidth = width;\n\t\tcurrentHeight = height;\n\t\tlogicalWidth = rawWidth;\n\t\tlogicalHeight = rawHeight;\n\t\tsetShaderCanvasDimensions(rawWidth, rawHeight);\n\t\tif (!hasInitialDimensions) {\n\t\t\thasInitialDimensions = true;\n\t\t\tif (nodes.size \u003e 0) markStructuralDirty();\n\t\t}\n\t\tconst { width: bufW, height: bufH } = bufferSize();\n\t\tif (canvasElement) {\n\t\t\tcanvasElement.width = bufW;\n\t\t\tcanvasElement.height = bufH;\n\t\t}\n\t\tlet anyTextureRecreated = false;\n\t\tfor (const c of liveCompositions) if (c.passManager.resize(bufW, bufH)) anyTextureRecreated = true;\n\t\tfor (const c of liveCompositions) for (const cb of c.ir.onResize) try {\n\t\t\tcb({\n\t\t\t\twidth: bufW,\n\t\t\t\theight: bufH\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tdebugError(\"[gpu] composition onResize error:\", e);\n\t\t}\n\t\tfor (const node of nodes.values()) {\n\t\t\tif (transformActive(node)) writeSyntheticScalar(node, \"_xform_aspectRatio\", aspectRatio());\n\t\t\tif (bboxActive(node)) {\n\t\t\t\tconst bb = bboxFieldValues(node);\n\t\t\t\tif (bb) for (const [k, v] of Object.entries(bb)) writeSyntheticScalar(node, `_bbox_${k}`, v);\n\t\t\t}\n\t\t\treresolveDimensionalUniforms(node);\n\t\t}\n\t\trunLayoutPass();\n\t\tif (anyTextureRecreated) for (const c of liveCompositions) {\n\t\t\twriteSystemUniforms(c.store);\n\t\t\tc.store.flush();\n\t\t\tc.passManager.repaintRtt();\n\t\t}\n\t\tlastRenderTime = 0;\n\t\trenderFrame();\n\t};\n\tconst updateRendererDimensions = (width, height) =\u003e {\n\t\tif (width \u003c= 0 || height \u003c= 0) return;\n\t\tif (width === lastRequestedWidth \u0026\u0026 height === lastRequestedHeight) return;\n\t\tlastRequestedWidth = width;\n\t\tlastRequestedHeight = height;\n\t\tpendingResize = {\n\t\t\twidth,\n\t\t\theight\n\t\t};\n\t\tif (!isResizeScheduled \u0026\u0026 typeof requestAnimationFrame === \"function\") {\n\t\t\tisResizeScheduled = true;\n\t\t\trequestAnimationFrame(() =\u003e {\n\t\t\t\tisResizeScheduled = false;\n\t\t\t\tif (!pendingResize) return;\n\t\t\t\tconst raw = pendingResize;\n\t\t\t\tpendingResize = null;\n\t\t\t\tconst { width: cw, height: ch } = clampToTextureCap$1(raw.width, raw.height);\n\t\t\t\tapplyRendererDimensions(cw, ch, raw.width, raw.height);\n\t\t\t});\n\t\t}\n\t};\n\tconst handleResize = (entries) =\u003e {\n\t\tconst entry = entries[0];\n\t\tif (!entry) return;\n\t\tlet width, height;\n\t\tif (entry.contentBoxSize) {\n\t\t\tconst boxSize = Array.isArray(entry.contentBoxSize) ? entry.contentBoxSize[0] : entry.contentBoxSize;\n\t\t\tif (boxSize) {\n\t\t\t\twidth = Math.round(boxSize.inlineSize);\n\t\t\t\theight = Math.round(boxSize.blockSize);\n\t\t\t} else {\n\t\t\t\twidth = Math.round(entry.contentRect.width);\n\t\t\t\theight = Math.round(entry.contentRect.height);\n\t\t\t}\n\t\t} else {\n\t\t\twidth = Math.round(entry.contentRect.width);\n\t\t\theight = Math.round(entry.contentRect.height);\n\t\t}\n\t\tif (width === 0 || height === 0) return;\n\t\tupdateRendererDimensions(width, height);\n\t};\n\tconst handleVisibilityChange = (entries) =\u003e {\n\t\tconst entry = entries[0];\n\t\tif (!entry) return;\n\t\tisVisible = entry.isIntersecting;\n\t};\n\tconst canRender = () =\u003e isInitialized \u0026\u0026 !!root \u0026\u0026 !!context \u0026\u0026 currentWidth \u003e 0 \u0026\u0026 currentHeight \u003e 0;\n\tconst writeSystemUniforms = (store) =\u003e {\n\t\tconst sys = store.systemHandles;\n\t\tconst { width, height } = bufferSize();\n\t\tconst bpr = basePixelRatio();\n\t\tconst set = (name, value) =\u003e {\n\t\t\tconst h = sys[name];\n\t\t\tif (h instanceof FieldHandle) h.value = value;\n\t\t};\n\t\tset(\"time\", globalElapsedTime);\n\t\tset(\"viewportSize\", [width, height]);\n\t\tset(\"logicalViewportSize\", [pxResWidth() * bpr, pxResHeight() * bpr]);\n\t\tset(\"aspect\", width / Math.max(1, height));\n\t\tset(\"pointer\", [pointerX, pointerY]);\n\t\tset(\"pointerActive\", pointerActive ? 1 : 0);\n\t};\n\tconst runCallbacks = (callbacks) =\u003e {\n\t\tfor (const cb of callbacks) try {\n\t\t\tcb(frameParams);\n\t\t} catch (e) {\n\t\t\tdebugError(\"[gpu] render callback error:\", e);\n\t\t}\n\t};\n\tconst renderFrameInternal = (overrideDeltaTime) =\u003e {\n\t\tif (failureReason || !canRender()) return;\n\t\tconst now = performance.now();\n\t\tlet delta;\n\t\tif (overrideDeltaTime !== void 0) delta = overrideDeltaTime;\n\t\telse {\n\t\t\tconst gate = frameGate(now, {\n\t\t\t\tlastRenderTime,\n\t\t\t\tisVisible,\n\t\t\t\tforceFullFrameRate,\n\t\t\t\tminInterval: frameIntervalCap\n\t\t\t});\n\t\t\tif (!gate.render) return;\n\t\t\tdelta = gate.deltaTime;\n\t\t}\n\t\tlastRenderTime = now;\n\t\tif (enablePerformanceTracking) performance.mark(\"shader-cpu-start\");\n\t\tconst hasRealPointer = pointerX \u003e -5;\n\t\tframeParams.deltaTime = delta;\n\t\tframeParams.pointer.x = hasRealPointer ? pointerX : .5;\n\t\tframeParams.pointer.y = hasRealPointer ? pointerY : .5;\n\t\tframeParams.pointer.seen = pointerSeen;\n\t\tframeParams.pointerActive = pointerActive;\n\t\tframeParams.dimensions.width = currentWidth;\n\t\tframeParams.dimensions.height = currentHeight;\n\t\tlet built = null;\n\t\tlet renderComp = null;\n\t\ttry {\n\t\t\trunFrameSequence({\n\t\t\t\tupdateDrivers: () =\u003e {\n\t\t\t\t\tupdateMouseDrivers();\n\t\t\t\t\tupdateAnimatedTime();\n\t\t\t\t\tupdateChildBounds();\n\t\t\t\t\trunLayoutPassIfDirty();\n\t\t\t\t},\n\t\t\t\tensureComposition: () =\u003e {\n\t\t\t\t\tif (structuralDirty || desiredHash === null) {\n\t\t\t\t\t\tdesiredHash = computeStructuralHash();\n\t\t\t\t\t\tstructuralDirty = false;\n\t\t\t\t\t}\n\t\t\t\t\tif (desiredHash === null) return false;\n\t\t\t\t\tbuilt = pipelineCache.getOrBuild(desiredHash, () =\u003e buildComposition(desiredHash));\n\t\t\t\t\tbindComposition(built);\n\t\t\t\t\treturn !!boundComposition;\n\t\t\t\t},\n\t\t\t\tbeforeRender: () =\u003e runCallbacks(boundComposition.ir.onBeforeRender),\n\t\t\t\tflush: () =\u003e {\n\t\t\t\t\twriteSystemUniforms(boundComposition.store);\n\t\t\t\t\tboundComposition.store.flush();\n\t\t\t\t},\n\t\t\t\trender: () =\u003e {\n\t\t\t\t\tif (enablePerformanceTracking) performance.mark(\"shader-gpu-start\");\n\t\t\t\t\trenderComp = pipelineCache.renderValue ?? built;\n\t\t\t\t\trenderComp?.passManager.render(context, frameParams, () =\u003e boundComposition?.store.flush());\n\t\t\t\t\tif (enablePerformanceTracking) {\n\t\t\t\t\t\tperformance.mark(\"shader-gpu-end\");\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tperformance.measure(\"shader-gpu-time\", \"shader-gpu-start\", \"shader-gpu-end\");\n\t\t\t\t\t\t\tconst gpuMeasure = performance.getEntriesByName(\"shader-gpu-time\")[0];\n\t\t\t\t\t\t\tif (gpuMeasure) performanceTracker.recordGpuTime(gpuMeasure.duration);\n\t\t\t\t\t\t\tperformance.clearMeasures(\"shader-gpu-time\");\n\t\t\t\t\t\t\tperformance.clearMarks(\"shader-gpu-start\");\n\t\t\t\t\t\t\tperformance.clearMarks(\"shader-gpu-end\");\n\t\t\t\t\t\t} catch {}\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tmarkReady: () =\u003e {\n\t\t\t\t\tpipelineCache.markReady(desiredHash);\n\t\t\t\t\tif (firstRenderPending \u0026\u0026 !hasEmittedReady) {\n\t\t\t\t\t\thasEmittedReady = true;\n\t\t\t\t\t\tfirstRenderPending = false;\n\t\t\t\t\t\tif (onReadyCallback) queueMicrotask(onReadyCallback);\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tafterRender: () =\u003e runCallbacks((renderComp ?? boundComposition).ir.onAfterRender)\n\t\t\t});\n\t\t\tconsecutiveRenderErrors = 0;\n\t\t} catch (error) {\n\t\t\tnoteRenderFailure(error);\n\t\t\treturn;\n\t\t}\n\t\tif (enablePerformanceTracking) {\n\t\t\tperformance.mark(\"shader-cpu-end\");\n\t\t\ttry {\n\t\t\t\tperformance.measure(\"shader-cpu-time\", \"shader-cpu-start\", \"shader-cpu-end\");\n\t\t\t\tconst cpuMeasure = performance.getEntriesByName(\"shader-cpu-time\")[0];\n\t\t\t\tif (cpuMeasure) performanceTracker.recordCpuTime(cpuMeasure.duration);\n\t\t\t\tperformance.clearMarks(\"shader-cpu-start\");\n\t\t\t\tperformance.clearMarks(\"shader-cpu-end\");\n\t\t\t\tperformance.clearMeasures(\"shader-cpu-time\");\n\t\t\t} catch {}\n\t\t}\n\t\tperformanceTracker.recordFrame(performance.now() - now);\n\t};\n\tconst renderFrame = () =\u003e renderFrameInternal(void 0);\n\tconst renderAndWait = async (options) =\u003e {\n\t\tif (failureReason) return;\n\t\tif (!canRender()) throw new Error(\"Renderer is not ready\");\n\t\tconst wasAnimating = frameLoop.running;\n\t\tif (wasAnimating) stopAnimation();\n\t\tlastRenderTime = 0;\n\t\trenderFrame();\n\t\tif (root \u0026\u0026 options?.waitForGpu !== false) await awaitGpuIdle(root);\n\t\tif (wasAnimating) startAnimation();\n\t};\n\tconst renderSyntheticFrame = async (deltaSeconds, options) =\u003e {\n\t\trenderFrameInternal(deltaSeconds);\n\t\tif (root \u0026\u0026 options?.waitForGpu !== false) await awaitGpuIdle(root);\n\t};\n\tconst startAnimation = () =\u003e {\n\t\tif (failureReason || frameLoop.running || !shouldAnimate) return;\n\t\tperformanceTracker.setRendering(true);\n\t\tframeLoop.start();\n\t};\n\tconst stopAnimation = () =\u003e {\n\t\tif (!frameLoop.running) return;\n\t\tframeLoop.stop();\n\t\tperformanceTracker.setRendering(false);\n\t};\n\tconst updatePointerCoords = (event) =\u003e {\n\t\tif (!canvasElement) return;\n\t\tcachedCanvasRect = canvasElement.getBoundingClientRect();\n\t\tlet clientX;\n\t\tlet clientY;\n\t\tif (\"touches\" in event) {\n\t\t\tif (event.touches.length === 0) return;\n\t\t\tclientX = event.touches[0].clientX;\n\t\t\tclientY = event.touches[0].clientY;\n\t\t} else {\n\t\t\tclientX = event.clientX;\n\t\t\tclientY = event.clientY;\n\t\t}\n\t\tpointerX = (clientX - cachedCanvasRect.left) / cachedCanvasRect.width;\n\t\tpointerY = (clientY - cachedCanvasRect.top) / cachedCanvasRect.height;\n\t\tpointerSeen = true;\n\t};\n\tconst onPointerMove = (event) =\u003e {\n\t\tif (!isInitialized || !canvasElement) return;\n\t\tupdatePointerCoords(event);\n\t\tpointerActive = true;\n\t\trequestRender();\n\t};\n\tconst onTouchMove = (event) =\u003e {\n\t\tif (!isInitialized || !canvasElement) return;\n\t\tupdatePointerCoords(event);\n\t\tpointerActive = true;\n\t\trequestRender();\n\t};\n\tconst onPointerUp = () =\u003e {\n\t\tif (!isInitialized) return;\n\t\tpointerActive = false;\n\t\trequestRender();\n\t};\n\tconst onTouchEnd = () =\u003e {\n\t\tif (!isInitialized) return;\n\t\tpointerActive = false;\n\t\trequestRender();\n\t};\n\tconst pressWithinCanvas = (clientX, clientY) =\u003e {\n\t\tif (!isInitialized || !canvasElement) return false;\n\t\tconst rect = canvasElement.getBoundingClientRect();\n\t\tif (rect.width === 0 || rect.height === 0) return false;\n\t\treturn clientX \u003e= rect.left \u0026\u0026 clientX \u003c= rect.right \u0026\u0026 clientY \u003e= rect.top \u0026\u0026 clientY \u003c= rect.bottom;\n\t};\n\tconst onPointerDown = (event) =\u003e {\n\t\tif (event.button !== 0) return;\n\t\tif (!pressWithinCanvas(event.clientX, event.clientY)) return;\n\t\tpointerActive = true;\n\t\tupdatePointerCoords(event);\n\t\trequestRender();\n\t};\n\tconst onTouchStart = (event) =\u003e {\n\t\tif (event.touches.length === 0) return;\n\t\tif (!pressWithinCanvas(event.touches[0].clientX, event.touches[0].clientY)) return;\n\t\tpointerActive = true;\n\t\tupdatePointerCoords(event);\n\t\trequestRender();\n\t};\n\tconst updateMouseListenerRegistration = () =\u003e {\n\t\tlet needsMouse = false;\n\t\tfor (const node of nodes.values()) {\n\t\t\tif (node.usesPointer) {\n\t\t\t\tneedsMouse = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (shapeConfigUsesMouse(node.uniforms?.shape?.value) || listsUseMouse(node)) {\n\t\t\t\tneedsMouse = true;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (!node.metadata.maps) continue;\n\t\t\tfor (const driver of Object.values(node.metadata.maps)) if (driver \u0026\u0026 typeof driver === \"object\" \u0026\u0026 \"type\" in driver) {\n\t\t\t\tconst t = driver.type;\n\t\t\t\tif (t === \"mouse\" || t === \"mouse-position\") {\n\t\t\t\t\tneedsMouse = true;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (needsMouse) break;\n\t\t}\n\t\tif (needsMouse \u0026\u0026 !mouseListenersNeeded) {\n\t\t\tmouseListenersNeeded = true;\n\t\t\tif (!globalEventUnregister \u0026\u0026 canvasElement) globalEventUnregister = globalEventManager.register({\n\t\t\t\tonMouseMove: onPointerMove,\n\t\t\t\tonTouchMove,\n\t\t\t\tonMouseDown: onPointerDown,\n\t\t\t\tonTouchStart,\n\t\t\t\tonMouseUp: onPointerUp,\n\t\t\t\tonTouchEnd\n\t\t\t});\n\t\t} else if (!needsMouse \u0026\u0026 mouseListenersNeeded) {\n\t\t\tmouseListenersNeeded = false;\n\t\t\tif (globalEventUnregister) {\n\t\t\t\tglobalEventUnregister();\n\t\t\t\tglobalEventUnregister = null;\n\t\t\t}\n\t\t}\n\t};\n\tconst processQueuedRegistrations = () =\u003e {\n\t\tif (pendingRegistrationQueue.length === 0) return;\n\t\tconst queue = [...pendingRegistrationQueue];\n\t\tpendingRegistrationQueue = [];\n\t\tfor (const q of queue) registerNode(q.id, q.definition.fragment, q.parentId, q.metadata, q.uniforms, q.definition, q.domCanvas);\n\t\tconst updates = pendingNodeUpdates;\n\t\tpendingNodeUpdates = [];\n\t\tfor (const u of updates) if (u.kind === \"uniform\") updateUniformValue(u.id, u.name, u.value);\n\t\telse updateNodeMetadata(u.id, u.metadata);\n\t};\n\tconst fail = (reason, error) =\u003e {\n\t\tif (failureReason) return;\n\t\tfailureReason = reason;\n\t\tmarkGpuUnusable(reason);\n\t\tdebugError(`[gpu] renderer stopped (${reason}):`, error);\n\t\ttry {\n\t\t\tcleanup();\n\t\t} catch (e) {\n\t\t\tdebugError(\"[gpu] cleanup during failure threw:\", e);\n\t\t}\n\t\tif (!hasNotifiedUnavailable \u0026\u0026 onUnavailableCallback) {\n\t\t\thasNotifiedUnavailable = true;\n\t\t\tconst cb = onUnavailableCallback;\n\t\t\tqueueMicrotask(() =\u003e {\n\t\t\t\ttry {\n\t\t\t\t\tcb(reason, error);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tdebugError(\"[gpu] onUnavailable callback threw:\", e);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\tconst noteRenderFailure = (error) =\u003e {\n\t\tif (isGpuUnavailableError(error)) {\n\t\t\tfail(error.reason, error);\n\t\t\treturn;\n\t\t}\n\t\tconsecutiveRenderErrors++;\n\t\tif (consecutiveRenderErrors === 1) debugError(\"[gpu] render error:\", error);\n\t\tif (consecutiveRenderErrors \u003e= MAX_CONSECUTIVE_RENDER_ERRORS) fail(\"render-failed\", error);\n\t};\n\tconst attachUncapturedErrorHandler = (device) =\u003e {\n\t\tif (!device || typeof device.addEventListener !== \"function\") return;\n\t\tdetachUncapturedErrorHandler();\n\t\tuncapturedErrorDevice = device;\n\t\tuncapturedErrorHandler = (event) =\u003e {\n\t\t\ttry {\n\t\t\t\tevent.preventDefault();\n\t\t\t} catch {}\n\t\t\tconst gpuError = event.error;\n\t\t\tdebugError(\"[gpu] uncaptured device error:\", gpuError);\n\t\t\tif (typeof GPUOutOfMemoryError !== \"undefined\" \u0026\u0026 gpuError instanceof GPUOutOfMemoryError) {\n\t\t\t\tfail(\"out-of-memory\", gpuError);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (typeof GPUInternalError !== \"undefined\" \u0026\u0026 gpuError instanceof GPUInternalError) {\n\t\t\t\tfail(\"gpu-error\", gpuError);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tuncapturedValidationErrors++;\n\t\t\tif (uncapturedValidationErrors \u003e= MAX_UNCAPTURED_VALIDATION_ERRORS) fail(\"gpu-error\", gpuError);\n\t\t};\n\t\tdevice.addEventListener(\"uncapturederror\", uncapturedErrorHandler);\n\t};\n\tconst detachUncapturedErrorHandler = () =\u003e {\n\t\tif (uncapturedErrorDevice \u0026\u0026 uncapturedErrorHandler) try {\n\t\t\tuncapturedErrorDevice.removeEventListener(\"uncapturederror\", uncapturedErrorHandler);\n\t\t} catch {}\n\t\tuncapturedErrorDevice = null;\n\t\tuncapturedErrorHandler = null;\n\t};\n\tconst fireDeviceLost = (reason) =\u003e {\n\t\tif (deviceLostFired) return;\n\t\tdeviceLostFired = true;\n\t\ttry {\n\t\t\tstopAnimation();\n\t\t} catch {}\n\t\tif (onDeviceLostCallback) {\n\t\t\tconst cb = onDeviceLostCallback;\n\t\t\tqueueMicrotask(() =\u003e {\n\t\t\t\ttry {\n\t\t\t\t\tcb(reason);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tdebugError(\"[gpu] onDeviceLost callback threw:\", e);\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn;\n\t\t}\n\t\tfail(\"device-lost\", reason);\n\t};\n\tconst initialize = async (options) =\u003e {\n\t\tif (options.context !== void 0) throw new Error(\"[gpu] initialize({ context }) is not supported — this renderer is WebGPU-only. Remove the WebGL `context` option.\");\n\t\tif (failureReason) return;\n\t\tconst pageWide = getGpuUnusableReason();\n\t\tif (pageWide) {\n\t\t\tfail(pageWide);\n\t\t\treturn;\n\t\t}\n\t\tif (isInitialized || isInitializing) return;\n\t\tconst { canvas, resizeTarget, enablePerformanceTracking: enableTracking = false, colorSpace = \"p3-linear\", toneMapping = \"linear\", gpu, forceFullFrameRate: forceFullFps = false, observeElement: shouldObserveElement = true, timeOrigin: initialTimeOrigin } = options;\n\t\tif (initialTimeOrigin != null) sharedTimeOrigin = initialTimeOrigin;\n\t\tenablePerformanceTracking = enableTracking;\n\t\tforceFullFrameRate = forceFullFps;\n\t\trendererColorSpace = colorSpace;\n\t\trendererToneMapping = toneMapping;\n\t\tattachLayoutListeners();\n\t\tisInitializing = true;\n\t\tinitializationAbortController = new AbortController();\n\t\tconst abort = initializationAbortController;\n\t\ttry {\n\t\t\tsetColorSpaceModeFn = setColorSpaceModeGpu;\n\t\t\tsetColorSpaceModeFn(colorSpace);\n\t\t\tif (abort.signal.aborted) return;\n\t\t\tcanvasElement = canvas;\n\t\t\trootCtx = await acquireRoot({\n\t\t\t\tdevice: gpu?.device,\n\t\t\t\tadapter: gpu?.adapter,\n\t\t\t\tonDeviceLost: (info) =\u003e fireDeviceLost(info.message || info.reason || \"unknown\")\n\t\t\t});\n\t\t\tif (abort.signal.aborted) return;\n\t\t\troot = rootCtx.root;\n\t\t\tattachUncapturedErrorHandler(root.device);\n\t\t\tpixelRatio = basePixelRatio();\n\t\t\tconst lim = root.device.limits?.maxTextureDimension2D;\n\t\t\tif (typeof lim === \"number\" \u0026\u0026 lim \u003e 0) cachedMaxTextureDim = lim;\n\t\t\ttextureManager = createTextureManager(root);\n\t\t\tdispatcher = createComputeDispatcher(root);\n\t\t\tif (typeof window !== \"undefined\") {\n\t\t\t\tunloadHandler = () =\u003e cleanup();\n\t\t\t\twindow.addEventListener(\"beforeunload\", unloadHandler);\n\t\t\t\twindowResizeHandler = () =\u003e {\n\t\t\t\t\tif (lastRequestedWidth \u003e 0 \u0026\u0026 lastRequestedHeight \u003e 0) {\n\t\t\t\t\t\tconst rawW = lastRequestedWidth;\n\t\t\t\t\t\tconst rawH = lastRequestedHeight;\n\t\t\t\t\t\tlastRequestedWidth = 0;\n\t\t\t\t\t\tlastRequestedHeight = 0;\n\t\t\t\t\t\tupdateRendererDimensions(rawW, rawH);\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t\twindow.addEventListener(\"resize\", windowResizeHandler, { passive: true });\n\t\t\t}\n\t\t\tconst rect = canvas.getBoundingClientRect();\n\t\t\tcachedCanvasRect = rect;\n\t\t\tisVisible = !shouldObserveElement || rect.width \u003e 0 \u0026\u0026 rect.height \u003e 0 \u0026\u0026 rect.top \u003c window.innerHeight \u0026\u0026 rect.bottom \u003e 0 \u0026\u0026 rect.left \u003c window.innerWidth \u0026\u0026 rect.right \u003e 0;\n\t\t\tshouldAnimate = true;\n\t\t\tconst rawWidth = rect.width \u003e 0 ? rect.width : canvas.width;\n\t\t\tconst rawHeight = rect.height \u003e 0 ? rect.height : canvas.height;\n\t\t\tconst roundedRawWidth = Math.round(rawWidth);\n\t\t\tconst roundedRawHeight = Math.round(rawHeight);\n\t\t\tif (roundedRawWidth \u003e 0 \u0026\u0026 roundedRawHeight \u003e 0) {\n\t\t\t\tlastRequestedWidth = roundedRawWidth;\n\t\t\t\tlastRequestedHeight = roundedRawHeight;\n\t\t\t\tconst { width: cw, height: ch } = clampToTextureCap$1(roundedRawWidth, roundedRawHeight);\n\t\t\t\tcurrentWidth = cw;\n\t\t\t\tcurrentHeight = ch;\n\t\t\t\tlogicalWidth = roundedRawWidth;\n\t\t\t\tlogicalHeight = roundedRawHeight;\n\t\t\t\thasInitialDimensions = true;\n\t\t\t\tsetShaderCanvasDimensions(roundedRawWidth, roundedRawHeight);\n\t\t\t\tconst { width: bufW, height: bufH } = bufferSize();\n\t\t\t\tcanvas.width = bufW;\n\t\t\t\tcanvas.height = bufH;\n\t\t\t} else hasInitialDimensions = false;\n\t\t\tcontext = configureCanvasContext(root, canvas);\n\t\t\tif (shouldObserveElement \u0026\u0026 typeof ResizeObserver !== \"undefined\") {\n\t\t\t\tconst elementToObserve = resizeTarget ?? canvas.parentElement;\n\t\t\t\tif (elementToObserve) {\n\t\t\t\t\tresizeObserver = new ResizeObserver(handleResize);\n\t\t\t\t\tresizeObserver.observe(elementToObserve);\n\t\t\t\t} else console.warn(\"[gpu] no element available for resize observation — use resize() manually\");\n\t\t\t\tif (typeof IntersectionObserver !== \"undefined\") {\n\t\t\t\t\tintersectionObserver = new IntersectionObserver(handleVisibilityChange, {\n\t\t\t\t\t\tthreshold: 0,\n\t\t\t\t\t\trootMargin: \"128px\"\n\t\t\t\t\t});\n\t\t\t\t\tintersectionObserver.observe(canvas);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (abort.signal.aborted) return;\n\t\t\tisInitialized = true;\n\t\t\tisRendererReady = true;\n\t\t\tprocessQueuedRegistrations();\n\t\t\tif (currentWidth \u003e 0 \u0026\u0026 currentHeight \u003e 0) renderFrame();\n\t\t\tif (shouldAnimate) startAnimation();\n\t\t} catch (error) {\n\t\t\tconst reason = isGpuUnavailableError(error) ? error.reason : \"init-failed\";\n\t\t\tisInitializing = false;\n\t\t\tif (initializationAbortController === abort) initializationAbortController = null;\n\t\t\tfail(reason, error);\n\t\t\treturn;\n\t\t} finally {\n\t\t\tisInitializing = false;\n\t\t\tif (initializationAbortController === abort) initializationAbortController = null;\n\t\t}\n\t};\n\tconst cleanup = () =\u003e {\n\t\tif (initializationAbortController) initializationAbortController.abort();\n\t\tif (resizeObserver) {\n\t\t\tresizeObserver.disconnect();\n\t\t\tresizeObserver = null;\n\t\t}\n\t\tif (intersectionObserver) {\n\t\t\tintersectionObserver.disconnect();\n\t\t\tintersectionObserver = null;\n\t\t}\n\t\tif (globalEventUnregister) {\n\t\t\tglobalEventUnregister();\n\t\t\tglobalEventUnregister = null;\n\t\t}\n\t\tif (unloadHandler \u0026\u0026 typeof window !== \"undefined\") {\n\t\t\twindow.removeEventListener(\"beforeunload\", unloadHandler);\n\t\t\tunloadHandler = null;\n\t\t}\n\t\tif (windowResizeHandler \u0026\u0026 typeof window !== \"undefined\") {\n\t\t\twindow.removeEventListener(\"resize\", windowResizeHandler);\n\t\t\twindowResizeHandler = null;\n\t\t}\n\t\tif (pendingRenderRAF !== null \u0026\u0026 typeof cancelAnimationFrame === \"function\") {\n\t\t\tcancelAnimationFrame(pendingRenderRAF);\n\t\t\tpendingRenderRAF = null;\n\t\t}\n\t\tstopAnimation();\n\t\tdetachUncapturedErrorHandler();\n\t\tunsubscribeNaturalSize?.();\n\t\tunsubscribeNaturalSize = null;\n\t\tif (typeof document !== \"undefined\" \u0026\u0026 document.fonts?.removeEventListener) document.fonts.removeEventListener(\"loadingdone\", onFontsLoadedLayout);\n\t\ttry {\n\t\t\trootCtx?.release?.();\n\t\t} catch {}\n\t\tpipelineCache.clear();\n\t\tfor (const c of [...liveCompositions]) disposeComposition(c);\n\t\tboundComposition = null;\n\t\ttry {\n\t\t\ttextureManager?.destroy();\n\t\t} catch {}\n\t\ttry {\n\t\t\tif (rootCtx?.createdDevice) root?.destroy();\n\t\t} catch {}\n\t\tnodes.clear();\n\t\trootId = null;\n\t\tparentToChildren.clear();\n\t\tpendingRegistrationQueue = [];\n\t\tpendingNodeUpdates = [];\n\t\tisRendererReady = false;\n\t\tpendingResize = null;\n\t\tisResizeScheduled = false;\n\t\tcanvasElement = null;\n\t\tcontext = null;\n\t\ttextureManager = null;\n\t\tdispatcher = null;\n\t\troot = null;\n\t\trootCtx = null;\n\t\tisInitialized = false;\n\t\tisInitializing = false;\n\t\thasInitialDimensions = false;\n\t\tinitializationAbortController = null;\n\t\tcurrentWidth = 0;\n\t\tcurrentHeight = 0;\n\t\tlogicalWidth = 0;\n\t\tlogicalHeight = 0;\n\t\tdesiredHash = null;\n\t\tstructuralDirty = true;\n\t\tisVisible = false;\n\t\tshouldAnimate = true;\n\t\tpointerX = -10;\n\t\tpointerY = -10;\n\t\tpointerActive = false;\n\t\tpointerSeen = false;\n\t\tmouseListenersNeeded = false;\n\t\tonReadyCallback = null;\n\t\thasEmittedReady = false;\n\t\tfirstRenderPending = false;\n\t\tonDeviceLostCallback = null;\n\t\tdeviceLostFired = false;\n\t\tuncapturedValidationErrors = 0;\n\t\tconsecutiveRenderErrors = 0;\n\t};\n\tconst getPerformanceStats = () =\u003e {\n\t\tconst nodeCount = Math.max(0, nodes.size - 1);\n\t\tconst rttNodeCount = boundComposition ? boundComposition.ir.rttPasses.length : 0;\n\t\tperformanceTracker.updateNodeCounts(nodeCount, rttNodeCount);\n\t\tconst rendererInfo = {\n\t\t\trender: { calls: boundComposition ? boundComposition.passManager.passCount : 0 },\n\t\t\tprograms: { length: pipelineCache.size },\n\t\t\tmemory: { textures: textureManager ? textureManager.textureCount : 0 }\n\t\t};\n\t\treturn performanceTracker.getStats(rendererInfo);\n\t};\n\treturn {\n\t\tinitialize,\n\t\tcleanup,\n\t\tregisterNode,\n\t\tremoveNode,\n\t\tupdateUniformValue,\n\t\tupdateNodeMetadata,\n\t\tisInitialized: () =\u003e isInitialized,\n\t\tresize: (width, height) =\u003e {\n\t\t\tif (!root) return;\n\t\t\tupdateRendererDimensions(width, height);\n\t\t},\n\t\tstartAnimation,\n\t\tstopAnimation,\n\t\trenderAndWait,\n\t\trenderSyntheticFrame,\n\t\tgetPerformanceStats,\n\t\tgetLiveDriverValue: (nodeId, propName) =\u003e {\n\t\t\tconst state = nodes.get(nodeId)?.mouseDriverState?.[propName];\n\t\t\tif (!state || state.liveX === void 0 || state.liveY === void 0) return null;\n\t\t\treturn {\n\t\t\t\tx: state.liveX,\n\t\t\t\ty: state.liveY\n\t\t\t};\n\t\t},\n\t\tgetLiveScalarValue: (nodeId, propName) =\u003e {\n\t\t\tconst node = nodes.get(nodeId);\n\t\t\tif (!node) return null;\n\t\t\tconst driver = node.metadata.maps?.[propName];\n\t\t\tif (driver?.type === \"auto-animate\") {\n\t\t\t\tconst h = node._liveHandles?.[`_smoothed_${propName}`];\n\t\t\t\tconst v = h instanceof FieldHandle ? h.value : void 0;\n\t\t\t\treturn typeof v === \"number\" ? v : null;\n\t\t\t}\n\t\t\tif (driver?.type === \"mouse\") return node.mouseDriverState[propName]?.liveScalar ?? null;\n\t\t\treturn null;\n\t\t},\n\t\tgetNodeRegistry: () =\u003e ({ nodes: new Map(nodes) }),\n\t\tgetRendererType: () =\u003e \"webgpu\",\n\t\tgetInternalRenderer: () =\u003e root ? {\n\t\t\tdevice: root.device,\n\t\t\tadapter: rootCtx?.adapter,\n\t\t\troot\n\t\t} : null,\n\t\tsetForceFullFrameRate: (enabled) =\u003e {\n\t\t\tconst previous = forceFullFrameRate;\n\t\t\tforceFullFrameRate = enabled;\n\t\t\treturn previous;\n\t\t},\n\t\tbeginRecordingResolution: (targetWidth, targetHeight, ratio) =\u003e {\n\t\t\tif (!root || targetWidth \u003c= 0 || targetHeight \u003c= 0) return () =\u003e {};\n\t\t\tconst prevRatio = pixelRatio;\n\t\t\tconst prevWidth = currentWidth;\n\t\t\tconst prevHeight = currentHeight;\n\t\t\tconst prevLogicalWidth = logicalWidth;\n\t\t\tconst prevLogicalHeight = logicalHeight;\n\t\t\tconst prevLastRequestedWidth = lastRequestedWidth;\n\t\t\tconst prevLastRequestedHeight = lastRequestedHeight;\n\t\t\tpixelRatio = ratio;\n\t\t\tapplyRendererDimensions(targetWidth, targetHeight, targetWidth, targetHeight);\n\t\t\treturn () =\u003e {\n\t\t\t\tif (!root) return;\n\t\t\t\tpixelRatio = prevRatio;\n\t\t\t\tapplyRendererDimensions(prevWidth, prevHeight, prevLogicalWidth, prevLogicalHeight);\n\t\t\t\tlastRequestedWidth = prevLastRequestedWidth;\n\t\t\t\tlastRequestedHeight = prevLastRequestedHeight;\n\t\t\t};\n\t\t},\n\t\tsetResolutionScale: (scale) =\u003e {\n\t\t\tif (!root) return;\n\t\t\tconst clampedScale = Math.max(.05, Math.min(scale, 1));\n\t\t\tconst targetRatio = Math.max(.01, basePixelRatio() * clampedScale);\n\t\t\tif (Math.abs(pixelRatio - targetRatio) \u003c .001) return;\n\t\t\tpixelRatio = targetRatio;\n\t\t\tconst logicalW = logicalWidth || currentWidth;\n\t\t\tconst logicalH = logicalHeight || currentHeight;\n\t\t\tif (logicalW \u003c= 0 || logicalH \u003c= 0) return;\n\t\t\tconst { width, height } = clampToTextureCap$1(logicalW, logicalH);\n\t\t\tapplyRendererDimensions(width, height, logicalW, logicalH);\n\t\t},\n\t\tsetFrameRateCap: (fps) =\u003e {\n\t\t\tframeIntervalCap = fps \u0026\u0026 fps \u003e 0 ? 1e3 / Math.max(fps, 10) - 1 : 0;\n\t\t},\n\t\tsetTimeOrigin: (origin) =\u003e {\n\t\t\tsharedTimeOrigin = origin;\n\t\t},\n\t\tsetOnReady: (callback) =\u003e {\n\t\t\tonReadyCallback = callback;\n\t\t\tif (callback \u0026\u0026 hasEmittedReady) queueMicrotask(callback);\n\t\t},\n\t\tsetOnDeviceLost: (callback) =\u003e {\n\t\t\tonDeviceLostCallback = callback;\n\t\t},\n\t\tsetOnUnavailable: (callback) =\u003e {\n\t\t\tonUnavailableCallback = callback;\n\t\t\tif (callback \u0026\u0026 failureReason \u0026\u0026 !hasNotifiedUnavailable) {\n\t\t\t\thasNotifiedUnavailable = true;\n\t\t\t\tconst reason = failureReason;\n\t\t\t\tqueueMicrotask(() =\u003e {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tcallback(reason);\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tdebugError(\"[gpu] onUnavailable callback threw:\", e);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tgetFailureReason: () =\u003e failureReason,\n\t\t__testing: {\n\t\t\tneedsTransformation,\n\t\t\tfindChildNodes,\n\t\t\tbuildFieldInits: (id) =\u003e {\n\t\t\t\tconst node = nodes.get(id);\n\t\t\t\treturn node ? buildFieldInits(node) : null;\n\t\t\t},\n\t\t\tensureDriverState: (id) =\u003e {\n\t\t\t\tconst node = nodes.get(id);\n\t\t\t\tif (node) ensureDriverState(node);\n\t\t\t},\n\t\t\tstepMouseDrivers: (deltaTime) =\u003e {\n\t\t\t\tframeParams.deltaTime = deltaTime;\n\t\t\t\tupdateMouseDrivers();\n\t\t\t},\n\t\t\tstepAnimatedTime: (deltaTime) =\u003e {\n\t\t\t\tframeParams.deltaTime = deltaTime;\n\t\t\t\tupdateAnimatedTime();\n\t\t\t},\n\t\t\tgetAnimatedTimeValue: (id) =\u003e {\n\t\t\t\tconst node = nodes.get(id);\n\t\t\t\tif (!node?.definition.animatedTime) return null;\n\t\t\t\treturn getAnimatedTimeState(animatedTimeKey(node)).value;\n\t\t\t},\n\t\t\twriteExtraField: (id, name, value) =\u003e {\n\t\t\t\tconst node = nodes.get(id);\n\t\t\t\tif (node) writeExtraFieldValue(node, name, value);\n\t\t\t},\n\t\t\treadExtraField: (id, name) =\u003e {\n\t\t\t\tconst h = nodes.get(id)?._liveHandles?.[name];\n\t\t\t\treturn h instanceof FieldHandle ? h.value : void 0;\n\t\t\t},\n\t\t\tgetNodeRegistry: () =\u003e ({\n\t\t\t\tnodes,\n\t\t\t\trootId,\n\t\t\t\tparentToChildren\n\t\t\t}),\n\t\t\tgetParentToChildren: () =\u003e parentToChildren,\n\t\t\tgetPendingRegistrations: () =\u003e [...pendingRegistrationQueue],\n\t\t\tgetFrameDiagnostics: () =\u003e ({\n\t\t\t\tdeltaTime: frameParams.deltaTime,\n\t\t\t\tpointerX,\n\t\t\t\tpointerY,\n\t\t\t\tpointerActive,\n\t\t\t\tglobalElapsedTime,\n\t\t\t\tlastRenderTime,\n\t\t\t\tisVisible,\n\t\t\t\tforceFullFrameRate,\n\t\t\t\tsharedTimeOrigin,\n\t\t\t\tanimating: frameLoop.running,\n\t\t\t\tmouseListenersNeeded\n\t\t\t}),\n\t\t\tcomputeStructuralHash,\n\t\t\tisStructuralDirty: () =\u003e structuralDirty,\n\t\t\tclearStructuralDirty: () =\u003e {\n\t\t\t\tstructuralDirty = false;\n\t\t\t},\n\t\t\tsetTestReady: (dims) =\u003e {\n\t\t\t\tisInitialized = true;\n\t\t\t\tisRendererReady = true;\n\t\t\t\tif (dims) {\n\t\t\t\t\tcurrentWidth = dims.width;\n\t\t\t\t\tcurrentHeight = dims.height;\n\t\t\t\t\tlogicalWidth = dims.width;\n\t\t\t\t\tlogicalHeight = dims.height;\n\t\t\t\t\thasInitialDimensions = true;\n\t\t\t\t}\n\t\t\t\tprocessQueuedRegistrations();\n\t\t\t}\n\t\t}\n\t};\n}\nfunction createRendererFromJSON(preset, options) {\n\tconst coreRenderer = shaderRendererGPU();\n\tconst componentRegistry = /* @__PURE__ */ new Map();\n\tconst nodeIdMap = /* @__PURE__ */ new Map();\n\tlet presetCanvas = null;\n\tgetAllShaders().forEach((shader) =\u003e {\n\t\tcomponentRegistry.set(shader.definition.name, shader.definition);\n\t});\n\tasync function initialize(canvas) {\n\t\tpresetCanvas = canvas;\n\t\tawait coreRenderer.initialize({\n\t\t\tcanvas,\n\t\t\tenablePerformanceTracking: options?.enablePerformanceTracking || false,\n\t\t\tgpu: options?.gpu,\n\t\t\tforceFullFrameRate: options?.forceFullFrameRate || false\n\t\t});\n\t\tregisterPresetNodes();\n\t\tcoreRenderer.stopAnimation();\n\t}\n\tasync function renderFrame(options$1) {\n\t\tif (!coreRenderer.isInitialized()) {\n\t\t\tdebugWarn(\"[presetRenderer] Renderer not yet initialized, skipping frame\");\n\t\t\treturn;\n\t\t}\n\t\tawait coreRenderer.renderAndWait(options$1);\n\t}\n\tfunction updatePreset(newPreset) {\n\t\tnodeIdMap.forEach((_, nodeId) =\u003e {\n\t\t\tcoreRenderer.removeNode(nodeId);\n\t\t});\n\t\tnodeIdMap.clear();\n\t\tpreset = newPreset;\n\t\tregisterPresetNodes();\n\t}\n\tfunction getGPUContext() {\n\t\tconst internal = coreRenderer.getInternalRenderer();\n\t\treturn {\n\t\t\ttype: \"webgpu\",\n\t\t\tdevice: internal?.device,\n\t\t\tadapter: internal?.adapter,\n\t\t\tcanvas: presetCanvas\n\t\t};\n\t}\n\tfunction dispose() {\n\t\tcoreRenderer.cleanup();\n\t}\n\tfunction registerPresetNodes() {\n\t\tconst rootId = \"preset-root\";\n\t\tcoreRenderer.registerNode(rootId, rootPassthrough.fragment, null, null, {}, rootPassthrough);\n\t\tpreset.components.forEach((component, index) =\u003e {\n\t\t\tregisterComponent(component, rootId, index);\n\t\t});\n\t}\n\tfunction registerComponent(component, parentId, renderOrder) {\n\t\tconst componentDef = componentRegistry.get(component.type);\n\t\tif (!componentDef) {\n\t\t\tconsole.warn(`[createRendererFromJSON] Unknown component type: ${component.type}`);\n\t\t\treturn;\n\t\t}\n\t\tconst nodeId = component.id || `${component.type}_${Date.now()}_${Math.random().toString(36).slice(2, 9)}`;\n\t\tnodeIdMap.set(nodeId, component.type);\n\t\tconst uniforms = createGpuUniformsMap(componentDef, Object.fromEntries(Object.entries(componentDef.props).map(([key, propConfig]) =\u003e [key, component.props?.[key] !== void 0 ? component.props[key] : propConfig.default])), nodeId);\n\t\tconst metadata = {\n\t\t\tblendMode: component.props?.blendMode || \"normal\",\n\t\t\topacity: component.props?.opacity,\n\t\t\tvisible: component.props?.visible,\n\t\t\trenderOrder,\n\t\t\tid: component.id,\n\t\t\tmask: component.props?.maskSource ? {\n\t\t\t\tsource: component.props.maskSource,\n\t\t\t\ttype: component.props.maskType || \"alpha\"\n\t\t\t} : void 0,\n\t\t\ttransform: component.props?.transform ? {\n\t\t\t\toffsetX: 0,\n\t\t\t\toffsetY: 0,\n\t\t\t\trotation: 0,\n\t\t\t\tscale: 1,\n\t\t\t\tanchorX: .5,\n\t\t\t\tanchorY: .5,\n\t\t\t\tedges: \"transparent\",\n\t\t\t\t...component.props.transform\n\t\t\t} : void 0\n\t\t};\n\t\tcoreRenderer.registerNode(nodeId, componentDef.fragment, parentId, metadata, uniforms, componentDef);\n\t\tcomponent.children?.forEach((child, index) =\u003e {\n\t\t\tregisterComponent(child, nodeId, index);\n\t\t});\n\t}\n\treturn {\n\t\tinitialize,\n\t\trenderFrame,\n\t\tupdatePreset,\n\t\tgetGPUContext,\n\t\tdispose,\n\t\tsetOnUnavailable: coreRenderer.setOnUnavailable,\n\t\tgetFailureReason: coreRenderer.getFailureReason\n\t};\n}\nfunction resolveMaskDependencies(nodes) {\n\tconst elementIdToNodeId = /* @__PURE__ */ new Map();\n\tconst maskDependencies = /* @__PURE__ */ new Map();\n\tconst result = {\n\t\tprocessingOrder: [],\n\t\tmaskSources: /* @__PURE__ */ new Map(),\n\t\tcircularDependencies: []\n\t};\n\tnodes.forEach((node) =\u003e {\n\t\tif (node.elementId) elementIdToNodeId.set(node.elementId, node.id);\n\t});\n\tnodes.forEach((node) =\u003e {\n\t\tif (node.mask?.source) {\n\t\t\tconst sourceElementId = node.mask.source.startsWith(\"#\") ? node.mask.source.substring(1) : node.mask.source;\n\t\t\tconst sourceNodeId = elementIdToNodeId.get(sourceElementId);\n\t\t\tif (sourceNodeId) {\n\t\t\t\tif (!maskDependencies.has(node.id)) maskDependencies.set(node.id, []);\n\t\t\t\tmaskDependencies.get(node.id)?.push(sourceNodeId);\n\t\t\t\tresult.maskSources.set(node.id, sourceNodeId);\n\t\t\t} else console.warn(`Mask source \"${sourceElementId}\" not found for node \"${node.id}\"`);\n\t\t}\n\t});\n\tresult.processingOrder = topologicalSort(maskDependencies, result.circularDependencies);\n\treturn result;\n}\nfunction topologicalSort(dependencies, circularDependencies) {\n\tconst result = [];\n\tconst visited = /* @__PURE__ */ new Set();\n\tconst tempVisited = /* @__PURE__ */ new Set();\n\tfunction visit(nodeId, path = []) {\n\t\tif (visited.has(nodeId)) return;\n\t\tif (tempVisited.has(nodeId)) {\n\t\t\tconst cycle = [...path.slice(path.indexOf(nodeId)), nodeId];\n\t\t\tcircularDependencies.push(cycle);\n\t\t\treturn;\n\t\t}\n\t\ttempVisited.add(nodeId);\n\t\tpath.push(nodeId);\n\t\tconst deps = dependencies.get(nodeId) || [];\n\t\tfor (const depId of deps) visit(depId, [...path]);\n\t\ttempVisited.delete(nodeId);\n\t\tvisited.add(nodeId);\n\t\tresult.push(nodeId);\n\t}\n\tfor (const nodeId of dependencies.keys()) if (!visited.has(nodeId)) visit(nodeId);\n\tconst allSourceNodeIds = new Set([...dependencies.values()].flat());\n\tfor (const sourceId of allSourceNodeIds) if (!visited.has(sourceId) \u0026\u0026 !dependencies.has(sourceId)) result.push(sourceId);\n\treturn result.reverse();\n}\nconst screenUVToBoxLocal = (sx, sy, g) =\u003e {\n\tconst th = g.rotationDeg * Math.PI / 180;\n\tconst c = Math.cos(th);\n\tconst s = Math.sin(th);\n\tconst sqx = (sx - g.centerX) * g.aspectRatio;\n\tconst sqy = sy - g.centerY;\n\tconst rx = sqx * c + sqy * s;\n\tconst ry = sqx * -s + sqy * c;\n\tconst hwSq = Math.max(g.halfWidthUV * g.aspectRatio, 1e-6);\n\tconst hhSq = Math.max(g.halfHeightUV, 1e-6);\n\treturn {\n\t\tx: rx / (2 * hwSq) + .5,\n\t\ty: ry / (2 * hhSq) + .5\n\t};\n};\nconst boxLocalToScreenUV = (bx, by, g) =\u003e {\n\tconst th = g.rotationDeg * Math.PI / 180;\n\tconst c = Math.cos(th);\n\tconst s = Math.sin(th);\n\tconst lx = (bx - .5) * 2 * (g.halfWidthUV * g.aspectRatio);\n\tconst ly = (by - .5) * 2 * g.halfHeightUV;\n\tconst sqx = lx * c - ly * s;\n\tconst sqy = lx * s + ly * c;\n\treturn {\n\t\tx: sqx / g.aspectRatio + g.centerX,\n\t\ty: sqy + g.centerY\n\t};\n};\nexport { DEFAULT_BOUNDING_BOX, GpuUnavailableError, MAX_COLOR_STOPS, SHAPE3D_DEFAULTS, SHAPE3D_TYPES, SVG3D_DEFAULTS, SVG3D_TYPES, anchorOffsetForBlockTopLeft, boxLocalToScreenUV, computeBoundsShift, computeGroupBlockRects, computeLayout, computeTreeLayout, createGpuUniformsMap, createRendererFromJSON, debugError, debugWarn, destroyDefaultGpuDevice, getNaturalSize, getWebGPUSupport, is3dShapeType, isDimensionalValue, isGpuUnavailableError, isShadersDebug, isSvg3dShapeType, isVolumetricShapeType, isWebGPUSupported, layoutBlockSize, measureChild, measureNode, measureText, measureTextBlock, onNaturalSizeChange, registerNaturalSize, resolveBoundingBox, resolveLayoutConfig, resolveMaskDependencies, resolveStops, rootPassthrough, screenUVToBoxLocal, setShadersDebug, shaderRendererGPU, shape3dBoundingRadius, sortStops, wrapLines };\n","import { n as debugError, r as debugWarn } from \"../support-GJphyuEe.js\";\nconst TELEMETRY_CONFIG = {\n\tsamplingRate: .05,\n\tcollectionDuration: 5e3,\n\twarmupDuration: 500,\n\tsampleInterval: 500,\n\tapiEndpoint: \"https://shaders.com/api/telemetry\"\n};\nfunction detectBrowserFamily(userAgent) {\n\tif (userAgent.includes(\"Edg/\") || userAgent.includes(\"EdgiOS\")) return \"Edge\";\n\tif (userAgent.includes(\"OPR/\") || userAgent.includes(\"Opera/\")) return \"Opera\";\n\tif (userAgent.includes(\"Chrome/\") || userAgent.includes(\"CriOS\")) return \"Chrome\";\n\tif (userAgent.includes(\"Firefox/\") || userAgent.includes(\"FxiOS\")) return \"Firefox\";\n\tif (userAgent.includes(\"Safari/\") \u0026\u0026 !userAgent.includes(\"Chrome\")) return \"Safari\";\n\treturn \"Other\";\n}\nfunction detectDeviceType(userAgent) {\n\tif (/iPad|Tablet|PlayBook/i.test(userAgent)) return \"tablet\";\n\tif (/Android/i.test(userAgent) \u0026\u0026 !/Mobile/i.test(userAgent)) return \"tablet\";\n\tif (/Mobile|Android|webOS|iPhone|iPod|BlackBerry|IEMobile|Opera Mini/i.test(userAgent)) return \"mobile\";\n\treturn \"desktop\";\n}\nfunction collectEnvironment() {\n\tif (typeof window === \"undefined\" || typeof navigator === \"undefined\") return {\n\t\tdomain: \"unknown\",\n\t\tbrowserFamily: \"unknown\",\n\t\tdeviceType: \"unknown\"\n\t};\n\tconst userAgent = navigator.userAgent;\n\treturn {\n\t\tdomain: window.location.hostname,\n\t\tbrowserFamily: detectBrowserFamily(userAgent),\n\t\tdeviceType: detectDeviceType(userAgent)\n\t};\n}\nvar TelemetryCollector = class {\n\trenderer;\n\tversion;\n\tsourceType;\n\tsessionId;\n\tframeSamples = [];\n\tsampleInterval = null;\n\tstopped = false;\n\tconstructor(renderer, version, sourceType) {\n\t\tthis.renderer = renderer;\n\t\tthis.version = version;\n\t\tthis.sourceType = sourceType;\n\t\tthis.sessionId = `tel_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;\n\t}\n\tstop() {\n\t\tthis.stopped = true;\n\t\tif (this.sampleInterval) {\n\t\t\tclearInterval(this.sampleInterval);\n\t\t\tthis.sampleInterval = null;\n\t\t}\n\t}\n\tasync start() {\n\t\ttry {\n\t\t\tawait this.sleep(TELEMETRY_CONFIG.warmupDuration);\n\t\t\tif (this.stopped) return;\n\t\t\tthis.sampleInterval = setInterval(() =\u003e {\n\t\t\t\tif (this.stopped) return;\n\t\t\t\ttry {\n\t\t\t\t\tconst stats = this.renderer.getPerformanceStats();\n\t\t\t\t\tthis.frameSamples.push(stats);\n\t\t\t\t} catch (error) {\n\t\t\t\t\tdebugError(\"Telemetry sampling error:\", error);\n\t\t\t\t}\n\t\t\t}, TELEMETRY_CONFIG.sampleInterval);\n\t\t\tawait this.sleep(TELEMETRY_CONFIG.collectionDuration - TELEMETRY_CONFIG.warmupDuration);\n\t\t\tif (this.stopped) return;\n\t\t\tif (this.sampleInterval) {\n\t\t\t\tclearInterval(this.sampleInterval);\n\t\t\t\tthis.sampleInterval = null;\n\t\t\t}\n\t\t\tif (!this.stopped \u0026\u0026 this.frameSamples.length \u003e= 5) {\n\t\t\t\tconst payload = this.aggregateData();\n\t\t\t\tawait this.sendTelemetry(payload);\n\t\t\t}\n\t\t} catch (error) {\n\t\t\tdebugError(\"Telemetry collection error:\", error);\n\t\t}\n\t}\n\tsleep(ms) {\n\t\treturn new Promise((resolve) =\u003e setTimeout(resolve, ms));\n\t}\n\taggregateData() {\n\t\tconst performance = this.aggregatePerformance();\n\t\tconst renderer = this.detectRendererType();\n\t\tconst components = this.extractComponents();\n\t\tconst environment = collectEnvironment();\n\t\treturn {\n\t\t\tsessionId: this.sessionId,\n\t\t\ttimestamp: Date.now(),\n\t\t\tcollectionDuration: TELEMETRY_CONFIG.collectionDuration,\n\t\t\tversion: this.version,\n\t\t\tsourceType: this.sourceType,\n\t\t\tperformance,\n\t\t\trenderer,\n\t\t\tcomponents,\n\t\t\tenvironment\n\t\t};\n\t}\n\taggregatePerformance() {\n\t\tif (this.frameSamples.length === 0) return {\n\t\t\tfps: 0,\n\t\t\tframeTime: {\n\t\t\t\tavg: 0,\n\t\t\t\tmin: 0,\n\t\t\t\tmax: 0,\n\t\t\t\tp99: 0\n\t\t\t},\n\t\t\tjankPercent: 0,\n\t\t\tbudgetUsed: 0\n\t\t};\n\t\tconst frameTimes = this.frameSamples.map((s) =\u003e s.avgFrameTime);\n\t\tconst jankPercents = this.frameSamples.map((s) =\u003e s.jankPercent);\n\t\tconst budgetUseds = this.frameSamples.map((s) =\u003e s.budgetUsed);\n\t\tconst fpsValues = this.frameSamples.map((s) =\u003e s.fps);\n\t\tconst fps = this.calculateMedian(fpsValues);\n\t\tconst avgFrameTime = this.calculateMean(frameTimes);\n\t\tconst minFrameTime = Math.min(...frameTimes);\n\t\tconst maxFrameTime = Math.max(...frameTimes);\n\t\tconst p99FrameTime = this.calculatePercentile(frameTimes, 99);\n\t\tconst jankPercent = this.calculateMean(jankPercents);\n\t\tconst budgetUsed = this.calculateMean(budgetUseds);\n\t\treturn {\n\t\t\tfps: Math.round(fps * 10) / 10,\n\t\t\tframeTime: {\n\t\t\t\tavg: Math.round(avgFrameTime * 10) / 10,\n\t\t\t\tmin: Math.round(minFrameTime * 10) / 10,\n\t\t\t\tmax: Math.round(maxFrameTime * 10) / 10,\n\t\t\t\tp99: Math.round(p99FrameTime * 10) / 10\n\t\t\t},\n\t\t\tjankPercent: Math.round(jankPercent * 10) / 10,\n\t\t\tbudgetUsed: Math.round(budgetUsed * 10) / 10\n\t\t};\n\t}\n\tdetectRendererType() {\n\t\tconst latestSample = this.frameSamples[this.frameSamples.length - 1];\n\t\treturn {\n\t\t\ttype: this.renderer.getRendererType?.() || \"webgl\",\n\t\t\tdrawCalls: latestSample?.drawCalls ?? null,\n\t\t\ttextureCount: latestSample?.textureCount ?? null\n\t\t};\n\t}\n\textractComponents() {\n\t\ttry {\n\t\t\tconst nodeRegistry = this.renderer.getNodeRegistry();\n\t\t\tconst components = [];\n\t\t\tfor (const [_, nodeInfo] of nodeRegistry.nodes) {\n\t\t\t\tif (nodeInfo.parentId === null) continue;\n\t\t\t\tcomponents.push({\n\t\t\t\t\tname: nodeInfo.componentName,\n\t\t\t\t\trequiresRTT: nodeInfo.requiresRTT,\n\t\t\t\t\trenderOrder: nodeInfo.metadata.renderOrder\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn components.sort((a, b) =\u003e a.renderOrder - b.renderOrder);\n\t\t} catch (error) {\n\t\t\tdebugError(\"Failed to extract components:\", error);\n\t\t\treturn [];\n\t\t}\n\t}\n\tasync sendTelemetry(payload) {\n\t\ttry {\n\t\t\tconst response = await fetch(TELEMETRY_CONFIG.apiEndpoint, {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders: { \"Content-Type\": \"application/json\" },\n\t\t\t\tbody: JSON.stringify(payload)\n\t\t\t});\n\t\t\tif (!response.ok) debugWarn(\"Telemetry send failed:\", response.status, response.statusText);\n\t\t} catch (error) {\n\t\t\tdebugError(\"Telemetry send error:\", error);\n\t\t}\n\t}\n\tcalculateMean(values) {\n\t\tif (values.length === 0) return 0;\n\t\treturn values.reduce((a, b) =\u003e a + b, 0) / values.length;\n\t}\n\tcalculateMedian(values) {\n\t\tif (values.length === 0) return 0;\n\t\tconst sorted = [...values].sort((a, b) =\u003e a - b);\n\t\tconst mid = Math.floor(sorted.length / 2);\n\t\tif (sorted.length % 2 === 0) return (sorted[mid - 1] + sorted[mid]) / 2;\n\t\telse return sorted[mid];\n\t}\n\tcalculatePercentile(values, percentile) {\n\t\tif (values.length === 0) return 0;\n\t\tconst sorted = [...values].sort((a, b) =\u003e a - b);\n\t\tconst index = Math.ceil(percentile / 100 * sorted.length) - 1;\n\t\treturn sorted[Math.max(0, index)];\n\t}\n};\nfunction shouldCollectTelemetry(disableTelemetry = false, isPreview = false) {\n\tif (disableTelemetry) return false;\n\tif (typeof navigator !== \"undefined\" \u0026\u0026 navigator.doNotTrack === \"1\") return false;\n\tif (isPreview) return true;\n\treturn Math.random() \u003c TELEMETRY_CONFIG.samplingRate;\n}\nfunction startTelemetry(renderer, version, disableTelemetry = false, isPreview = false) {\n\tif (!shouldCollectTelemetry(disableTelemetry, isPreview)) return null;\n\treturn new TelemetryCollector(renderer, version, isPreview ? \"preview\" : \"shader\");\n}\nfunction isExternalUser() {\n\tif (typeof window === \"undefined\" || !window.location) return false;\n\tconst hostname = window.location.hostname;\n\treturn !hostname.includes(\"shaders.com\") \u0026\u0026 hostname !== \"localhost\" \u0026\u0026 hostname !== \"127.0.0.1\";\n}\nexport { TelemetryCollector, isExternalUser, shouldCollectTelemetry, startTelemetry };\n","import { createGpuUniformsMap, debugError, resolveBoundingBox, rootPassthrough, shaderRendererGPU } from \"../core/index.js\";\nimport { getAllShaders } from \"../core/registry.js\";\nimport { isExternalUser, startTelemetry } from \"../core/telemetry/index.js\";\nfunction isPropDriver(value) {\n\tif (typeof value !== \"object\" || value === null || !(\"type\" in value)) return false;\n\tconst maybe = value;\n\treturn maybe.type === \"map\" || maybe.type === \"mouse\" || maybe.type === \"mouse-position\" || maybe.type === \"auto-animate\";\n}\nvar METADATA_PROPS = new Set([\n\t\"opacity\",\n\t\"blendMode\",\n\t\"visible\",\n\t\"transform\",\n\t\"boundingBox\",\n\t\"maskSource\",\n\t\"maskType\",\n\t\"flow\",\n\t\"absolute\"\n]);\nasync function createShader(canvas, preset, options) {\n\tconst componentRegistry = /* @__PURE__ */ new Map();\n\tgetAllShaders().forEach((shader) =\u003e {\n\t\tcomponentRegistry.set(shader.definition.name, shader.definition);\n\t\tfor (const oldName of shader.definition.deprecatedNames ?? []) componentRegistry.set(oldName, shader.definition);\n\t});\n\tif (!canvas.style.width || !canvas.style.height) {\n\t\tconst rect = canvas.getBoundingClientRect();\n\t\tconst w = rect.width \u003e 0 ? rect.width : canvas.width;\n\t\tconst h = rect.height \u003e 0 ? rect.height : canvas.height;\n\t\tif (w \u003e 0 \u0026\u0026 !canvas.style.width) canvas.style.width = `${w}px`;\n\t\tif (h \u003e 0 \u0026\u0026 !canvas.style.height) canvas.style.height = `${h}px`;\n\t}\n\tfunction cloneComponent(c) {\n\t\treturn {\n\t\t\t...c,\n\t\t\tprops: c.props ? { ...c.props } : void 0,\n\t\t\tchildren: c.children?.map(cloneComponent)\n\t\t};\n\t}\n\tconst livePreset = {\n\t\t...preset,\n\t\tcomponents: preset.components.map(cloneComponent)\n\t};\n\tlet current = null;\n\tlet destroyed = false;\n\tlet rebuilding = false;\n\tconst MAX_DEVICE_LOSS_REBUILDS = 3;\n\tconst DEVICE_LOSS_BURST_WINDOW_MS = 6e4;\n\tlet rebuildAttempts = 0;\n\tlet lastDeviceLossAt = 0;\n\tlet unavailable = null;\n\tfunction notify(reason) {\n\t\ttry {\n\t\t\toptions?.onError?.(reason);\n\t\t} catch (e) {\n\t\t\tdebugError(\"[createShader] onError callback threw:\", e);\n\t\t}\n\t}\n\tlet reportedTerminal = false;\n\tfunction goDown(reason) {\n\t\tif (reportedTerminal) return;\n\t\treportedTerminal = true;\n\t\tunavailable = reason;\n\t\tnotify(reason);\n\t}\n\tfunction registerComponent(renderer, nodeEntryMap, component, parentId, renderOrder) {\n\t\tconst componentDef = componentRegistry.get(component.type);\n\t\tif (!componentDef) {\n\t\t\tconsole.warn(`[createShader] Unknown component type: ${component.type}`);\n\t\t\treturn;\n\t\t}\n\t\tconst nodeId = component.id || `${component.type}_${Date.now()}_${Math.random().toString(36).slice(2, 9)}`;\n\t\tconst mapsFromProps = {};\n\t\tfor (const [key, val] of Object.entries(component.props || {})) if (!METADATA_PROPS.has(key) \u0026\u0026 Object.prototype.hasOwnProperty.call(componentDef.props, key) \u0026\u0026 isPropDriver(val)) mapsFromProps[key] = val;\n\t\tconst uniforms = createGpuUniformsMap(componentDef, Object.fromEntries(Object.entries(componentDef.props).map(([key, propConfig]) =\u003e {\n\t\t\tconst val = component.props?.[key] !== void 0 ? component.props[key] : propConfig.default;\n\t\t\treturn [key, isPropDriver(val) ? propConfig.default : val];\n\t\t})), nodeId);\n\t\tconst metadata = {\n\t\t\tblendMode: component.props?.blendMode || \"normal\",\n\t\t\topacity: component.props?.opacity,\n\t\t\tvisible: component.props?.visible,\n\t\t\trenderOrder,\n\t\t\tid: component.id,\n\t\t\tmaps: Object.keys(mapsFromProps).length \u003e 0 ? { ...mapsFromProps } : void 0,\n\t\t\tmask: component.props?.maskSource ? {\n\t\t\t\tsource: component.props.maskSource,\n\t\t\t\ttype: component.props.maskType || \"alpha\"\n\t\t\t} : void 0,\n\t\t\ttransform: component.props?.transform ? {\n\t\t\t\toffsetX: 0,\n\t\t\t\toffsetY: 0,\n\t\t\t\trotation: 0,\n\t\t\t\tscale: 1,\n\t\t\t\tanchorX: .5,\n\t\t\t\tanchorY: .5,\n\t\t\t\tedges: \"transparent\",\n\t\t\t\t...component.props.transform\n\t\t\t} : void 0,\n\t\t\tboundingBox: resolveBoundingBox(component.props?.boundingBox),\n\t\t\tflow: component.props?.flow,\n\t\t\tabsolute: component.props?.absolute\n\t\t};\n\t\trenderer.registerNode(nodeId, componentDef.fragment, parentId, metadata, uniforms, componentDef);\n\t\tnodeEntryMap.set(nodeId, {\n\t\t\tcomponentDef,\n\t\t\tuniforms,\n\t\t\tnodeId,\n\t\t\tcomponent,\n\t\t\tcurrentMaps: { ...mapsFromProps }\n\t\t});\n\t\tcomponent.children?.forEach((child, index) =\u003e {\n\t\t\tregisterComponent(renderer, nodeEntryMap, child, nodeId, index);\n\t\t});\n\t}\n\tasync function build() {\n\t\tconst renderer = shaderRendererGPU();\n\t\tconst nodeEntryMap = /* @__PURE__ */ new Map();\n\t\tif (options?.onReady) renderer.setOnReady(options.onReady);\n\t\trenderer.setOnUnavailable((reason) =\u003e {\n\t\t\tif (destroyed) return;\n\t\t\tgoDown(reason);\n\t\t});\n\t\tawait renderer.initialize({\n\t\t\tcanvas,\n\t\t\tresizeTarget: canvas,\n\t\t\tenablePerformanceTracking: options?.enablePerformanceTracking || false,\n\t\t\tcolorSpace: options?.colorSpace,\n\t\t\ttoneMapping: options?.toneMapping,\n\t\t\tobserveElement: options?.observeElement,\n\t\t\tgpu: options?.gpu\n\t\t});\n\t\tconst state = {\n\t\t\trenderer,\n\t\t\tnodeEntryMap,\n\t\t\ttelemetryCollector: null,\n\t\t\ttelemetryStartTimeout: null\n\t\t};\n\t\trenderer.setOnDeviceLost((reason) =\u003e {\n\t\t\tif (destroyed || rebuilding || unavailable) return;\n\t\t\tif (current !== null \u0026\u0026 current !== state) return;\n\t\t\trebuilding = true;\n\t\t\tnotify(reason);\n\t\t\tconst now = Date.now();\n\t\t\tif (now - lastDeviceLossAt \u003e DEVICE_LOSS_BURST_WINDOW_MS) rebuildAttempts = 0;\n\t\t\tlastDeviceLossAt = now;\n\t\t\tif (++rebuildAttempts \u003e MAX_DEVICE_LOSS_REBUILDS) {\n\t\t\t\tteardownState(state);\n\t\t\t\tcurrent = null;\n\t\t\t\trebuilding = false;\n\t\t\t\tgoDown(\"unrecoverable\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t(async () =\u003e {\n\t\t\t\ttry {\n\t\t\t\t\tteardownState(state);\n\t\t\t\t\tcurrent = null;\n\t\t\t\t\tif (destroyed) return;\n\t\t\t\t\tconst next = await build();\n\t\t\t\t\tif (destroyed) {\n\t\t\t\t\t\tteardownState(next);\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tcurrent = next;\n\t\t\t\t} catch (rebuildErr) {\n\t\t\t\t\tdebugError(\"[createShader] rebuild after device loss failed:\", rebuildErr);\n\t\t\t\t\tgoDown(\"rebuild_failed\");\n\t\t\t\t} finally {\n\t\t\t\t\trebuilding = false;\n\t\t\t\t}\n\t\t\t})();\n\t\t});\n\t\tconst rootId = \"shader-root\";\n\t\trenderer.registerNode(rootId, rootPassthrough.fragment, null, null, {}, rootPassthrough);\n\t\tlivePreset.components.forEach((component, index) =\u003e {\n\t\t\tregisterComponent(renderer, nodeEntryMap, component, rootId, index);\n\t\t});\n\t\tif (isExternalUser()) {\n\t\t\tconst MAX_TELEMETRY_POLLS = 40;\n\t\t\tlet telemetryPolls = 0;\n\t\t\tconst checkRendering = () =\u003e {\n\t\t\t\tif (destroyed || unavailable || current !== state || ++telemetryPolls \u003e MAX_TELEMETRY_POLLS) {\n\t\t\t\t\tstate.telemetryStartTimeout = null;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (renderer.getPerformanceStats().fps \u003e 0) {\n\t\t\t\t\tstate.telemetryCollector = startTelemetry(renderer, \"3.2.470\", options?.disableTelemetry || false, false);\n\t\t\t\t\tif (state.telemetryCollector) state.telemetryCollector.start();\n\t\t\t\t\tstate.telemetryStartTimeout = null;\n\t\t\t\t} else state.telemetryStartTimeout = setTimeout(checkRendering, 500);\n\t\t\t};\n\t\t\tstate.telemetryStartTimeout = setTimeout(checkRendering, 500);\n\t\t}\n\t\treturn state;\n\t}\n\tfunction teardownState(state) {\n\t\tif (state.telemetryCollector) {\n\t\t\ttry {\n\t\t\t\tstate.telemetryCollector.stop();\n\t\t\t} catch {}\n\t\t\tstate.telemetryCollector = null;\n\t\t}\n\t\tif (state.telemetryStartTimeout !== null) {\n\t\t\tclearTimeout(state.telemetryStartTimeout);\n\t\t\tstate.telemetryStartTimeout = null;\n\t\t}\n\t\ttry {\n\t\t\tstate.renderer.cleanup();\n\t\t} catch {}\n\t}\n\tcurrent = await build();\n\tfunction update(componentId, props) {\n\t\tif (!current) return;\n\t\tconst { renderer, nodeEntryMap } = current;\n\t\tconst entry = nodeEntryMap.get(componentId);\n\t\tif (!entry) {\n\t\t\tconsole.warn(`[createShader] Component ID not found: ${componentId}`);\n\t\t\treturn;\n\t\t}\n\t\tif (!entry.component.props) entry.component.props = {};\n\t\tconst live = entry.component.props;\n\t\tfor (const [key, value] of Object.entries(props)) if (METADATA_PROPS.has(key)) if (key === \"maskSource\") {\n\t\t\trenderer.updateNodeMetadata(entry.nodeId, { mask: value ? {\n\t\t\t\tsource: value,\n\t\t\t\ttype: props.maskType || live.maskType || \"alpha\"\n\t\t\t} : void 0 });\n\t\t\tlive.maskSource = value;\n\t\t\tif (\"maskType\" in props) live.maskType = props.maskType;\n\t\t} else if (key === \"maskType\") continue;\n\t\telse if (key === \"transform\") {\n\t\t\trenderer.updateNodeMetadata(entry.nodeId, { transform: value });\n\t\t\tlive.transform = value;\n\t\t} else if (key === \"boundingBox\") {\n\t\t\trenderer.updateNodeMetadata(entry.nodeId, { boundingBox: resolveBoundingBox(value) });\n\t\t\tlive.boundingBox = value;\n\t\t} else {\n\t\t\trenderer.updateNodeMetadata(entry.nodeId, { [key]: value });\n\t\t\tlive[key] = value;\n\t\t}\n\t\telse if (isPropDriver(value)) if (!Object.prototype.hasOwnProperty.call(entry.componentDef.props, key)) console.warn(`[createShader] Ignoring PropDriver for unknown prop \"${key}\" on ${entry.component.type}`);\n\t\telse {\n\t\t\tentry.currentMaps[key] = value;\n\t\t\trenderer.updateNodeMetadata(entry.nodeId, { maps: { ...entry.currentMaps } });\n\t\t\tlive[key] = value;\n\t\t}\n\t\telse {\n\t\t\tif (key in entry.currentMaps) {\n\t\t\t\tdelete entry.currentMaps[key];\n\t\t\t\trenderer.updateNodeMetadata(entry.nodeId, { maps: Object.keys(entry.currentMaps).length \u003e 0 ? { ...entry.currentMaps } : void 0 });\n\t\t\t}\n\t\t\tif (Object.prototype.hasOwnProperty.call(entry.componentDef.props, key)) {\n\t\t\t\trenderer.updateUniformValue(entry.nodeId, key, value);\n\t\t\t\tlive[key] = value;\n\t\t\t}\n\t\t}\n\t}\n\tfunction resize(width, height) {\n\t\tconst rect = canvas.getBoundingClientRect();\n\t\tconst w = width ?? (rect.width \u003e 0 ? rect.width : canvas.width);\n\t\tconst h = height ?? (rect.height \u003e 0 ? rect.height : canvas.height);\n\t\tif (w \u003e 0 \u0026\u0026 h \u003e 0) {\n\t\t\tcanvas.style.width = `${w}px`;\n\t\t\tcanvas.style.height = `${h}px`;\n\t\t\tif (current) current.renderer.resize(w, h);\n\t\t}\n\t}\n\tfunction destroy() {\n\t\tdestroyed = true;\n\t\tif (current) {\n\t\t\tteardownState(current);\n\t\t\tcurrent = null;\n\t\t}\n\t}\n\tfunction pause() {\n\t\tif (current) current.renderer.stopAnimation();\n\t}\n\tfunction resume() {\n\t\tif (current) current.renderer.startAnimation();\n\t}\n\treturn {\n\t\tupdate,\n\t\tresize,\n\t\tpause,\n\t\tresume,\n\t\tdestroy,\n\t\tgetFailureReason: () =\u003e unavailable\n\t};\n}\nexport { createShader };\n","var PREVIEW_KEY = \"shaders-preview-key\";\nfunction xorCrypt(data, key) {\n\tconst keyBytes = new TextEncoder().encode(key);\n\tconst result = new Uint8Array(data.length);\n\tfor (let i = 0; i \u003c data.length; i++) result[i] = data[i] ^ keyBytes[i % keyBytes.length];\n\treturn result;\n}\nfunction decodePreviewDefinition(encoded) {\n\ttry {\n\t\tconst binaryString = atob(encoded);\n\t\tconst encrypted = new Uint8Array(binaryString.length);\n\t\tfor (let i = 0; i \u003c binaryString.length; i++) encrypted[i] = binaryString.charCodeAt(i);\n\t\tconst decrypted = xorCrypt(encrypted, PREVIEW_KEY);\n\t\tconst json = new TextDecoder().decode(decrypted);\n\t\tconst result = JSON.parse(json);\n\t\tif (typeof result !== \"object\" || result === null || Array.isArray(result)) throw new Error(\"unexpected shape\");\n\t\treturn result;\n\t} catch {\n\t\tthrow new Error(\"Failed to decode preview definition: invalid data\");\n\t}\n}\nexport { decodePreviewDefinition };\n","import { createShader } from \"./createShader.js\";\nimport { decodePreviewDefinition } from \"./decode.js\";\nvar DEFAULT_API_BASE = \"https://shaders.com\";\nvar WATERMARK_TEXT = \"Unlock your Shaders Pro license\";\nvar WATERMARK_LINK = \"https://shaders.com/dashboard?pricing=true\";\nvar RESERVED_IDENTIFIERS = new Set([\n\t\"break\",\n\t\"case\",\n\t\"catch\",\n\t\"class\",\n\t\"const\",\n\t\"continue\",\n\t\"default\",\n\t\"delete\",\n\t\"do\",\n\t\"else\",\n\t\"export\",\n\t\"extends\",\n\t\"finally\",\n\t\"for\",\n\t\"function\",\n\t\"if\",\n\t\"import\",\n\t\"in\",\n\t\"instanceof\",\n\t\"new\",\n\t\"return\",\n\t\"super\",\n\t\"switch\",\n\t\"this\",\n\t\"throw\",\n\t\"try\",\n\t\"typeof\",\n\t\"var\",\n\t\"void\",\n\t\"while\",\n\t\"with\",\n\t\"yield\"\n]);\nfunction slugifyIdentifier(label, fallback) {\n\tconst cleaned = label.replace(/[^A-Za-z0-9]+/g, \" \").trim();\n\tif (!cleaned) return fallback;\n\tconst camel = cleaned.split(/\\s+/).map((part, i) =\u003e i === 0 ? part.charAt(0).toLowerCase() + part.slice(1) : part.charAt(0).toUpperCase() + part.slice(1)).join(\"\");\n\tconst safe = /^[A-Za-z_$]/.test(camel) ? camel : `_${camel}`;\n\treturn RESERVED_IDENTIFIERS.has(safe) ? `_${safe}` : safe;\n}\nfunction buildKeyPropIdentifierMap(keyProps) {\n\tconst used = new Set([\"style\"]);\n\tconst map = /* @__PURE__ */ new Map();\n\tif (!keyProps?.length) return map;\n\tkeyProps.forEach((kp, i) =\u003e {\n\t\tif (!kp.targets?.length) return;\n\t\tconst base = slugifyIdentifier(kp.label, `keyProp${i}`);\n\t\tlet ident = base;\n\t\tlet suffix = 1;\n\t\twhile (used.has(ident)) {\n\t\t\tsuffix++;\n\t\t\tident = `${base}${suffix}`;\n\t\t}\n\t\tused.add(ident);\n\t\tmap.set(ident, kp);\n\t});\n\treturn map;\n}\nfunction findInTree(id, list) {\n\tfor (const c of list) {\n\t\tif (c.id === id) return c;\n\t\tconst children = c.children;\n\t\tif (children?.length) {\n\t\t\tconst hit = findInTree(id, children);\n\t\t\tif (hit) return hit;\n\t\t}\n\t}\n\treturn null;\n}\nfunction applyConfigurationInPlace(components, configuration, identMap) {\n\tif (!configuration) return;\n\tfor (const [ident, value] of Object.entries(configuration)) {\n\t\tconst kp = identMap.get(ident);\n\t\tif (!kp) continue;\n\t\tfor (const t of kp.targets ?? []) {\n\t\t\tconst comp = findInTree(t.component_id, components);\n\t\t\tif (comp?.props \u0026\u0026 t.prop in comp.props) comp.props[t.prop] = value;\n\t\t}\n\t}\n}\nasync function createPreview(canvas, options) {\n\tif (!options.shader \u0026\u0026 !options.presetId || options.shader \u0026\u0026 options.presetId) throw new Error(\"Exactly one of shader (preview token) or presetId must be provided\");\n\tconst apiBase = options.apiBaseUrl || DEFAULT_API_BASE;\n\tconst versionParam = options.presetId \u0026\u0026 options.version ? `?version=${encodeURIComponent(options.version)}` : \"\";\n\tconst url = options.shader ? `${apiBase}/api/preview/shader/${encodeURIComponent(options.shader)}` : `${apiBase}/api/preview/preset/${encodeURIComponent(options.presetId)}${versionParam}`;\n\tconst response = await fetch(url);\n\tif (!response.ok) throw new Error(`Failed to fetch preview: ${response.status} ${response.statusText}`);\n\tconst payload = await response.json();\n\tconst item = payload.preset ?? payload.shader;\n\tif (!item?.definition || typeof item.definition !== \"string\") throw new Error(\"Preview response missing encoded definition\");\n\tconst definition = decodePreviewDefinition(item.definition);\n\tconst keyProps = Array.isArray(item.key_props) ? item.key_props : null;\n\tconst identMap = buildKeyPropIdentifierMap(keyProps);\n\tconst baselineMap = /* @__PURE__ */ new Map();\n\tfor (const kp of identMap.values()) for (const t of kp.targets ?? []) {\n\t\tconst comp = findInTree(t.component_id, definition.components);\n\t\tif (comp?.props \u0026\u0026 t.prop in comp.props) baselineMap.set(`${t.component_id}:${t.prop}`, comp.props[t.prop]);\n\t}\n\tapplyConfigurationInPlace(definition.components, options.configuration, identMap);\n\tconst instance = await createShader(canvas, definition, {\n\t\tisPreview: true,\n\t\tenablePerformanceTracking: true\n\t});\n\tconst { overlay, savedPosition, parentEl } = createWatermarkOverlay(canvas);\n\tconst originalDestroy = instance.destroy.bind(instance);\n\tconst previewInstance = instance;\n\tpreviewInstance.destroy = () =\u003e {\n\t\tif (parentEl \u0026\u0026 savedPosition !== void 0) parentEl.style.position = savedPosition;\n\t\toverlay.remove();\n\t\toriginalDestroy();\n\t};\n\tpreviewInstance.setConfiguration = (configuration) =\u003e {\n\t\tif (!keyProps?.length) return;\n\t\tfor (const [ident, kp] of identMap) {\n\t\t\tconst hasNewValue = Object.prototype.hasOwnProperty.call(configuration, ident) \u0026\u0026 configuration[ident] !== void 0;\n\t\t\tfor (const t of kp.targets ?? []) {\n\t\t\t\tconst value = hasNewValue ? configuration[ident] : baselineMap.get(`${t.component_id}:${t.prop}`);\n\t\t\t\tif (value === void 0) continue;\n\t\t\t\tinstance.update(t.component_id, { [t.prop]: value });\n\t\t\t}\n\t\t}\n\t};\n\treturn previewInstance;\n}\nfunction createWatermarkOverlay(canvas) {\n\tconst parent = canvas.parentElement;\n\tlet savedPosition;\n\tif (parent) {\n\t\tif (getComputedStyle(parent).position === \"static\") {\n\t\t\tsavedPosition = parent.style.position;\n\t\t\tparent.style.position = \"relative\";\n\t\t}\n\t}\n\tconst link = document.createElement(\"a\");\n\tlink.href = WATERMARK_LINK;\n\tlink.target = \"_blank\";\n\tlink.rel = \"noopener noreferrer\";\n\tlink.textContent = WATERMARK_TEXT;\n\tObject.assign(link.style, {\n\t\tposition: \"absolute\",\n\t\tbottom: \"8px\",\n\t\tright: \"12px\",\n\t\tfontSize: \"11px\",\n\t\tfontFamily: \"system-ui, -apple-system, sans-serif\",\n\t\tcolor: \"rgba(255, 255, 255, 0.5)\",\n\t\ttextDecoration: \"none\",\n\t\tzIndex: \"10\",\n\t\tpointerEvents: \"auto\",\n\t\ttransition: \"color 0.2s ease\"\n\t});\n\tlink.addEventListener(\"mouseenter\", () =\u003e {\n\t\tlink.style.color = \"rgba(255, 255, 255, 0.8)\";\n\t});\n\tlink.addEventListener(\"mouseleave\", () =\u003e {\n\t\tlink.style.color = \"rgba(255, 255, 255, 0.5)\";\n\t});\n\tif (parent) parent.appendChild(link);\n\treturn {\n\t\toverlay: link,\n\t\tsavedPosition,\n\t\tparentEl: parent\n\t};\n}\nexport { createPreview };\n","import { debugWarn } from \"../core/index.js\";\nasync function createSharedDevice(options) {\n\tif (typeof navigator === \"undefined\" || !navigator.gpu) return null;\n\ttry {\n\t\tconst adapter = await navigator.gpu.requestAdapter({ powerPreference: options?.powerPreference ?? \"high-performance\" });\n\t\tif (!adapter) return null;\n\t\treturn {\n\t\t\tdevice: await adapter.requestDevice({ requiredFeatures: [...adapter.features] }),\n\t\t\tadapter\n\t\t};\n\t} catch (err) {\n\t\tdebugWarn(\"[shaders] createSharedDevice failed; callers should fall back to per-instance device:\", err);\n\t\treturn null;\n\t}\n}\nexport { createSharedDevice };\n"],"version":3}
